Aerospike.Op.Exp (Aerospike Driver v0.3.1)

Copy Markdown View Source

Expression operations for Aerospike.operate/4.

Expression operations evaluate an Aerospike.Exp on the server. Reads return the expression result under the requested response bin name; writes store the result into the target bin.

Aerospike.operate(cluster, key, [
  Aerospike.Op.Exp.read("projected", Aerospike.Exp.int_bin("count")),
  Aerospike.Op.Exp.write("computed", Aerospike.Exp.int(99))
])

This module accepts the expression builders exposed by Aerospike.Exp; it does not accept arbitrary encoded payloads.

Summary

Types

Options accepted by expression operate builders.

t()

Opaque expression operation for Aerospike.operate/4.

Functions

Reads the result of a server-side expression into bin_name.

Writes the result of a server-side expression to bin_name.

Types

flags()

@type flags() :: atom() | [atom()] | non_neg_integer() | {:raw, non_neg_integer()}

Options accepted by expression operate builders.

Supported key:

  • :flags - expression read or write flags. Defaults to :default.

opts()

@type opts() :: [{:flags, flags()}]

t()

@opaque t()

Opaque expression operation for Aerospike.operate/4.

Functions

read(bin_name, expression, opts \\ [])

@spec read(String.t() | atom(), Aerospike.Exp.t(), opts()) :: t()

Reads the result of a server-side expression into bin_name.

The optional :flags value accepts :default, :eval_no_fail, or a list of those atoms. Compatibility callers may pass a non-negative integer; use {:raw, integer} when deliberately sending an unnamed server value.

Aerospike.Op.Exp.read("projected", Aerospike.Exp.int_bin("count"))

write(bin_name, expression, opts \\ [])

@spec write(String.t() | atom(), Aerospike.Exp.t(), opts()) :: t()

Writes the result of a server-side expression to bin_name.

The optional :flags value accepts :default, :create_only, :update_only, :allow_delete, :policy_no_fail, :eval_no_fail, or a list of those atoms. Compatibility callers may pass a non-negative integer; use {:raw, integer} when deliberately sending an unnamed server value.

Aerospike.Op.Exp.write("computed", Aerospike.Exp.int(99))