hedis-0.2: src/Database/Redis/Commands.hs
-- Generated by GenCmds.hs. DO NOT EDIT.
{-# LANGUAGE OverloadedStrings #-}
module Database.Redis.Commands (
-- ** Connection
auth, -- |Authenticate to the server (<http://redis.io/commands/auth>).
echo, -- |Echo the given string (<http://redis.io/commands/echo>).
ping, -- |Ping the server (<http://redis.io/commands/ping>).
quit, -- |Close the connection (<http://redis.io/commands/quit>).
select, -- |Change the selected database for the current connection (<http://redis.io/commands/select>).
-- ** Keys
del, -- |Delete a key (<http://redis.io/commands/del>).
exists, -- |Determine if a key exists (<http://redis.io/commands/exists>).
expire, -- |Set a key's time to live in seconds (<http://redis.io/commands/expire>).
expireat, -- |Set the expiration for a key as a UNIX timestamp (<http://redis.io/commands/expireat>).
keys, -- |Find all keys matching the given pattern (<http://redis.io/commands/keys>).
move, -- |Move a key to another database (<http://redis.io/commands/move>).
objectRefcount, -- |Inspect the internals of Redis objects (<http://redis.io/commands/object>). The Redis command @OBJECT@ is split up into 'objectRefcount', 'objectEncoding', 'objectIdletime'.
objectEncoding, -- |Inspect the internals of Redis objects (<http://redis.io/commands/object>). The Redis command @OBJECT@ is split up into 'objectRefcount', 'objectEncoding', 'objectIdletime'.
objectIdletime, -- |Inspect the internals of Redis objects (<http://redis.io/commands/object>). The Redis command @OBJECT@ is split up into 'objectRefcount', 'objectEncoding', 'objectIdletime'.
persist, -- |Remove the expiration from a key (<http://redis.io/commands/persist>).
randomkey, -- |Return a random key from the keyspace (<http://redis.io/commands/randomkey>).
rename, -- |Rename a key (<http://redis.io/commands/rename>).
renamenx, -- |Rename a key, only if the new key does not exist (<http://redis.io/commands/renamenx>).
SortOpts(..),
defaultSortOpts,
SortOrder(..),
sort, -- |Sort the elements in a list, set or sorted set (<http://redis.io/commands/sort>). The Redis command @SORT@ is split up into 'sort', 'sortStore'.
sortStore, -- |Sort the elements in a list, set or sorted set (<http://redis.io/commands/sort>). The Redis command @SORT@ is split up into 'sort', 'sortStore'.
ttl, -- |Get the time to live for a key (<http://redis.io/commands/ttl>).
getType, -- |Determine the type stored at key (<http://redis.io/commands/type>).
-- ** Hashes
hdel, -- |Delete one or more hash fields (<http://redis.io/commands/hdel>).
hexists, -- |Determine if a hash field exists (<http://redis.io/commands/hexists>).
hget, -- |Get the value of a hash field (<http://redis.io/commands/hget>).
hgetall, -- |Get all the fields and values in a hash (<http://redis.io/commands/hgetall>).
hincrby, -- |Increment the integer value of a hash field by the given number (<http://redis.io/commands/hincrby>).
hkeys, -- |Get all the fields in a hash (<http://redis.io/commands/hkeys>).
hlen, -- |Get the number of fields in a hash (<http://redis.io/commands/hlen>).
hmget, -- |Get the values of all the given hash fields (<http://redis.io/commands/hmget>).
hmset, -- |Set multiple hash fields to multiple values (<http://redis.io/commands/hmset>).
hset, -- |Set the string value of a hash field (<http://redis.io/commands/hset>).
hsetnx, -- |Set the value of a hash field, only if the field does not exist (<http://redis.io/commands/hsetnx>).
hvals, -- |Get all the values in a hash (<http://redis.io/commands/hvals>).
-- ** Lists
blpop, -- |Remove and get the first element in a list, or block until one is available (<http://redis.io/commands/blpop>).
brpop, -- |Remove and get the last element in a list, or block until one is available (<http://redis.io/commands/brpop>).
brpoplpush, -- |Pop a value from a list, push it to another list and return it; or block until one is available (<http://redis.io/commands/brpoplpush>).
lindex, -- |Get an element from a list by its index (<http://redis.io/commands/lindex>).
linsertBefore, -- |Insert an element before or after another element in a list (<http://redis.io/commands/linsert>). The Redis command @LINSERT@ is split up into 'linsertBefore', 'linsertAfter'.
linsertAfter, -- |Insert an element before or after another element in a list (<http://redis.io/commands/linsert>). The Redis command @LINSERT@ is split up into 'linsertBefore', 'linsertAfter'.
llen, -- |Get the length of a list (<http://redis.io/commands/llen>).
lpop, -- |Remove and get the first element in a list (<http://redis.io/commands/lpop>).
lpush, -- |Prepend one or multiple values to a list (<http://redis.io/commands/lpush>).
lpushx, -- |Prepend a value to a list, only if the list exists (<http://redis.io/commands/lpushx>).
lrange, -- |Get a range of elements from a list (<http://redis.io/commands/lrange>).
lrem, -- |Remove elements from a list (<http://redis.io/commands/lrem>).
lset, -- |Set the value of an element in a list by its index (<http://redis.io/commands/lset>).
ltrim, -- |Trim a list to the specified range (<http://redis.io/commands/ltrim>).
rpop, -- |Remove and get the last element in a list (<http://redis.io/commands/rpop>).
rpoplpush, -- |Remove the last element in a list, append it to another list and return it (<http://redis.io/commands/rpoplpush>).
rpush, -- |Append one or multiple values to a list (<http://redis.io/commands/rpush>).
rpushx, -- |Append a value to a list, only if the list exists (<http://redis.io/commands/rpushx>).
-- ** Server
bgrewriteaof, -- |Asynchronously rewrite the append-only file (<http://redis.io/commands/bgrewriteaof>).
bgsave, -- |Asynchronously save the dataset to disk (<http://redis.io/commands/bgsave>).
configGet, -- |Get the value of a configuration parameter (<http://redis.io/commands/config-get>).
configResetstat, -- |Reset the stats returned by INFO (<http://redis.io/commands/config-resetstat>).
configSet, -- |Set a configuration parameter to the given value (<http://redis.io/commands/config-set>).
dbsize, -- |Return the number of keys in the selected database (<http://redis.io/commands/dbsize>).
debugObject, -- |Get debugging information about a key (<http://redis.io/commands/debug-object>).
debugSegfault, -- |Make the server crash (<http://redis.io/commands/debug-segfault>).
flushall, -- |Remove all keys from all databases (<http://redis.io/commands/flushall>).
flushdb, -- |Remove all keys from the current database (<http://redis.io/commands/flushdb>).
info, -- |Get information and statistics about the server (<http://redis.io/commands/info>).
lastsave, -- |Get the UNIX time stamp of the last successful save to disk (<http://redis.io/commands/lastsave>).
save, -- |Synchronously save the dataset to disk (<http://redis.io/commands/save>).
shutdown, -- |Synchronously save the dataset to disk and then shut down the server (<http://redis.io/commands/shutdown>).
slaveof, -- |Make the server a slave of another instance, or promote it as master (<http://redis.io/commands/slaveof>).
slowlogGet, -- |Manages the Redis slow queries log (<http://redis.io/commands/slowlog>). The Redis command @SLOWLOG@ is split up into 'slowlogGet', 'slowlogLen', 'slowlogReset'.
slowlogLen, -- |Manages the Redis slow queries log (<http://redis.io/commands/slowlog>). The Redis command @SLOWLOG@ is split up into 'slowlogGet', 'slowlogLen', 'slowlogReset'.
slowlogReset, -- |Manages the Redis slow queries log (<http://redis.io/commands/slowlog>). The Redis command @SLOWLOG@ is split up into 'slowlogGet', 'slowlogLen', 'slowlogReset'.
-- ** Sets
sadd, -- |Add one or more members to a set (<http://redis.io/commands/sadd>).
scard, -- |Get the number of members in a set (<http://redis.io/commands/scard>).
sdiff, -- |Subtract multiple sets (<http://redis.io/commands/sdiff>).
sdiffstore, -- |Subtract multiple sets and store the resulting set in a key (<http://redis.io/commands/sdiffstore>).
sinter, -- |Intersect multiple sets (<http://redis.io/commands/sinter>).
sinterstore, -- |Intersect multiple sets and store the resulting set in a key (<http://redis.io/commands/sinterstore>).
sismember, -- |Determine if a given value is a member of a set (<http://redis.io/commands/sismember>).
smembers, -- |Get all the members in a set (<http://redis.io/commands/smembers>).
smove, -- |Move a member from one set to another (<http://redis.io/commands/smove>).
spop, -- |Remove and return a random member from a set (<http://redis.io/commands/spop>).
srandmember, -- |Get a random member from a set (<http://redis.io/commands/srandmember>).
srem, -- |Remove one or more members from a set (<http://redis.io/commands/srem>).
sunion, -- |Add multiple sets (<http://redis.io/commands/sunion>).
sunionstore, -- |Add multiple sets and store the resulting set in a key (<http://redis.io/commands/sunionstore>).
-- ** Sorted Sets
zadd, -- |Add one or more members to a sorted set, or update its score if it already exists (<http://redis.io/commands/zadd>).
zcard, -- |Get the number of members in a sorted set (<http://redis.io/commands/zcard>).
zcount, -- |Count the members in a sorted set with scores within the given values (<http://redis.io/commands/zcount>).
zincrby, -- |Increment the score of a member in a sorted set (<http://redis.io/commands/zincrby>).
Aggregate(..),
zinterstore, -- |Intersect multiple sorted sets and store the resulting sorted set in a new key (<http://redis.io/commands/zinterstore>). The Redis command @ZINTERSTORE@ is split up into 'zinterstore', 'zinterstoreWeights'.
zinterstoreWeights, -- |Intersect multiple sorted sets and store the resulting sorted set in a new key (<http://redis.io/commands/zinterstore>). The Redis command @ZINTERSTORE@ is split up into 'zinterstore', 'zinterstoreWeights'.
zrange, -- |Return a range of members in a sorted set, by index (<http://redis.io/commands/zrange>). The Redis command @ZRANGE@ is split up into 'zrange', 'zrangeWithscores'.
zrangeWithscores, -- |Return a range of members in a sorted set, by index (<http://redis.io/commands/zrange>). The Redis command @ZRANGE@ is split up into 'zrange', 'zrangeWithscores'.
zrangebyscore, -- |Return a range of members in a sorted set, by score (<http://redis.io/commands/zrangebyscore>). The Redis command @ZRANGEBYSCORE@ is split up into 'zrangebyscore', 'zrangebyscoreWithscores', 'zrangebyscoreLimit', 'zrangebyscoreWithscoresLimit'.
zrangebyscoreWithscores, -- |Return a range of members in a sorted set, by score (<http://redis.io/commands/zrangebyscore>). The Redis command @ZRANGEBYSCORE@ is split up into 'zrangebyscore', 'zrangebyscoreWithscores', 'zrangebyscoreLimit', 'zrangebyscoreWithscoresLimit'.
zrangebyscoreLimit, -- |Return a range of members in a sorted set, by score (<http://redis.io/commands/zrangebyscore>). The Redis command @ZRANGEBYSCORE@ is split up into 'zrangebyscore', 'zrangebyscoreWithscores', 'zrangebyscoreLimit', 'zrangebyscoreWithscoresLimit'.
zrangebyscoreWithscoresLimit, -- |Return a range of members in a sorted set, by score (<http://redis.io/commands/zrangebyscore>). The Redis command @ZRANGEBYSCORE@ is split up into 'zrangebyscore', 'zrangebyscoreWithscores', 'zrangebyscoreLimit', 'zrangebyscoreWithscoresLimit'.
zrank, -- |Determine the index of a member in a sorted set (<http://redis.io/commands/zrank>).
zrem, -- |Remove one or more members from a sorted set (<http://redis.io/commands/zrem>).
zremrangebyrank, -- |Remove all members in a sorted set within the given indexes (<http://redis.io/commands/zremrangebyrank>).
zremrangebyscore, -- |Remove all members in a sorted set within the given scores (<http://redis.io/commands/zremrangebyscore>).
zrevrange, -- |Return a range of members in a sorted set, by index, with scores ordered from high to low (<http://redis.io/commands/zrevrange>). The Redis command @ZREVRANGE@ is split up into 'zrevrange', 'zrevrangeWithscores'.
zrevrangeWithscores, -- |Return a range of members in a sorted set, by index, with scores ordered from high to low (<http://redis.io/commands/zrevrange>). The Redis command @ZREVRANGE@ is split up into 'zrevrange', 'zrevrangeWithscores'.
zrevrangebyscore, -- |Return a range of members in a sorted set, by score, with scores ordered from high to low (<http://redis.io/commands/zrevrangebyscore>). The Redis command @ZREVRANGEBYSCORE@ is split up into 'zrevrangebyscore', 'zrevrangebyscoreWithscores', 'zrevrangebyscoreLimit', 'zrevrangebyscoreWithscoresLimit'.
zrevrangebyscoreWithscores, -- |Return a range of members in a sorted set, by score, with scores ordered from high to low (<http://redis.io/commands/zrevrangebyscore>). The Redis command @ZREVRANGEBYSCORE@ is split up into 'zrevrangebyscore', 'zrevrangebyscoreWithscores', 'zrevrangebyscoreLimit', 'zrevrangebyscoreWithscoresLimit'.
zrevrangebyscoreLimit, -- |Return a range of members in a sorted set, by score, with scores ordered from high to low (<http://redis.io/commands/zrevrangebyscore>). The Redis command @ZREVRANGEBYSCORE@ is split up into 'zrevrangebyscore', 'zrevrangebyscoreWithscores', 'zrevrangebyscoreLimit', 'zrevrangebyscoreWithscoresLimit'.
zrevrangebyscoreWithscoresLimit, -- |Return a range of members in a sorted set, by score, with scores ordered from high to low (<http://redis.io/commands/zrevrangebyscore>). The Redis command @ZREVRANGEBYSCORE@ is split up into 'zrevrangebyscore', 'zrevrangebyscoreWithscores', 'zrevrangebyscoreLimit', 'zrevrangebyscoreWithscoresLimit'.
zrevrank, -- |Determine the index of a member in a sorted set, with scores ordered from high to low (<http://redis.io/commands/zrevrank>).
zscore, -- |Get the score associated with the given member in a sorted set (<http://redis.io/commands/zscore>).
zunionstore, -- |Add multiple sorted sets and store the resulting sorted set in a new key (<http://redis.io/commands/zunionstore>). The Redis command @ZUNIONSTORE@ is split up into 'zunionstore', 'zunionstoreWeights'.
zunionstoreWeights, -- |Add multiple sorted sets and store the resulting sorted set in a new key (<http://redis.io/commands/zunionstore>). The Redis command @ZUNIONSTORE@ is split up into 'zunionstore', 'zunionstoreWeights'.
-- ** Strings
append, -- |Append a value to a key (<http://redis.io/commands/append>).
decr, -- |Decrement the integer value of a key by one (<http://redis.io/commands/decr>).
decrby, -- |Decrement the integer value of a key by the given number (<http://redis.io/commands/decrby>).
get, -- |Get the value of a key (<http://redis.io/commands/get>).
getbit, -- |Returns the bit value at offset in the string value stored at key (<http://redis.io/commands/getbit>).
getrange, -- |Get a substring of the string stored at a key (<http://redis.io/commands/getrange>).
getset, -- |Set the string value of a key and return its old value (<http://redis.io/commands/getset>).
incr, -- |Increment the integer value of a key by one (<http://redis.io/commands/incr>).
incrby, -- |Increment the integer value of a key by the given number (<http://redis.io/commands/incrby>).
mget, -- |Get the values of all the given keys (<http://redis.io/commands/mget>).
mset, -- |Set multiple keys to multiple values (<http://redis.io/commands/mset>).
msetnx, -- |Set multiple keys to multiple values, only if none of the keys exist (<http://redis.io/commands/msetnx>).
set, -- |Set the string value of a key (<http://redis.io/commands/set>).
setbit, -- |Sets or clears the bit at offset in the string value stored at key (<http://redis.io/commands/setbit>).
setex, -- |Set the value and expiration of a key (<http://redis.io/commands/setex>).
setnx, -- |Set the value of a key, only if the key does not exist (<http://redis.io/commands/setnx>).
setrange, -- |Overwrite part of a string at key starting at the specified offset (<http://redis.io/commands/setrange>).
strlen, -- |Get the length of the value stored in a key (<http://redis.io/commands/strlen>).
-- ** Transactions
discard, -- |Discard all commands issued after MULTI (<http://redis.io/commands/discard>).
exec, -- |Execute all commands issued after MULTI (<http://redis.io/commands/exec>).
multi, -- |Mark the start of a transaction block (<http://redis.io/commands/multi>).
unwatch, -- |Forget about all watched keys (<http://redis.io/commands/unwatch>).
watch, -- |Watch the given keys to determine execution of the MULTI/EXEC block (<http://redis.io/commands/watch>).
-- * Unimplemented Commands
-- |These commands are not implemented, as of now.
--
-- * EVAL (<http://redis.io/commands/eval>)
--
--
-- * MONITOR (<http://redis.io/commands/monitor>)
--
--
-- * SYNC (<http://redis.io/commands/sync>)
--
) where
import Prelude hiding (min,max)
import Data.ByteString (ByteString)
import Database.Redis.ManualCommands
import Database.Redis.Types
import Database.Redis.Core
import Database.Redis.Reply
flushall
:: Redis (Either Reply Status)
flushall = sendRequest (["FLUSHALL"] )
hdel
:: ByteString -- ^ key
-> [ByteString] -- ^ field
-> Redis (Either Reply Bool)
hdel key field = sendRequest (["HDEL"] ++ [encode key] ++ map encode field )
hincrby
:: ByteString -- ^ key
-> ByteString -- ^ field
-> Integer -- ^ increment
-> Redis (Either Reply Integer)
hincrby key field increment = sendRequest (["HINCRBY"] ++ [encode key] ++ [encode field] ++ [encode increment] )
configResetstat
:: Redis (Either Reply Status)
configResetstat = sendRequest (["CONFIG","RESETSTAT"] )
del
:: [ByteString] -- ^ key
-> Redis (Either Reply Integer)
del key = sendRequest (["DEL"] ++ map encode key )
zrevrank
:: ByteString -- ^ key
-> ByteString -- ^ member
-> Redis (Either Reply Integer)
zrevrank key member = sendRequest (["ZREVRANK"] ++ [encode key] ++ [encode member] )
brpoplpush
:: ByteString -- ^ source
-> ByteString -- ^ destination
-> Integer -- ^ timeout
-> Redis (Either Reply ByteString)
brpoplpush source destination timeout = sendRequest (["BRPOPLPUSH"] ++ [encode source] ++ [encode destination] ++ [encode timeout] )
incrby
:: ByteString -- ^ key
-> Integer -- ^ increment
-> Redis (Either Reply Integer)
incrby key increment = sendRequest (["INCRBY"] ++ [encode key] ++ [encode increment] )
rpop
:: ByteString -- ^ key
-> Redis (Either Reply ByteString)
rpop key = sendRequest (["RPOP"] ++ [encode key] )
setrange
:: ByteString -- ^ key
-> Integer -- ^ offset
-> ByteString -- ^ value
-> Redis (Either Reply Integer)
setrange key offset value = sendRequest (["SETRANGE"] ++ [encode key] ++ [encode offset] ++ [encode value] )
setbit
:: ByteString -- ^ key
-> Integer -- ^ offset
-> ByteString -- ^ value
-> Redis (Either Reply Integer)
setbit key offset value = sendRequest (["SETBIT"] ++ [encode key] ++ [encode offset] ++ [encode value] )
save
:: Redis (Either Reply Status)
save = sendRequest (["SAVE"] )
echo
:: ByteString -- ^ message
-> Redis (Either Reply ByteString)
echo message = sendRequest (["ECHO"] ++ [encode message] )
blpop
:: [ByteString] -- ^ key
-> Integer -- ^ timeout
-> Redis (Either Reply (ByteString,ByteString))
blpop key timeout = sendRequest (["BLPOP"] ++ map encode key ++ [encode timeout] )
sdiffstore
:: ByteString -- ^ destination
-> [ByteString] -- ^ key
-> Redis (Either Reply Integer)
sdiffstore destination key = sendRequest (["SDIFFSTORE"] ++ [encode destination] ++ map encode key )
move
:: ByteString -- ^ key
-> Integer -- ^ db
-> Redis (Either Reply Bool)
move key db = sendRequest (["MOVE"] ++ [encode key] ++ [encode db] )
multi
:: Redis (Either Reply Status)
multi = sendRequest (["MULTI"] )
getrange
:: ByteString -- ^ key
-> Integer -- ^ start
-> Integer -- ^ end
-> Redis (Either Reply ByteString)
getrange key start end = sendRequest (["GETRANGE"] ++ [encode key] ++ [encode start] ++ [encode end] )
srem
:: ByteString -- ^ key
-> [ByteString] -- ^ member
-> Redis (Either Reply Integer)
srem key member = sendRequest (["SREM"] ++ [encode key] ++ map encode member )
watch
:: [ByteString] -- ^ key
-> Redis (Either Reply Status)
watch key = sendRequest (["WATCH"] ++ map encode key )
getbit
:: ByteString -- ^ key
-> Integer -- ^ offset
-> Redis (Either Reply Integer)
getbit key offset = sendRequest (["GETBIT"] ++ [encode key] ++ [encode offset] )
zcount
:: ByteString -- ^ key
-> Double -- ^ min
-> Double -- ^ max
-> Redis (Either Reply Integer)
zcount key min max = sendRequest (["ZCOUNT"] ++ [encode key] ++ [encode min] ++ [encode max] )
quit
:: Redis (Either Reply Status)
quit = sendRequest (["QUIT"] )
msetnx
:: [(ByteString,ByteString)] -- ^ keyValue
-> Redis (Either Reply Bool)
msetnx keyValue = sendRequest (["MSETNX"] ++ concatMap (\(x,y) -> [encode x,encode y])keyValue )
sismember
:: ByteString -- ^ key
-> ByteString -- ^ member
-> Redis (Either Reply Bool)
sismember key member = sendRequest (["SISMEMBER"] ++ [encode key] ++ [encode member] )
bgrewriteaof
:: Redis (Either Reply Status)
bgrewriteaof = sendRequest (["BGREWRITEAOF"] )
hmset
:: ByteString -- ^ key
-> [(ByteString,ByteString)] -- ^ fieldValue
-> Redis (Either Reply Status)
hmset key fieldValue = sendRequest (["HMSET"] ++ [encode key] ++ concatMap (\(x,y) -> [encode x,encode y])fieldValue )
scard
:: ByteString -- ^ key
-> Redis (Either Reply Integer)
scard key = sendRequest (["SCARD"] ++ [encode key] )
zincrby
:: ByteString -- ^ key
-> Integer -- ^ increment
-> ByteString -- ^ member
-> Redis (Either Reply Double)
zincrby key increment member = sendRequest (["ZINCRBY"] ++ [encode key] ++ [encode increment] ++ [encode member] )
sinter
:: [ByteString] -- ^ key
-> Redis (Either Reply [ByteString])
sinter key = sendRequest (["SINTER"] ++ map encode key )
mset
:: [(ByteString,ByteString)] -- ^ keyValue
-> Redis (Either Reply Status)
mset keyValue = sendRequest (["MSET"] ++ concatMap (\(x,y) -> [encode x,encode y])keyValue )
rpoplpush
:: ByteString -- ^ source
-> ByteString -- ^ destination
-> Redis (Either Reply ByteString)
rpoplpush source destination = sendRequest (["RPOPLPUSH"] ++ [encode source] ++ [encode destination] )
hlen
:: ByteString -- ^ key
-> Redis (Either Reply Integer)
hlen key = sendRequest (["HLEN"] ++ [encode key] )
setex
:: ByteString -- ^ key
-> Integer -- ^ seconds
-> ByteString -- ^ value
-> Redis (Either Reply Status)
setex key seconds value = sendRequest (["SETEX"] ++ [encode key] ++ [encode seconds] ++ [encode value] )
sunionstore
:: ByteString -- ^ destination
-> [ByteString] -- ^ key
-> Redis (Either Reply Integer)
sunionstore destination key = sendRequest (["SUNIONSTORE"] ++ [encode destination] ++ map encode key )
brpop
:: [ByteString] -- ^ key
-> Integer -- ^ timeout
-> Redis (Either Reply (ByteString,ByteString))
brpop key timeout = sendRequest (["BRPOP"] ++ map encode key ++ [encode timeout] )
hgetall
:: ByteString -- ^ key
-> Redis (Either Reply [(ByteString,ByteString)])
hgetall key = sendRequest (["HGETALL"] ++ [encode key] )
dbsize
:: Redis (Either Reply Integer)
dbsize = sendRequest (["DBSIZE"] )
lpop
:: ByteString -- ^ key
-> Redis (Either Reply ByteString)
lpop key = sendRequest (["LPOP"] ++ [encode key] )
hmget
:: ByteString -- ^ key
-> [ByteString] -- ^ field
-> Redis (Either Reply [Maybe ByteString])
hmget key field = sendRequest (["HMGET"] ++ [encode key] ++ map encode field )
lrange
:: ByteString -- ^ key
-> Integer -- ^ start
-> Integer -- ^ stop
-> Redis (Either Reply [ByteString])
lrange key start stop = sendRequest (["LRANGE"] ++ [encode key] ++ [encode start] ++ [encode stop] )
expire
:: ByteString -- ^ key
-> Integer -- ^ seconds
-> Redis (Either Reply Bool)
expire key seconds = sendRequest (["EXPIRE"] ++ [encode key] ++ [encode seconds] )
lastsave
:: Redis (Either Reply Integer)
lastsave = sendRequest (["LASTSAVE"] )
llen
:: ByteString -- ^ key
-> Redis (Either Reply Integer)
llen key = sendRequest (["LLEN"] ++ [encode key] )
decrby
:: ByteString -- ^ key
-> Integer -- ^ decrement
-> Redis (Either Reply Integer)
decrby key decrement = sendRequest (["DECRBY"] ++ [encode key] ++ [encode decrement] )
exec
:: Redis (Either Reply Reply)
exec = sendRequest (["EXEC"] )
mget
:: [ByteString] -- ^ key
-> Redis (Either Reply [Maybe ByteString])
mget key = sendRequest (["MGET"] ++ map encode key )
zadd
:: ByteString -- ^ key
-> [(Double,ByteString)] -- ^ scoreMember
-> Redis (Either Reply Integer)
zadd key scoreMember = sendRequest (["ZADD"] ++ [encode key] ++ concatMap (\(x,y) -> [encode x,encode y])scoreMember )
keys
:: ByteString -- ^ pattern
-> Redis (Either Reply [ByteString])
keys pattern = sendRequest (["KEYS"] ++ [encode pattern] )
bgsave
:: Redis (Either Reply Status)
bgsave = sendRequest (["BGSAVE"] )
slaveof
:: ByteString -- ^ host
-> ByteString -- ^ port
-> Redis (Either Reply Status)
slaveof host port = sendRequest (["SLAVEOF"] ++ [encode host] ++ [encode port] )
debugObject
:: ByteString -- ^ key
-> Redis (Either Reply ByteString)
debugObject key = sendRequest (["DEBUG","OBJECT"] ++ [encode key] )
getset
:: ByteString -- ^ key
-> ByteString -- ^ value
-> Redis (Either Reply (Maybe ByteString))
getset key value = sendRequest (["GETSET"] ++ [encode key] ++ [encode value] )
rpushx
:: ByteString -- ^ key
-> ByteString -- ^ value
-> Redis (Either Reply Integer)
rpushx key value = sendRequest (["RPUSHX"] ++ [encode key] ++ [encode value] )
setnx
:: ByteString -- ^ key
-> ByteString -- ^ value
-> Redis (Either Reply Bool)
setnx key value = sendRequest (["SETNX"] ++ [encode key] ++ [encode value] )
zrank
:: ByteString -- ^ key
-> ByteString -- ^ member
-> Redis (Either Reply Integer)
zrank key member = sendRequest (["ZRANK"] ++ [encode key] ++ [encode member] )
zremrangebyscore
:: ByteString -- ^ key
-> Double -- ^ min
-> Double -- ^ max
-> Redis (Either Reply Integer)
zremrangebyscore key min max = sendRequest (["ZREMRANGEBYSCORE"] ++ [encode key] ++ [encode min] ++ [encode max] )
ttl
:: ByteString -- ^ key
-> Redis (Either Reply Integer)
ttl key = sendRequest (["TTL"] ++ [encode key] )
hkeys
:: ByteString -- ^ key
-> Redis (Either Reply [ByteString])
hkeys key = sendRequest (["HKEYS"] ++ [encode key] )
rpush
:: ByteString -- ^ key
-> [ByteString] -- ^ value
-> Redis (Either Reply Integer)
rpush key value = sendRequest (["RPUSH"] ++ [encode key] ++ map encode value )
randomkey
:: Redis (Either Reply ByteString)
randomkey = sendRequest (["RANDOMKEY"] )
spop
:: ByteString -- ^ key
-> Redis (Either Reply ByteString)
spop key = sendRequest (["SPOP"] ++ [encode key] )
hsetnx
:: ByteString -- ^ key
-> ByteString -- ^ field
-> ByteString -- ^ value
-> Redis (Either Reply Bool)
hsetnx key field value = sendRequest (["HSETNX"] ++ [encode key] ++ [encode field] ++ [encode value] )
configGet
:: ByteString -- ^ parameter
-> Redis (Either Reply [(ByteString,ByteString)])
configGet parameter = sendRequest (["CONFIG","GET"] ++ [encode parameter] )
hvals
:: ByteString -- ^ key
-> Redis (Either Reply [ByteString])
hvals key = sendRequest (["HVALS"] ++ [encode key] )
exists
:: ByteString -- ^ key
-> Redis (Either Reply Bool)
exists key = sendRequest (["EXISTS"] ++ [encode key] )
sunion
:: [ByteString] -- ^ key
-> Redis (Either Reply [ByteString])
sunion key = sendRequest (["SUNION"] ++ map encode key )
zrem
:: ByteString -- ^ key
-> [ByteString] -- ^ member
-> Redis (Either Reply Integer)
zrem key member = sendRequest (["ZREM"] ++ [encode key] ++ map encode member )
smembers
:: ByteString -- ^ key
-> Redis (Either Reply [ByteString])
smembers key = sendRequest (["SMEMBERS"] ++ [encode key] )
ping
:: Redis (Either Reply Status)
ping = sendRequest (["PING"] )
rename
:: ByteString -- ^ key
-> ByteString -- ^ newkey
-> Redis (Either Reply Status)
rename key newkey = sendRequest (["RENAME"] ++ [encode key] ++ [encode newkey] )
decr
:: ByteString -- ^ key
-> Redis (Either Reply Integer)
decr key = sendRequest (["DECR"] ++ [encode key] )
select
:: Integer -- ^ index
-> Redis (Either Reply Status)
select index = sendRequest (["SELECT"] ++ [encode index] )
hexists
:: ByteString -- ^ key
-> ByteString -- ^ field
-> Redis (Either Reply Bool)
hexists key field = sendRequest (["HEXISTS"] ++ [encode key] ++ [encode field] )
auth
:: ByteString -- ^ password
-> Redis (Either Reply Status)
auth password = sendRequest (["AUTH"] ++ [encode password] )
sinterstore
:: ByteString -- ^ destination
-> [ByteString] -- ^ key
-> Redis (Either Reply Integer)
sinterstore destination key = sendRequest (["SINTERSTORE"] ++ [encode destination] ++ map encode key )
shutdown
:: Redis (Either Reply Status)
shutdown = sendRequest (["SHUTDOWN"] )
configSet
:: ByteString -- ^ parameter
-> ByteString -- ^ value
-> Redis (Either Reply Status)
configSet parameter value = sendRequest (["CONFIG","SET"] ++ [encode parameter] ++ [encode value] )
renamenx
:: ByteString -- ^ key
-> ByteString -- ^ newkey
-> Redis (Either Reply Bool)
renamenx key newkey = sendRequest (["RENAMENX"] ++ [encode key] ++ [encode newkey] )
expireat
:: ByteString -- ^ key
-> Integer -- ^ timestamp
-> Redis (Either Reply Bool)
expireat key timestamp = sendRequest (["EXPIREAT"] ++ [encode key] ++ [encode timestamp] )
get
:: ByteString -- ^ key
-> Redis (Either Reply (Maybe ByteString))
get key = sendRequest (["GET"] ++ [encode key] )
lrem
:: ByteString -- ^ key
-> Integer -- ^ count
-> ByteString -- ^ value
-> Redis (Either Reply Integer)
lrem key count value = sendRequest (["LREM"] ++ [encode key] ++ [encode count] ++ [encode value] )
incr
:: ByteString -- ^ key
-> Redis (Either Reply Integer)
incr key = sendRequest (["INCR"] ++ [encode key] )
zcard
:: ByteString -- ^ key
-> Redis (Either Reply Integer)
zcard key = sendRequest (["ZCARD"] ++ [encode key] )
ltrim
:: ByteString -- ^ key
-> Integer -- ^ start
-> Integer -- ^ stop
-> Redis (Either Reply Status)
ltrim key start stop = sendRequest (["LTRIM"] ++ [encode key] ++ [encode start] ++ [encode stop] )
append
:: ByteString -- ^ key
-> ByteString -- ^ value
-> Redis (Either Reply Integer)
append key value = sendRequest (["APPEND"] ++ [encode key] ++ [encode value] )
lset
:: ByteString -- ^ key
-> Integer -- ^ index
-> ByteString -- ^ value
-> Redis (Either Reply Status)
lset key index value = sendRequest (["LSET"] ++ [encode key] ++ [encode index] ++ [encode value] )
info
:: Redis (Either Reply ByteString)
info = sendRequest (["INFO"] )
hget
:: ByteString -- ^ key
-> ByteString -- ^ field
-> Redis (Either Reply (Maybe ByteString))
hget key field = sendRequest (["HGET"] ++ [encode key] ++ [encode field] )
sdiff
:: [ByteString] -- ^ key
-> Redis (Either Reply [ByteString])
sdiff key = sendRequest (["SDIFF"] ++ map encode key )
smove
:: ByteString -- ^ source
-> ByteString -- ^ destination
-> ByteString -- ^ member
-> Redis (Either Reply Bool)
smove source destination member = sendRequest (["SMOVE"] ++ [encode source] ++ [encode destination] ++ [encode member] )
flushdb
:: Redis (Either Reply Status)
flushdb = sendRequest (["FLUSHDB"] )
set
:: ByteString -- ^ key
-> ByteString -- ^ value
-> Redis (Either Reply Status)
set key value = sendRequest (["SET"] ++ [encode key] ++ [encode value] )
zremrangebyrank
:: ByteString -- ^ key
-> Integer -- ^ start
-> Integer -- ^ stop
-> Redis (Either Reply Integer)
zremrangebyrank key start stop = sendRequest (["ZREMRANGEBYRANK"] ++ [encode key] ++ [encode start] ++ [encode stop] )
sadd
:: ByteString -- ^ key
-> [ByteString] -- ^ member
-> Redis (Either Reply Integer)
sadd key member = sendRequest (["SADD"] ++ [encode key] ++ map encode member )
lpush
:: ByteString -- ^ key
-> [ByteString] -- ^ value
-> Redis (Either Reply Integer)
lpush key value = sendRequest (["LPUSH"] ++ [encode key] ++ map encode value )
lindex
:: ByteString -- ^ key
-> Integer -- ^ index
-> Redis (Either Reply ByteString)
lindex key index = sendRequest (["LINDEX"] ++ [encode key] ++ [encode index] )
zscore
:: ByteString -- ^ key
-> ByteString -- ^ member
-> Redis (Either Reply Double)
zscore key member = sendRequest (["ZSCORE"] ++ [encode key] ++ [encode member] )
strlen
:: ByteString -- ^ key
-> Redis (Either Reply Integer)
strlen key = sendRequest (["STRLEN"] ++ [encode key] )
unwatch
:: Redis (Either Reply Status)
unwatch = sendRequest (["UNWATCH"] )
hset
:: ByteString -- ^ key
-> ByteString -- ^ field
-> ByteString -- ^ value
-> Redis (Either Reply Bool)
hset key field value = sendRequest (["HSET"] ++ [encode key] ++ [encode field] ++ [encode value] )
lpushx
:: ByteString -- ^ key
-> ByteString -- ^ value
-> Redis (Either Reply Integer)
lpushx key value = sendRequest (["LPUSHX"] ++ [encode key] ++ [encode value] )
discard
:: Redis (Either Reply Status)
discard = sendRequest (["DISCARD"] )
debugSegfault
:: Redis (Either Reply Status)
debugSegfault = sendRequest (["DEBUG","SEGFAULT"] )
srandmember
:: ByteString -- ^ key
-> Redis (Either Reply ByteString)
srandmember key = sendRequest (["SRANDMEMBER"] ++ [encode key] )
persist
:: ByteString -- ^ key
-> Redis (Either Reply Bool)
persist key = sendRequest (["PERSIST"] ++ [encode key] )
-- * Unimplemented Commands
-- |These commands are not implemented, as of now.
--
-- * EVAL (<http://redis.io/commands/eval>)
--
--
-- * MONITOR (<http://redis.io/commands/monitor>)
--
--
-- * SYNC (<http://redis.io/commands/sync>)
--