(
conststd::shared_ptr<network::tcp_client_iface>& tcp_client);
106 typedefstd::function<void(const std::string& host, std::size_t port, connect_state status)>
connect_callback_t;
119 conststd::string& host =
"127.0.0.1",
120std::size_t port = 6379,
121 constconnect_callback_t& connect_callback =
nullptr,
122std::uint32_t timeout_msecs = 0,
123std::int32_t max_reconnects = 0,
124std::uint32_t reconnect_interval_msecs = 0);
136 conststd::string& name,
137 constconnect_callback_t& connect_callback =
nullptr,
138std::uint32_t timeout_msecs = 0,
139std::int32_t max_reconnects = 0,
140std::uint32_t reconnect_interval_msecs = 0);
152 void disconnect(
boolwait_for_removal =
false);
180 client&
send(
conststd::vector<std::string>& redis_cmd,
constreply_callback_t& callback);
189std::future<reply>
send(
conststd::vector<std::string>& redis_cmd);
215 template<
classRep,
classPeriod>
217 sync_commit(
conststd::chrono::duration<Rep, Period>& timeout) {
224std::unique_lock<std::mutex> lock_callback(m_callbacks_mutex);
225__CPP_REDIS_LOG(debug,
"cpp_redis::client waiting for callbacks to complete");
226 if(!m_sync_condvar.wait_for(lock_callback, timeout, [=] { return m_callbacks_running == 0 && m_commands.empty(); })) {
227__CPP_REDIS_LOG(debug,
"cpp_redis::client finished waiting for callback");
230__CPP_REDIS_LOG(debug,
"cpp_redis::client timed out waiting for callback");
240 boolshould_reconnect(
void)
const;
245 voidresend_failed_commands(
void);
250 voidsleep_before_next_reconnect_attempt(
void);
256 voidreconnect(
void);
261 voidre_auth(
void);
266 voidre_select(
void);
276 voidunprotected_send(
conststd::vector<std::string>& redis_cmd,
constreply_callback_t& callback);
285 voidunprotected_auth(
conststd::string& password,
constreply_callback_t& reply_callback);
294 voidunprotected_select(
intindex,
constreply_callback_t& reply_callback);
304 void add_sentinel(
conststd::string& host, std::size_t port, std::uint32_t timeout_msecs = 0);
473append(
conststd::string& key,
conststd::string& value,
constreply_callback_t& reply_callback);
474std::future<reply> append(
conststd::string& key,
conststd::string& value);
476 client& auth(
conststd::string& password,
constreply_callback_t& reply_callback);
477std::future<reply> auth(
conststd::string& password);
479 client& bgrewriteaof(
constreply_callback_t& reply_callback);
480std::future<reply> bgrewriteaof();
482 client& bgsave(
constreply_callback_t& reply_callback);
483std::future<reply> bgsave();
485 client& bitcount(
conststd::string& key,
constreply_callback_t& reply_callback);
486std::future<reply> bitcount(
conststd::string& key);
488 client& bitcount(
conststd::string& key,
intstart,
intend,
constreply_callback_t& reply_callback);
489std::future<reply> bitcount(
conststd::string& key,
intstart,
intend);
491 client& bitfield(
conststd::string& key,
conststd::vector<bitfield_operation>& operations,
constreply_callback_t& reply_callback);
492std::future<reply> bitfield(
conststd::string& key,
conststd::vector<bitfield_operation>& operations);
494 client& bitop(
conststd::string& operation,
conststd::string& destkey,
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
495std::future<reply> bitop(
conststd::string& operation,
conststd::string& destkey,
conststd::vector<std::string>& keys);
497 client& bitpos(
conststd::string& key,
intbit,
constreply_callback_t& reply_callback);
498std::future<reply> bitpos(
conststd::string& key,
intbit);
500 client& bitpos(
conststd::string& key,
intbit,
intstart,
constreply_callback_t& reply_callback);
501std::future<reply> bitpos(
conststd::string& key,
intbit,
intstart);
503 client& bitpos(
conststd::string& key,
intbit,
intstart,
intend,
constreply_callback_t& reply_callback);
504std::future<reply> bitpos(
conststd::string& key,
intbit,
intstart,
intend);
506 client& blpop(
conststd::vector<std::string>& keys,
inttimeout,
constreply_callback_t& reply_callback);
507std::future<reply> blpop(
conststd::vector<std::string>& keys,
inttimeout);
509 client& brpop(
conststd::vector<std::string>& keys,
inttimeout,
constreply_callback_t& reply_callback);
510std::future<reply> brpop(
conststd::vector<std::string>& keys,
inttimeout);
512 client& brpoplpush(
conststd::string& src,
conststd::string& dst,
inttimeout,
constreply_callback_t& reply_callback);
513std::future<reply> brpoplpush(
conststd::string& src,
conststd::string& dst,
inttimeout);
515 template<
typenameT,
typename... Ts>
516 client&
client_kill(
conststd::string& host,
intport,
constT& arg,
constTs&... args);
518 template<
typename... Ts>
520 template<
typenameT,
typename... Ts>
522 template<
typenameT,
typename... Ts>
525 client& client_list(
constreply_callback_t& reply_callback);
526std::future<reply> client_list();
528 client& client_getname(
constreply_callback_t& reply_callback);
529std::future<reply> client_getname();
531 client& client_pause(
inttimeout,
constreply_callback_t& reply_callback);
532std::future<reply> client_pause(
inttimeout);
534 client& client_reply(
conststd::string& mode,
constreply_callback_t& reply_callback);
535std::future<reply> client_reply(
conststd::string& mode);
537 client& client_setname(
conststd::string& name,
constreply_callback_t& reply_callback);
538std::future<reply> client_setname(
conststd::string& name);
540 client& cluster_addslots(
conststd::vector<std::string>& p_slots,
constreply_callback_t& reply_callback);
541std::future<reply> cluster_addslots(
conststd::vector<std::string>& p_slots);
543 client& cluster_count_failure_reports(
conststd::string& node_id,
constreply_callback_t& reply_callback);
544std::future<reply> cluster_count_failure_reports(
conststd::string& node_id);
546 client& cluster_countkeysinslot(
conststd::string& slot,
constreply_callback_t& reply_callback);
547std::future<reply> cluster_countkeysinslot(
conststd::string& slot);
549 client& cluster_delslots(
conststd::vector<std::string>& p_slots,
constreply_callback_t& reply_callback);
550std::future<reply> cluster_delslots(
conststd::vector<std::string>& p_slots);
552 client& cluster_failover(
constreply_callback_t& reply_callback);
553std::future<reply> cluster_failover();
555 client& cluster_failover(
conststd::string& mode,
constreply_callback_t& reply_callback);
556std::future<reply> cluster_failover(
conststd::string& mode);
558 client& cluster_forget(
conststd::string& node_id,
constreply_callback_t& reply_callback);
559std::future<reply> cluster_forget(
conststd::string& node_id);
561 client& cluster_getkeysinslot(
conststd::string& slot,
intcount,
constreply_callback_t& reply_callback);
562std::future<reply> cluster_getkeysinslot(
conststd::string& slot,
intcount);
564 client& cluster_info(
constreply_callback_t& reply_callback);
565std::future<reply> cluster_info();
567 client& cluster_keyslot(
conststd::string& key,
constreply_callback_t& reply_callback);
568std::future<reply> cluster_keyslot(
conststd::string& key);
570 client& cluster_meet(
conststd::string& ip,
intport,
constreply_callback_t& reply_callback);
571std::future<reply> cluster_meet(
conststd::string& ip,
intport);
573 client& cluster_nodes(
constreply_callback_t& reply_callback);
574std::future<reply> cluster_nodes();
576 client& cluster_replicate(
conststd::string& node_id,
constreply_callback_t& reply_callback);
577std::future<reply> cluster_replicate(
conststd::string& node_id);
579 client& cluster_reset(
constreply_callback_t& reply_callback);
580 client& cluster_reset(
conststd::string& mode,
constreply_callback_t& reply_callback);
581std::future<reply> cluster_reset(
conststd::string& mode =
"soft");
583 client& cluster_saveconfig(
constreply_callback_t& reply_callback);
584std::future<reply> cluster_saveconfig();
586 client& cluster_set_config_epoch(
conststd::string& epoch,
constreply_callback_t& reply_callback);
587std::future<reply> cluster_set_config_epoch(
conststd::string& epoch);
589 client& cluster_setslot(
conststd::string& slot,
conststd::string& mode,
constreply_callback_t& reply_callback);
590std::future<reply> cluster_setslot(
conststd::string& slot,
conststd::string& mode);
592 client& cluster_setslot(
conststd::string& slot,
conststd::string& mode,
conststd::string& node_id,
constreply_callback_t& reply_callback);
593std::future<reply> cluster_setslot(
conststd::string& slot,
conststd::string& mode,
conststd::string& node_id);
595 client& cluster_slaves(
conststd::string& node_id,
constreply_callback_t& reply_callback);
596std::future<reply> cluster_slaves(
conststd::string& node_id);
598 client& cluster_slots(
constreply_callback_t& reply_callback);
599std::future<reply> cluster_slots();
601 client& command(
constreply_callback_t& reply_callback);
602std::future<reply> command();
604 client& command_count(
constreply_callback_t& reply_callback);
605std::future<reply> command_count();
607 client& command_getkeys(
constreply_callback_t& reply_callback);
608std::future<reply> command_getkeys();
610 client& command_info(
conststd::vector<std::string>& command_name,
constreply_callback_t& reply_callback);
611std::future<reply> command_info(
conststd::vector<std::string>& command_name);
613 client& config_get(
conststd::string& param,
constreply_callback_t& reply_callback);
614std::future<reply> config_get(
conststd::string& param);
616 client& config_rewrite(
constreply_callback_t& reply_callback);
617std::future<reply> config_rewrite();
619 client& config_set(
conststd::string& param,
conststd::string& val,
constreply_callback_t& reply_callback);
620std::future<reply> config_set(
conststd::string& param,
conststd::string& val);
622 client& config_resetstat(
constreply_callback_t& reply_callback);
623std::future<reply> config_resetstat();
625 client& dbsize(
constreply_callback_t& reply_callback);
626std::future<reply> dbsize();
628 client& debug_object(
conststd::string& key,
constreply_callback_t& reply_callback);
629std::future<reply> debug_object(
conststd::string& key);
631 client& debug_segfault(
constreply_callback_t& reply_callback);
632std::future<reply> debug_segfault();
634 client& decr(
conststd::string& key,
constreply_callback_t& reply_callback);
635std::future<reply> decr(
conststd::string& key);
637 client& decrby(
conststd::string& key,
intval,
constreply_callback_t& reply_callback);
638std::future<reply> decrby(
conststd::string& key,
intval);
640 client& del(
conststd::vector<std::string>& key,
constreply_callback_t& reply_callback);
641std::future<reply> del(
conststd::vector<std::string>& key);
643 client& discard(
constreply_callback_t& reply_callback);
644std::future<reply> discard();
646 client& dump(
conststd::string& key,
constreply_callback_t& reply_callback);
647std::future<reply> dump(
conststd::string& key);
649 client& echo(
conststd::string& msg,
constreply_callback_t& reply_callback);
650std::future<reply> echo(
conststd::string& msg);
652 client& eval(
conststd::string& script,
intnumkeys,
conststd::vector<std::string>& keys,
conststd::vector<std::string>& args,
constreply_callback_t& reply_callback);
653std::future<reply> eval(
conststd::string& script,
intnumkeys,
conststd::vector<std::string>& keys,
conststd::vector<std::string>& args);
655 client& evalsha(
conststd::string& sha1,
intnumkeys,
conststd::vector<std::string>& keys,
conststd::vector<std::string>& args,
constreply_callback_t& reply_callback);
656std::future<reply> evalsha(
conststd::string& sha1,
intnumkeys,
conststd::vector<std::string>& keys,
conststd::vector<std::string>& args);
658 client& exec(
constreply_callback_t& reply_callback);
659std::future<reply> exec();
661 client& exists(
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
662std::future<reply> exists(
conststd::vector<std::string>& keys);
664 client& expire(
conststd::string& key,
intseconds,
constreply_callback_t& reply_callback);
665std::future<reply> expire(
conststd::string& key,
intseconds);
667 client& expireat(
conststd::string& key,
inttimestamp,
constreply_callback_t& reply_callback);
668std::future<reply> expireat(
conststd::string& key,
inttimestamp);
670 client& flushall(
constreply_callback_t& reply_callback);
671std::future<reply> flushall();
673 client& flushdb(
constreply_callback_t& reply_callback);
674std::future<reply> flushdb();
676 client& geoadd(
conststd::string& key,
conststd::vector<std::tuple<std::string, std::string, std::string>>& long_lat_memb,
constreply_callback_t& reply_callback);
677std::future<reply> geoadd(
conststd::string& key,
conststd::vector<std::tuple<std::string, std::string, std::string>>& long_lat_memb);
679 client& geohash(
conststd::string& key,
conststd::vector<std::string>& members,
constreply_callback_t& reply_callback);
680std::future<reply> geohash(
conststd::string& key,
conststd::vector<std::string>& members);
682 client& geopos(
conststd::string& key,
conststd::vector<std::string>& members,
constreply_callback_t& reply_callback);
683std::future<reply> geopos(
conststd::string& key,
conststd::vector<std::string>& members);
685 client& geodist(
conststd::string& key,
conststd::string& member_1,
conststd::string& member_2,
constreply_callback_t& reply_callback);
686 client& geodist(
conststd::string& key,
conststd::string& member_1,
conststd::string& member_2,
conststd::string& unit,
constreply_callback_t& reply_callback);
687std::future<reply> geodist(
conststd::string& key,
conststd::string& member_1,
conststd::string& member_2,
conststd::string& unit =
"m");
689 client& georadius(
conststd::string& key,
doublelongitude,
doublelatitude,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order,
constreply_callback_t& reply_callback);
690 client& georadius(
conststd::string& key,
doublelongitude,
doublelatitude,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order, std::size_t count,
constreply_callback_t& reply_callback);
691 client& georadius(
conststd::string& key,
doublelongitude,
doublelatitude,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order,
conststd::string& store_key,
constreply_callback_t& reply_callback);
692 client& georadius(
conststd::string& key,
doublelongitude,
doublelatitude,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order,
conststd::string& store_key,
conststd::string& storedist_key,
constreply_callback_t& reply_callback);
693 client& georadius(
conststd::string& key,
doublelongitude,
doublelatitude,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order, std::size_t count,
conststd::string& store_key,
constreply_callback_t& reply_callback);
694 client& georadius(
conststd::string& key,
doublelongitude,
doublelatitude,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order, std::size_t count,
conststd::string& store_key,
conststd::string& storedist_key,
constreply_callback_t& reply_callback);
695std::future<reply> georadius(
conststd::string& key,
doublelongitude,
doublelatitude,
doubleradius,
geo_unitunit,
boolwith_coord =
false,
boolwith_dist =
false,
boolwith_hash =
false,
boolasc_order =
false, std::size_t count = 0,
conststd::string& store_key =
"",
conststd::string& storedist_key =
"");
697 client& georadiusbymember(
conststd::string& key,
conststd::string& member,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order,
constreply_callback_t& reply_callback);
698 client& georadiusbymember(
conststd::string& key,
conststd::string& member,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order, std::size_t count,
constreply_callback_t& reply_callback);
699 client& georadiusbymember(
conststd::string& key,
conststd::string& member,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order,
conststd::string& store_key,
constreply_callback_t& reply_callback);
700 client& georadiusbymember(
conststd::string& key,
conststd::string& member,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order,
conststd::string& store_key,
conststd::string& storedist_key,
constreply_callback_t& reply_callback);
701 client& georadiusbymember(
conststd::string& key,
conststd::string& member,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order, std::size_t count,
conststd::string& store_key,
constreply_callback_t& reply_callback);
702 client& georadiusbymember(
conststd::string& key,
conststd::string& member,
doubleradius,
geo_unitunit,
boolwith_coord,
boolwith_dist,
boolwith_hash,
boolasc_order, std::size_t count,
conststd::string& store_key,
conststd::string& storedist_key,
constreply_callback_t& reply_callback);
703std::future<reply> georadiusbymember(
conststd::string& key,
conststd::string& member,
doubleradius,
geo_unitunit,
boolwith_coord =
false,
boolwith_dist =
false,
boolwith_hash =
false,
boolasc_order =
false, std::size_t count = 0,
conststd::string& store_key =
"",
conststd::string& storedist_key =
"");
705 client&
get(
conststd::string& key,
constreply_callback_t& reply_callback);
706std::future<reply>
get(
conststd::string& key);
708 client& getbit(
conststd::string& key,
intoffset,
constreply_callback_t& reply_callback);
709std::future<reply> getbit(
conststd::string& key,
intoffset);
711 client& getrange(
conststd::string& key,
intstart,
intend,
constreply_callback_t& reply_callback);
712std::future<reply> getrange(
conststd::string& key,
intstart,
intend);
714 client& getset(
conststd::string& key,
conststd::string& val,
constreply_callback_t& reply_callback);
715std::future<reply> getset(
conststd::string& key,
conststd::string& val);
717 client& hdel(
conststd::string& key,
conststd::vector<std::string>& fields,
constreply_callback_t& reply_callback);
718std::future<reply> hdel(
conststd::string& key,
conststd::vector<std::string>& fields);
720 client& hexists(
conststd::string& key,
conststd::string& field,
constreply_callback_t& reply_callback);
721std::future<reply> hexists(
conststd::string& key,
conststd::string& field);
723 client& hget(
conststd::string& key,
conststd::string& field,
constreply_callback_t& reply_callback);
724std::future<reply> hget(
conststd::string& key,
conststd::string& field);
726 client& hgetall(
conststd::string& key,
constreply_callback_t& reply_callback);
727std::future<reply> hgetall(
conststd::string& key);
729 client& hincrby(
conststd::string& key,
conststd::string& field,
intincr,
constreply_callback_t& reply_callback);
730std::future<reply> hincrby(
conststd::string& key,
conststd::string& field,
intincr);
732 client& hincrbyfloat(
conststd::string& key,
conststd::string& field,
floatincr,
constreply_callback_t& reply_callback);
733std::future<reply> hincrbyfloat(
conststd::string& key,
conststd::string& field,
floatincr);
735 client& hkeys(
conststd::string& key,
constreply_callback_t& reply_callback);
736std::future<reply> hkeys(
conststd::string& key);
738 client& hlen(
conststd::string& key,
constreply_callback_t& reply_callback);
739std::future<reply> hlen(
conststd::string& key);
741 client& hmget(
conststd::string& key,
conststd::vector<std::string>& fields,
constreply_callback_t& reply_callback);
742std::future<reply> hmget(
conststd::string& key,
conststd::vector<std::string>& fields);
744 client& hmset(
conststd::string& key,
conststd::vector<std::pair<std::string, std::string>>& field_val,
constreply_callback_t& reply_callback);
745std::future<reply> hmset(
conststd::string& key,
conststd::vector<std::pair<std::string, std::string>>& field_val);
747 client& hscan(
conststd::string& key, std::size_t cursor,
constreply_callback_t& reply_callback);
748std::future<reply> hscan(
conststd::string& key, std::size_t cursor);
750 client& hscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern,
constreply_callback_t& reply_callback);
751std::future<reply> hscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern);
753 client& hscan(
conststd::string& key, std::size_t cursor, std::size_t count,
constreply_callback_t& reply_callback);
754std::future<reply> hscan(
conststd::string& key, std::size_t cursor, std::size_t count);
756 client& hscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern, std::size_t count,
constreply_callback_t& reply_callback);
757std::future<reply> hscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern, std::size_t count);
759 client& hset(
conststd::string& key,
conststd::string& field,
conststd::string& value,
constreply_callback_t& reply_callback);
760std::future<reply> hset(
conststd::string& key,
conststd::string& field,
conststd::string& value);
762 client& hsetnx(
conststd::string& key,
conststd::string& field,
conststd::string& value,
constreply_callback_t& reply_callback);
763std::future<reply> hsetnx(
conststd::string& key,
conststd::string& field,
conststd::string& value);
765 client& hstrlen(
conststd::string& key,
conststd::string& field,
constreply_callback_t& reply_callback);
766std::future<reply> hstrlen(
conststd::string& key,
conststd::string& field);
768 client& hvals(
conststd::string& key,
constreply_callback_t& reply_callback);
769std::future<reply> hvals(
conststd::string& key);
771 client& incr(
conststd::string& key,
constreply_callback_t& reply_callback);
772std::future<reply> incr(
conststd::string& key);
774 client& incrby(
conststd::string& key,
intincr,
constreply_callback_t& reply_callback);
775std::future<reply> incrby(
conststd::string& key,
intincr);
777 client& incrbyfloat(
conststd::string& key,
floatincr,
constreply_callback_t& reply_callback);
778std::future<reply> incrbyfloat(
conststd::string& key,
floatincr);
780 client& info(
constreply_callback_t& reply_callback);
781 client& info(
conststd::string& section,
constreply_callback_t& reply_callback);
782std::future<reply> info(
conststd::string& section =
"default");
784 client& keys(
conststd::string& pattern,
constreply_callback_t& reply_callback);
785std::future<reply> keys(
conststd::string& pattern);
787 client& lastsave(
constreply_callback_t& reply_callback);
788std::future<reply> lastsave();
790 client& lindex(
conststd::string& key,
intindex,
constreply_callback_t& reply_callback);
791std::future<reply> lindex(
conststd::string& key,
intindex);
793 client& linsert(
conststd::string& key,
conststd::string& before_after,
conststd::string& pivot,
conststd::string& value,
constreply_callback_t& reply_callback);
794std::future<reply> linsert(
conststd::string& key,
conststd::string& before_after,
conststd::string& pivot,
conststd::string& value);
796 client& llen(
conststd::string& key,
constreply_callback_t& reply_callback);
797std::future<reply> llen(
conststd::string& key);
799 client& lpop(
conststd::string& key,
constreply_callback_t& reply_callback);
800std::future<reply> lpop(
conststd::string& key);
802 client& lpush(
conststd::string& key,
conststd::vector<std::string>& values,
constreply_callback_t& reply_callback);
803std::future<reply> lpush(
conststd::string& key,
conststd::vector<std::string>& values);
805 client& lpushx(
conststd::string& key,
conststd::string& value,
constreply_callback_t& reply_callback);
806std::future<reply> lpushx(
conststd::string& key,
conststd::string& value);
808 client& lrange(
conststd::string& key,
intstart,
intstop,
constreply_callback_t& reply_callback);
809std::future<reply> lrange(
conststd::string& key,
intstart,
intstop);
811 client& lrem(
conststd::string& key,
intcount,
conststd::string& value,
constreply_callback_t& reply_callback);
812std::future<reply> lrem(
conststd::string& key,
intcount,
conststd::string& value);
814 client& lset(
conststd::string& key,
intindex,
conststd::string& value,
constreply_callback_t& reply_callback);
815std::future<reply> lset(
conststd::string& key,
intindex,
conststd::string& value);
817 client& ltrim(
conststd::string& key,
intstart,
intstop,
constreply_callback_t& reply_callback);
818std::future<reply> ltrim(
conststd::string& key,
intstart,
intstop);
820 client& mget(
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
821std::future<reply> mget(
conststd::vector<std::string>& keys);
823 client& migrate(
conststd::string& host,
intport,
conststd::string& key,
conststd::string& dest_db,
inttimeout,
constreply_callback_t& reply_callback);
824 client& migrate(
conststd::string& host,
intport,
conststd::string& key,
conststd::string& dest_db,
inttimeout,
boolcopy,
boolreplace,
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
825std::future<reply> migrate(
conststd::string& host,
intport,
conststd::string& key,
conststd::string& dest_db,
inttimeout,
boolcopy =
false,
boolreplace =
false,
conststd::vector<std::string>& keys = {});
827 client& monitor(
constreply_callback_t& reply_callback);
828std::future<reply> monitor();
830 client& move(
conststd::string& key,
conststd::string& db,
constreply_callback_t& reply_callback);
831std::future<reply> move(
conststd::string& key,
conststd::string& db);
833 client& mset(
conststd::vector<std::pair<std::string, std::string>>& key_vals,
constreply_callback_t& reply_callback);
834std::future<reply> mset(
conststd::vector<std::pair<std::string, std::string>>& key_vals);
836 client& msetnx(
conststd::vector<std::pair<std::string, std::string>>& key_vals,
constreply_callback_t& reply_callback);
837std::future<reply> msetnx(
conststd::vector<std::pair<std::string, std::string>>& key_vals);
839 client& multi(
constreply_callback_t& reply_callback);
840std::future<reply> multi();
842 client& object(
conststd::string& subcommand,
conststd::vector<std::string>& args,
constreply_callback_t& reply_callback);
843std::future<reply> object(
conststd::string& subcommand,
conststd::vector<std::string>& args);
845 client& persist(
conststd::string& key,
constreply_callback_t& reply_callback);
846std::future<reply> persist(
conststd::string& key);
848 client& pexpire(
conststd::string& key,
intmilliseconds,
constreply_callback_t& reply_callback);
849std::future<reply> pexpire(
conststd::string& key,
intmilliseconds);
851 client& pexpireat(
conststd::string& key,
intmilliseconds_timestamp,
constreply_callback_t& reply_callback);
852std::future<reply> pexpireat(
conststd::string& key,
intmilliseconds_timestamp);
854 client& pfadd(
conststd::string& key,
conststd::vector<std::string>& elements,
constreply_callback_t& reply_callback);
855std::future<reply> pfadd(
conststd::string& key,
conststd::vector<std::string>& elements);
857 client& pfcount(
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
858std::future<reply> pfcount(
conststd::vector<std::string>& keys);
860 client& pfmerge(
conststd::string& destkey,
conststd::vector<std::string>& sourcekeys,
constreply_callback_t& reply_callback);
861std::future<reply> pfmerge(
conststd::string& destkey,
conststd::vector<std::string>& sourcekeys);
863 client& ping(
constreply_callback_t& reply_callback);
864std::future<reply> ping();
866 client& ping(
conststd::string& message,
constreply_callback_t& reply_callback);
867std::future<reply> ping(
conststd::string& message);
869 client& psetex(
conststd::string& key,
intmilliseconds,
conststd::string& val,
constreply_callback_t& reply_callback);
870std::future<reply> psetex(
conststd::string& key,
intmilliseconds,
conststd::string& val);
872 client& publish(
conststd::string& channel,
conststd::string& message,
constreply_callback_t& reply_callback);
873std::future<reply> publish(
conststd::string& channel,
conststd::string& message);
875 client& pubsub(
conststd::string& subcommand,
conststd::vector<std::string>& args,
constreply_callback_t& reply_callback);
876std::future<reply> pubsub(
conststd::string& subcommand,
conststd::vector<std::string>& args);
878 client& pttl(
conststd::string& key,
constreply_callback_t& reply_callback);
879std::future<reply> pttl(
conststd::string& key);
881 client& quit(
constreply_callback_t& reply_callback);
882std::future<reply> quit();
884 client& randomkey(
constreply_callback_t& reply_callback);
885std::future<reply> randomkey();
887 client& readonly(
constreply_callback_t& reply_callback);
888std::future<reply> readonly();
890 client& readwrite(
constreply_callback_t& reply_callback);
891std::future<reply> readwrite();
893 client& rename(
conststd::string& key,
conststd::string& newkey,
constreply_callback_t& reply_callback);
894std::future<reply> rename(
conststd::string& key,
conststd::string& newkey);
896 client& renamenx(
conststd::string& key,
conststd::string& newkey,
constreply_callback_t& reply_callback);
897std::future<reply> renamenx(
conststd::string& key,
conststd::string& newkey);
899 client& restore(
conststd::string& key,
intttl,
conststd::string& serialized_value,
constreply_callback_t& reply_callback);
900std::future<reply> restore(
conststd::string& key,
intttl,
conststd::string& serialized_value);
902 client& restore(
conststd::string& key,
intttl,
conststd::string& serialized_value,
conststd::string& replace,
constreply_callback_t& reply_callback);
903std::future<reply> restore(
conststd::string& key,
intttl,
conststd::string& serialized_value,
conststd::string& replace);
905 client& role(
constreply_callback_t& reply_callback);
906std::future<reply> role();
908 client& rpop(
conststd::string& key,
constreply_callback_t& reply_callback);
909std::future<reply> rpop(
conststd::string& key);
911 client& rpoplpush(
conststd::string& source,
conststd::string& destination,
constreply_callback_t& reply_callback);
912std::future<reply> rpoplpush(
conststd::string& src,
conststd::string& dst);
914 client& rpush(
conststd::string& key,
conststd::vector<std::string>& values,
constreply_callback_t& reply_callback);
915std::future<reply> rpush(
conststd::string& key,
conststd::vector<std::string>& values);
917 client& rpushx(
conststd::string& key,
conststd::string& value,
constreply_callback_t& reply_callback);
918std::future<reply> rpushx(
conststd::string& key,
conststd::string& value);
920 client& sadd(
conststd::string& key,
conststd::vector<std::string>& members,
constreply_callback_t& reply_callback);
921std::future<reply> sadd(
conststd::string& key,
conststd::vector<std::string>& members);
923 client& save(
constreply_callback_t& reply_callback);
924std::future<reply> save();
926 client& scan(std::size_t cursor,
constreply_callback_t& reply_callback);
927std::future<reply> scan(std::size_t cursor);
929 client& scan(std::size_t cursor,
conststd::string& pattern,
constreply_callback_t& reply_callback);
930std::future<reply> scan(std::size_t cursor,
conststd::string& pattern);
932 client& scan(std::size_t cursor, std::size_t count,
constreply_callback_t& reply_callback);
933std::future<reply> scan(std::size_t cursor, std::size_t count);
935 client& scan(std::size_t cursor,
conststd::string& pattern, std::size_t count,
constreply_callback_t& reply_callback);
936std::future<reply> scan(std::size_t cursor,
conststd::string& pattern, std::size_t count);
938 client& scard(
conststd::string& key,
constreply_callback_t& reply_callback);
939std::future<reply> scard(
conststd::string& key);
941 client& script_debug(
conststd::string& mode,
constreply_callback_t& reply_callback);
942std::future<reply> script_debug(
conststd::string& mode);
944 client& script_exists(
conststd::vector<std::string>& scripts,
constreply_callback_t& reply_callback);
945std::future<reply> script_exists(
conststd::vector<std::string>& scripts);
947 client& script_flush(
constreply_callback_t& reply_callback);
948std::future<reply> script_flush();
950 client& script_kill(
constreply_callback_t& reply_callback);
951std::future<reply> script_kill();
953 client& script_load(
conststd::string& script,
constreply_callback_t& reply_callback);
954std::future<reply> script_load(
conststd::string& script);
956 client& sdiff(
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
957std::future<reply> sdiff(
conststd::vector<std::string>& keys);
959 client& sdiffstore(
conststd::string& destination,
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
960std::future<reply> sdiffstore(
conststd::string& dst,
conststd::vector<std::string>& keys);
962 client& select(
intindex,
constreply_callback_t& reply_callback);
963std::future<reply> select(
intindex);
965 client&
set(
conststd::string& key,
conststd::string& value,
constreply_callback_t& reply_callback);
966std::future<reply>
set(
conststd::string& key,
conststd::string& value);
968 client& set_advanced(
conststd::string& key,
conststd::string& value,
constreply_callback_t& reply_callback);
969 client& set_advanced(
conststd::string& key,
conststd::string& value,
boolex,
intex_sec,
boolpx,
intpx_milli,
boolnx,
boolxx,
constreply_callback_t& reply_callback);
970std::future<reply> set_advanced(
conststd::string& key,
conststd::string& value,
boolex =
false,
intex_sec = 0,
boolpx =
false,
intpx_milli = 0,
boolnx =
false,
boolxx =
false);
972 client& setbit_(
conststd::string& key,
intoffset,
conststd::string& value,
constreply_callback_t& reply_callback);
973std::future<reply> setbit_(
conststd::string& key,
intoffset,
conststd::string& value);
975 client& setex(
conststd::string& key,
intseconds,
conststd::string& value,
constreply_callback_t& reply_callback);
976std::future<reply> setex(
conststd::string& key,
intseconds,
conststd::string& value);
978 client& setnx(
conststd::string& key,
conststd::string& value,
constreply_callback_t& reply_callback);
979std::future<reply> setnx(
conststd::string& key,
conststd::string& value);
981 client& setrange(
conststd::string& key,
intoffset,
conststd::string& value,
constreply_callback_t& reply_callback);
982std::future<reply> setrange(
conststd::string& key,
intoffset,
conststd::string& value);
984 client& shutdown(
constreply_callback_t& reply_callback);
985std::future<reply> shutdown();
987 client& shutdown(
conststd::string& save,
constreply_callback_t& reply_callback);
988std::future<reply> shutdown(
conststd::string& save);
990 client& sinter(
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
991std::future<reply> sinter(
conststd::vector<std::string>& keys);
993 client& sinterstore(
conststd::string& destination,
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
994std::future<reply> sinterstore(
conststd::string& dst,
conststd::vector<std::string>& keys);
996 client& sismember(
conststd::string& key,
conststd::string& member,
constreply_callback_t& reply_callback);
997std::future<reply> sismember(
conststd::string& key,
conststd::string& member);
999 client& slaveof(
conststd::string& host,
intport,
constreply_callback_t& reply_callback);
1000std::future<reply> slaveof(
conststd::string& host,
intport);
1002 client& slowlog(
conststd::string subcommand,
constreply_callback_t& reply_callback);
1003std::future<reply> slowlog(
conststd::string& subcommand);
1005 client& slowlog(
conststd::string subcommand,
conststd::string& argument,
constreply_callback_t& reply_callback);
1006std::future<reply> slowlog(
conststd::string& subcommand,
conststd::string& argument);
1008 client& smembers(
conststd::string& key,
constreply_callback_t& reply_callback);
1009std::future<reply> smembers(
conststd::string& key);
1011 client& smove(
conststd::string& source,
conststd::string& destination,
conststd::string& member,
constreply_callback_t& reply_callback);
1012std::future<reply> smove(
conststd::string& src,
conststd::string& dst,
conststd::string& member);
1014 client& sort(
conststd::string& key,
constreply_callback_t& reply_callback);
1015std::future<reply> sort(
conststd::string& key);
1017 client& sort(
conststd::string& key,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
constreply_callback_t& reply_callback);
1018std::future<reply> sort(
conststd::string& key,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha);
1020 client& sort(
conststd::string& key, std::size_t offset, std::size_t count,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
constreply_callback_t& reply_callback);
1021std::future<reply> sort(
conststd::string& key, std::size_t offset, std::size_t count,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha);
1023 client& sort(
conststd::string& key,
conststd::string& by_pattern,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
constreply_callback_t& reply_callback);
1024std::future<reply> sort(
conststd::string& key,
conststd::string& by_pattern,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha);
1026 client& sort(
conststd::string& key,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
conststd::string& store_dest,
constreply_callback_t& reply_callback);
1027std::future<reply> sort(
conststd::string& key,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
conststd::string& store_dest);
1029 client& sort(
conststd::string& key, std::size_t offset, std::size_t count,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
conststd::string& store_dest,
constreply_callback_t& reply_callback);
1030std::future<reply> sort(
conststd::string& key, std::size_t offset, std::size_t count,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
conststd::string& store_dest);
1032 client& sort(
conststd::string& key,
conststd::string& by_pattern,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
conststd::string& store_dest,
constreply_callback_t& reply_callback);
1033std::future<reply> sort(
conststd::string& key,
conststd::string& by_pattern,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
conststd::string& store_dest);
1035 client& sort(
conststd::string& key,
conststd::string& by_pattern, std::size_t offset, std::size_t count,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
constreply_callback_t& reply_callback);
1036std::future<reply> sort(
conststd::string& key,
conststd::string& by_pattern, std::size_t offset, std::size_t count,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha);
1038 client& sort(
conststd::string& key,
conststd::string& by_pattern, std::size_t offset, std::size_t count,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
conststd::string& store_dest,
constreply_callback_t& reply_callback);
1039std::future<reply> sort(
conststd::string& key,
conststd::string& by_pattern, std::size_t offset, std::size_t count,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
conststd::string& store_dest);
1041 client& spop(
conststd::string& key,
constreply_callback_t& reply_callback);
1042std::future<reply> spop(
conststd::string& key);
1044 client& spop(
conststd::string& key,
intcount,
constreply_callback_t& reply_callback);
1045std::future<reply> spop(
conststd::string& key,
intcount);
1047 client& srandmember(
conststd::string& key,
constreply_callback_t& reply_callback);
1048std::future<reply> srandmember(
conststd::string& key);
1050 client& srandmember(
conststd::string& key,
intcount,
constreply_callback_t& reply_callback);
1051std::future<reply> srandmember(
conststd::string& key,
intcount);
1053 client& srem(
conststd::string& key,
conststd::vector<std::string>& members,
constreply_callback_t& reply_callback);
1054std::future<reply> srem(
conststd::string& key,
conststd::vector<std::string>& members);
1056 client& sscan(
conststd::string& key, std::size_t cursor,
constreply_callback_t& reply_callback);
1057std::future<reply> sscan(
conststd::string& key, std::size_t cursor);
1059 client& sscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern,
constreply_callback_t& reply_callback);
1060std::future<reply> sscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern);
1062 client& sscan(
conststd::string& key, std::size_t cursor, std::size_t count,
constreply_callback_t& reply_callback);
1063std::future<reply> sscan(
conststd::string& key, std::size_t cursor, std::size_t count);
1065 client& sscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern, std::size_t count,
constreply_callback_t& reply_callback);
1066std::future<reply> sscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern, std::size_t count);
1068 client& strlen(
conststd::string& key,
constreply_callback_t& reply_callback);
1069std::future<reply> strlen(
conststd::string& key);
1071 client& sunion(
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
1072std::future<reply> sunion(
conststd::vector<std::string>& keys);
1074 client& sunionstore(
conststd::string& destination,
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
1075std::future<reply> sunionstore(
conststd::string& dst,
conststd::vector<std::string>& keys);
1077 client& sync(
constreply_callback_t& reply_callback);
1078std::future<reply> sync();
1080 client& time(
constreply_callback_t& reply_callback);
1081std::future<reply> time();
1083 client& ttl(
conststd::string& key,
constreply_callback_t& reply_callback);
1084std::future<reply> ttl(
conststd::string& key);
1086 client& type(
conststd::string& key,
constreply_callback_t& reply_callback);
1087std::future<reply> type(
conststd::string& key);
1089 client& unwatch(
constreply_callback_t& reply_callback);
1090std::future<reply> unwatch();
1092 client& wait(
intnumslaves,
inttimeout,
constreply_callback_t& reply_callback);
1093std::future<reply> wait(
intnumslaves,
inttimeout);
1095 client& watch(
conststd::vector<std::string>& keys,
constreply_callback_t& reply_callback);
1096std::future<reply> watch(
conststd::vector<std::string>& keys);
1098 client& zadd(
conststd::string& key,
conststd::vector<std::string>& options,
conststd::multimap<std::string, std::string>& score_members,
constreply_callback_t& reply_callback);
1099std::future<reply> zadd(
conststd::string& key,
conststd::vector<std::string>& options,
conststd::multimap<std::string, std::string>& score_members);
1101 client& zcard(
conststd::string& key,
constreply_callback_t& reply_callback);
1102std::future<reply> zcard(
conststd::string& key);
1104 client& zcount(
conststd::string& key,
intmin,
intmax,
constreply_callback_t& reply_callback);
1105std::future<reply> zcount(
conststd::string& key,
intmin,
intmax);
1107 client& zcount(
conststd::string& key,
doublemin,
doublemax,
constreply_callback_t& reply_callback);
1108std::future<reply> zcount(
conststd::string& key,
doublemin,
doublemax);
1110 client& zcount(
conststd::string& key,
conststd::string& min,
conststd::string& max,
constreply_callback_t& reply_callback);
1111std::future<reply> zcount(
conststd::string& key,
conststd::string& min,
conststd::string& max);
1113 client& zincrby(
conststd::string& key,
intincr,
conststd::string& member,
constreply_callback_t& reply_callback);
1114std::future<reply> zincrby(
conststd::string& key,
intincr,
conststd::string& member);
1116 client& zincrby(
conststd::string& key,
doubleincr,
conststd::string& member,
constreply_callback_t& reply_callback);
1117std::future<reply> zincrby(
conststd::string& key,
doubleincr,
conststd::string& member);
1119 client& zincrby(
conststd::string& key,
conststd::string& incr,
conststd::string& member,
constreply_callback_t& reply_callback);
1120std::future<reply> zincrby(
conststd::string& key,
conststd::string& incr,
conststd::string& member);
1122 client& zinterstore(
conststd::string& destination, std::size_t numkeys,
conststd::vector<std::string>& keys,
conststd::vector<std::size_t> weights,
aggregate_methodmethod,
constreply_callback_t& reply_callback);
1123std::future<reply> zinterstore(
conststd::string& destination, std::size_t numkeys,
conststd::vector<std::string>& keys,
conststd::vector<std::size_t> weights,
aggregate_methodmethod);
1125 client& zlexcount(
conststd::string& key,
intmin,
intmax,
constreply_callback_t& reply_callback);
1126std::future<reply> zlexcount(
conststd::string& key,
intmin,
intmax);
1128 client& zlexcount(
conststd::string& key,
doublemin,
doublemax,
constreply_callback_t& reply_callback);
1129std::future<reply> zlexcount(
conststd::string& key,
doublemin,
doublemax);
1131 client& zlexcount(
conststd::string& key,
conststd::string& min,
conststd::string& max,
constreply_callback_t& reply_callback);
1132std::future<reply> zlexcount(
conststd::string& key,
conststd::string& min,
conststd::string& max);
1134 client& zrange(
conststd::string& key,
intstart,
intstop,
constreply_callback_t& reply_callback);
1135 client& zrange(
conststd::string& key,
intstart,
intstop,
boolwithscores,
constreply_callback_t& reply_callback);
1136std::future<reply> zrange(
conststd::string& key,
intstart,
intstop,
boolwithscores =
false);
1138 client& zrange(
conststd::string& key,
doublestart,
doublestop,
constreply_callback_t& reply_callback);
1139 client& zrange(
conststd::string& key,
doublestart,
doublestop,
boolwithscores,
constreply_callback_t& reply_callback);
1140std::future<reply> zrange(
conststd::string& key,
doublestart,
doublestop,
boolwithscores =
false);
1142 client& zrange(
conststd::string& key,
conststd::string& start,
conststd::string& stop,
constreply_callback_t& reply_callback);
1143 client& zrange(
conststd::string& key,
conststd::string& start,
conststd::string& stop,
boolwithscores,
constreply_callback_t& reply_callback);
1144std::future<reply> zrange(
conststd::string& key,
conststd::string& start,
conststd::string& stop,
boolwithscores =
false);
1146 client& zrangebylex(
conststd::string& key,
intmin,
intmax,
constreply_callback_t& reply_callback);
1147 client& zrangebylex(
conststd::string& key,
intmin,
intmax,
boolwithscores,
constreply_callback_t& reply_callback);
1148std::future<reply> zrangebylex(
conststd::string& key,
intmin,
intmax,
boolwithscores =
false);
1150 client& zrangebylex(
conststd::string& key,
doublemin,
doublemax,
constreply_callback_t& reply_callback);
1151 client& zrangebylex(
conststd::string& key,
doublemin,
doublemax,
boolwithscores,
constreply_callback_t& reply_callback);
1152std::future<reply> zrangebylex(
conststd::string& key,
doublemin,
doublemax,
boolwithscores =
false);
1154 client& zrangebylex(
conststd::string& key,
conststd::string& min,
conststd::string& max,
constreply_callback_t& reply_callback);
1155 client& zrangebylex(
conststd::string& key,
conststd::string& min,
conststd::string& max,
boolwithscores,
constreply_callback_t& reply_callback);
1156std::future<reply> zrangebylex(
conststd::string& key,
conststd::string& min,
conststd::string& max,
boolwithscores =
false);
1158 client& zrangebylex(
conststd::string& key,
intmin,
intmax, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1159 client& zrangebylex(
conststd::string& key,
intmin,
intmax, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1160std::future<reply> zrangebylex(
conststd::string& key,
intmin,
intmax, std::size_t offset, std::size_t count,
boolwithscores =
false);
1162 client& zrangebylex(
conststd::string& key,
doublemin,
doublemax, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1163 client& zrangebylex(
conststd::string& key,
doublemin,
doublemax, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1164std::future<reply> zrangebylex(
conststd::string& key,
doublemin,
doublemax, std::size_t offset, std::size_t count,
boolwithscores =
false);
1166 client& zrangebylex(
conststd::string& key,
conststd::string& min,
conststd::string& max, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1167 client& zrangebylex(
conststd::string& key,
conststd::string& min,
conststd::string& max, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1168std::future<reply> zrangebylex(
conststd::string& key,
conststd::string& min,
conststd::string& max, std::size_t offset, std::size_t count,
boolwithscores =
false);
1170 client& zrangebyscore(
conststd::string& key,
intmin,
intmax,
constreply_callback_t& reply_callback);
1171 client& zrangebyscore(
conststd::string& key,
intmin,
intmax,
boolwithscores,
constreply_callback_t& reply_callback);
1172std::future<reply> zrangebyscore(
conststd::string& key,
intmin,
intmax,
boolwithscores =
false);
1174 client& zrangebyscore(
conststd::string& key,
doublemin,
doublemax,
constreply_callback_t& reply_callback);
1175 client& zrangebyscore(
conststd::string& key,
doublemin,
doublemax,
boolwithscores,
constreply_callback_t& reply_callback);
1176std::future<reply> zrangebyscore(
conststd::string& key,
doublemin,
doublemax,
boolwithscores =
false);
1178 client& zrangebyscore(
conststd::string& key,
conststd::string& min,
conststd::string& max,
constreply_callback_t& reply_callback);
1179 client& zrangebyscore(
conststd::string& key,
conststd::string& min,
conststd::string& max,
boolwithscores,
constreply_callback_t& reply_callback);
1180std::future<reply> zrangebyscore(
conststd::string& key,
conststd::string& min,
conststd::string& max,
boolwithscores =
false);
1182 client& zrangebyscore(
conststd::string& key,
intmin,
intmax, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1183 client& zrangebyscore(
conststd::string& key,
intmin,
intmax, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1184std::future<reply> zrangebyscore(
conststd::string& key,
intmin,
intmax, std::size_t offset, std::size_t count,
boolwithscores =
false);
1186 client& zrangebyscore(
conststd::string& key,
doublemin,
doublemax, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1187 client& zrangebyscore(
conststd::string& key,
doublemin,
doublemax, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1188std::future<reply> zrangebyscore(
conststd::string& key,
doublemin,
doublemax, std::size_t offset, std::size_t count,
boolwithscores =
false);
1190 client& zrangebyscore(
conststd::string& key,
conststd::string& min,
conststd::string& max, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1191 client& zrangebyscore(
conststd::string& key,
conststd::string& min,
conststd::string& max, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1192std::future<reply> zrangebyscore(
conststd::string& key,
conststd::string& min,
conststd::string& max, std::size_t offset, std::size_t count,
boolwithscores =
false);
1194 client& zrank(
conststd::string& key,
conststd::string& member,
constreply_callback_t& reply_callback);
1195std::future<reply> zrank(
conststd::string& key,
conststd::string& member);
1197 client& zrem(
conststd::string& key,
conststd::vector<std::string>& members,
constreply_callback_t& reply_callback);
1198std::future<reply> zrem(
conststd::string& key,
conststd::vector<std::string>& members);
1200 client& zremrangebylex(
conststd::string& key,
intmin,
intmax,
constreply_callback_t& reply_callback);
1201std::future<reply> zremrangebylex(
conststd::string& key,
intmin,
intmax);
1203 client& zremrangebylex(
conststd::string& key,
doublemin,
doublemax,
constreply_callback_t& reply_callback);
1204std::future<reply> zremrangebylex(
conststd::string& key,
doublemin,
doublemax);
1206 client& zremrangebylex(
conststd::string& key,
conststd::string& min,
conststd::string& max,
constreply_callback_t& reply_callback);
1207std::future<reply> zremrangebylex(
conststd::string& key,
conststd::string& min,
conststd::string& max);
1209 client& zremrangebyrank(
conststd::string& key,
intstart,
intstop,
constreply_callback_t& reply_callback);
1210std::future<reply> zremrangebyrank(
conststd::string& key,
intstart,
intstop);
1212 client& zremrangebyrank(
conststd::string& key,
doublestart,
doublestop,
constreply_callback_t& reply_callback);
1213std::future<reply> zremrangebyrank(
conststd::string& key,
doublestart,
doublestop);
1215 client& zremrangebyrank(
conststd::string& key,
conststd::string& start,
conststd::string& stop,
constreply_callback_t& reply_callback);
1216std::future<reply> zremrangebyrank(
conststd::string& key,
conststd::string& start,
conststd::string& stop);
1218 client& zremrangebyscore(
conststd::string& key,
intmin,
intmax,
constreply_callback_t& reply_callback);
1219std::future<reply> zremrangebyscore(
conststd::string& key,
intmin,
intmax);
1221 client& zremrangebyscore(
conststd::string& key,
doublemin,
doublemax,
constreply_callback_t& reply_callback);
1222std::future<reply> zremrangebyscore(
conststd::string& key,
doublemin,
doublemax);
1224 client& zremrangebyscore(
conststd::string& key,
conststd::string& min,
conststd::string& max,
constreply_callback_t& reply_callback);
1225std::future<reply> zremrangebyscore(
conststd::string& key,
conststd::string& min,
conststd::string& max);
1227 client& zrevrange(
conststd::string& key,
intstart,
intstop,
constreply_callback_t& reply_callback);
1228 client& zrevrange(
conststd::string& key,
intstart,
intstop,
boolwithscores,
constreply_callback_t& reply_callback);
1229std::future<reply> zrevrange(
conststd::string& key,
intstart,
intstop,
boolwithscores =
false);
1231 client& zrevrange(
conststd::string& key,
doublestart,
doublestop,
constreply_callback_t& reply_callback);
1232 client& zrevrange(
conststd::string& key,
doublestart,
doublestop,
boolwithscores,
constreply_callback_t& reply_callback);
1233std::future<reply> zrevrange(
conststd::string& key,
doublestart,
doublestop,
boolwithscores =
false);
1235 client& zrevrange(
conststd::string& key,
conststd::string& start,
conststd::string& stop,
constreply_callback_t& reply_callback);
1236 client& zrevrange(
conststd::string& key,
conststd::string& start,
conststd::string& stop,
boolwithscores,
constreply_callback_t& reply_callback);
1237std::future<reply> zrevrange(
conststd::string& key,
conststd::string& start,
conststd::string& stop,
boolwithscores =
false);
1239 client& zrevrangebylex(
conststd::string& key,
intmax,
intmin,
constreply_callback_t& reply_callback);
1240 client& zrevrangebylex(
conststd::string& key,
intmax,
intmin,
boolwithscores,
constreply_callback_t& reply_callback);
1241std::future<reply> zrevrangebylex(
conststd::string& key,
intmax,
intmin,
boolwithscores =
false);
1243 client& zrevrangebylex(
conststd::string& key,
doublemax,
doublemin,
constreply_callback_t& reply_callback);
1244 client& zrevrangebylex(
conststd::string& key,
doublemax,
doublemin,
boolwithscores,
constreply_callback_t& reply_callback);
1245std::future<reply> zrevrangebylex(
conststd::string& key,
doublemax,
doublemin,
boolwithscores =
false);
1247 client& zrevrangebylex(
conststd::string& key,
conststd::string& max,
conststd::string& min,
constreply_callback_t& reply_callback);
1248 client& zrevrangebylex(
conststd::string& key,
conststd::string& max,
conststd::string& min,
boolwithscores,
constreply_callback_t& reply_callback);
1249std::future<reply> zrevrangebylex(
conststd::string& key,
conststd::string& max,
conststd::string& min,
boolwithscores =
false);
1251 client& zrevrangebylex(
conststd::string& key,
intmax,
intmin, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1252 client& zrevrangebylex(
conststd::string& key,
intmax,
intmin, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1253std::future<reply> zrevrangebylex(
conststd::string& key,
intmax,
intmin, std::size_t offset, std::size_t count,
boolwithscores =
false);
1255 client& zrevrangebylex(
conststd::string& key,
doublemax,
doublemin, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1256 client& zrevrangebylex(
conststd::string& key,
doublemax,
doublemin, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1257std::future<reply> zrevrangebylex(
conststd::string& key,
doublemax,
doublemin, std::size_t offset, std::size_t count,
boolwithscores =
false);
1259 client& zrevrangebylex(
conststd::string& key,
conststd::string& max,
conststd::string& min, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1260 client& zrevrangebylex(
conststd::string& key,
conststd::string& max,
conststd::string& min, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1261std::future<reply> zrevrangebylex(
conststd::string& key,
conststd::string& max,
conststd::string& min, std::size_t offset, std::size_t count,
boolwithscores =
false);
1263 client& zrevrangebyscore(
conststd::string& key,
intmax,
intmin,
constreply_callback_t& reply_callback);
1264 client& zrevrangebyscore(
conststd::string& key,
intmax,
intmin,
boolwithscores,
constreply_callback_t& reply_callback);
1265std::future<reply> zrevrangebyscore(
conststd::string& key,
intmax,
intmin,
boolwithscores =
false);
1267 client& zrevrangebyscore(
conststd::string& key,
doublemax,
doublemin,
constreply_callback_t& reply_callback);
1268 client& zrevrangebyscore(
conststd::string& key,
doublemax,
doublemin,
boolwithscores,
constreply_callback_t& reply_callback);
1269std::future<reply> zrevrangebyscore(
conststd::string& key,
doublemax,
doublemin,
boolwithscores =
false);
1271 client& zrevrangebyscore(
conststd::string& key,
conststd::string& max,
conststd::string& min,
constreply_callback_t& reply_callback);
1272 client& zrevrangebyscore(
conststd::string& key,
conststd::string& max,
conststd::string& min,
boolwithscores,
constreply_callback_t& reply_callback);
1273std::future<reply> zrevrangebyscore(
conststd::string& key,
conststd::string& max,
conststd::string& min,
boolwithscores =
false);
1275 client& zrevrangebyscore(
conststd::string& key,
intmax,
intmin, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1276 client& zrevrangebyscore(
conststd::string& key,
intmax,
intmin, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1277std::future<reply> zrevrangebyscore(
conststd::string& key,
intmax,
intmin, std::size_t offset, std::size_t count,
boolwithscores =
false);
1279 client& zrevrangebyscore(
conststd::string& key,
doublemax,
doublemin, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1280 client& zrevrangebyscore(
conststd::string& key,
doublemax,
doublemin, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1281std::future<reply> zrevrangebyscore(
conststd::string& key,
doublemax,
doublemin, std::size_t offset, std::size_t count,
boolwithscores =
false);
1283 client& zrevrangebyscore(
conststd::string& key,
conststd::string& max,
conststd::string& min, std::size_t offset, std::size_t count,
constreply_callback_t& reply_callback);
1284 client& zrevrangebyscore(
conststd::string& key,
conststd::string& max,
conststd::string& min, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1285std::future<reply> zrevrangebyscore(
conststd::string& key,
conststd::string& max,
conststd::string& min, std::size_t offset, std::size_t count,
boolwithscores =
false);
1287 client& zrevrank(
conststd::string& key,
conststd::string& member,
constreply_callback_t& reply_callback);
1288std::future<reply> zrevrank(
conststd::string& key,
conststd::string& member);
1290 client& zscan(
conststd::string& key, std::size_t cursor,
constreply_callback_t& reply_callback);
1291std::future<reply> zscan(
conststd::string& key, std::size_t cursor);
1293 client& zscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern,
constreply_callback_t& reply_callback);
1294std::future<reply> zscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern);
1296 client& zscan(
conststd::string& key, std::size_t cursor, std::size_t count,
constreply_callback_t& reply_callback);
1297std::future<reply> zscan(
conststd::string& key, std::size_t cursor, std::size_t count);
1299 client& zscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern, std::size_t count,
constreply_callback_t& reply_callback);
1300std::future<reply> zscan(
conststd::string& key, std::size_t cursor,
conststd::string& pattern, std::size_t count);
1302 client& zscore(
conststd::string& key,
conststd::string& member,
constreply_callback_t& reply_callback);
1303std::future<reply> zscore(
conststd::string& key,
conststd::string& member);
1305 client& zunionstore(
conststd::string& destination, std::size_t numkeys,
conststd::vector<std::string>& keys,
conststd::vector<std::size_t> weights,
aggregate_methodmethod,
constreply_callback_t& reply_callback);
1306std::future<reply> zunionstore(
conststd::string& destination, std::size_t numkeys,
conststd::vector<std::string>& keys,
conststd::vector<std::size_t> weights,
aggregate_methodmethod);
1310 template<
typenameT>
1311 typenamestd::enable_if<std::is_same<T, client_type>::value>::type
1312client_kill_unpack_arg(std::vector<std::string>& redis_cmd, reply_callback_t&,
client_typetype);
1314 template<
typenameT>
1315 typenamestd::enable_if<std::is_same<T, bool>::value>::type
1316client_kill_unpack_arg(std::vector<std::string>& redis_cmd, reply_callback_t&,
boolskip);
1318 template<
typenameT>
1319 typenamestd::enable_if<std::is_integral<T>::value>::type
1320client_kill_unpack_arg(std::vector<std::string>& redis_cmd, reply_callback_t&, uint64_t
id);
1322 template<
typenameT>
1323 typenamestd::enable_if<std::is_class<T>::value>::type
1324client_kill_unpack_arg(std::vector<std::string>&, reply_callback_t& reply_callback,
constT& cb);
1326 template<
typenameT,
typename... Ts>
1328client_kill_impl(std::vector<std::string>& redis_cmd, reply_callback_t&
reply,
constT& arg,
constTs&... args);
1330 template<
typenameT>
1332client_kill_impl(std::vector<std::string>& redis_cmd, reply_callback_t&
reply,
constT& arg);
1336 client& sort(
conststd::string& key,
conststd::string& by_pattern,
boollimit, std::size_t offset, std::size_t count,
conststd::vector<std::string>& get_patterns,
boolasc_order,
boolalpha,
conststd::string& store_dest,
constreply_callback_t& reply_callback);
1339 client& zrevrangebyscore(
conststd::string& key,
conststd::string& max,
conststd::string& min,
boollimit, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1342 client& zrangebyscore(
conststd::string& key,
conststd::string& min,
conststd::string& max,
boollimit, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1345 client& zrevrangebylex(
conststd::string& key,
conststd::string& max,
conststd::string& min,
boollimit, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1348 client& zrangebylex(
conststd::string& key,
conststd::string& min,
conststd::string& max,
boollimit, std::size_t offset, std::size_t count,
boolwithscores,
constreply_callback_t& reply_callback);
1369 voidclear_callbacks(
void);
1375 voidtry_commit(
void);
1378std::future<reply> exec_cmd(
conststd::function<
client&(
constreply_callback_t&)>& f);
1384 structcommand_request {
1385std::vector<std::string> command;
1386reply_callback_t callback;
1393std::string m_redis_server;
1397std::size_t m_redis_port = 0;
1401std::string m_master_name;
1405std::string m_password;
1409 intm_database_index = 0;
1424std::uint32_t m_connect_timeout_msecs = 0;
1428std::int32_t m_max_reconnects = 0;
1432std::int32_t m_current_reconnect_attempts = 0;
1436std::uint32_t m_reconnect_interval_msecs = 0;
1441std::atomic_bool m_reconnecting;
1445std::atomic_bool m_cancel;
1450std::queue<command_request> m_commands;
1455connect_callback_t m_connect_callback;
1460std::mutex m_callbacks_mutex;
1465std::condition_variable m_sync_condvar;
1470std::atomic<unsigned int> m_callbacks_running;
1475 #include <cpp_redis/impl/client.ipp>Definition: redis_connection.hpp:45
std::future< reply > client_kill_future(const T, const Ts...)
Definition: client.ipp:122
Definition: client.hpp:48
client & operator=(const client &)=delete
assignment operator
Definition: client.hpp:412
void cancel_reconnect(void)
geo_unit
Definition: client.hpp:352
bitfield_operation_type operation_type
Definition: client.hpp:416
client & client_kill(const std::string &host, int port, const T &arg, const Ts &... args)
Definition: client.ipp:93
bitfield_operation_type
Definition: client.hpp:393
std::string aggregate_method_to_string(aggregate_method method) const
client & sync_commit(const std::chrono::duration< Rep, Period > &timeout)
Definition: client.hpp:217
std::string geo_unit_to_string(geo_unit unit) const
bool is_reconnecting(void) const
connect_state
Definition: client.hpp:71
std::function< void(reply &)> reply_callback_t
Definition: client.hpp:169
void add_sentinel(const std::string &host, std::size_t port, std::uint32_t timeout_msecs=0)
std::string type
Definition: client.hpp:421
std::string overflow_type_to_string(overflow_type type) const
void disconnect(bool wait_for_removal=false)
client & sync_commit(void)
client & send(const std::vector< std::string > &redis_cmd, const reply_callback_t &callback)
Definition: sentinel.hpp:40
std::string bitfield_operation_type_to_string(bitfield_operation_type operation) const
void clear_sentinels(void)
overflow_type overflow
Definition: client.hpp:436
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)
const sentinel & get_sentinel(void) const
client_type
Definition: client.hpp:54
std::function< void(const std::string &host, std::size_t port, connect_state status)> connect_callback_t
Definition: client.hpp:106
int offset
Definition: client.hpp:426
overflow_type
Definition: client.hpp:373
int value
Definition: client.hpp:431
bool is_connected(void) const
Definition: array_builder.hpp:29
aggregate_method
Definition: client.hpp:332
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4