Class: Aerospike::Exp::Let

Inherits:
Aerospike::Exp show all
Defined in:
lib/aerospike/exp/exp.rb

Constant Summary

Constants inherited from Aerospike::Exp

MODIFY

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Aerospike::Exp

abs, add, and, arshift, bin, bin_exists, bin_type, blob_bin, blob_val, bool_bin, bool_val, build, #bytes, ceil, cond, count, def, device_size, digest_modulo, div, eq, exclusive, float_bin, float_val, floor, ge, geo, geo_bin, geo_compare, gt, hll_bin, int_and, int_bin, int_not, int_or, int_val, int_xor, is_tombstone, key, key_exists, last_update, le, let, list_bin, list_val, log, lscan, lshift, lt, map_bin, map_val, max, memory_size, min, mod, mul, ne, nil_val, not, or, pow, record_size, regex_compare, rscan, rshift, set_name, since_update, #size, str_bin, str_val, sub, to_float, to_int, ttl, unknown, var, void_time, #write

Constructor Details

#initialize(exps) ⇒ Let

Returns a new instance of Let.



1146
1147
1148
# File 'lib/aerospike/exp/exp.rb', line 1146

def initialize(exps)
  @exps = exps
end

Instance Attribute Details

#expsObject (readonly)

Returns the value of attribute exps.



1144
1145
1146
# File 'lib/aerospike/exp/exp.rb', line 1144

def exps
  @exps
end

Instance Method Details

#pack(packer) ⇒ Object



1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
# File 'lib/aerospike/exp/exp.rb', line 1150

def pack(packer)
  # Let wire format: LET <defname1>, <defexp1>, <defname2>, <defexp2>, ..., <scope exp>
  count = (@exps.length - 1) * 2 + 2
  packer.write_array_header(count)
  packer.write(LET)

  @exps.each do |exp|
    exp.pack(packer)
  end
end