cpp_redis  4.0.0
cpp_redis is a C++11 Asynchronous Multi-Platform Lightweight Redis Client, with support for synchronous operations and pipelining.
Classes | Public Types | Public Member Functions | List of all members
cpp_redis::client Class Reference

#include <client.hpp>

Classes

struct  bitfield_operation
 

Public Types

enum  client_type { normal, master, pubsub, slave }
 
enum  connect_state {
  dropped, start, sleeping, ok,
  failed, lookup_failed, stopped
}
 
enum  aggregate_method { sum, min, max, server_default }
 
enum  geo_unit { m, km, ft, mi }
 
enum  overflow_type { wrap, sat, fail, server_default }
 
enum  bitfield_operation_type { get, set, incrby }
 
typedef std::function< void(const std::string &host, std::size_t port, connect_state status)> connect_callback_t
 
typedef std::function< void(reply &)> reply_callback_t
 

Public Member Functions

 client (void)
 ctor
 
 client (const std::shared_ptr< network::tcp_client_iface > &tcp_client)
 
 ~client (void)
 dtor
 
 client (const client &)=delete
 copy ctor
 
clientoperator= (const client &)=delete
 assignment operator
 
void connect (const std::string &host="127.0.0.1", std::size_t port=6379, const connect_callback_t &connect_callback=nullptr, std::uint32_t timeout_msecs=0, std::int32_t max_reconnects=0, std::uint32_t reconnect_interval_msecs=0)
 
void connect (const std::string &name, const connect_callback_t &connect_callback=nullptr, std::uint32_t timeout_msecs=0, std::int32_t max_reconnects=0, std::uint32_t reconnect_interval_msecs=0)
 
bool is_connected (void) const
 
void disconnect (bool wait_for_removal=false)
 
bool is_reconnecting (void) const
 
void cancel_reconnect (void)
 
clientsend (const std::vector< std::string > &redis_cmd, const reply_callback_t &callback)
 
std::future< replysend (const std::vector< std::string > &redis_cmd)
 
clientcommit (void)
 
clientsync_commit (void)
 
template<class Rep , class Period >
clientsync_commit (const std::chrono::duration< Rep, Period > &timeout)
 
void add_sentinel (const std::string &host, std::size_t port, std::uint32_t timeout_msecs=0)
 
const sentinelget_sentinel (void) const
 
sentinelget_sentinel (void)
 
void clear_sentinels (void)
 
std::string aggregate_method_to_string (aggregate_method method) const
 
std::string geo_unit_to_string (geo_unit unit) const
 
std::string overflow_type_to_string (overflow_type type) const
 
std::string bitfield_operation_type_to_string (bitfield_operation_type operation) const
 
