Module: Redis::Commands::Strings
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Included In:
| |
Defined in: | lib/redis/commands/strings.rb |
Instance Method Summary
-
#append(key, value) ⇒ Integer
Append a value to a key.
-
#decr(key) ⇒ Integer
Decrement the integer value of a key by one.
-
#decrby(key, decrement) ⇒ Integer
Decrement the integer value of a key by the given number.
-
#get(key) ⇒ String
Get the value of a key.
-
#getdel(key) ⇒ String
Get the value of key and delete the key.
-
#getex(key, ex: nil, px: nil, exat: nil, pxat: nil, persist: false) ⇒ String
Get the value of key and optionally set its expiration.
-
#getrange(key, start, stop) ⇒ Integer
Get a substring of the string stored at a key.
-
#getset(key, value) ⇒ String
Set the string value of a key and return its old value.
-
#incr(key) ⇒ Integer
Increment the integer value of a key by one.
-
#incrby(key, increment) ⇒ Integer
Increment the integer value of a key by the given integer number.
-
#incrbyfloat(key, increment) ⇒ Float
Increment the numeric value of a key by the given float number.
-
#mapped_mget(*keys) ⇒ Hash
Get the values of all the given keys.
-
#mapped_mset(hash) ⇒ String
Set one or more values.
-
#mapped_msetnx(hash) ⇒ Boolean
Set one or more values, only if none of the keys exist.
-
#mget(*keys, &blk) ⇒ Array<String>
Get the values of all the given keys.
-
#mset(*args) ⇒ String
Set one or more values.
-
#msetnx(*args) ⇒ Boolean
Set one or more values, only if none of the keys exist.
-
#psetex(key, ttl, value) ⇒ String
Set the time to live in milliseconds of a key.
-
#set(key, value, ex: nil, px: nil, exat: nil, pxat: nil, nx: nil, xx: nil, keepttl: nil, get: nil) ⇒ String, Boolean
Set the string value of a key.
-
#setex(key, ttl, value) ⇒ String
Set the time to live in seconds of a key.
-
#setnx(key, value) ⇒ Boolean
Set the value of a key, only if the key does not exist.
-
#setrange(key, offset, value) ⇒ Integer
Overwrite part of a string at key starting at the specified offset.
-
#strlen(key) ⇒ Integer
Get the length of the value stored in a key.
Instance Method Details
#append(key, value) ⇒ Integer
Append a value to a key.
# File 'lib/redis/commands/strings.rb', line 255
def append(key, value) send_command([:append, key, value]) end
#decr(key) ⇒ Integer
Decrement the integer value of a key by one.
# File 'lib/redis/commands/strings.rb', line 14
def decr(key) send_command([:decr, key]) end
#decrby(key, decrement) ⇒ Integer
Decrement the integer value of a key by the given number.
# File 'lib/redis/commands/strings.rb', line 27
def decrby(key, decrement) send_command([:decrby, key, Integer(decrement)]) end
#get(key) ⇒ String
Get the value of a key.
# File 'lib/redis/commands/strings.rb', line 190
def get(key) send_command([:get, key]) end
#getdel(key) ⇒ String
Get the value of key and delete the key. This command is similar to GET, except for the fact that it also deletes the key on success.
# File 'lib/redis/commands/strings.rb', line 275
def getdel(key) send_command([:getdel, key]) end
#getex(key, ex: nil, px: nil, exat: nil, pxat: nil, persist: false) ⇒ String
Get the value of key and optionally set its expiration. GETEX is similar to GET, but is a write command with additional options. When no options are provided, GETEX behaves like GET.
# File 'lib/redis/commands/strings.rb', line 293
def getex(key, ex: nil, px: nil, exat: nil, pxat: nil, persist: false) args = [:getex, key] args << "EX" << Integer(ex) if ex args << "PX" << Integer(px) if px args << "EXAT" << Integer(exat) if exat args << "PXAT" << Integer(pxat) if pxat args << "PERSIST" if persist send_command(args) end
#getrange(key, start, stop) ⇒ Integer
Get a substring of the string stored at a key.
# File 'lib/redis/commands/strings.rb', line 246
def getrange(key, start, stop) send_command([:getrange, key, Integer(start), Integer(stop)]) end
#getset(key, value) ⇒ String
Set the string value of a key and return its old value.
# File 'lib/redis/commands/strings.rb', line 265
def getset(key, value) send_command([:getset, key, value.to_s]) end
#incr(key) ⇒ Integer
Increment the integer value of a key by one.
# File 'lib/redis/commands/strings.rb', line 39
def incr(key) send_command([:incr, key]) end
#incrby(key, increment) ⇒ Integer
Increment the integer value of a key by the given integer number.
# File 'lib/redis/commands/strings.rb', line 52
def incrby(key, increment) send_command([:incrby, key, Integer(increment)]) end
#incrbyfloat(key, increment) ⇒ Float
Increment the numeric value of a key by the given float number.
# File 'lib/redis/commands/strings.rb', line 65
def incrbyfloat(key, increment) send_command([:incrbyfloat, key, Float(increment)], &Floatify) end
#mapped_mget(*keys) ⇒ Hash
Get the values of all the given keys.
# File 'lib/redis/commands/strings.rb', line 219
def mapped_mget(*keys) mget(*keys) do |reply| if reply.is_a?(Array) Hash[keys.zip(reply)] else reply end end end
#mapped_mset(hash) ⇒ String
Set one or more values.
# File 'lib/redis/commands/strings.rb', line 154
def mapped_mset(hash) mset(hash.flatten) end
#mapped_msetnx(hash) ⇒ Boolean
Set one or more values, only if none of the keys exist.
# File 'lib/redis/commands/strings.rb', line 182
def mapped_msetnx(hash) msetnx(hash.flatten) end
#mget(*keys, &blk) ⇒ Array
<String
>
Get the values of all the given keys.
# File 'lib/redis/commands/strings.rb', line 204
def mget(*keys, &blk) keys.flatten!(1) send_command([:mget, *keys], &blk) end
#mset(*args) ⇒ String
Set one or more values.
# File 'lib/redis/commands/strings.rb', line 140
def mset(*args) send_command([:mset] + args) end
#msetnx(*args) ⇒ Boolean
Set one or more values, only if none of the keys exist.
# File 'lib/redis/commands/strings.rb', line 168
def msetnx(*args) send_command([:msetnx, *args], &Boolify) end
#psetex(key, ttl, value) ⇒ String
Set the time to live in milliseconds of a key.
# File 'lib/redis/commands/strings.rb', line 117
def psetex(key, ttl, value) send_command([:psetex, key, Integer(ttl), value.to_s]) end
#set(key, value, ex: nil, px: nil, exat: nil, pxat: nil, nx: nil, xx: nil, keepttl: nil, get: nil) ⇒ String
, Boolean
Set the string value of a key.
# File 'lib/redis/commands/strings.rb', line 83
def set(key, value, ex: nil, px: nil, exat: nil, pxat: nil, nx: nil, xx: nil, keepttl: nil, get: nil) args = [:set, key, value.to_s] args << "EX" << Integer(ex) if ex args << "PX" << Integer(px) if px args << "EXAT" << Integer(exat) if exat args << "PXAT" << Integer(pxat) if pxat args << "NX" if nx args << "XX" if xx args << "KEEPTTL" if keepttl args << "GET" if get if nx || xx send_command(args, &BoolifySet) else send_command(args) end end
#setex(key, ttl, value) ⇒ String
Set the time to live in seconds of a key.
# File 'lib/redis/commands/strings.rb', line 107
def setex(key, ttl, value) send_command([:setex, key, Integer(ttl), value.to_s]) end
#setnx(key, value) ⇒ Boolean
Set the value of a key, only if the key does not exist.
# File 'lib/redis/commands/strings.rb', line 126
def setnx(key, value) send_command([:setnx, key, value.to_s], &Boolify) end
#setrange(key, offset, value) ⇒ Integer
Overwrite part of a string at key starting at the specified offset.
# File 'lib/redis/commands/strings.rb', line 235
def setrange(key, offset, value) send_command([:setrange, key, Integer(offset), value.to_s]) end
#strlen(key) ⇒ Integer
Get the length of the value stored in a key.
# File 'lib/redis/commands/strings.rb', line 309
def strlen(key) send_command([:strlen, key]) end