summaryrefslogtreecommitdiffstats
path: root/src/commands/srandmember.json
diff options
context:
space:
mode:
Diffstat (limited to 'src/commands/srandmember.json')
-rw-r--r--src/commands/srandmember.json83
1 files changed, 83 insertions, 0 deletions
diff --git a/src/commands/srandmember.json b/src/commands/srandmember.json
new file mode 100644
index 0000000..4ba2b75
--- /dev/null
+++ b/src/commands/srandmember.json
@@ -0,0 +1,83 @@
+{
+ "SRANDMEMBER": {
+ "summary": "Get one or multiple random members from a set",
+ "complexity": "Without the count argument O(1), otherwise O(N) where N is the absolute value of the passed count.",
+ "group": "set",
+ "since": "1.0.0",
+ "arity": -2,
+ "function": "srandmemberCommand",
+ "history": [
+ [
+ "2.6.0",
+ "Added the optional `count` argument."
+ ]
+ ],
+ "command_flags": [
+ "READONLY"
+ ],
+ "acl_categories": [
+ "SET"
+ ],
+ "command_tips": [
+ "NONDETERMINISTIC_OUTPUT"
+ ],
+ "key_specs": [
+ {
+ "flags": [
+ "RO",
+ "ACCESS"
+ ],
+ "begin_search": {
+ "index": {
+ "pos": 1
+ }
+ },
+ "find_keys": {
+ "range": {
+ "lastkey": 0,
+ "step": 1,
+ "limit": 0
+ }
+ }
+ }
+ ],
+ "arguments": [
+ {
+ "name": "key",
+ "type": "key",
+ "key_spec_index": 0
+ },
+ {
+ "name": "count",
+ "type": "integer",
+ "optional": true,
+ "since": "2.6.0"
+ }
+ ],
+ "reply_schema": {
+ "oneOf": [
+ {
+ "description": "In case `count` is not given and key doesn't exist",
+ "type": "null"
+ },
+ {
+ "description": "In case `count` is not given, randomly selected element",
+ "type": "string"
+ },
+ {
+ "description": "In case `count` is given, an array of elements",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "minItems": 1
+ },
+ {
+ "description": "In case `count` is given and key doesn't exist",
+ "type": "array",
+ "maxItems": 0
+ }
+ ]
+ }
+ }
+}