clientappend (const std::string &key, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replyappend (const std::string &key, const std::string &value)
 
clientauth (const std::string &password, const reply_callback_t &reply_callback)
 
std::future< replyauth (const std::string &password)
 
clientbgrewriteaof (const reply_callback_t &reply_callback)
 
std::future< replybgrewriteaof ()
 
clientbgsave (const reply_callback_t &reply_callback)
 
std::future< replybgsave ()
 
clientbitcount (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replybitcount (const std::string &key)
 
clientbitcount (const std::string &key, int start, int end, const reply_callback_t &reply_callback)
 
std::future< replybitcount (const std::string &key, int start, int end)
 
clientbitfield (const std::string &key, const std::vector< bitfield_operation > &operations, const reply_callback_t &reply_callback)
 
std::future< replybitfield (const std::string &key, const std::vector< bitfield_operation > &operations)
 
clientbitop (const std::string &operation, const std::string &destkey, const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replybitop (const std::string &operation, const std::string &destkey, const std::vector< std::string > &keys)
 
clientbitpos (const std::string &key, int bit, const reply_callback_t &reply_callback)
 
std::future< replybitpos (const std::string &key, int bit)
 
clientbitpos (const std::string &key, int bit, int start, const reply_callback_t &reply_callback)
 
std::future< replybitpos (const std::string &key, int bit, int start)
 
clientbitpos (const std::string &key, int bit, int start, int end, const reply_callback_t &reply_callback)
 
std::future< replybitpos (const std::string &key, int bit, int start, int end)
 
clientblpop (const std::vector< std::string > &keys, int timeout, const reply_callback_t &reply_callback)
 
std::future< replyblpop (const std::vector< std::string > &keys, int timeout)
 
clientbrpop (const std::vector< std::string > &keys, int timeout, const reply_callback_t &reply_callback)
 
std::future< replybrpop (const std::vector< std::string > &keys, int timeout)
 
clientbrpoplpush (const std::string &src, const std::string &dst, int timeout, const reply_callback_t &reply_callback)
 
std::future< replybrpoplpush (const std::string &src, const std::string &dst, int timeout)
 
template<typename T , typename... Ts>
clientclient_kill (const std::string &host, int port, const T &arg, const Ts &... args)
 
clientclient_kill (const std::string &host, int port)
 
template<typename... Ts>
clientclient_kill (const char *host, int port, const Ts &... args)
 
template<typename T , typename... Ts>
clientclient_kill (const T &, const Ts &...)
 
template<typename T , typename... Ts>
std::future< replyclient_kill_future (const T, const Ts...)
 
clientclient_list (const reply_callback_t &reply_callback)
 
std::future< replyclient_list ()
 
clientclient_getname (const reply_callback_t &reply_callback)
 
std::future< replyclient_getname ()
 
clientclient_pause (int timeout, const reply_callback_t &reply_callback)
 
std::future< replyclient_pause (int timeout)
 
clientclient_reply (const std::string &mode, const reply_callback_t &reply_callback)
 
std::future< replyclient_reply (const std::string &mode)
 
clientclient_setname (const std::string &name, const reply_callback_t &reply_callback)
 
std::future< replyclient_setname (const std::string &name)
 
clientcluster_addslots (const std::vector< std::string > &p_slots, const reply_callback_t &reply_callback)
 
std::future< replycluster_addslots (const std::vector< std::string > &p_slots)
 
clientcluster_count_failure_reports (const std::string &node_id, const reply_callback_t &reply_callback)
 
std::future< replycluster_count_failure_reports (const std::string &node_id)
 
clientcluster_countkeysinslot (const std::string &slot, const reply_callback_t &reply_callback)
 
std::future< replycluster_countkeysinslot (const std::string &slot)
 
clientcluster_delslots (const std::vector< std::string > &p_slots, const reply_callback_t &reply_callback)
 
std::future< replycluster_delslots (const std::vector< std::string > &p_slots)
 
clientcluster_failover (const reply_callback_t &reply_callback)
 
std::future< replycluster_failover ()
 
clientcluster_failover (const std::string &mode, const reply_callback_t &reply_callback)
 
std::future< replycluster_failover (const std::string &mode)
 
clientcluster_forget (const std::string &node_id, const reply_callback_t &reply_callback)
 
std::future< replycluster_forget (const std::string &node_id)
 
clientcluster_getkeysinslot (const std::string &slot, int count, const reply_callback_t &reply_callback)
 
std::future< replycluster_getkeysinslot (const std::string &slot, int count)
 
clientcluster_info (const reply_callback_t &reply_callback)
 
std::future< replycluster_info ()
 
clientcluster_keyslot (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replycluster_keyslot (const std::string &key)
 
clientcluster_meet (const std::string &ip, int port, const reply_callback_t &reply_callback)
 
std::future< replycluster_meet (const std::string &ip, int port)
 
clientcluster_nodes (const reply_callback_t &reply_callback)
 
std::future< replycluster_nodes ()
 
clientcluster_replicate (const std::string &node_id, const reply_callback_t &reply_callback)
 
std::future< replycluster_replicate (const std::string &node_id)
 
clientcluster_reset (const reply_callback_t &reply_callback)
 
clientcluster_reset (const std::string &mode, const reply_callback_t &reply_callback)
 
std::future< replycluster_reset (const std::string &mode="soft")
 
clientcluster_saveconfig (const reply_callback_t &reply_callback)
 
std::future< replycluster_saveconfig ()
 
clientcluster_set_config_epoch (const std::string &epoch, const reply_callback_t &reply_callback)
 
std::future< replycluster_set_config_epoch (const std::string &epoch)
 
clientcluster_setslot (const std::string &slot, const std::string &mode, const reply_callback_t &reply_callback)
 
std::future< replycluster_setslot (const std::string &slot, const std::string &mode)
 
clientcluster_setslot (const std::string &slot, const std::string &mode, const std::string &node_id, const reply_callback_t &reply_callback)
 
std::future< replycluster_setslot (const std::string &slot, const std::string &mode, const std::string &node_id)
 
clientcluster_slaves (const std::string &node_id, const reply_callback_t &reply_callback)
 
std::future< replycluster_slaves (const std::string &node_id)
 
clientcluster_slots (const reply_callback_t &reply_callback)
 
std::future< replycluster_slots ()
 
clientcommand (const reply_callback_t &reply_callback)
 
std::future< replycommand ()
 
clientcommand_count (const reply_callback_t &reply_callback)
 
std::future< replycommand_count ()
 
clientcommand_getkeys (const reply_callback_t &reply_callback)
 
std::future< replycommand_getkeys ()
 
clientcommand_info (const std::vector< std::string > &command_name, const reply_callback_t &reply_callback)
 
std::future< replycommand_info (const std::vector< std::string > &command_name)
 
clientconfig_get (const std::string &param, const reply_callback_t &reply_callback)
 
std::future< replyconfig_get (const std::string &param)
 
clientconfig_rewrite (const reply_callback_t &reply_callback)
 
std::future< replyconfig_rewrite ()
 
clientconfig_set (const std::string &param, const std::string &val, const reply_callback_t &reply_callback)
 
std::future< replyconfig_set (const std::string &param, const std::string &val)
 
clientconfig_resetstat (const reply_callback_t &reply_callback)
 
std::future< replyconfig_resetstat ()
 
clientdbsize (const reply_callback_t &reply_callback)
 
std::future< replydbsize ()
 
clientdebug_object (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replydebug_object (const std::string &key)
 
clientdebug_segfault (const reply_callback_t &reply_callback)
 
std::future< replydebug_segfault ()
 
clientdecr (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replydecr (const std::string &key)
 
clientdecrby (const std::string &key, int val, const reply_callback_t &reply_callback)
 
std::future< replydecrby (const std::string &key, int val)
 
clientdel (const std::vector< std::string > &key, const reply_callback_t &reply_callback)
 
std::future< replydel (const std::vector< std::string > &key)
 
clientdiscard (const reply_callback_t &reply_callback)
 
std::future< replydiscard ()
 
clientdump (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replydump (const std::string &key)
 
clientecho (const std::string &msg, const reply_callback_t &reply_callback)
 
std::future< replyecho (const std::string &msg)
 
clienteval (const std::string &script, int numkeys, const std::vector< std::string > &keys, const std::vector< std::string > &args, const reply_callback_t &reply_callback)
 
std::future< replyeval (const std::string &script, int numkeys, const std::vector< std::string > &keys, const std::vector< std::string > &args)
 
clientevalsha (const std::string &sha1, int numkeys, const std::vector< std::string > &keys, const std::vector< std::string > &args, const reply_callback_t &reply_callback)
 
std::future< replyevalsha (const std::string &sha1, int numkeys, const std::vector< std::string > &keys, const std::vector< std::string > &args)
 
clientexec (const reply_callback_t &reply_callback)
 
std::future< replyexec ()
 
clientexists (const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replyexists (const std::vector< std::string > &keys)
 
clientexpire (const std::string &key, int seconds, const reply_callback_t &reply_callback)
 
std::future< replyexpire (const std::string &key, int seconds)
 
clientexpireat (const std::string &key, int timestamp, const reply_callback_t &reply_callback)
 
std::future< replyexpireat (const std::string &key, int timestamp)
 
clientflushall (const reply_callback_t &reply_callback)
 
std::future< replyflushall ()
 
clientflushdb (const reply_callback_t &reply_callback)
 
std::future< replyflushdb ()
 
clientgeoadd (const std::string &key, const std::vector< std::tuple< std::string, std::string, std::string >> &long_lat_memb, const reply_callback_t &reply_callback)
 
std::future< replygeoadd (const std::string &key, const std::vector< std::tuple< std::string, std::string, std::string >> &long_lat_memb)
 
clientgeohash (const std::string &key, const std::vector< std::string > &members, const reply_callback_t &reply_callback)
 
std::future< replygeohash (const std::string &key, const std::vector< std::string > &members)
 
clientgeopos (const std::string &key, const std::vector< std::string > &members, const reply_callback_t &reply_callback)
 
std::future< replygeopos (const std::string &key, const std::vector< std::string > &members)
 
clientgeodist (const std::string &key, const std::string &member_1, const std::string &member_2, const reply_callback_t &reply_callback)
 
clientgeodist (const std::string &key, const std::string &member_1, const std::string &member_2, const std::string &unit, const reply_callback_t &reply_callback)
 
std::future< replygeodist (const std::string &key, const std::string &member_1, const std::string &member_2, const std::string &unit="m")
 
clientgeoradius (const std::string &key, double longitude, double latitude, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, const reply_callback_t &reply_callback)
 
clientgeoradius (const std::string &key, double longitude, double latitude, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, std::size_t count, const reply_callback_t &reply_callback)
 
clientgeoradius (const std::string &key, double longitude, double latitude, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, const std::string &store_key, const reply_callback_t &reply_callback)
 
clientgeoradius (const std::string &key, double longitude, double latitude, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, const std::string &store_key, const std::string &storedist_key, const reply_callback_t &reply_callback)
 
clientgeoradius (const std::string &key, double longitude, double latitude, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, std::size_t count, const std::string &store_key, const reply_callback_t &reply_callback)
 
clientgeoradius (const std::string &key, double longitude, double latitude, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, std::size_t count, const std::string &store_key, const std::string &storedist_key, const reply_callback_t &reply_callback)
 
std::future< replygeoradius (const std::string &key, double longitude, double latitude, double radius, geo_unit unit, bool with_coord=false, bool with_dist=false, bool with_hash=false, bool asc_order=false, std::size_t count=0, const std::string &store_key="", const std::string &storedist_key="")
 
clientgeoradiusbymember (const std::string &key, const std::string &member, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, const reply_callback_t &reply_callback)
 
clientgeoradiusbymember (const std::string &key, const std::string &member, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, std::size_t count, const reply_callback_t &reply_callback)
 
clientgeoradiusbymember (const std::string &key, const std::string &member, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, const std::string &store_key, const reply_callback_t &reply_callback)
 
clientgeoradiusbymember (const std::string &key, const std::string &member, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, const std::string &store_key, const std::string &storedist_key, const reply_callback_t &reply_callback)
 
clientgeoradiusbymember (const std::string &key, const std::string &member, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, std::size_t count, const std::string &store_key, const reply_callback_t &reply_callback)
 
clientgeoradiusbymember (const std::string &key, const std::string &member, double radius, geo_unit unit, bool with_coord, bool with_dist, bool with_hash, bool asc_order, std::size_t count, const std::string &store_key, const std::string &storedist_key, const reply_callback_t &reply_callback)
 
std::future< replygeoradiusbymember (const std::string &key, const std::string &member, double radius, geo_unit unit, bool with_coord=false, bool with_dist=false, bool with_hash=false, bool asc_order=false, std::size_t count=0, const std::string &store_key="", const std::string &storedist_key="")
 
clientget (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyget (const std::string &key)
 
clientgetbit (const std::string &key, int offset, const reply_callback_t &reply_callback)
 
std::future< replygetbit (const std::string &key, int offset)
 
clientgetrange (const std::string &key, int start, int end, const reply_callback_t &reply_callback)
 
std::future< replygetrange (const std::string &key, int start, int end)
 
clientgetset (const std::string &key, const std::string &val, const reply_callback_t &reply_callback)
 
std::future< replygetset (const std::string &key, const std::string &val)
 
clienthdel (const std::string &key, const std::vector< std::string > &fields, const reply_callback_t &reply_callback)
 
std::future< replyhdel (const std::string &key, const std::vector< std::string > &fields)
 
clienthexists (const std::string &key, const std::string &field, const reply_callback_t &reply_callback)
 
std::future< replyhexists (const std::string &key, const std::string &field)
 
clienthget (const std::string &key, const std::string &field, const reply_callback_t &reply_callback)
 
std::future< replyhget (const std::string &key, const std::string &field)
 
clienthgetall (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyhgetall (const std::string &key)
 
clienthincrby (const std::string &key, const std::string &field, int incr, const reply_callback_t &reply_callback)
 
std::future< replyhincrby (const std::string &key, const std::string &field, int incr)
 
clienthincrbyfloat (const std::string &key, const std::string &field, float incr, const reply_callback_t &reply_callback)
 
std::future< replyhincrbyfloat (const std::string &key, const std::string &field, float incr)
 
clienthkeys (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyhkeys (const std::string &key)
 
clienthlen (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyhlen (const std::string &key)
 
clienthmget (const std::string &key, const std::vector< std::string > &fields, const reply_callback_t &reply_callback)
 
std::future< replyhmget (const std::string &key, const std::vector< std::string > &fields)
 
clienthmset (const std::string &key, const std::vector< std::pair< std::string, std::string >> &field_val, const reply_callback_t &reply_callback)
 
std::future< replyhmset (const std::string &key, const std::vector< std::pair< std::string, std::string >> &field_val)
 
clienthscan (const std::string &key, std::size_t cursor, const reply_callback_t &reply_callback)
 
std::future< replyhscan (const std::string &key, std::size_t cursor)
 
clienthscan (const std::string &key, std::size_t cursor, const std::string &pattern, const reply_callback_t &reply_callback)
 
std::future< replyhscan (const std::string &key, std::size_t cursor, const std::string &pattern)
 
clienthscan (const std::string &key, std::size_t cursor, std::size_t count, const reply_callback_t &reply_callback)
 
std::future< replyhscan (const std::string &key, std::size_t cursor, std::size_t count)
 
clienthscan (const std::string &key, std::size_t cursor, const std::string &pattern, std::size_t count, const reply_callback_t &reply_callback)
 
std::future< replyhscan (const std::string &key, std::size_t cursor, const std::string &pattern, std::size_t count)
 
clienthset (const std::string &key, const std::string &field, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replyhset (const std::string &key, const std::string &field, const std::string &value)
 
clienthsetnx (const std::string &key, const std::string &field, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replyhsetnx (const std::string &key, const std::string &field, const std::string &value)
 
clienthstrlen (const std::string &key, const std::string &field, const reply_callback_t &reply_callback)
 
std::future< replyhstrlen (const std::string &key, const std::string &field)
 
clienthvals (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyhvals (const std::string &key)
 
clientincr (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyincr (const std::string &key)
 
clientincrby (const std::string &key, int incr, const reply_callback_t &reply_callback)
 
std::future< replyincrby (const std::string &key, int incr)
 
clientincrbyfloat (const std::string &key, float incr, const reply_callback_t &reply_callback)
 
std::future< replyincrbyfloat (const std::string &key, float incr)
 
clientinfo (const reply_callback_t &reply_callback)
 
clientinfo (const std::string &section, const reply_callback_t &reply_callback)
 
std::future< replyinfo (const std::string &section="default")
 
clientkeys (const std::string &pattern, const reply_callback_t &reply_callback)
 
std::future< replykeys (const std::string &pattern)
 
clientlastsave (const reply_callback_t &reply_callback)
 
std::future< replylastsave ()
 
clientlindex (const std::string &key, int index, const reply_callback_t &reply_callback)
 
std::future< replylindex (const std::string &key, int index)
 
clientlinsert (const std::string &key, const std::string &before_after, const std::string &pivot, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replylinsert (const std::string &key, const std::string &before_after, const std::string &pivot, const std::string &value)
 
clientllen (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyllen (const std::string &key)
 
clientlpop (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replylpop (const std::string &key)
 
clientlpush (const std::string &key, const std::vector< std::string > &values, const reply_callback_t &reply_callback)
 
std::future< replylpush (const std::string &key, const std::vector< std::string > &values)
 
clientlpushx (const std::string &key, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replylpushx (const std::string &key, const std::string &value)
 
clientlrange (const std::string &key, int start, int stop, const reply_callback_t &reply_callback)
 
std::future< replylrange (const std::string &key, int start, int stop)
 
clientlrem (const std::string &key, int count, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replylrem (const std::string &key, int count, const std::string &value)
 
clientlset (const std::string &key, int index, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replylset (const std::string &key, int index, const std::string &value)
 
clientltrim (const std::string &key, int start, int stop, const reply_callback_t &reply_callback)
 
std::future< replyltrim (const std::string &key, int start, int stop)
 
clientmget (const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replymget (const std::vector< std::string > &keys)
 
clientmigrate (const std::string &host, int port, const std::string &key, const std::string &dest_db, int timeout, const reply_callback_t &reply_callback)
 
clientmigrate (const std::string &host, int port, const std::string &key, const std::string &dest_db, int timeout, bool copy, bool replace, const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replymigrate (const std::string &host, int port, const std::string &key, const std::string &dest_db, int timeout, bool copy=false, bool replace=false, const std::vector< std::string > &keys={})
 
clientmonitor (const reply_callback_t &reply_callback)
 
std::future< replymonitor ()
 
clientmove (const std::string &key, const std::string &db, const reply_callback_t &reply_callback)
 
std::future< replymove (const std::string &key, const std::string &db)
 
clientmset (const std::vector< std::pair< std::string, std::string >> &key_vals, const reply_callback_t &reply_callback)
 
std::future< replymset (const std::vector< std::pair< std::string, std::string >> &key_vals)
 
clientmsetnx (const std::vector< std::pair< std::string, std::string >> &key_vals, const reply_callback_t &reply_callback)
 
std::future< replymsetnx (const std::vector< std::pair< std::string, std::string >> &key_vals)
 
clientmulti (const reply_callback_t &reply_callback)
 
std::future< replymulti ()
 
clientobject (const std::string &subcommand, const std::vector< std::string > &args, const reply_callback_t &reply_callback)
 
std::future< replyobject (const std::string &subcommand, const std::vector< std::string > &args)
 
clientpersist (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replypersist (const std::string &key)
 
clientpexpire (const std::string &key, int milliseconds, const reply_callback_t &reply_callback)
 
std::future< replypexpire (const std::string &key, int milliseconds)
 
clientpexpireat (const std::string &key, int milliseconds_timestamp, const reply_callback_t &reply_callback)
 
std::future< replypexpireat (const std::string &key, int milliseconds_timestamp)
 
clientpfadd (const std::string &key, const std::vector< std::string > &elements, const reply_callback_t &reply_callback)
 
std::future< replypfadd (const std::string &key, const std::vector< std::string > &elements)
 
clientpfcount (const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replypfcount (const std::vector< std::string > &keys)
 
clientpfmerge (const std::string &destkey, const std::vector< std::string > &sourcekeys, const reply_callback_t &reply_callback)
 
std::future< replypfmerge (const std::string &destkey, const std::vector< std::string > &sourcekeys)
 
clientping (const reply_callback_t &reply_callback)
 
std::future< replyping ()
 
clientping (const std::string &message, const reply_callback_t &reply_callback)
 
std::future< replyping (const std::string &message)
 
clientpsetex (const std::string &key, int milliseconds, const std::string &val, const reply_callback_t &reply_callback)
 
std::future< replypsetex (const std::string &key, int milliseconds, const std::string &val)
 
clientpublish (const std::string &channel, const std::string &message, const reply_callback_t &reply_callback)
 
std::future< replypublish (const std::string &channel, const std::string &message)
 
clientpubsub (const std::string &subcommand, const std::vector< std::string > &args, const reply_callback_t &reply_callback)
 
std::future< replypubsub (const std::string &subcommand, const std::vector< std::string > &args)
 
clientpttl (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replypttl (const std::string &key)
 
clientquit (const reply_callback_t &reply_callback)
 
std::future< replyquit ()
 
clientrandomkey (const reply_callback_t &reply_callback)
 
std::future< replyrandomkey ()
 
clientreadonly (const reply_callback_t &reply_callback)
 
std::future< replyreadonly ()
 
clientreadwrite (const reply_callback_t &reply_callback)
 
std::future< replyreadwrite ()
 
clientrename (const std::string &key, const std::string &newkey, const reply_callback_t &reply_callback)
 
std::future< replyrename (const std::string &key, const std::string &newkey)
 
clientrenamenx (const std::string &key, const std::string &newkey, const reply_callback_t &reply_callback)
 
std::future< replyrenamenx (const std::string &key, const std::string &newkey)
 
clientrestore (const std::string &key, int ttl, const std::string &serialized_value, const reply_callback_t &reply_callback)
 
std::future< replyrestore (const std::string &key, int ttl, const std::string &serialized_value)
 
clientrestore (const std::string &key, int ttl, const std::string &serialized_value, const std::string &replace, const reply_callback_t &reply_callback)
 
std::future< replyrestore (const std::string &key, int ttl, const std::string &serialized_value, const std::string &replace)
 
clientrole (const reply_callback_t &reply_callback)
 
std::future< replyrole ()
 
clientrpop (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyrpop (const std::string &key)
 
clientrpoplpush (const std::string &source, const std::string &destination, const reply_callback_t &reply_callback)
 
std::future< replyrpoplpush (const std::string &src, const std::string &dst)
 
clientrpush (const std::string &key, const std::vector< std::string > &values, const reply_callback_t &reply_callback)
 
std::future< replyrpush (const std::string &key, const std::vector< std::string > &values)
 
clientrpushx (const std::string &key, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replyrpushx (const std::string &key, const std::string &value)
 
clientsadd (const std::string &key, const std::vector< std::string > &members, const reply_callback_t &reply_callback)
 
std::future< replysadd (const std::string &key, const std::vector< std::string > &members)
 
clientsave (const reply_callback_t &reply_callback)
 
std::future< replysave ()
 
clientscan (std::size_t cursor, const reply_callback_t &reply_callback)
 
std::future< replyscan (std::size_t cursor)
 
clientscan (std::size_t cursor, const std::string &pattern, const reply_callback_t &reply_callback)
 
std::future< replyscan (std::size_t cursor, const std::string &pattern)
 
clientscan (std::size_t cursor, std::size_t count, const reply_callback_t &reply_callback)
 
std::future< replyscan (std::size_t cursor, std::size_t count)
 
clientscan (std::size_t cursor, const std::string &pattern, std::size_t count, const reply_callback_t &reply_callback)
 
std::future< replyscan (std::size_t cursor, const std::string &pattern, std::size_t count)
 
clientscard (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyscard (const std::string &key)
 
clientscript_debug (const std::string &mode, const reply_callback_t &reply_callback)
 
std::future< replyscript_debug (const std::string &mode)
 
clientscript_exists (const std::vector< std::string > &scripts, const reply_callback_t &reply_callback)
 
std::future< replyscript_exists (const std::vector< std::string > &scripts)
 
clientscript_flush (const reply_callback_t &reply_callback)
 
std::future< replyscript_flush ()
 
clientscript_kill (const reply_callback_t &reply_callback)
 
std::future< replyscript_kill ()
 
clientscript_load (const std::string &script, const reply_callback_t &reply_callback)
 
std::future< replyscript_load (const std::string &script)
 
clientsdiff (const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replysdiff (const std::vector< std::string > &keys)
 
clientsdiffstore (const std::string &destination, const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replysdiffstore (const std::string &dst, const std::vector< std::string > &keys)
 
clientselect (int index, const reply_callback_t &reply_callback)
 
std::future< replyselect (int index)
 
clientset (const std::string &key, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replyset (const std::string &key, const std::string &value)
 
clientset_advanced (const std::string &key, const std::string &value, const reply_callback_t &reply_callback)
 
clientset_advanced (const std::string &key, const std::string &value, bool ex, int ex_sec, bool px, int px_milli, bool nx, bool xx, const reply_callback_t &reply_callback)
 
std::future< replyset_advanced (const std::string &key, const std::string &value, bool ex=false, int ex_sec=0, bool px=false, int px_milli=0, bool nx=false, bool xx=false)
 
clientsetbit_ (const std::string &key, int offset, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replysetbit_ (const std::string &key, int offset, const std::string &value)
 
clientsetex (const std::string &key, int seconds, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replysetex (const std::string &key, int seconds, const std::string &value)
 
clientsetnx (const std::string &key, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replysetnx (const std::string &key, const std::string &value)
 
clientsetrange (const std::string &key, int offset, const std::string &value, const reply_callback_t &reply_callback)
 
std::future< replysetrange (const std::string &key, int offset, const std::string &value)
 
clientshutdown (const reply_callback_t &reply_callback)
 
std::future< replyshutdown ()
 
clientshutdown (const std::string &save, const reply_callback_t &reply_callback)
 
std::future< replyshutdown (const std::string &save)
 
clientsinter (const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replysinter (const std::vector< std::string > &keys)
 
clientsinterstore (const std::string &destination, const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replysinterstore (const std::string &dst, const std::vector< std::string > &keys)
 
clientsismember (const std::string &key, const std::string &member, const reply_callback_t &reply_callback)
 
std::future< replysismember (const std::string &key, const std::string &member)
 
clientslaveof (const std::string &host, int port, const reply_callback_t &reply_callback)
 
std::future< replyslaveof (const std::string &host, int port)
 
clientslowlog (const std::string subcommand, const reply_callback_t &reply_callback)
 
std::future< replyslowlog (const std::string &subcommand)
 
clientslowlog (const std::string subcommand, const std::string &argument, const reply_callback_t &reply_callback)
 
std::future< replyslowlog (const std::string &subcommand, const std::string &argument)
 
clientsmembers (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replysmembers (const std::string &key)
 
clientsmove (const std::string &source, const std::string &destination, const std::string &member, const reply_callback_t &reply_callback)
 
std::future< replysmove (const std::string &src, const std::string &dst, const std::string &member)
 
clientsort (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replysort (const std::string &key)
 
clientsort (const std::string &key, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const reply_callback_t &reply_callback)
 
std::future< replysort (const std::string &key, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha)
 
clientsort (const std::string &key, std::size_t offset, std::size_t count, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const reply_callback_t &reply_callback)
 
std::future< replysort (const std::string &key, std::size_t offset, std::size_t count, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha)
 
clientsort (const std::string &key, const std::string &by_pattern, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const reply_callback_t &reply_callback)
 
std::future< replysort (const std::string &key, const std::string &by_pattern, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha)
 
clientsort (const std::string &key, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const std::string &store_dest, const reply_callback_t &reply_callback)
 
std::future< replysort (const std::string &key, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const std::string &store_dest)
 
clientsort (const std::string &key, std::size_t offset, std::size_t count, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const std::string &store_dest, const reply_callback_t &reply_callback)
 
std::future< replysort (const std::string &key, std::size_t offset, std::size_t count, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const std::string &store_dest)
 
clientsort (const std::string &key, const std::string &by_pattern, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const std::string &store_dest, const reply_callback_t &reply_callback)
 
std::future< replysort (const std::string &key, const std::string &by_pattern, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const std::string &store_dest)
 
clientsort (const std::string &key, const std::string &by_pattern, std::size_t offset, std::size_t count, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const reply_callback_t &reply_callback)
 
std::future< replysort (const std::string &key, const std::string &by_pattern, std::size_t offset, std::size_t count, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha)
 
clientsort (const std::string &key, const std::string &by_pattern, std::size_t offset, std::size_t count, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const std::string &store_dest, const reply_callback_t &reply_callback)
 
std::future< replysort (const std::string &key, const std::string &by_pattern, std::size_t offset, std::size_t count, const std::vector< std::string > &get_patterns, bool asc_order, bool alpha, const std::string &store_dest)
 
clientspop (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyspop (const std::string &key)
 
clientspop (const std::string &key, int count, const reply_callback_t &reply_callback)
 
std::future< replyspop (const std::string &key, int count)
 
clientsrandmember (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replysrandmember (const std::string &key)
 
clientsrandmember (const std::string &key, int count, const reply_callback_t &reply_callback)
 
std::future< replysrandmember (const std::string &key, int count)
 
clientsrem (const std::string &key, const std::vector< std::string > &members, const reply_callback_t &reply_callback)
 
std::future< replysrem (const std::string &key, const std::vector< std::string > &members)
 
clientsscan (const std::string &key, std::size_t cursor, const reply_callback_t &reply_callback)
 
std::future< replysscan (const std::string &key, std::size_t cursor)
 
clientsscan (const std::string &key, std::size_t cursor, const std::string &pattern, const reply_callback_t &reply_callback)
 
std::future< replysscan (const std::string &key, std::size_t cursor, const std::string &pattern)
 
clientsscan (const std::string &key, std::size_t cursor, std::size_t count, const reply_callback_t &reply_callback)
 
std::future< replysscan (const std::string &key, std::size_t cursor, std::size_t count)
 
clientsscan (const std::string &key, std::size_t cursor, const std::string &pattern, std::size_t count, const reply_callback_t &reply_callback)
 
std::future< replysscan (const std::string &key, std::size_t cursor, const std::string &pattern, std::size_t count)
 
clientstrlen (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replystrlen (const std::string &key)
 
clientsunion (const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replysunion (const std::vector< std::string > &keys)
 
clientsunionstore (const std::string &destination, const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replysunionstore (const std::string &dst, const std::vector< std::string > &keys)
 
clientsync (const reply_callback_t &reply_callback)
 
std::future< replysync ()
 
clienttime (const reply_callback_t &reply_callback)
 
std::future< replytime ()
 
clientttl (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyttl (const std::string &key)
 
clienttype (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replytype (const std::string &key)
 
clientunwatch (const reply_callback_t &reply_callback)
 
std::future< replyunwatch ()
 
clientwait (int numslaves, int timeout, const reply_callback_t &reply_callback)
 
std::future< replywait (int numslaves, int timeout)
 
clientwatch (const std::vector< std::string > &keys, const reply_callback_t &reply_callback)
 
std::future< replywatch (const std::vector< std::string > &keys)
 
clientzadd (const std::string &key, const std::vector< std::string > &options, const std::multimap< std::string, std::string > &score_members, const reply_callback_t &reply_callback)
 
std::future< replyzadd (const std::string &key, const std::vector< std::string > &options, const std::multimap< std::string, std::string > &score_members)
 
clientzcard (const std::string &key, const reply_callback_t &reply_callback)
 
std::future< replyzcard (const std::string &key)
 
clientzcount (const std::string &key, int min, int max, const reply_callback_t &reply_callback)
 
std::future< replyzcount (const std::string &key, int min, int max)
 
clientzcount (const std::string &key, double min, double max, const reply_callback_t &reply_callback)
 
std::future< replyzcount (const std::string &key, double min, double max)
 
clientzcount (const std::string &key, const std::string &min, const std::string &max, const reply_callback_t &reply_callback)
 
std::future< replyzcount (const std::string &key, const std::string &min, const std::string &max)
 
clientzincrby (const std::string &key, int incr, const std::string &member, const reply_callback_t &reply_callback)
 
std::future< replyzincrby (const std::string &key, int incr, const std::string &member)
 
clientzincrby (const std::string &key, double incr, const std::string &member, const reply_callback_t &reply_callback)
 
std::future< replyzincrby (const std::string &key, double incr, const std::string &member)
 
clientzincrby (const std::string &key, const std::string &incr, const std::string &member, const reply_callback_t &reply_callback)
 
std::future< replyzincrby (const std::string &key, const std::string &incr, const std::string &member)
 
clientzinterstore (const std::string &destination, std::size_t numkeys, const std::vector< std::string > &keys, const std::vector< std::size_t > weights, aggregate_method method, const reply_callback_t &reply_callback)
 
std::future< replyzinterstore (const std::string &destination, std::size_t numkeys, const std::vector< std::string > &keys, const std::vector< std::size_t > weights, aggregate_method method)
 
clientzlexcount (const std::string &key, int min, int max, const reply_callback_t &reply_callback)
 
std::future< replyzlexcount (const std::string &key, int min, int max)
 
clientzlexcount (const std::string &key, double min, double max, const reply_callback_t &reply_callback)
 
std::future< replyzlexcount (const std::string &key, double min, double max)
 
clientzlexcount (const std::string &key, const std::string &min, const std::string &max, const reply_callback_t &reply_callback)
 
std::future< replyzlexcount (const std::string &key, const std::string &min, const std::string &max)
 
clientzrange (const std::string &key, int start, int stop, const reply_callback_t &reply_callback)
 
clientzrange (const std::string &key, int start, int stop, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrange (const std::string &key, int start, int stop, bool withscores=false)
 
clientzrange (const std::string &key, double start, double stop, const reply_callback_t &reply_callback)
 
clientzrange (const std::string &key, double start, double stop, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrange (const std::string &key, double start, double stop, bool withscores=false)
 
clientzrange (const std::string &key, const std::string &start, const std::string &stop, const reply_callback_t &reply_callback)
 
clientzrange (const std::string &key, const std::string &start, const std::string &stop, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrange (const std::string &key, const std::string &start, const std::string &stop, bool withscores=false)
 
clientzrangebylex (const std::string &key, int min, int max, const reply_callback_t &reply_callback)
 
clientzrangebylex (const std::string &key, int min, int max, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebylex (const std::string &key, int min, int max, bool withscores=false)
 
clientzrangebylex (const std::string &key, double min, double max, const reply_callback_t &reply_callback)
 
clientzrangebylex (const std::string &key, double min, double max, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebylex (const std::string &key, double min, double max, bool withscores=false)
 
clientzrangebylex (const std::string &key, const std::string &min, const std::string &max, const reply_callback_t &reply_callback)
 
clientzrangebylex (const std::string &key, const std::string &min, const std::string &max, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebylex (const std::string &key, const std::string &min, const std::string &max, bool withscores=false)
 
clientzrangebylex (const std::string &key, int min, int max, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrangebylex (const std::string &key, int min, int max, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebylex (const std::string &key, int min, int max, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrangebylex (const std::string &key, double min, double max, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrangebylex (const std::string &key, double min, double max, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebylex (const std::string &key, double min, double max, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrangebylex (const std::string &key, const std::string &min, const std::string &max, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrangebylex (const std::string &key, const std::string &min, const std::string &max, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebylex (const std::string &key, const std::string &min, const std::string &max, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrangebyscore (const std::string &key, int min, int max, const reply_callback_t &reply_callback)
 
clientzrangebyscore (const std::string &key, int min, int max, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebyscore (const std::string &key, int min, int max, bool withscores=false)
 
clientzrangebyscore (const std::string &key, double min, double max, const reply_callback_t &reply_callback)
 
clientzrangebyscore (const std::string &key, double min, double max, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebyscore (const std::string &key, double min, double max, bool withscores=false)
 
clientzrangebyscore (const std::string &key, const std::string &min, const std::string &max, const reply_callback_t &reply_callback)
 
clientzrangebyscore (const std::string &key, const std::string &min, const std::string &max, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebyscore (const std::string &key, const std::string &min, const std::string &max, bool withscores=false)
 
clientzrangebyscore (const std::string &key, int min, int max, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrangebyscore (const std::string &key, int min, int max, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebyscore (const std::string &key, int min, int max, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrangebyscore (const std::string &key, double min, double max, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrangebyscore (const std::string &key, double min, double max, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebyscore (const std::string &key, double min, double max, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrangebyscore (const std::string &key, const std::string &min, const std::string &max, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrangebyscore (const std::string &key, const std::string &min, const std::string &max, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrangebyscore (const std::string &key, const std::string &min, const std::string &max, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrank (const std::string &key, const std::string &member, const reply_callback_t &reply_callback)
 
std::future< replyzrank (const std::string &key, const std::string &member)
 
clientzrem (const std::string &key, const std::vector< std::string > &members, const reply_callback_t &reply_callback)
 
std::future< replyzrem (const std::string &key, const std::vector< std::string > &members)
 
clientzremrangebylex (const std::string &key, int min, int max, const reply_callback_t &reply_callback)
 
std::future< replyzremrangebylex (const std::string &key, int min, int max)
 
clientzremrangebylex (const std::string &key, double min, double max, const reply_callback_t &reply_callback)
 
std::future< replyzremrangebylex (const std::string &key, double min, double max)
 
clientzremrangebylex (const std::string &key, const std::string &min, const std::string &max, const reply_callback_t &reply_callback)
 
std::future< replyzremrangebylex (const std::string &key, const std::string &min, const std::string &max)
 
clientzremrangebyrank (const std::string &key, int start, int stop, const reply_callback_t &reply_callback)
 
std::future< replyzremrangebyrank (const std::string &key, int start, int stop)
 
clientzremrangebyrank (const std::string &key, double start, double stop, const reply_callback_t &reply_callback)
 
std::future< replyzremrangebyrank (const std::string &key, double start, double stop)
 
clientzremrangebyrank (const std::string &key, const std::string &start, const std::string &stop, const reply_callback_t &reply_callback)
 
std::future< replyzremrangebyrank (const std::string &key, const std::string &start, const std::string &stop)
 
clientzremrangebyscore (const std::string &key, int min, int max, const reply_callback_t &reply_callback)
 
std::future< replyzremrangebyscore (const std::string &key, int min, int max)
 
clientzremrangebyscore (const std::string &key, double min, double max, const reply_callback_t &reply_callback)
 
std::future< replyzremrangebyscore (const std::string &key, double min, double max)
 
clientzremrangebyscore (const std::string &key, const std::string &min, const std::string &max, const reply_callback_t &reply_callback)
 
std::future< replyzremrangebyscore (const std::string &key, const std::string &min, const std::string &max)
 
clientzrevrange (const std::string &key, int start, int stop, const reply_callback_t &reply_callback)
 
clientzrevrange (const std::string &key, int start, int stop, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrange (const std::string &key, int start, int stop, bool withscores=false)
 
clientzrevrange (const std::string &key, double start, double stop, const reply_callback_t &reply_callback)
 
clientzrevrange (const std::string &key, double start, double stop, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrange (const std::string &key, double start, double stop, bool withscores=false)
 
clientzrevrange (const std::string &key, const std::string &start, const std::string &stop, const reply_callback_t &reply_callback)
 
clientzrevrange (const std::string &key, const std::string &start, const std::string &stop, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrange (const std::string &key, const std::string &start, const std::string &stop, bool withscores=false)
 
clientzrevrangebylex (const std::string &key, int max, int min, const reply_callback_t &reply_callback)
 
clientzrevrangebylex (const std::string &key, int max, int min, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebylex (const std::string &key, int max, int min, bool withscores=false)
 
clientzrevrangebylex (const std::string &key, double max, double min, const reply_callback_t &reply_callback)
 
clientzrevrangebylex (const std::string &key, double max, double min, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebylex (const std::string &key, double max, double min, bool withscores=false)
 
clientzrevrangebylex (const std::string &key, const std::string &max, const std::string &min, const reply_callback_t &reply_callback)
 
clientzrevrangebylex (const std::string &key, const std::string &max, const std::string &min, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebylex (const std::string &key, const std::string &max, const std::string &min, bool withscores=false)
 
clientzrevrangebylex (const std::string &key, int max, int min, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrevrangebylex (const std::string &key, int max, int min, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebylex (const std::string &key, int max, int min, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrevrangebylex (const std::string &key, double max, double min, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrevrangebylex (const std::string &key, double max, double min, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebylex (const std::string &key, double max, double min, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrevrangebylex (const std::string &key, const std::string &max, const std::string &min, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrevrangebylex (const std::string &key, const std::string &max, const std::string &min, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebylex (const std::string &key, const std::string &max, const std::string &min, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrevrangebyscore (const std::string &key, int max, int min, const reply_callback_t &reply_callback)
 
clientzrevrangebyscore (const std::string &key, int max, int min, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebyscore (const std::string &key, int max, int min, bool withscores=false)
 
clientzrevrangebyscore (const std::string &key, double max, double min, const reply_callback_t &reply_callback)
 
clientzrevrangebyscore (const std::string &key, double max, double min, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebyscore (const std::string &key, double max, double min, bool withscores=false)
 
clientzrevrangebyscore (const std::string &key, const std::string &max, const std::string &min, const reply_callback_t &reply_callback)
 
clientzrevrangebyscore (const std::string &key, const std::string &max, const std::string &min, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebyscore (const std::string &key, const std::string &max, const std::string &min, bool withscores=false)
 
clientzrevrangebyscore (const std::string &key, int max, int min, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrevrangebyscore (const std::string &key, int max, int min, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebyscore (const std::string &key, int max, int min, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrevrangebyscore (const std::string &key, double max, double min, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrevrangebyscore (const std::string &key, double max, double min, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebyscore (const std::string &key, double max, double min, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrevrangebyscore (const std::string &key, const std::string &max, const std::string &min, std::size_t offset, std::size_t count, const reply_callback_t &reply_callback)
 
clientzrevrangebyscore (const std::string &key, const std::string &max, const std::string &min, std::size_t offset, std::size_t count, bool withscores, const reply_callback_t &reply_callback)
 
std::future< replyzrevrangebyscore (const std::string &key, const std::string &max, const std::string &min, std::size_t offset, std::size_t count, bool withscores=false)
 
clientzrevrank (const std::string &key, const std::string &member, const reply_callback_t &reply_callback)
 
std::future< replyzrevrank (const std::string &key, const std::string &member)
 
clientzscan (const std::string &key, std::size_t cursor, const reply_callback_t &reply_callback)
 
std::future< replyzscan (const std::string &key, std::size_t cursor)
 
clientzscan (const std::string &key, std::size_t cursor, const std::string &pattern, const reply_callback_t &reply_callback)
 
std::future< replyzscan (const std::string &key, std::size_t cursor, const std::string &pattern)
 
clientzscan (const std::string &key, std::size_t cursor, std::size_t count, const reply_callback_t &reply_callback)
 
std::future< replyzscan (const std::string &key, std::size_t cursor, std::size_t count)
 
clientzscan (const std::string &key, std::size_t cursor, const std::string &pattern, std::size_t count, const reply_callback_t &reply_callback)
 
std::future< replyzscan (const std::string &key, std::size_t cursor, const std::string &pattern, std::size_t count)
 
clientzscore (const std::string &key, const std::string &member, const reply_callback_t &reply_callback)
 
std::future< replyzscore (const std::string &key, const std::string &member)
 
clientzunionstore (const std::string &destination, std::size_t numkeys, const std::vector< std::string > &keys, const std::vector< std::size_t > weights, aggregate_method method, const reply_callback_t &reply_callback)
 
std::future< replyzunionstore (const std::string &destination, std::size_t numkeys, const std::vector< std::string > &keys, const std::vector< std::size_t > weights, aggregate_method method)
 
template<typename T, typename... Ts>
clientclient_kill (const T &arg, const Ts &... args)
 

Detailed Description

cpp_redis::client is the class providing communication with a Redis server. It is meant to be used for sending commands to the remote server and receiving its replies. The client support asynchronous requests, as well as synchronous ones. Moreover, commands pipelining is supported.

Member Typedef Documentation

◆ connect_callback_t

typedef std::function<void(const std::string& host, std::size_t port, connect_state status)> cpp_redis::client::connect_callback_t

connect handler, called whenever a new connection even occurred

◆ reply_callback_t

typedef std::function<void(reply&)> cpp_redis::client::reply_callback_t

reply callback called whenever a reply is received takes as parameter the received reply

Member Enumeration Documentation

◆ aggregate_method

aggregate method to be used for some commands (like zunionstore) these match the aggregate methods supported by redis use server_default if you are not willing to specify this parameter and let the server defaults

◆ bitfield_operation_type

bitfield operation type to be used for some commands (like bitfield) these match the bitfield operation types supported by redis-server

◆ client_type

client type used for client kill

◆ connect_state

high availability (re)connection states

  • dropped: connection has dropped
  • start: attemp of connection has started
  • sleeping: sleep between two attemps
  • ok: connected
  • failed: failed to connect
  • lookup failed: failed to retrieve master sentinel
  • stopped: stop to try to reconnect

◆ geo_unit

geographic unit to be used for some commands (like georadius) these match the geo units supported by redis-server

◆ overflow_type

overflow type to be used for some commands (like bitfield) these match the overflow types supported by redis-server use server_default if you are not willing to specify this parameter and let the server defaults

Constructor & Destructor Documentation

◆ client()

cpp_redis::client::client ( const std::shared_ptr< network::tcp_client_iface > &  tcp_client)
explicit

custom ctor to specify custom tcp_client

Parameters
tcp_clienttcp client to be used for network communications

Member Function Documentation

◆ add_sentinel()

void cpp_redis::client::add_sentinel ( const std::string &  host,
std::size_t  port,
std::uint32_t  timeout_msecs = 0 
)

add a sentinel definition. Required for connect() or get_master_addr_by_name() when autoconnect is enabled.

Parameters
hostsentinel host
portsentinel port
timeout_msecsmaximum time to connect

◆ aggregate_method_to_string()

std::string cpp_redis::client::aggregate_method_to_string ( aggregate_method  method) const

convert an aggregate_method enum to its equivalent redis-server string

Parameters
methodaggregate_method to convert
Returns
conversion

◆ bitfield_operation_type_to_string()

std::string cpp_redis::client::bitfield_operation_type_to_string ( bitfield_operation_type  operation) const

convert a bitfield operation type to its equivalent redis-server string

Parameters
operationoperation type to convert
Returns
conversion

◆ cancel_reconnect()

void cpp_redis::client::cancel_reconnect ( void  )

stop any reconnect in progress

◆ clear_sentinels()

void cpp_redis::client::clear_sentinels ( void  )

clear all existing sentinels.

◆ client_kill()

template<typename T , typename... Ts>
client & cpp_redis::client::client_kill ( const std::string &  host,
int  port,
const T &  arg,
const Ts &...  args 
)
inline

If we have other type than lambda, then it's a filter

◆ client_kill_future()

template<typename T , typename... Ts>
std::future< reply > cpp_redis::client::client_kill_future ( const T  arg,
const Ts...  args 
)

gcc 4.8 doesn't handle variadic template capture arguments (appears in 4.9) so std::bind should capture all arguments because of the compiler.

◆ commit()

client& cpp_redis::client::commit ( void  )

Sends all the commands that have been stored by calling send() since the last commit() call to the redis server. That is, pipelining is supported in a very simple and efficient way: client.send(...).send(...).send(...).commit() will send the 3 commands at once (instead of sending 3 network requests, one for each command, as it would have been done without pipelining). Pipelined commands are always removed from the buffer, even in the case of an error (for example, calling commit while the client is not connected, something that throws an exception). commit() works asynchronously: it returns immediately after sending the queued requests and replies are processed asynchronously.

Please note that, while commit() can safely be called from inside a reply callback, calling sync_commit() from inside a reply callback is not permitted and will lead to undefined behavior, mostly deadlock.

◆ connect() [1/2]

void cpp_redis::client::connect ( const std::string &  host = "127.0.0.1",
std::size_t  port = 6379,
const connect_callback_t connect_callback = nullptr,
std::uint32_t  timeout_msecs = 0,
std::int32_t  max_reconnects = 0,
std::uint32_t  reconnect_interval_msecs = 0 
)

Connect to redis server

Parameters
hosthost to be connected to
portport to be connected to
connect_callbackconnect handler to be called on connect events (may be null)
timeout_msecsmaximum time to connect
max_reconnectsmaximum attemps of reconnection if connection dropped
reconnect_interval_msecstime between two attemps of reconnection

◆ connect() [2/2]

void cpp_redis::client::connect ( const std::string &  name,
const connect_callback_t connect_callback = nullptr,
std::uint32_t  timeout_msecs = 0,
std::int32_t  max_reconnects = 0,
std::uint32_t  reconnect_interval_msecs = 0 
)

Connect to redis server

Parameters
namesentinel name
connect_callbackconnect handler to be called on connect events (may be null)
timeout_msecsmaximum time to connect
max_reconnectsmaximum attemps of reconnection if connection dropped
reconnect_interval_msecstime between two attemps of reconnection

◆ disconnect()

void cpp_redis::client::disconnect ( bool  wait_for_removal = false)

disconnect from redis server

Parameters
wait_for_removalwhen sets to true, disconnect blocks until the underlying TCP client has been effectively removed from the io_service and that all the underlying callbacks have completed.

◆ geo_unit_to_string()

std::string cpp_redis::client::geo_unit_to_string ( geo_unit  unit) const

convert a geo unit to its equivalent redis-server string

Parameters
unitgeo_unit to convert
Returns
conversion

◆ get_sentinel() [1/2]

const sentinel& cpp_redis::client::get_sentinel ( void  ) const

retrieve sentinel for current client

Returns
sentinel associated to current client

◆ get_sentinel() [2/2]

sentinel& cpp_redis::client::get_sentinel ( void  )

retrieve sentinel for current client non-const version

Returns
sentinel associated to current client

◆ is_connected()

bool cpp_redis::client::is_connected ( void  ) const
Returns
whether we are connected to the redis server

◆ is_reconnecting()

bool cpp_redis::client::is_reconnecting ( void  ) const
Returns
whether an attemp to reconnect is in progress

◆ overflow_type_to_string()

std::string cpp_redis::client::overflow_type_to_string ( overflow_type  type) const

convert an overflow type to its equivalent redis-server string

Parameters
typeoverflow type to convert
Returns
conversion

◆ send() [1/2]

client& cpp_redis::client::send ( const std::vector< std::string > &  redis_cmd,
const reply_callback_t callback 
)

send the given command the command is actually pipelined and only buffered, so nothing is sent to the network please call commit() / sync_commit() to flush the buffer

Parameters
redis_cmdcommand to be sent
callbackcallback to be called on received reply
Returns
current instance

◆ send() [2/2]

std::future<reply> cpp_redis::client::send ( const std::vector< std::string > &  redis_cmd)

same as the other send method but future based: does not take any callback and return an std:;future to handle the reply

Parameters
redis_cmdcommand to be sent
Returns
std::future to handler redis reply

◆ sync_commit() [1/2]

client& cpp_redis::client::sync_commit ( void  )

same as commit(), but synchronous will block until all pending commands have been sent and that a reply has been received for each of them and all underlying callbacks completed

Returns
current instance

◆ sync_commit() [2/2]

template<class Rep , class Period >
client& cpp_redis::client::sync_commit ( const std::chrono::duration< Rep, Period > &  timeout)
inline

same as sync_commit, but with a timeout will simply block until it completes or timeout expires

Returns
current instance

no need to call commit in case of reconnection the reconnection flow will do it for us


The documentation for this class was generated from the following files: