MapExp Class

Map expression generator. See Exp.

The bin expression argument in these methods can be a reference to a bin or the result of another expression. Expressions that modify bin values are only used for temporary expression evaluation and are not permanently applied to the bin.

Map modify expressions return the bin's value. This value will be a map except when the map is nested within a list. In that case, a list is returned for the map modify expression.

All maps maintain an index and a rank. The index is the item offset from the start of the map, for both unordered and ordered maps. The rank is the sorted index of the value component. Map supports negative indexing for index and rank.

Index examples:

  • Index 0: First item in map.
  • Index 4: Fifth item in map.
  • Index -1: Last item in map.
  • Index -3: Third to last item in map.
  • Index 1 Count 2: Second and third items in map.
  • Index -3 Count 3: Last three items in map.
  • Index -5 Count 4: Range between fifth to last item to second to last item inclusive.

Rank examples:

  • Rank 0: Item with lowest value rank in map.
  • Rank 4: Fifth lowest ranked item in map.
  • Rank -1: Item with highest ranked value in map.
  • Rank -3: Item with third highest ranked value in map.
  • Rank 1 Count 2: Second and third lowest ranked items in map.
  • Rank -3 Count 3: Top three ranked items in map.

Nested expressions are supported by optional CTX context arguments. Example:

  • bin = {key1={key11=9,key12=4}, key2={key21=3,key22=5}}
  • Set map value to 11 for map key "key21" inside of map key "key2".
  • Get size of map key2.
  • MapExp.size(Exp.MapBin("bin"), CTX.mapKey(Value.get("key2"))
  • result = 2

Definition

Namespace: Aerospike.Client
Assembly: AerospikeClient (in AerospikeClient.dll) Version: 7.0.1
C#
public sealed class MapExp
Inheritance
Object    MapExp

Constructors

MapExpInitializes a new instance of the MapExp class

Methods

Clear Create expression that removes all items in map.
GetByIndex Create expression that selects map item identified by index and returns selected data specified by returnType.
GetByIndexRange(MapReturnType, Exp, Exp, CTX) Create expression that selects map items starting at specified index to the end of map and returns selected data specified by returnType.
GetByIndexRange(MapReturnType, Exp, Exp, Exp, CTX) Create expression that selects "count" map items starting at specified index and returns selected data specified by returnType.
GetByKey Create expression that selects map item identified by key and returns selected data specified by returnType.
GetByKeyList Create expression that selects map items identified by keys and returns selected data specified by returnType.
GetByKeyRange Create expression that selects map items identified by key range (keyBegin inclusive, keyEnd exclusive). If keyBegin is null, the range is less than keyEnd. If keyEnd is null, the range is greater than equal to keyBegin.

Expression returns selected data specified by returnType.

GetByKeyRelativeIndexRange(MapReturnType, Exp, Exp, Exp, CTX) Create expression that selects map items nearest to key and greater by index. Expression returns selected data specified by returnType.

Examples for ordered map [{0=17},{4=2},{5=15},{9=10}]:

  • (value,index) = [selected items]
  • (5,0) = [{5=15},{9=10}]
  • (5,1) = [{9=10}]
  • (5,-1) = [{4=2},{5=15},{9=10}]
  • (3,2) = [{9=10}]
  • (3,-2) = [{0=17},{4=2},{5=15},{9=10}]

GetByKeyRelativeIndexRange(MapReturnType, Exp, Exp, Exp, Exp, CTX) Create expression that selects map items nearest to key and greater by index with a count limit. Expression returns selected data specified by returnType.

Examples for ordered map [{0=17},{4=2},{5=15},{9=10}]:

  • (value,index,count) = [selected items]
  • (5,0,1) = [{5=15}]
  • (5,1,2) = [{9=10}]
  • (5,-1,1) = [{4=2}]
  • (3,2,1) = [{9=10}]
  • (3,-2,2) = [{0=17}]

GetByRank Create expression that selects map item identified by rank and returns selected data specified by returnType.
GetByRankRange(MapReturnType, Exp, Exp, CTX) Create expression that selects map items starting at specified rank to the last ranked item and returns selected data specified by returnType.
GetByRankRange(MapReturnType, Exp, Exp, Exp, CTX) Create expression that selects "count" map items starting at specified rank and returns selected data specified by returnType.
GetByValue Create expression that selects map items identified by value and returns selected data specified by returnType.
GetByValueList Create expression that selects map items identified by values and returns selected data specified by returnType.
GetByValueRange Create expression that selects map items identified by value range (valueBegin inclusive, valueEnd exclusive) If valueBegin is null, the range is less than valueEnd. If valueEnd is null, the range is greater than equal to valueBegin.

Expression returns selected data specified by returnType.

GetByValueRelativeRankRange(MapReturnType, Exp, Exp, Exp, CTX) Create expression that selects map items nearest to value and greater by relative rank. Expression returns selected data specified by returnType.

Examples for map [{4=2},{9=10},{5=15},{0=17}]:

  • (value,rank) = [selected items]
  • (11,1) = [{0=17}]
  • (11,-1) = [{9=10},{5=15},{0=17}]

GetByValueRelativeRankRange(MapReturnType, Exp, Exp, Exp, Exp, CTX) Create expression that selects map items nearest to value and greater by relative rank with a count limit. Expression returns selected data specified by returnType.

Examples for map [{4=2},{9=10},{5=15},{0=17}]:

  • (value,rank,count) = [selected items]
  • (11,1,1) = [{0=17}]
  • (11,-1,1) = [{9=10}]

Increment Create expression that increments values by incr for all items identified by key. Valid only for numbers.
Put Create expression that writes key/value item to map bin.
PutItems Create expression that writes each map item to map bin.
RemoveByIndex Create expression that removes map item identified by index.
RemoveByIndexRange(Int32, Exp, Exp, CTX) Create expression that removes map items starting at specified index to the end of map. Valid returnType values are NONE or INVERTED
RemoveByIndexRange(Int32, Exp, Exp, Exp, CTX) Create expression that removes "count" map items starting at specified index. Valid returnType values are NONE or INVERTED
RemoveByKey Create expression that removes map item identified by key.
RemoveByKeyList Create expression that removes map items identified by keys. Valid returnType values are NONE or INVERTED
RemoveByKeyRange Create expression that removes map items identified by key range (keyBegin inclusive, keyEnd exclusive). Valid returnType values are NONE or INVERTED If keyBegin is null, the range is less than keyEnd. If keyEnd is null, the range is greater than equal to keyBegin.
RemoveByKeyRelativeIndexRange(Int32, Exp, Exp, Exp, CTX) Create expression that removes map items nearest to key and greater by index. Valid returnType values are NONE or INVERTED

Examples for map [{0=17},{4=2},{5=15},{9=10}]:

  • (value,index) = [removed items]
  • (5,0) = [{5=15},{9=10}]
  • (5,1) = [{9=10}]
  • (5,-1) = [{4=2},{5=15},{9=10}]
  • (3,2) = [{9=10}]
  • (3,-2) = [{0=17},{4=2},{5=15},{9=10}]

RemoveByKeyRelativeIndexRange(Int32, Exp, Exp, Exp, Exp, CTX) Create expression that removes map items nearest to key and greater by index with a count limit. Valid returnType values are NONE or INVERTED

Examples for map [{0=17},{4=2},{5=15},{9=10}]:

  • (value,index,count) = [removed items]
  • (5,0,1) = [{5=15}]
  • (5,1,2) = [{9=10}]
  • (5,-1,1) = [{4=2}]
  • (3,2,1) = [{9=10}]
  • (3,-2,2) = [{0=17}]

RemoveByRank Create expression that removes map item identified by rank.
RemoveByRankRange(Int32, Exp, Exp, CTX) Create expression that removes map items starting at specified rank to the last ranked item. Valid returnType values are NONE or INVERTED
RemoveByRankRange(Int32, Exp, Exp, Exp, CTX) Create expression that removes "count" map items starting at specified rank. Valid returnType values are NONE or INVERTED
RemoveByValue Create expression that removes map items identified by value. Valid returnType values are NONE or INVERTED
RemoveByValueList Create expression that removes map items identified by values. Valid returnType values are NONE or INVERTED
RemoveByValueRange Create expression that removes map items identified by value range (valueBegin inclusive, valueEnd exclusive). Valid returnType values are NONE or INVERTED If valueBegin is null, the range is less than valueEnd. If valueEnd is null, the range is greater than equal to valueBegin.
RemoveByValueRelativeRankRange(Int32, Exp, Exp, Exp, CTX) Create expression that removes map items nearest to value and greater by relative rank. Valid returnType values are NONE or INVERTED

Examples for map [{4=2},{9=10},{5=15},{0=17}]:

  • (value,rank) = [removed items]
  • (11,1) = [{0=17}]
  • (11,-1) = [{9=10},{5=15},{0=17}]

RemoveByValueRelativeRankRange(Int32, Exp, Exp, Exp, Exp, CTX) Create expression that removes map items nearest to value and greater by relative rank with a count limit. Valid returnType values are NONE or INVERTED

Examples for map [{4=2},{9=10},{5=15},{0=17}]:

  • (value,rank,count) = [removed items]
  • (11,1,1) = [{0=17}]
  • (11,-1,1) = [{9=10}]

Size Create expression that returns list size.

See Also