hedis 0.6.9 → 0.6.10
raw patch · 3 files changed
+456/−410 lines, 3 filesnew-uploaderPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Database.Redis: connectAuth :: ConnectInfo -> Maybe ByteString
- Database.Redis: connectDatabase :: ConnectInfo -> Integer
- Database.Redis: connectHost :: ConnectInfo -> HostName
- Database.Redis: connectMaxConnections :: ConnectInfo -> Int
- Database.Redis: connectMaxIdleTime :: ConnectInfo -> NominalDiffTime
- Database.Redis: connectPort :: ConnectInfo -> PortID
- Database.Redis: msgChannel :: Message -> ByteString
- Database.Redis: msgMessage :: Message -> ByteString
- Database.Redis: msgPattern :: Message -> ByteString
- Database.Redis: slowlogCmd :: Slowlog -> [ByteString]
- Database.Redis: slowlogId :: Slowlog -> Integer
- Database.Redis: slowlogMicros :: Slowlog -> Integer
- Database.Redis: slowlogTimestamp :: Slowlog -> Integer
- Database.Redis: sortAlpha :: SortOpts -> Bool
- Database.Redis: sortBy :: SortOpts -> Maybe ByteString
- Database.Redis: sortGet :: SortOpts -> [ByteString]
- Database.Redis: sortLimit :: SortOpts -> (Integer, Integer)
- Database.Redis: sortOrder :: SortOpts -> SortOrder
+ Database.Redis: [connectAuth] :: ConnectInfo -> Maybe ByteString
+ Database.Redis: [connectDatabase] :: ConnectInfo -> Integer
+ Database.Redis: [connectHost] :: ConnectInfo -> HostName
+ Database.Redis: [connectMaxConnections] :: ConnectInfo -> Int
+ Database.Redis: [connectMaxIdleTime] :: ConnectInfo -> NominalDiffTime
+ Database.Redis: [connectPort] :: ConnectInfo -> PortID
+ Database.Redis: [msgChannel, msgMessage] :: Message -> ByteString
+ Database.Redis: [msgPattern, msgChannel, msgMessage] :: Message -> ByteString
+ Database.Redis: [slowlogCmd] :: Slowlog -> [ByteString]
+ Database.Redis: [slowlogId] :: Slowlog -> Integer
+ Database.Redis: [slowlogMicros] :: Slowlog -> Integer
+ Database.Redis: [slowlogTimestamp] :: Slowlog -> Integer
+ Database.Redis: [sortAlpha] :: SortOpts -> Bool
+ Database.Redis: [sortBy] :: SortOpts -> Maybe ByteString
+ Database.Redis: [sortGet] :: SortOpts -> [ByteString]
+ Database.Redis: [sortLimit] :: SortOpts -> (Integer, Integer)
+ Database.Redis: [sortOrder] :: SortOpts -> SortOrder
+ Database.Redis: pfadd :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: pfcount :: (RedisCtx m f) => [ByteString] -> m (f Integer)
+ Database.Redis: pfmerge :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f ByteString)
- Database.Redis: Message :: ByteString -> ByteString -> Message
+ Database.Redis: Message :: ByteString -> Message
- Database.Redis: PMessage :: ByteString -> ByteString -> ByteString -> Message
+ Database.Redis: PMessage :: ByteString -> Message
- Database.Redis: append :: RedisCtx m f => ByteString -> ByteString -> m (f Integer)
+ Database.Redis: append :: (RedisCtx m f) => ByteString -> ByteString -> m (f Integer)
- Database.Redis: bgrewriteaof :: RedisCtx m f => m (f Status)
+ Database.Redis: bgrewriteaof :: (RedisCtx m f) => m (f Status)
- Database.Redis: bgsave :: RedisCtx m f => m (f Status)
+ Database.Redis: bgsave :: (RedisCtx m f) => m (f Status)
- Database.Redis: bitcount :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: bitcount :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: bitcountRange :: RedisCtx m f => ByteString -> Integer -> Integer -> m (f Integer)
+ Database.Redis: bitcountRange :: (RedisCtx m f) => ByteString -> Integer -> Integer -> m (f Integer)
- Database.Redis: bitopAnd :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: bitopAnd :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: bitopNot :: RedisCtx m f => ByteString -> ByteString -> m (f Integer)
+ Database.Redis: bitopNot :: (RedisCtx m f) => ByteString -> ByteString -> m (f Integer)
- Database.Redis: bitopOr :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: bitopOr :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: bitopXor :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: bitopXor :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: blpop :: RedisCtx m f => [ByteString] -> Integer -> m (f (Maybe (ByteString, ByteString)))
+ Database.Redis: blpop :: (RedisCtx m f) => [ByteString] -> Integer -> m (f (Maybe (ByteString, ByteString)))
- Database.Redis: brpop :: RedisCtx m f => [ByteString] -> Integer -> m (f (Maybe (ByteString, ByteString)))
+ Database.Redis: brpop :: (RedisCtx m f) => [ByteString] -> Integer -> m (f (Maybe (ByteString, ByteString)))
- Database.Redis: brpoplpush :: RedisCtx m f => ByteString -> ByteString -> Integer -> m (f (Maybe ByteString))
+ Database.Redis: brpoplpush :: (RedisCtx m f) => ByteString -> ByteString -> Integer -> m (f (Maybe ByteString))
- Database.Redis: class Monad m => MonadRedis m
+ Database.Redis: class (Monad m) => MonadRedis m
- Database.Redis: class MonadRedis m => RedisCtx m f | m -> f
+ Database.Redis: class (MonadRedis m) => RedisCtx m f | m -> f
- Database.Redis: configGet :: RedisCtx m f => ByteString -> m (f [(ByteString, ByteString)])
+ Database.Redis: configGet :: (RedisCtx m f) => ByteString -> m (f [(ByteString, ByteString)])
- Database.Redis: configResetstat :: RedisCtx m f => m (f Status)
+ Database.Redis: configResetstat :: (RedisCtx m f) => m (f Status)
- Database.Redis: configSet :: RedisCtx m f => ByteString -> ByteString -> m (f Status)
+ Database.Redis: configSet :: (RedisCtx m f) => ByteString -> ByteString -> m (f Status)
- Database.Redis: dbsize :: RedisCtx m f => m (f Integer)
+ Database.Redis: dbsize :: (RedisCtx m f) => m (f Integer)
- Database.Redis: debugObject :: RedisCtx m f => ByteString -> m (f ByteString)
+ Database.Redis: debugObject :: (RedisCtx m f) => ByteString -> m (f ByteString)
- Database.Redis: decr :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: decr :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: decrby :: RedisCtx m f => ByteString -> Integer -> m (f Integer)
+ Database.Redis: decrby :: (RedisCtx m f) => ByteString -> Integer -> m (f Integer)
- Database.Redis: del :: RedisCtx m f => [ByteString] -> m (f Integer)
+ Database.Redis: del :: (RedisCtx m f) => [ByteString] -> m (f Integer)
- Database.Redis: dump :: RedisCtx m f => ByteString -> m (f ByteString)
+ Database.Redis: dump :: (RedisCtx m f) => ByteString -> m (f ByteString)
- Database.Redis: echo :: RedisCtx m f => ByteString -> m (f ByteString)
+ Database.Redis: echo :: (RedisCtx m f) => ByteString -> m (f ByteString)
- Database.Redis: exists :: RedisCtx m f => ByteString -> m (f Bool)
+ Database.Redis: exists :: (RedisCtx m f) => ByteString -> m (f Bool)
- Database.Redis: expire :: RedisCtx m f => ByteString -> Integer -> m (f Bool)
+ Database.Redis: expire :: (RedisCtx m f) => ByteString -> Integer -> m (f Bool)
- Database.Redis: expireat :: RedisCtx m f => ByteString -> Integer -> m (f Bool)
+ Database.Redis: expireat :: (RedisCtx m f) => ByteString -> Integer -> m (f Bool)
- Database.Redis: flushall :: RedisCtx m f => m (f Status)
+ Database.Redis: flushall :: (RedisCtx m f) => m (f Status)
- Database.Redis: flushdb :: RedisCtx m f => m (f Status)
+ Database.Redis: flushdb :: (RedisCtx m f) => m (f Status)
- Database.Redis: get :: RedisCtx m f => ByteString -> m (f (Maybe ByteString))
+ Database.Redis: get :: (RedisCtx m f) => ByteString -> m (f (Maybe ByteString))
- Database.Redis: getType :: RedisCtx m f => ByteString -> m (f RedisType)
+ Database.Redis: getType :: (RedisCtx m f) => ByteString -> m (f RedisType)
- Database.Redis: getbit :: RedisCtx m f => ByteString -> Integer -> m (f Integer)
+ Database.Redis: getbit :: (RedisCtx m f) => ByteString -> Integer -> m (f Integer)
- Database.Redis: getrange :: RedisCtx m f => ByteString -> Integer -> Integer -> m (f ByteString)
+ Database.Redis: getrange :: (RedisCtx m f) => ByteString -> Integer -> Integer -> m (f ByteString)
- Database.Redis: getset :: RedisCtx m f => ByteString -> ByteString -> m (f (Maybe ByteString))
+ Database.Redis: getset :: (RedisCtx m f) => ByteString -> ByteString -> m (f (Maybe ByteString))
- Database.Redis: hdel :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: hdel :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: hexists :: RedisCtx m f => ByteString -> ByteString -> m (f Bool)
+ Database.Redis: hexists :: (RedisCtx m f) => ByteString -> ByteString -> m (f Bool)
- Database.Redis: hget :: RedisCtx m f => ByteString -> ByteString -> m (f (Maybe ByteString))
+ Database.Redis: hget :: (RedisCtx m f) => ByteString -> ByteString -> m (f (Maybe ByteString))
- Database.Redis: hgetall :: RedisCtx m f => ByteString -> m (f [(ByteString, ByteString)])
+ Database.Redis: hgetall :: (RedisCtx m f) => ByteString -> m (f [(ByteString, ByteString)])
- Database.Redis: hincrby :: RedisCtx m f => ByteString -> ByteString -> Integer -> m (f Integer)
+ Database.Redis: hincrby :: (RedisCtx m f) => ByteString -> ByteString -> Integer -> m (f Integer)
- Database.Redis: hincrbyfloat :: RedisCtx m f => ByteString -> ByteString -> Double -> m (f Double)
+ Database.Redis: hincrbyfloat :: (RedisCtx m f) => ByteString -> ByteString -> Double -> m (f Double)
- Database.Redis: hkeys :: RedisCtx m f => ByteString -> m (f [ByteString])
+ Database.Redis: hkeys :: (RedisCtx m f) => ByteString -> m (f [ByteString])
- Database.Redis: hlen :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: hlen :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: hmget :: RedisCtx m f => ByteString -> [ByteString] -> m (f [Maybe ByteString])
+ Database.Redis: hmget :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f [Maybe ByteString])
- Database.Redis: hmset :: RedisCtx m f => ByteString -> [(ByteString, ByteString)] -> m (f Status)
+ Database.Redis: hmset :: (RedisCtx m f) => ByteString -> [(ByteString, ByteString)] -> m (f Status)
- Database.Redis: hset :: RedisCtx m f => ByteString -> ByteString -> ByteString -> m (f Bool)
+ Database.Redis: hset :: (RedisCtx m f) => ByteString -> ByteString -> ByteString -> m (f Bool)
- Database.Redis: hsetnx :: RedisCtx m f => ByteString -> ByteString -> ByteString -> m (f Bool)
+ Database.Redis: hsetnx :: (RedisCtx m f) => ByteString -> ByteString -> ByteString -> m (f Bool)
- Database.Redis: hvals :: RedisCtx m f => ByteString -> m (f [ByteString])
+ Database.Redis: hvals :: (RedisCtx m f) => ByteString -> m (f [ByteString])
- Database.Redis: incr :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: incr :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: incrby :: RedisCtx m f => ByteString -> Integer -> m (f Integer)
+ Database.Redis: incrby :: (RedisCtx m f) => ByteString -> Integer -> m (f Integer)
- Database.Redis: incrbyfloat :: RedisCtx m f => ByteString -> Double -> m (f Double)
+ Database.Redis: incrbyfloat :: (RedisCtx m f) => ByteString -> Double -> m (f Double)
- Database.Redis: info :: RedisCtx m f => m (f ByteString)
+ Database.Redis: info :: (RedisCtx m f) => m (f ByteString)
- Database.Redis: keys :: RedisCtx m f => ByteString -> m (f [ByteString])
+ Database.Redis: keys :: (RedisCtx m f) => ByteString -> m (f [ByteString])
- Database.Redis: lastsave :: RedisCtx m f => m (f Integer)
+ Database.Redis: lastsave :: (RedisCtx m f) => m (f Integer)
- Database.Redis: lindex :: RedisCtx m f => ByteString -> Integer -> m (f (Maybe ByteString))
+ Database.Redis: lindex :: (RedisCtx m f) => ByteString -> Integer -> m (f (Maybe ByteString))
- Database.Redis: linsertAfter :: RedisCtx m f => ByteString -> ByteString -> ByteString -> m (f Integer)
+ Database.Redis: linsertAfter :: (RedisCtx m f) => ByteString -> ByteString -> ByteString -> m (f Integer)
- Database.Redis: linsertBefore :: RedisCtx m f => ByteString -> ByteString -> ByteString -> m (f Integer)
+ Database.Redis: linsertBefore :: (RedisCtx m f) => ByteString -> ByteString -> ByteString -> m (f Integer)
- Database.Redis: llen :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: llen :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: lpop :: RedisCtx m f => ByteString -> m (f (Maybe ByteString))
+ Database.Redis: lpop :: (RedisCtx m f) => ByteString -> m (f (Maybe ByteString))
- Database.Redis: lpush :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: lpush :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: lpushx :: RedisCtx m f => ByteString -> ByteString -> m (f Integer)
+ Database.Redis: lpushx :: (RedisCtx m f) => ByteString -> ByteString -> m (f Integer)
- Database.Redis: lrange :: RedisCtx m f => ByteString -> Integer -> Integer -> m (f [ByteString])
+ Database.Redis: lrange :: (RedisCtx m f) => ByteString -> Integer -> Integer -> m (f [ByteString])
- Database.Redis: lrem :: RedisCtx m f => ByteString -> Integer -> ByteString -> m (f Integer)
+ Database.Redis: lrem :: (RedisCtx m f) => ByteString -> Integer -> ByteString -> m (f Integer)
- Database.Redis: lset :: RedisCtx m f => ByteString -> Integer -> ByteString -> m (f Status)
+ Database.Redis: lset :: (RedisCtx m f) => ByteString -> Integer -> ByteString -> m (f Status)
- Database.Redis: ltrim :: RedisCtx m f => ByteString -> Integer -> Integer -> m (f Status)
+ Database.Redis: ltrim :: (RedisCtx m f) => ByteString -> Integer -> Integer -> m (f Status)
- Database.Redis: mget :: RedisCtx m f => [ByteString] -> m (f [Maybe ByteString])
+ Database.Redis: mget :: (RedisCtx m f) => [ByteString] -> m (f [Maybe ByteString])
- Database.Redis: migrate :: RedisCtx m f => ByteString -> ByteString -> ByteString -> Integer -> Integer -> m (f Status)
+ Database.Redis: migrate :: (RedisCtx m f) => ByteString -> ByteString -> ByteString -> Integer -> Integer -> m (f Status)
- Database.Redis: move :: RedisCtx m f => ByteString -> Integer -> m (f Bool)
+ Database.Redis: move :: (RedisCtx m f) => ByteString -> Integer -> m (f Bool)
- Database.Redis: mset :: RedisCtx m f => [(ByteString, ByteString)] -> m (f Status)
+ Database.Redis: mset :: (RedisCtx m f) => [(ByteString, ByteString)] -> m (f Status)
- Database.Redis: msetnx :: RedisCtx m f => [(ByteString, ByteString)] -> m (f Bool)
+ Database.Redis: msetnx :: (RedisCtx m f) => [(ByteString, ByteString)] -> m (f Bool)
- Database.Redis: objectEncoding :: RedisCtx m f => ByteString -> m (f ByteString)
+ Database.Redis: objectEncoding :: (RedisCtx m f) => ByteString -> m (f ByteString)
- Database.Redis: objectIdletime :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: objectIdletime :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: objectRefcount :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: objectRefcount :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: persist :: RedisCtx m f => ByteString -> m (f Bool)
+ Database.Redis: persist :: (RedisCtx m f) => ByteString -> m (f Bool)
- Database.Redis: pexpire :: RedisCtx m f => ByteString -> Integer -> m (f Bool)
+ Database.Redis: pexpire :: (RedisCtx m f) => ByteString -> Integer -> m (f Bool)
- Database.Redis: pexpireat :: RedisCtx m f => ByteString -> Integer -> m (f Bool)
+ Database.Redis: pexpireat :: (RedisCtx m f) => ByteString -> Integer -> m (f Bool)
- Database.Redis: ping :: RedisCtx m f => m (f Status)
+ Database.Redis: ping :: (RedisCtx m f) => m (f Status)
- Database.Redis: psetex :: RedisCtx m f => ByteString -> Integer -> ByteString -> m (f Status)
+ Database.Redis: psetex :: (RedisCtx m f) => ByteString -> Integer -> ByteString -> m (f Status)
- Database.Redis: pttl :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: pttl :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: publish :: RedisCtx m f => ByteString -> ByteString -> m (f Integer)
+ Database.Redis: publish :: (RedisCtx m f) => ByteString -> ByteString -> m (f Integer)
- Database.Redis: quit :: RedisCtx m f => m (f Status)
+ Database.Redis: quit :: (RedisCtx m f) => m (f Status)
- Database.Redis: randomkey :: RedisCtx m f => m (f (Maybe ByteString))
+ Database.Redis: randomkey :: (RedisCtx m f) => m (f (Maybe ByteString))
- Database.Redis: rename :: RedisCtx m f => ByteString -> ByteString -> m (f Status)
+ Database.Redis: rename :: (RedisCtx m f) => ByteString -> ByteString -> m (f Status)
- Database.Redis: renamenx :: RedisCtx m f => ByteString -> ByteString -> m (f Bool)
+ Database.Redis: renamenx :: (RedisCtx m f) => ByteString -> ByteString -> m (f Bool)
- Database.Redis: restore :: RedisCtx m f => ByteString -> Integer -> ByteString -> m (f Status)
+ Database.Redis: restore :: (RedisCtx m f) => ByteString -> Integer -> ByteString -> m (f Status)
- Database.Redis: rpop :: RedisCtx m f => ByteString -> m (f (Maybe ByteString))
+ Database.Redis: rpop :: (RedisCtx m f) => ByteString -> m (f (Maybe ByteString))
- Database.Redis: rpoplpush :: RedisCtx m f => ByteString -> ByteString -> m (f (Maybe ByteString))
+ Database.Redis: rpoplpush :: (RedisCtx m f) => ByteString -> ByteString -> m (f (Maybe ByteString))
- Database.Redis: rpush :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: rpush :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: rpushx :: RedisCtx m f => ByteString -> ByteString -> m (f Integer)
+ Database.Redis: rpushx :: (RedisCtx m f) => ByteString -> ByteString -> m (f Integer)
- Database.Redis: sadd :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: sadd :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: save :: RedisCtx m f => m (f Status)
+ Database.Redis: save :: (RedisCtx m f) => m (f Status)
- Database.Redis: scard :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: scard :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: scriptExists :: RedisCtx m f => [ByteString] -> m (f [Bool])
+ Database.Redis: scriptExists :: (RedisCtx m f) => [ByteString] -> m (f [Bool])
- Database.Redis: scriptFlush :: RedisCtx m f => m (f Status)
+ Database.Redis: scriptFlush :: (RedisCtx m f) => m (f Status)
- Database.Redis: scriptKill :: RedisCtx m f => m (f Status)
+ Database.Redis: scriptKill :: (RedisCtx m f) => m (f Status)
- Database.Redis: scriptLoad :: RedisCtx m f => ByteString -> m (f ByteString)
+ Database.Redis: scriptLoad :: (RedisCtx m f) => ByteString -> m (f ByteString)
- Database.Redis: sdiff :: RedisCtx m f => [ByteString] -> m (f [ByteString])
+ Database.Redis: sdiff :: (RedisCtx m f) => [ByteString] -> m (f [ByteString])
- Database.Redis: sdiffstore :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: sdiffstore :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: set :: RedisCtx m f => ByteString -> ByteString -> m (f Status)
+ Database.Redis: set :: (RedisCtx m f) => ByteString -> ByteString -> m (f Status)
- Database.Redis: setbit :: RedisCtx m f => ByteString -> Integer -> ByteString -> m (f Integer)
+ Database.Redis: setbit :: (RedisCtx m f) => ByteString -> Integer -> ByteString -> m (f Integer)
- Database.Redis: setex :: RedisCtx m f => ByteString -> Integer -> ByteString -> m (f Status)
+ Database.Redis: setex :: (RedisCtx m f) => ByteString -> Integer -> ByteString -> m (f Status)
- Database.Redis: setnx :: RedisCtx m f => ByteString -> ByteString -> m (f Bool)
+ Database.Redis: setnx :: (RedisCtx m f) => ByteString -> ByteString -> m (f Bool)
- Database.Redis: setrange :: RedisCtx m f => ByteString -> Integer -> ByteString -> m (f Integer)
+ Database.Redis: setrange :: (RedisCtx m f) => ByteString -> Integer -> ByteString -> m (f Integer)
- Database.Redis: sinter :: RedisCtx m f => [ByteString] -> m (f [ByteString])
+ Database.Redis: sinter :: (RedisCtx m f) => [ByteString] -> m (f [ByteString])
- Database.Redis: sinterstore :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: sinterstore :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: sismember :: RedisCtx m f => ByteString -> ByteString -> m (f Bool)
+ Database.Redis: sismember :: (RedisCtx m f) => ByteString -> ByteString -> m (f Bool)
- Database.Redis: slaveof :: RedisCtx m f => ByteString -> ByteString -> m (f Status)
+ Database.Redis: slaveof :: (RedisCtx m f) => ByteString -> ByteString -> m (f Status)
- Database.Redis: slowlogGet :: RedisCtx m f => Integer -> m (f [Slowlog])
+ Database.Redis: slowlogGet :: (RedisCtx m f) => Integer -> m (f [Slowlog])
- Database.Redis: slowlogLen :: RedisCtx m f => m (f Integer)
+ Database.Redis: slowlogLen :: (RedisCtx m f) => m (f Integer)
- Database.Redis: slowlogReset :: RedisCtx m f => m (f Status)
+ Database.Redis: slowlogReset :: (RedisCtx m f) => m (f Status)
- Database.Redis: smembers :: RedisCtx m f => ByteString -> m (f [ByteString])
+ Database.Redis: smembers :: (RedisCtx m f) => ByteString -> m (f [ByteString])
- Database.Redis: smove :: RedisCtx m f => ByteString -> ByteString -> ByteString -> m (f Bool)
+ Database.Redis: smove :: (RedisCtx m f) => ByteString -> ByteString -> ByteString -> m (f Bool)
- Database.Redis: sort :: RedisCtx m f => ByteString -> SortOpts -> m (f [ByteString])
+ Database.Redis: sort :: (RedisCtx m f) => ByteString -> SortOpts -> m (f [ByteString])
- Database.Redis: sortStore :: RedisCtx m f => ByteString -> ByteString -> SortOpts -> m (f Integer)
+ Database.Redis: sortStore :: (RedisCtx m f) => ByteString -> ByteString -> SortOpts -> m (f Integer)
- Database.Redis: spop :: RedisCtx m f => ByteString -> m (f (Maybe ByteString))
+ Database.Redis: spop :: (RedisCtx m f) => ByteString -> m (f (Maybe ByteString))
- Database.Redis: srandmember :: RedisCtx m f => ByteString -> m (f (Maybe ByteString))
+ Database.Redis: srandmember :: (RedisCtx m f) => ByteString -> m (f (Maybe ByteString))
- Database.Redis: srem :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: srem :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: strlen :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: strlen :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: sunion :: RedisCtx m f => [ByteString] -> m (f [ByteString])
+ Database.Redis: sunion :: (RedisCtx m f) => [ByteString] -> m (f [ByteString])
- Database.Redis: sunionstore :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: sunionstore :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: time :: RedisCtx m f => m (f (Integer, Integer))
+ Database.Redis: time :: (RedisCtx m f) => m (f (Integer, Integer))
- Database.Redis: ttl :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: ttl :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: zadd :: RedisCtx m f => ByteString -> [(Double, ByteString)] -> m (f Integer)
+ Database.Redis: zadd :: (RedisCtx m f) => ByteString -> [(Double, ByteString)] -> m (f Integer)
- Database.Redis: zcard :: RedisCtx m f => ByteString -> m (f Integer)
+ Database.Redis: zcard :: (RedisCtx m f) => ByteString -> m (f Integer)
- Database.Redis: zcount :: RedisCtx m f => ByteString -> Double -> Double -> m (f Integer)
+ Database.Redis: zcount :: (RedisCtx m f) => ByteString -> Double -> Double -> m (f Integer)
- Database.Redis: zincrby :: RedisCtx m f => ByteString -> Integer -> ByteString -> m (f Double)
+ Database.Redis: zincrby :: (RedisCtx m f) => ByteString -> Integer -> ByteString -> m (f Double)
- Database.Redis: zinterstore :: RedisCtx m f => ByteString -> [ByteString] -> Aggregate -> m (f Integer)
+ Database.Redis: zinterstore :: (RedisCtx m f) => ByteString -> [ByteString] -> Aggregate -> m (f Integer)
- Database.Redis: zinterstoreWeights :: RedisCtx m f => ByteString -> [(ByteString, Double)] -> Aggregate -> m (f Integer)
+ Database.Redis: zinterstoreWeights :: (RedisCtx m f) => ByteString -> [(ByteString, Double)] -> Aggregate -> m (f Integer)
- Database.Redis: zrange :: RedisCtx m f => ByteString -> Integer -> Integer -> m (f [ByteString])
+ Database.Redis: zrange :: (RedisCtx m f) => ByteString -> Integer -> Integer -> m (f [ByteString])
- Database.Redis: zrangeWithscores :: RedisCtx m f => ByteString -> Integer -> Integer -> m (f [(ByteString, Double)])
+ Database.Redis: zrangeWithscores :: (RedisCtx m f) => ByteString -> Integer -> Integer -> m (f [(ByteString, Double)])
- Database.Redis: zrangebyscore :: RedisCtx m f => ByteString -> Double -> Double -> m (f [ByteString])
+ Database.Redis: zrangebyscore :: (RedisCtx m f) => ByteString -> Double -> Double -> m (f [ByteString])
- Database.Redis: zrangebyscoreLimit :: RedisCtx m f => ByteString -> Double -> Double -> Integer -> Integer -> m (f [ByteString])
+ Database.Redis: zrangebyscoreLimit :: (RedisCtx m f) => ByteString -> Double -> Double -> Integer -> Integer -> m (f [ByteString])
- Database.Redis: zrangebyscoreWithscores :: RedisCtx m f => ByteString -> Double -> Double -> m (f [(ByteString, Double)])
+ Database.Redis: zrangebyscoreWithscores :: (RedisCtx m f) => ByteString -> Double -> Double -> m (f [(ByteString, Double)])
- Database.Redis: zrangebyscoreWithscoresLimit :: RedisCtx m f => ByteString -> Double -> Double -> Integer -> Integer -> m (f [(ByteString, Double)])
+ Database.Redis: zrangebyscoreWithscoresLimit :: (RedisCtx m f) => ByteString -> Double -> Double -> Integer -> Integer -> m (f [(ByteString, Double)])
- Database.Redis: zrank :: RedisCtx m f => ByteString -> ByteString -> m (f (Maybe Integer))
+ Database.Redis: zrank :: (RedisCtx m f) => ByteString -> ByteString -> m (f (Maybe Integer))
- Database.Redis: zrem :: RedisCtx m f => ByteString -> [ByteString] -> m (f Integer)
+ Database.Redis: zrem :: (RedisCtx m f) => ByteString -> [ByteString] -> m (f Integer)
- Database.Redis: zremrangebyrank :: RedisCtx m f => ByteString -> Integer -> Integer -> m (f Integer)
+ Database.Redis: zremrangebyrank :: (RedisCtx m f) => ByteString -> Integer -> Integer -> m (f Integer)
- Database.Redis: zremrangebyscore :: RedisCtx m f => ByteString -> Double -> Double -> m (f Integer)
+ Database.Redis: zremrangebyscore :: (RedisCtx m f) => ByteString -> Double -> Double -> m (f Integer)
- Database.Redis: zrevrange :: RedisCtx m f => ByteString -> Integer -> Integer -> m (f [ByteString])
+ Database.Redis: zrevrange :: (RedisCtx m f) => ByteString -> Integer -> Integer -> m (f [ByteString])
- Database.Redis: zrevrangeWithscores :: RedisCtx m f => ByteString -> Integer -> Integer -> m (f [(ByteString, Double)])
+ Database.Redis: zrevrangeWithscores :: (RedisCtx m f) => ByteString -> Integer -> Integer -> m (f [(ByteString, Double)])
- Database.Redis: zrevrangebyscore :: RedisCtx m f => ByteString -> Double -> Double -> m (f [ByteString])
+ Database.Redis: zrevrangebyscore :: (RedisCtx m f) => ByteString -> Double -> Double -> m (f [ByteString])
- Database.Redis: zrevrangebyscoreLimit :: RedisCtx m f => ByteString -> Double -> Double -> Integer -> Integer -> m (f [ByteString])
+ Database.Redis: zrevrangebyscoreLimit :: (RedisCtx m f) => ByteString -> Double -> Double -> Integer -> Integer -> m (f [ByteString])
- Database.Redis: zrevrangebyscoreWithscores :: RedisCtx m f => ByteString -> Double -> Double -> m (f [(ByteString, Double)])
+ Database.Redis: zrevrangebyscoreWithscores :: (RedisCtx m f) => ByteString -> Double -> Double -> m (f [(ByteString, Double)])
- Database.Redis: zrevrangebyscoreWithscoresLimit :: RedisCtx m f => ByteString -> Double -> Double -> Integer -> Integer -> m (f [(ByteString, Double)])
+ Database.Redis: zrevrangebyscoreWithscoresLimit :: (RedisCtx m f) => ByteString -> Double -> Double -> Integer -> Integer -> m (f [(ByteString, Double)])
- Database.Redis: zrevrank :: RedisCtx m f => ByteString -> ByteString -> m (f (Maybe Integer))
+ Database.Redis: zrevrank :: (RedisCtx m f) => ByteString -> ByteString -> m (f (Maybe Integer))
- Database.Redis: zscore :: RedisCtx m f => ByteString -> ByteString -> m (f (Maybe Double))
+ Database.Redis: zscore :: (RedisCtx m f) => ByteString -> ByteString -> m (f (Maybe Double))
- Database.Redis: zunionstore :: RedisCtx m f => ByteString -> [ByteString] -> Aggregate -> m (f Integer)
+ Database.Redis: zunionstore :: (RedisCtx m f) => ByteString -> [ByteString] -> Aggregate -> m (f Integer)
- Database.Redis: zunionstoreWeights :: RedisCtx m f => ByteString -> [(ByteString, Double)] -> Aggregate -> m (f Integer)
+ Database.Redis: zunionstoreWeights :: (RedisCtx m f) => ByteString -> [(ByteString, Double)] -> Aggregate -> m (f Integer)
Files
- hedis.cabal +1/−1
- src/Database/Redis/Commands.hs +422/−397
- test/Test.hs +33/−12
hedis.cabal view
@@ -1,5 +1,5 @@ name: hedis-version: 0.6.9+version: 0.6.10 synopsis: Client library for the Redis datastore: supports full command set, pipelining.
src/Database/Redis/Commands.hs view
@@ -55,6 +55,11 @@ 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>). +-- ** HyperLogLogs+pfadd, -- |Adds all the elements arguments to the HyperLogLog data structure stored at the variable name specified as first argument. (<http://redis.io/commands/pfadd>).+pfcount, -- |Returns the approximated cardinality for the union of the HyperLogLogs stored in the specified keys. (<http://redis.io/commands/pfcount>).+pfmerge, -- |Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures. (<http://redis.io/commands/pfmerge>).+ -- ** 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>).@@ -201,49 +206,31 @@ import Database.Redis.Types import Database.Redis.Core -bgrewriteaof- :: (RedisCtx m f)- => m (f Status)-bgrewriteaof = sendRequest (["BGREWRITEAOF"] )--sinter- :: (RedisCtx m f)- => [ByteString] -- ^ key- -> m (f [ByteString])-sinter key = sendRequest (["SINTER"] ++ map encode key )--scriptExists- :: (RedisCtx m f)- => [ByteString] -- ^ script- -> m (f [Bool])-scriptExists script = sendRequest (["SCRIPT","EXISTS"] ++ map encode script )--sunionstore+ttl :: (RedisCtx m f)- => ByteString -- ^ destination- -> [ByteString] -- ^ key+ => ByteString -- ^ key -> m (f Integer)-sunionstore destination key = sendRequest (["SUNIONSTORE"] ++ [encode destination] ++ map encode key )+ttl key = sendRequest (["TTL"] ++ [encode key] ) -setex+setnx :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ seconds -> ByteString -- ^ value- -> m (f Status)-setex key seconds value = sendRequest (["SETEX"] ++ [encode key] ++ [encode seconds] ++ [encode value] )+ -> m (f Bool)+setnx key value = sendRequest (["SETNX"] ++ [encode key] ++ [encode value] ) -hlen+pttl :: (RedisCtx m f) => ByteString -- ^ key -> m (f Integer)-hlen key = sendRequest (["HLEN"] ++ [encode key] )+pttl key = sendRequest (["PTTL"] ++ [encode key] ) -scard+zrank :: (RedisCtx m f) => ByteString -- ^ key- -> m (f Integer)-scard key = sendRequest (["SCARD"] ++ [encode key] )+ -> ByteString -- ^ member+ -> m (f (Maybe Integer))+zrank key member = sendRequest (["ZRANK"] ++ [encode key] ++ [encode member] ) zremrangebyscore :: (RedisCtx m f)@@ -253,12 +240,11 @@ -> m (f Integer) zremrangebyscore key min max = sendRequest (["ZREMRANGEBYSCORE"] ++ [encode key] ++ [encode min] ++ [encode max] ) -rpushx+hkeys :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ value- -> m (f Integer)-rpushx key value = sendRequest (["RPUSHX"] ++ [encode key] ++ [encode value] )+ -> m (f [ByteString])+hkeys key = sendRequest (["HKEYS"] ++ [encode key] ) spop :: (RedisCtx m f)@@ -266,18 +252,19 @@ -> m (f (Maybe ByteString)) spop key = sendRequest (["SPOP"] ++ [encode key] ) -pttl+slaveof :: (RedisCtx m f)- => ByteString -- ^ key- -> m (f Integer)-pttl key = sendRequest (["PTTL"] ++ [encode key] )+ => ByteString -- ^ host+ -> ByteString -- ^ port+ -> m (f Status)+slaveof host port = sendRequest (["SLAVEOF"] ++ [encode host] ++ [encode port] ) -rpush+rpushx :: (RedisCtx m f) => ByteString -- ^ key- -> [ByteString] -- ^ value+ -> ByteString -- ^ value -> m (f Integer)-rpush key value = sendRequest (["RPUSH"] ++ [encode key] ++ map encode value )+rpushx key value = sendRequest (["RPUSHX"] ++ [encode key] ++ [encode value] ) debugObject :: (RedisCtx m f)@@ -285,170 +272,182 @@ -> m (f ByteString) debugObject key = sendRequest (["DEBUG","OBJECT"] ++ [encode key] ) -randomkey- :: (RedisCtx m f)- => m (f (Maybe ByteString))-randomkey = sendRequest (["RANDOMKEY"] )- bgsave :: (RedisCtx m f) => m (f Status) bgsave = sendRequest (["BGSAVE"] ) -getrange- :: (RedisCtx m f)- => ByteString -- ^ key- -> Integer -- ^ start- -> Integer -- ^ end- -> m (f ByteString)-getrange key start end = sendRequest (["GETRANGE"] ++ [encode key] ++ [encode start] ++ [encode end] )--zcount+hlen :: (RedisCtx m f) => ByteString -- ^ key- -> Double -- ^ min- -> Double -- ^ max -> m (f Integer)-zcount key min max = sendRequest (["ZCOUNT"] ++ [encode key] ++ [encode min] ++ [encode max] )+hlen key = sendRequest (["HLEN"] ++ [encode key] ) -sdiffstore+rpoplpush :: (RedisCtx m f)- => ByteString -- ^ destination- -> [ByteString] -- ^ key- -> m (f Integer)-sdiffstore destination key = sendRequest (["SDIFFSTORE"] ++ [encode destination] ++ map encode key )+ => ByteString -- ^ source+ -> ByteString -- ^ destination+ -> m (f (Maybe ByteString))+rpoplpush source destination = sendRequest (["RPOPLPUSH"] ++ [encode source] ++ [encode destination] ) -blpop+brpop :: (RedisCtx m f) => [ByteString] -- ^ key -> Integer -- ^ timeout -> m (f (Maybe (ByteString,ByteString)))-blpop key timeout = sendRequest (["BLPOP"] ++ map encode key ++ [encode timeout] )+brpop key timeout = sendRequest (["BRPOP"] ++ map encode key ++ [encode timeout] ) -migrate+bgrewriteaof :: (RedisCtx m f)- => ByteString -- ^ host- -> ByteString -- ^ port- -> ByteString -- ^ key- -> Integer -- ^ destinationDb- -> Integer -- ^ timeout- -> m (f Status)-migrate host port key destinationDb timeout = sendRequest (["MIGRATE"] ++ [encode host] ++ [encode port] ++ [encode key] ++ [encode destinationDb] ++ [encode timeout] )+ => m (f Status)+bgrewriteaof = sendRequest (["BGREWRITEAOF"] ) -sismember+zincrby :: (RedisCtx m f) => ByteString -- ^ key+ -> Integer -- ^ increment -> ByteString -- ^ member- -> m (f Bool)-sismember key member = sendRequest (["SISMEMBER"] ++ [encode key] ++ [encode member] )+ -> m (f Double)+zincrby key increment member = sendRequest (["ZINCRBY"] ++ [encode key] ++ [encode increment] ++ [encode member] ) -incr+hgetall :: (RedisCtx m f) => ByteString -- ^ key- -> m (f Integer)-incr key = sendRequest (["INCR"] ++ [encode key] )+ -> m (f [(ByteString,ByteString)])+hgetall key = sendRequest (["HGETALL"] ++ [encode key] ) -hget+hmset :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ field- -> m (f (Maybe ByteString))-hget key field = sendRequest (["HGET"] ++ [encode key] ++ [encode field] )+ -> [(ByteString,ByteString)] -- ^ fieldValue+ -> m (f Status)+hmset key fieldValue = sendRequest (["HMSET"] ++ [encode key] ++ concatMap (\(x,y) -> [encode x,encode y])fieldValue ) -expireat+sinter :: (RedisCtx m f)+ => [ByteString] -- ^ key+ -> m (f [ByteString])+sinter key = sendRequest (["SINTER"] ++ map encode key )++pfadd+ :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ timestamp- -> m (f Bool)-expireat key timestamp = sendRequest (["EXPIREAT"] ++ [encode key] ++ [encode timestamp] )+ -> [ByteString] -- ^ value+ -> m (f Integer)+pfadd key value = sendRequest (["PFADD"] ++ [encode key] ++ map encode value ) -info+zremrangebyrank :: (RedisCtx m f)- => m (f ByteString)-info = sendRequest (["INFO"] )+ => ByteString -- ^ key+ -> Integer -- ^ start+ -> Integer -- ^ stop+ -> m (f Integer)+zremrangebyrank key start stop = sendRequest (["ZREMRANGEBYRANK"] ++ [encode key] ++ [encode start] ++ [encode stop] ) -sdiff+flushdb :: (RedisCtx m f)- => [ByteString] -- ^ key- -> m (f [ByteString])-sdiff key = sendRequest (["SDIFF"] ++ map encode key )+ => m (f Status)+flushdb = sendRequest (["FLUSHDB"] ) -append+sadd :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ value+ -> [ByteString] -- ^ member -> m (f Integer)-append key value = sendRequest (["APPEND"] ++ [encode key] ++ [encode value] )+sadd key member = sendRequest (["SADD"] ++ [encode key] ++ map encode member ) -lset+lindex :: (RedisCtx m f) => ByteString -- ^ key -> Integer -- ^ index+ -> m (f (Maybe ByteString))+lindex key index = sendRequest (["LINDEX"] ++ [encode key] ++ [encode index] )++set+ :: (RedisCtx m f)+ => ByteString -- ^ key -> ByteString -- ^ value -> m (f Status)-lset key index value = sendRequest (["LSET"] ++ [encode key] ++ [encode index] ++ [encode value] )+set key value = sendRequest (["SET"] ++ [encode key] ++ [encode value] ) -get+lpush :: (RedisCtx m f) => ByteString -- ^ key- -> m (f (Maybe ByteString))-get key = sendRequest (["GET"] ++ [encode key] )+ -> [ByteString] -- ^ value+ -> m (f Integer)+lpush key value = sendRequest (["LPUSH"] ++ [encode key] ++ map encode value ) -scriptFlush+smove :: (RedisCtx m f)- => m (f Status)-scriptFlush = sendRequest (["SCRIPT","FLUSH"] )+ => ByteString -- ^ source+ -> ByteString -- ^ destination+ -> ByteString -- ^ member+ -> m (f Bool)+smove source destination member = sendRequest (["SMOVE"] ++ [encode source] ++ [encode destination] ++ [encode member] ) -lpop+zscore :: (RedisCtx m f) => ByteString -- ^ key- -> m (f (Maybe ByteString))-lpop key = sendRequest (["LPOP"] ++ [encode key] )+ -> ByteString -- ^ member+ -> m (f (Maybe Double))+zscore key member = sendRequest (["ZSCORE"] ++ [encode key] ++ [encode member] ) -lastsave+configResetstat :: (RedisCtx m f)- => m (f Integer)-lastsave = sendRequest (["LASTSAVE"] )+ => m (f Status)+configResetstat = sendRequest (["CONFIG","RESETSTAT"] ) -dbsize+pfcount :: (RedisCtx m f)- => m (f Integer)-dbsize = sendRequest (["DBSIZE"] )+ => [ByteString] -- ^ key+ -> m (f Integer)+pfcount key = sendRequest (["PFCOUNT"] ++ map encode key ) -zadd+hdel :: (RedisCtx m f) => ByteString -- ^ key- -> [(Double,ByteString)] -- ^ scoreMember+ -> [ByteString] -- ^ field -> m (f Integer)-zadd key scoreMember = sendRequest (["ZADD"] ++ [encode key] ++ concatMap (\(x,y) -> [encode x,encode y])scoreMember )+hdel key field = sendRequest (["HDEL"] ++ [encode key] ++ map encode field ) -hmget+incrbyfloat :: (RedisCtx m f) => ByteString -- ^ key- -> [ByteString] -- ^ field- -> m (f [Maybe ByteString])-hmget key field = sendRequest (["HMGET"] ++ [encode key] ++ map encode field )+ -> Double -- ^ increment+ -> m (f Double)+incrbyfloat key increment = sendRequest (["INCRBYFLOAT"] ++ [encode key] ++ [encode increment] ) -expire+setbit :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ seconds- -> m (f Bool)-expire key seconds = sendRequest (["EXPIRE"] ++ [encode key] ++ [encode seconds] )+ -> Integer -- ^ offset+ -> ByteString -- ^ value+ -> m (f Integer)+setbit key offset value = sendRequest (["SETBIT"] ++ [encode key] ++ [encode offset] ++ [encode value] ) -mget+flushall :: (RedisCtx m f)- => [ByteString] -- ^ key- -> m (f [Maybe ByteString])-mget key = sendRequest (["MGET"] ++ map encode key )+ => m (f Status)+flushall = sendRequest (["FLUSHALL"] ) -hexists+incrby :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ field- -> m (f Bool)-hexists key field = sendRequest (["HEXISTS"] ++ [encode key] ++ [encode field] )+ -> Integer -- ^ increment+ -> m (f Integer)+incrby key increment = sendRequest (["INCRBY"] ++ [encode key] ++ [encode increment] ) +time+ :: (RedisCtx m f)+ => m (f (Integer,Integer))+time = sendRequest (["TIME"] )++smembers+ :: (RedisCtx m f)+ => ByteString -- ^ key+ -> m (f [ByteString])+smembers key = sendRequest (["SMEMBERS"] ++ [encode key] )+ exists :: (RedisCtx m f) => ByteString -- ^ key@@ -461,6 +460,24 @@ -> m (f [ByteString]) sunion key = sendRequest (["SUNION"] ++ map encode key ) +sinterstore+ :: (RedisCtx m f)+ => ByteString -- ^ destination+ -> [ByteString] -- ^ key+ -> m (f Integer)+sinterstore destination key = sendRequest (["SINTERSTORE"] ++ [encode destination] ++ map encode key )++ping+ :: (RedisCtx m f)+ => m (f Status)+ping = sendRequest (["PING"] )++hvals+ :: (RedisCtx m f)+ => ByteString -- ^ key+ -> m (f [ByteString])+hvals key = sendRequest (["HVALS"] ++ [encode key] )+ configSet :: (RedisCtx m f) => ByteString -- ^ parameter@@ -468,142 +485,161 @@ -> m (f Status) configSet parameter value = sendRequest (["CONFIG","SET"] ++ [encode parameter] ++ [encode value] ) -smembers+restore :: (RedisCtx m f) => ByteString -- ^ key- -> m (f [ByteString])-smembers key = sendRequest (["SMEMBERS"] ++ [encode key] )+ -> Integer -- ^ timeToLive+ -> ByteString -- ^ serializedValue+ -> m (f Status)+restore key timeToLive serializedValue = sendRequest (["RESTORE"] ++ [encode key] ++ [encode timeToLive] ++ [encode serializedValue] ) -ping+scriptFlush :: (RedisCtx m f) => m (f Status)-ping = sendRequest (["PING"] )+scriptFlush = sendRequest (["SCRIPT","FLUSH"] ) -brpoplpush+dbsize :: (RedisCtx m f)- => ByteString -- ^ source- -> ByteString -- ^ destination- -> Integer -- ^ timeout- -> m (f (Maybe ByteString))-brpoplpush source destination timeout = sendRequest (["BRPOPLPUSH"] ++ [encode source] ++ [encode destination] ++ [encode timeout] )+ => m (f Integer)+dbsize = sendRequest (["DBSIZE"] ) -rpop+lpop :: (RedisCtx m f) => ByteString -- ^ key -> m (f (Maybe ByteString))-rpop key = sendRequest (["RPOP"] ++ [encode key] )+lpop key = sendRequest (["LPOP"] ++ [encode key] ) -incrbyfloat+expire :: (RedisCtx m f) => ByteString -- ^ key- -> Double -- ^ increment- -> m (f Double)-incrbyfloat key increment = sendRequest (["INCRBYFLOAT"] ++ [encode key] ++ [encode increment] )+ -> Integer -- ^ seconds+ -> m (f Bool)+expire key seconds = sendRequest (["EXPIRE"] ++ [encode key] ++ [encode seconds] ) -setrange+mget :: (RedisCtx m f)+ => [ByteString] -- ^ key+ -> m (f [Maybe ByteString])+mget key = sendRequest (["MGET"] ++ map encode key )++lastsave+ :: (RedisCtx m f)+ => m (f Integer)+lastsave = sendRequest (["LASTSAVE"] )++zadd+ :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ offset- -> ByteString -- ^ value+ -> [(Double,ByteString)] -- ^ scoreMember -> m (f Integer)-setrange key offset value = sendRequest (["SETRANGE"] ++ [encode key] ++ [encode offset] ++ [encode value] )+zadd key scoreMember = sendRequest (["ZADD"] ++ [encode key] ++ concatMap (\(x,y) -> [encode x,encode y])scoreMember ) -hincrbyfloat+pexpire :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ field- -> Double -- ^ increment- -> m (f Double)-hincrbyfloat key field increment = sendRequest (["HINCRBYFLOAT"] ++ [encode key] ++ [encode field] ++ [encode increment] )+ -> Integer -- ^ milliseconds+ -> m (f Bool)+pexpire key milliseconds = sendRequest (["PEXPIRE"] ++ [encode key] ++ [encode milliseconds] ) -zrevrank+renamenx :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ member- -> m (f (Maybe Integer))-zrevrank key member = sendRequest (["ZREVRANK"] ++ [encode key] ++ [encode member] )+ -> ByteString -- ^ newkey+ -> m (f Bool)+renamenx key newkey = sendRequest (["RENAMENX"] ++ [encode key] ++ [encode newkey] ) -lindex+pfmerge :: (RedisCtx m f)- => ByteString -- ^ key- -> Integer -- ^ index- -> m (f (Maybe ByteString))-lindex key index = sendRequest (["LINDEX"] ++ [encode key] ++ [encode index] )+ => ByteString -- ^ destkey+ -> [ByteString] -- ^ sourcekey+ -> m (f ByteString)+pfmerge destkey sourcekey = sendRequest (["PFMERGE"] ++ [encode destkey] ++ map encode sourcekey ) -sadd+lrem :: (RedisCtx m f) => ByteString -- ^ key- -> [ByteString] -- ^ member+ -> Integer -- ^ count+ -> ByteString -- ^ value -> m (f Integer)-sadd key member = sendRequest (["SADD"] ++ [encode key] ++ map encode member )+lrem key count value = sendRequest (["LREM"] ++ [encode key] ++ [encode count] ++ [encode value] ) -srandmember+sdiff :: (RedisCtx m f)+ => [ByteString] -- ^ key+ -> m (f [ByteString])+sdiff key = sendRequest (["SDIFF"] ++ map encode key )++get+ :: (RedisCtx m f) => ByteString -- ^ key -> m (f (Maybe ByteString))-srandmember key = sendRequest (["SRANDMEMBER"] ++ [encode key] )+get key = sendRequest (["GET"] ++ [encode key] ) -zscore+getrange :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ member- -> m (f (Maybe Double))-zscore key member = sendRequest (["ZSCORE"] ++ [encode key] ++ [encode member] )+ -> Integer -- ^ start+ -> Integer -- ^ end+ -> m (f ByteString)+getrange key start end = sendRequest (["GETRANGE"] ++ [encode key] ++ [encode start] ++ [encode end] ) -persist+sdiffstore :: (RedisCtx m f)- => ByteString -- ^ key- -> m (f Bool)-persist key = sendRequest (["PERSIST"] ++ [encode key] )+ => ByteString -- ^ destination+ -> [ByteString] -- ^ key+ -> m (f Integer)+sdiffstore destination key = sendRequest (["SDIFFSTORE"] ++ [encode destination] ++ map encode key ) -zincrby+zcount :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ increment- -> ByteString -- ^ member- -> m (f Double)-zincrby key increment member = sendRequest (["ZINCRBY"] ++ [encode key] ++ [encode increment] ++ [encode member] )+ -> Double -- ^ min+ -> Double -- ^ max+ -> m (f Integer)+zcount key min max = sendRequest (["ZCOUNT"] ++ [encode key] ++ [encode min] ++ [encode max] ) -rpoplpush+scriptLoad :: (RedisCtx m f)- => ByteString -- ^ source- -> ByteString -- ^ destination+ => ByteString -- ^ script+ -> m (f ByteString)+scriptLoad script = sendRequest (["SCRIPT","LOAD"] ++ [encode script] )++getset+ :: (RedisCtx m f)+ => ByteString -- ^ key+ -> ByteString -- ^ value -> m (f (Maybe ByteString))-rpoplpush source destination = sendRequest (["RPOPLPUSH"] ++ [encode source] ++ [encode destination] )+getset key value = sendRequest (["GETSET"] ++ [encode key] ++ [encode value] ) -hgetall+dump :: (RedisCtx m f) => ByteString -- ^ key- -> m (f [(ByteString,ByteString)])-hgetall key = sendRequest (["HGETALL"] ++ [encode key] )+ -> m (f ByteString)+dump key = sendRequest (["DUMP"] ++ [encode key] ) -mset+keys :: (RedisCtx m f)- => [(ByteString,ByteString)] -- ^ keyValue- -> m (f Status)-mset keyValue = sendRequest (["MSET"] ++ concatMap (\(x,y) -> [encode x,encode y])keyValue )+ => ByteString -- ^ pattern+ -> m (f [ByteString])+keys pattern = sendRequest (["KEYS"] ++ [encode pattern] ) -hmset+configGet :: (RedisCtx m f)- => ByteString -- ^ key- -> [(ByteString,ByteString)] -- ^ fieldValue- -> m (f Status)-hmset key fieldValue = sendRequest (["HMSET"] ++ [encode key] ++ concatMap (\(x,y) -> [encode x,encode y])fieldValue )+ => ByteString -- ^ parameter+ -> m (f [(ByteString,ByteString)])+configGet parameter = sendRequest (["CONFIG","GET"] ++ [encode parameter] ) -psetex+rpush :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ milliseconds- -> ByteString -- ^ value- -> m (f Status)-psetex key milliseconds value = sendRequest (["PSETEX"] ++ [encode key] ++ [encode milliseconds] ++ [encode value] )+ -> [ByteString] -- ^ value+ -> m (f Integer)+rpush key value = sendRequest (["RPUSH"] ++ [encode key] ++ map encode value ) -brpop+randomkey :: (RedisCtx m f)- => [ByteString] -- ^ key- -> Integer -- ^ timeout- -> m (f (Maybe (ByteString,ByteString)))-brpop key timeout = sendRequest (["BRPOP"] ++ map encode key ++ [encode timeout] )+ => m (f (Maybe ByteString))+randomkey = sendRequest (["RANDOMKEY"] ) hsetnx :: (RedisCtx m f)@@ -613,169 +649,170 @@ -> m (f Bool) hsetnx key field value = sendRequest (["HSETNX"] ++ [encode key] ++ [encode field] ++ [encode value] ) -configGet+mset :: (RedisCtx m f)- => ByteString -- ^ parameter- -> m (f [(ByteString,ByteString)])-configGet parameter = sendRequest (["CONFIG","GET"] ++ [encode parameter] )+ => [(ByteString,ByteString)] -- ^ keyValue+ -> m (f Status)+mset keyValue = sendRequest (["MSET"] ++ concatMap (\(x,y) -> [encode x,encode y])keyValue ) -zrank+setex :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ member- -> m (f (Maybe Integer))-zrank key member = sendRequest (["ZRANK"] ++ [encode key] ++ [encode member] )+ -> Integer -- ^ seconds+ -> ByteString -- ^ value+ -> m (f Status)+setex key seconds value = sendRequest (["SETEX"] ++ [encode key] ++ [encode seconds] ++ [encode value] ) -hkeys+psetex :: (RedisCtx m f) => ByteString -- ^ key- -> m (f [ByteString])-hkeys key = sendRequest (["HKEYS"] ++ [encode key] )+ -> Integer -- ^ milliseconds+ -> ByteString -- ^ value+ -> m (f Status)+psetex key milliseconds value = sendRequest (["PSETEX"] ++ [encode key] ++ [encode milliseconds] ++ [encode value] ) -ttl+scard :: (RedisCtx m f) => ByteString -- ^ key -> m (f Integer)-ttl key = sendRequest (["TTL"] ++ [encode key] )+scard key = sendRequest (["SCARD"] ++ [encode key] ) -getset+scriptExists :: (RedisCtx m f)- => ByteString -- ^ key- -> ByteString -- ^ value- -> m (f (Maybe ByteString))-getset key value = sendRequest (["GETSET"] ++ [encode key] ++ [encode value] )+ => [ByteString] -- ^ script+ -> m (f [Bool])+scriptExists script = sendRequest (["SCRIPT","EXISTS"] ++ map encode script ) -slaveof+sunionstore :: (RedisCtx m f)- => ByteString -- ^ host- -> ByteString -- ^ port- -> m (f Status)-slaveof host port = sendRequest (["SLAVEOF"] ++ [encode host] ++ [encode port] )+ => ByteString -- ^ destination+ -> [ByteString] -- ^ key+ -> m (f Integer)+sunionstore destination key = sendRequest (["SUNIONSTORE"] ++ [encode destination] ++ map encode key ) -setnx+persist :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ value -> m (f Bool)-setnx key value = sendRequest (["SETNX"] ++ [encode key] ++ [encode value] )+persist key = sendRequest (["PERSIST"] ++ [encode key] ) -dump+strlen :: (RedisCtx m f) => ByteString -- ^ key- -> m (f ByteString)-dump key = sendRequest (["DUMP"] ++ [encode key] )--keys- :: (RedisCtx m f)- => ByteString -- ^ pattern- -> m (f [ByteString])-keys pattern = sendRequest (["KEYS"] ++ [encode pattern] )--echo- :: (RedisCtx m f)- => ByteString -- ^ message- -> m (f ByteString)-echo message = sendRequest (["ECHO"] ++ [encode message] )+ -> m (f Integer)+strlen key = sendRequest (["STRLEN"] ++ [encode key] ) -getbit+lpushx :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ offset+ -> ByteString -- ^ value -> m (f Integer)-getbit key offset = sendRequest (["GETBIT"] ++ [encode key] ++ [encode offset] )--quit- :: (RedisCtx m f)- => m (f Status)-quit = sendRequest (["QUIT"] )+lpushx key value = sendRequest (["LPUSHX"] ++ [encode key] ++ [encode value] ) -srem+srandmember :: (RedisCtx m f) => ByteString -- ^ key- -> [ByteString] -- ^ member- -> m (f Integer)-srem key member = sendRequest (["SREM"] ++ [encode key] ++ map encode member )+ -> m (f (Maybe ByteString))+srandmember key = sendRequest (["SRANDMEMBER"] ++ [encode key] ) -move+hset :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ db+ -> ByteString -- ^ field+ -> ByteString -- ^ value -> m (f Bool)-move key db = sendRequest (["MOVE"] ++ [encode key] ++ [encode db] )+hset key field value = sendRequest (["HSET"] ++ [encode key] ++ [encode field] ++ [encode value] ) -scriptLoad+brpoplpush :: (RedisCtx m f)- => ByteString -- ^ script- -> m (f ByteString)-scriptLoad script = sendRequest (["SCRIPT","LOAD"] ++ [encode script] )+ => ByteString -- ^ source+ -> ByteString -- ^ destination+ -> Integer -- ^ timeout+ -> m (f (Maybe ByteString))+brpoplpush source destination timeout = sendRequest (["BRPOPLPUSH"] ++ [encode source] ++ [encode destination] ++ [encode timeout] ) -msetnx+zrevrank :: (RedisCtx m f)- => [(ByteString,ByteString)] -- ^ keyValue- -> m (f Bool)-msetnx keyValue = sendRequest (["MSETNX"] ++ concatMap (\(x,y) -> [encode x,encode y])keyValue )+ => ByteString -- ^ key+ -> ByteString -- ^ member+ -> m (f (Maybe Integer))+zrevrank key member = sendRequest (["ZREVRANK"] ++ [encode key] ++ [encode member] ) -save+scriptKill :: (RedisCtx m f) => m (f Status)-save = sendRequest (["SAVE"] )+scriptKill = sendRequest (["SCRIPT","KILL"] ) -ltrim+setrange :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ start- -> Integer -- ^ stop- -> m (f Status)-ltrim key start stop = sendRequest (["LTRIM"] ++ [encode key] ++ [encode start] ++ [encode stop] )+ -> Integer -- ^ offset+ -> ByteString -- ^ value+ -> m (f Integer)+setrange key offset value = sendRequest (["SETRANGE"] ++ [encode key] ++ [encode offset] ++ [encode value] ) -lrem+del :: (RedisCtx m f)- => ByteString -- ^ key- -> Integer -- ^ count- -> ByteString -- ^ value+ => [ByteString] -- ^ key -> m (f Integer)-lrem key count value = sendRequest (["LREM"] ++ [encode key] ++ [encode count] ++ [encode value] )+del key = sendRequest (["DEL"] ++ map encode key ) -pexpireat+hincrbyfloat :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ millisecondsTimestamp- -> m (f Bool)-pexpireat key millisecondsTimestamp = sendRequest (["PEXPIREAT"] ++ [encode key] ++ [encode millisecondsTimestamp] )+ -> ByteString -- ^ field+ -> Double -- ^ increment+ -> m (f Double)+hincrbyfloat key field increment = sendRequest (["HINCRBYFLOAT"] ++ [encode key] ++ [encode field] ++ [encode increment] ) -zcard+hincrby :: (RedisCtx m f) => ByteString -- ^ key+ -> ByteString -- ^ field+ -> Integer -- ^ increment -> m (f Integer)-zcard key = sendRequest (["ZCARD"] ++ [encode key] )+hincrby key field increment = sendRequest (["HINCRBY"] ++ [encode key] ++ [encode field] ++ [encode increment] ) -renamenx+rpop :: (RedisCtx m f) => ByteString -- ^ key+ -> m (f (Maybe ByteString))+rpop key = sendRequest (["RPOP"] ++ [encode key] )++rename+ :: (RedisCtx m f)+ => ByteString -- ^ key -> ByteString -- ^ newkey- -> m (f Bool)-renamenx key newkey = sendRequest (["RENAMENX"] ++ [encode key] ++ [encode newkey] )+ -> m (f Status)+rename key newkey = sendRequest (["RENAME"] ++ [encode key] ++ [encode newkey] ) -llen+zrem :: (RedisCtx m f) => ByteString -- ^ key+ -> [ByteString] -- ^ member -> m (f Integer)-llen key = sendRequest (["LLEN"] ++ [encode key] )+zrem key member = sendRequest (["ZREM"] ++ [encode key] ++ map encode member ) -pexpire+hexists :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ milliseconds+ -> ByteString -- ^ field -> m (f Bool)-pexpire key milliseconds = sendRequest (["PEXPIRE"] ++ [encode key] ++ [encode milliseconds] )+hexists key field = sendRequest (["HEXISTS"] ++ [encode key] ++ [encode field] ) -decrby+decr :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ decrement -> m (f Integer)-decrby key decrement = sendRequest (["DECRBY"] ++ [encode key] ++ [encode decrement] )+decr key = sendRequest (["DECR"] ++ [encode key] ) +hmget+ :: (RedisCtx m f)+ => ByteString -- ^ key+ -> [ByteString] -- ^ field+ -> m (f [Maybe ByteString])+hmget key field = sendRequest (["HMGET"] ++ [encode key] ++ map encode field )+ lrange :: (RedisCtx m f) => ByteString -- ^ key@@ -784,158 +821,146 @@ -> m (f [ByteString]) lrange key start stop = sendRequest (["LRANGE"] ++ [encode key] ++ [encode start] ++ [encode stop] ) -sinterstore+decrby :: (RedisCtx m f)- => ByteString -- ^ destination- -> [ByteString] -- ^ key+ => ByteString -- ^ key+ -> Integer -- ^ decrement -> m (f Integer)-sinterstore destination key = sendRequest (["SINTERSTORE"] ++ [encode destination] ++ map encode key )+decrby key decrement = sendRequest (["DECRBY"] ++ [encode key] ++ [encode decrement] ) -rename+llen :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ newkey- -> m (f Status)-rename key newkey = sendRequest (["RENAME"] ++ [encode key] ++ [encode newkey] )+ -> m (f Integer)+llen key = sendRequest (["LLEN"] ++ [encode key] ) -restore+append :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ timeToLive- -> ByteString -- ^ serializedValue- -> m (f Status)-restore key timeToLive serializedValue = sendRequest (["RESTORE"] ++ [encode key] ++ [encode timeToLive] ++ [encode serializedValue] )+ -> ByteString -- ^ value+ -> m (f Integer)+append key value = sendRequest (["APPEND"] ++ [encode key] ++ [encode value] ) -hvals+incr :: (RedisCtx m f) => ByteString -- ^ key- -> m (f [ByteString])-hvals key = sendRequest (["HVALS"] ++ [encode key] )+ -> m (f Integer)+incr key = sendRequest (["INCR"] ++ [encode key] ) -zrem+hget :: (RedisCtx m f) => ByteString -- ^ key- -> [ByteString] -- ^ member- -> m (f Integer)-zrem key member = sendRequest (["ZREM"] ++ [encode key] ++ map encode member )+ -> ByteString -- ^ field+ -> m (f (Maybe ByteString))+hget key field = sendRequest (["HGET"] ++ [encode key] ++ [encode field] ) -decr+pexpireat :: (RedisCtx m f) => ByteString -- ^ key- -> m (f Integer)-decr key = sendRequest (["DECR"] ++ [encode key] )+ -> Integer -- ^ millisecondsTimestamp+ -> m (f Bool)+pexpireat key millisecondsTimestamp = sendRequest (["PEXPIREAT"] ++ [encode key] ++ [encode millisecondsTimestamp] ) -configResetstat+ltrim :: (RedisCtx m f)- => m (f Status)-configResetstat = sendRequest (["CONFIG","RESETSTAT"] )+ => ByteString -- ^ key+ -> Integer -- ^ start+ -> Integer -- ^ stop+ -> m (f Status)+ltrim key start stop = sendRequest (["LTRIM"] ++ [encode key] ++ [encode start] ++ [encode stop] ) -flushall+info :: (RedisCtx m f)- => m (f Status)-flushall = sendRequest (["FLUSHALL"] )+ => m (f ByteString)+info = sendRequest (["INFO"] ) -hdel+zcard :: (RedisCtx m f) => ByteString -- ^ key- -> [ByteString] -- ^ field -> m (f Integer)-hdel key field = sendRequest (["HDEL"] ++ [encode key] ++ map encode field )+zcard key = sendRequest (["ZCARD"] ++ [encode key] ) -setbit+lset :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ offset+ -> Integer -- ^ index -> ByteString -- ^ value- -> m (f Integer)-setbit key offset value = sendRequest (["SETBIT"] ++ [encode key] ++ [encode offset] ++ [encode value] )+ -> m (f Status)+lset key index value = sendRequest (["LSET"] ++ [encode key] ++ [encode index] ++ [encode value] ) -del+expireat :: (RedisCtx m f)- => [ByteString] -- ^ key- -> m (f Integer)-del key = sendRequest (["DEL"] ++ map encode key )+ => ByteString -- ^ key+ -> Integer -- ^ timestamp+ -> m (f Bool)+expireat key timestamp = sendRequest (["EXPIREAT"] ++ [encode key] ++ [encode timestamp] ) -scriptKill+save :: (RedisCtx m f) => m (f Status)-scriptKill = sendRequest (["SCRIPT","KILL"] )+save = sendRequest (["SAVE"] ) -incrby+move :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ increment- -> m (f Integer)-incrby key increment = sendRequest (["INCRBY"] ++ [encode key] ++ [encode increment] )+ -> Integer -- ^ db+ -> m (f Bool)+move key db = sendRequest (["MOVE"] ++ [encode key] ++ [encode db] ) -hincrby+getbit :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ field- -> Integer -- ^ increment+ -> Integer -- ^ offset -> m (f Integer)-hincrby key field increment = sendRequest (["HINCRBY"] ++ [encode key] ++ [encode field] ++ [encode increment] )--time- :: (RedisCtx m f)- => m (f (Integer,Integer))-time = sendRequest (["TIME"] )+getbit key offset = sendRequest (["GETBIT"] ++ [encode key] ++ [encode offset] ) -hset+msetnx :: (RedisCtx m f)- => ByteString -- ^ key- -> ByteString -- ^ field- -> ByteString -- ^ value+ => [(ByteString,ByteString)] -- ^ keyValue -> m (f Bool)-hset key field value = sendRequest (["HSET"] ++ [encode key] ++ [encode field] ++ [encode value] )+msetnx keyValue = sendRequest (["MSETNX"] ++ concatMap (\(x,y) -> [encode x,encode y])keyValue ) -strlen+quit :: (RedisCtx m f)- => ByteString -- ^ key- -> m (f Integer)-strlen key = sendRequest (["STRLEN"] ++ [encode key] )+ => m (f Status)+quit = sendRequest (["QUIT"] ) -flushdb+blpop :: (RedisCtx m f)- => m (f Status)-flushdb = sendRequest (["FLUSHDB"] )+ => [ByteString] -- ^ key+ -> Integer -- ^ timeout+ -> m (f (Maybe (ByteString,ByteString)))+blpop key timeout = sendRequest (["BLPOP"] ++ map encode key ++ [encode timeout] ) -lpushx+srem :: (RedisCtx m f) => ByteString -- ^ key- -> ByteString -- ^ value+ -> [ByteString] -- ^ member -> m (f Integer)-lpushx key value = sendRequest (["LPUSHX"] ++ [encode key] ++ [encode value] )+srem key member = sendRequest (["SREM"] ++ [encode key] ++ map encode member ) -smove+echo :: (RedisCtx m f)- => ByteString -- ^ source- -> ByteString -- ^ destination- -> ByteString -- ^ member- -> m (f Bool)-smove source destination member = sendRequest (["SMOVE"] ++ [encode source] ++ [encode destination] ++ [encode member] )+ => ByteString -- ^ message+ -> m (f ByteString)+echo message = sendRequest (["ECHO"] ++ [encode message] ) -zremrangebyrank+sismember :: (RedisCtx m f) => ByteString -- ^ key- -> Integer -- ^ start- -> Integer -- ^ stop- -> m (f Integer)-zremrangebyrank key start stop = sendRequest (["ZREMRANGEBYRANK"] ++ [encode key] ++ [encode start] ++ [encode stop] )+ -> ByteString -- ^ member+ -> m (f Bool)+sismember key member = sendRequest (["SISMEMBER"] ++ [encode key] ++ [encode member] ) -set+migrate :: (RedisCtx m f)- => ByteString -- ^ key- -> ByteString -- ^ value+ => ByteString -- ^ host+ -> ByteString -- ^ port+ -> ByteString -- ^ key+ -> Integer -- ^ destinationDb+ -> Integer -- ^ timeout -> m (f Status)-set key value = sendRequest (["SET"] ++ [encode key] ++ [encode value] )--lpush- :: (RedisCtx m f)- => ByteString -- ^ key- -> [ByteString] -- ^ value- -> m (f Integer)-lpush key value = sendRequest (["LPUSH"] ++ [encode key] ++ map encode value )+migrate host port key destinationDb timeout = sendRequest (["MIGRATE"] ++ [encode host] ++ [encode port] ++ [encode key] ++ [encode destinationDb] ++ [encode timeout] )
test/Test.hs view
@@ -36,7 +36,7 @@ deltaT <-fmap (`diffUTCTime` start) getCurrentTime when (deltaT > limit) $ putStrLn $ name ++ ": " ++ show deltaT- + (>>=?) :: (Eq a, Show a) => Redis (Either Reply a) -> a -> Redis () redis >>=? expected = do a <- redis@@ -52,7 +52,7 @@ -- tests :: Connection -> [Test.Test] tests conn = map ($conn) $ concat- [ testsMisc, testsKeys, testsStrings, [testHashes], testsLists, testsSets+ [ testsMisc, testsKeys, testsStrings, [testHashes], testsLists, testsSets, [testHyperLogLog] , testsZSets, [testPubSub], [testTransaction], [testScripting] , testsConnection, testsServer, [testQuit] ]@@ -89,9 +89,9 @@ tPipe <- deltaT $ do pongs <- replicateM n ping assert $ pongs == replicate n (Right Pong)- + tNoPipe <- deltaT $ replicateM_ n (ping >>=? Pong)- -- pipelining should at least be twice as fast. + -- pipelining should at least be twice as fast. assert $ tNoPipe / tPipe > 2 where deltaT redis = do@@ -139,7 +139,7 @@ renamenx "key'" "key" >>=? True del ["key"] >>=? 1 select 0 >>=? Ok- + testExpireAt :: Test testExpireAt = testCase "expireat" $ do set "key" "value" >>=? Ok@@ -165,8 +165,8 @@ , sortBy = Just "weight_*" , sortGet = ["#", "object_*"] } sort "ids" opts >>=? ["2", "bar", "1", "foo"]- + testGetType :: Test testGetType = testCase "getType" $ do getType "key" >>=? None@@ -218,7 +218,7 @@ getbit "key" 42 >>=? 1 bitcount "key" >>=? 1 bitcountRange "key" 0 (-1) >>=? 1- + testBitops :: Test testBitops = testCase "bitops" $ do set "k1" "a" >>=? Ok@@ -264,7 +264,7 @@ rpop "key" >>=? Just "value" rpush "key" ["v2"] >>=? 1 linsertBefore "key" "v2" "v1" >>=? 2- linsertAfter "key" "v2" "v3" >>=? 3 + linsertAfter "key" "v2" "v3" >>=? 3 lindex "key" 0 >>=? Just "v1" lrange "key" 0 (-1) >>=? ["v1", "v2", "v3"] lset "key" 1 "v2" >>=? Ok@@ -280,7 +280,7 @@ rpush "k1" ["v1","v2"] >>=? 2 brpoplpush "k1" "k2" 1 >>=? Just "v2" rpoplpush "k1" "k2" >>=? Just "v1"- + ------------------------------------------------------------------------------ -- Sets --@@ -320,7 +320,7 @@ zcard "key" >>=? 3 zscore "key" "v3" >>=? Just 40 zincrby "key" 2 "v3" >>=? 42- + zrank "key" "v1" >>=? Just 0 zrevrank "key" "v1" >>=? Just 2 zcount "key" 10 100 >>=? 1@@ -337,7 +337,7 @@ zrevrangebyscoreWithscores "key" 1.5 0.5 >>=? [("v1",1)] zrevrangebyscoreLimit "key" 2.5 0.5 0 1 >>=? ["v2"] zrevrangebyscoreWithscoresLimit "key" 2.5 0.5 0 1 >>=? [("v2",2)]- + zrem "key" ["v2"] >>=? 1 zremrangebyscore "key" 10 100 >>=? 1 zremrangebyrank "key" 0 0 >>=? 1@@ -351,7 +351,28 @@ zunionstore "newkey" ["k1","k2"] Sum >>=? 3 zunionstoreWeights "newkey" [("k1",1),("k2",2)] Min >>=? 3 +------------------------------------------------------------------------------+-- HyperLogLog+-- +testHyperLogLog :: Test+testHyperLogLog = testCase "hyperloglog" $ do+ -- test creation+ pfadd "hll1" ["a"]+ pfcount ["hll1"] >>=? 1+ -- test cardinality+ pfadd "hll1" ["a"]+ pfcount ["hll1"] >>=? 1+ pfadd "hll1" ["b", "c", "foo", "bar"]+ pfcount ["hll1"] >>=? 5+ -- test merge+ pfadd "hll2" ["1", "2", "3"]+ pfadd "hll3" ["4", "5", "6"]+ pfmerge "hll4" ["hll2", "hll3"]+ pfcount ["hll4"] >>=? 6+ -- test union cardinality+ pfcount ["hll2", "hll3"] >>=? 6+ ------------------------------------------------------------------------------ -- Pub/Sub --@@ -473,7 +494,7 @@ configSet "requirepass" "pass" >>=? Ok auth "pass" >>=? Ok configSet "requirepass" "" >>=? Ok- + testFlushall :: Test testFlushall = testCase "flushall/flushdb" $ do flushall >>=? Ok