diff options
Diffstat (limited to 'src/commands/zadd.json')
-rw-r--r-- | src/commands/zadd.json | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/src/commands/zadd.json b/src/commands/zadd.json new file mode 100644 index 0000000..d489ee4 --- /dev/null +++ b/src/commands/zadd.json @@ -0,0 +1,144 @@ +{ + "ZADD": { + "summary": "Adds one or more members to a sorted set, or updates their scores. Creates the key if it doesn't exist.", + "complexity": "O(log(N)) for each item added, where N is the number of elements in the sorted set.", + "group": "sorted_set", + "since": "1.2.0", + "arity": -4, + "function": "zaddCommand", + "history": [ + [ + "2.4.0", + "Accepts multiple elements." + ], + [ + "3.0.2", + "Added the `XX`, `NX`, `CH` and `INCR` options." + ], + [ + "6.2.0", + "Added the `GT` and `LT` options." + ] + ], + "command_flags": [ + "WRITE", + "DENYOOM", + "FAST" + ], + "acl_categories": [ + "SORTEDSET" + ], + "key_specs": [ + { + "flags": [ + "RW", + "UPDATE" + ], + "begin_search": { + "index": { + "pos": 1 + } + }, + "find_keys": { + "range": { + "lastkey": 0, + "step": 1, + "limit": 0 + } + } + } + ], + "reply_schema": { + "anyOf":[ + { + "description": "Operation was aborted (conflict with one of the `XX`/`NX`/`LT`/`GT` options).", + "type": "null" + }, + { + "description": "The number of new members (when the `CH` option is not used)", + "type": "integer" + }, + { + "description": "The number of new or updated members (when the `CH` option is used)", + "type": "integer" + }, + { + "description": "The updated score of the member (when the `INCR` option is used)", + "type": "number" + } + ] + }, + "arguments": [ + { + "name": "key", + "type": "key", + "key_spec_index": 0 + }, + { + "name": "condition", + "type": "oneof", + "optional": true, + "since": "3.0.2", + "arguments": [ + { + "name": "nx", + "type": "pure-token", + "token": "NX" + }, + { + "name": "xx", + "type": "pure-token", + "token": "XX" + } + ] + }, + { + "name": "comparison", + "type": "oneof", + "optional": true, + "since": "6.2.0", + "arguments": [ + { + "name": "gt", + "type": "pure-token", + "token": "GT" + }, + { + "name": "lt", + "type": "pure-token", + "token": "LT" + } + ] + }, + { + "name": "change", + "token": "CH", + "type": "pure-token", + "optional": true, + "since": "3.0.2" + }, + { + "name": "increment", + "token": "INCR", + "type": "pure-token", + "optional": true, + "since": "3.0.2" + }, + { + "name": "data", + "type": "block", + "multiple": true, + "arguments": [ + { + "name": "score", + "type": "double" + }, + { + "name": "member", + "type": "string" + } + ] + } + ] + } +} |