Client

Struct Client 

Source
pub struct Client { /* private fields */ }
Expand description

Client with a unique connection to a Redis server.

Implementations§

Source§

impl Client

Source

pub async fn connect(config: impl IntoConfig) -> Result<Self>

Connects asynchronously to the Redis server.

§Errors

Any Redis driver Error that occurs during the connection operation

Source

pub async fn close(self) -> Result<()>

if this client is the last client on the shared connection, the channel to send messages to the underlying network handler will be closed explicitely.

Then, this function will await for the network handler to be ended

Source

pub fn on_reconnect(&self) -> Receiver<()>

Used to receive notifications when the client reconnects to the Redis server.

To turn this receiver into a Stream, you can use the BroadcastStream wrapper.

Source

pub fn get_client_state<'a>(&'a self) -> RwLockReadGuard<'a, ClientState>

Give an immutable generic access to attach any state to a client instance

Source

pub fn get_client_state_mut<'a>(&'a self) -> RwLockWriteGuard<'a, ClientState>

Give a mutable generic access to attach any state to a client instance

Source

pub async fn send( &self, command: Command, retry_on_error: Option<bool>, ) -> Result<RespBuf>

Send an arbitrary command to the server.

This is used primarily intended for implementing high level commands API but may also be used to provide access to new features that lack a direct API.

§Arguments
  • command - generic Command meant to be sent to the Redis server.
  • retry_on_error - retry to send the command on network error.
    • None - default behaviour defined in Config::retry_on_error
    • Some(true) - retry sending command on network error
    • Some(false) - do not retry sending command on network error
§Errors

Any Redis driver Error that occurs during the send operation

§Example
use rustis::{client::Client, commands::{FlushingMode, ServerCommands}, resp::cmd, Result};

#[cfg_attr(feature = "tokio-runtime", tokio::main)]
#[cfg_attr(feature = "async-std-runtime", async_std::main)]
async fn main() -> Result<()> {
    let client = Client::connect("127.0.0.1:6379").await?;

    client.flushall(FlushingMode::Sync).await?;

    client
        .send(
            cmd("MSET")
                .arg("key1")
                .arg("value1")
                .arg("key2")
                .arg("value2")
                 .arg("key3")
                .arg("value3")
                .arg("key4")
                .arg("value4"),
            None,
        )
        .await?
        .to::<()>()?;

    let values: Vec<String> = client
        .send(
            cmd("MGET").arg("key1").arg("key2").arg("key3").arg("key4"),
            None,
        )
        .await?
        .to()?;

    assert_eq!(vec!["value1".to_owned(), "value2".to_owned(), "value3".to_owned(), "value4".to_owned()], values);

    Ok(())
}
Source

pub fn send_and_forget( &self, command: Command, retry_on_error: Option<bool>, ) -> Result<()>

Send command to the Redis server and forget its response.

§Arguments
  • command - generic Command meant to be sent to the Redis server.
  • retry_on_error - retry to send the command on network error.
    • None - default behaviour defined in Config::retry_on_error
    • Some(true) - retry sending command on network error
    • Some(false) - do not retry sending command on network error
§Errors

Any Redis driver Error that occurs during the send operation

Source

pub async fn send_batch( &self, commands: Vec<Command>, retry_on_error: Option<bool>, ) -> Result<Vec<RespBuf>>

Send a batch of commands to the Redis server.

§Arguments
  • commands - batch of generic Commands meant to be sent to the Redis server.
  • retry_on_error - retry to send the command batch on network error.
    • None - default behaviour defined in Config::retry_on_error
    • Some(true) - retry sending batch on network error
    • Some(false) - do not retry sending batch on network error
§Errors

Any Redis driver Error that occurs during the send operation

Source

pub fn create_transaction(&self) -> Transaction

Create a new transaction

Source

pub fn create_pipeline<'a>(&'a self) -> Pipeline<'a>

Create a new pipeline

Source

pub fn create_pub_sub(&self) -> PubSubStream

Create a new pub sub stream with no upfront subscription

Source

pub fn create_client_tracking_invalidation_stream( &self, ) -> Result<ClientTrackingInvalidationStream>

Trait Implementations§

Source§

impl<'a> BitmapCommands<'a> for &'a Client

Source§

fn bitcount( self, key: impl Args, range: BitRange, ) -> PreparedCommand<'a, Self, usize>

Count the number of set bits (population counting) in a string. Read more
Source§

fn bitfield( self, key: impl Args, sub_commands: impl Args, ) -> PreparedCommand<'a, Self, Vec<u64>>

The command treats a Redis string as an array of bits, and is capable of addressing specific integer fields of varying bit widths and arbitrary non (necessary) aligned offset. Read more
Source§

fn bitfield_readonly( self, key: impl Args, get_commands: impl Args, ) -> PreparedCommand<'a, Self, Vec<u64>>

Read-only variant of the BITFIELD command. It is like the original BITFIELD but only accepts GET subcommand and can safely be used in read-only replicas. Read more
Source§

fn bitop( self, operation: BitOperation, dest_key: impl Args, keys: impl Args, ) -> PreparedCommand<'a, Self, usize>

Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key. Read more
Source§

fn bitpos( self, key: impl Args, bit: u64, range: BitRange, ) -> PreparedCommand<'a, Self, usize>

Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key. Read more
Source§

fn getbit(self, key: impl Args, offset: u64) -> PreparedCommand<'a, Self, u64>

Returns the bit value at offset in the string value stored at key. Read more
Source§

fn setbit( self, key: impl Args, offset: u64, value: u64, ) -> PreparedCommand<'a, Self, u64>

Sets or clears the bit at offset in the string value stored at key. Read more
Source§

impl<'a> BlockingCommands<'a> for &'a Client

Source§

async fn monitor(self) -> Result<MonitorStream>

Debugging command that streams back every command processed by the Redis server. Read more
Source§

fn blmove<R: Response>( self, source: impl Args, destination: impl Args, where_from: LMoveWhere, where_to: LMoveWhere, timeout: f64, ) -> PreparedCommand<'a, Self, R>

This command is the blocking variant of lmove. Read more
Source§

fn blmpop<R: Response + DeserializeOwned>( self, timeout: f64, keys: impl Args, where_: LMoveWhere, count: usize, ) -> PreparedCommand<'a, Self, Option<(String, R)>>

This command is the blocking variant of lmpop. Read more
Source§

fn blpop<R1: Response + DeserializeOwned, R2: Response + DeserializeOwned>( self, keys: impl Args, timeout: f64, ) -> PreparedCommand<'a, Self, Option<(R1, R2)>>

This command is a blocking list pop primitive. Read more
Source§

fn brpop<R1: Response + DeserializeOwned, R2: Response + DeserializeOwned>( self, keys: impl Args, timeout: f64, ) -> PreparedCommand<'a, Self, Option<(R1, R2)>>

This command is a blocking list pop primitive. Read more
Source§

fn bzmpop<R: Response + DeserializeOwned>( self, timeout: f64, keys: impl Args, where_: ZWhere, count: usize, ) -> PreparedCommand<'a, Self, Option<ZMPopResult<R>>>

This command is the blocking variant of zmpop. Read more
Source§

fn bzpopmax<R1: Response + DeserializeOwned, R2: Response + DeserializeOwned>( self, keys: impl Args, timeout: f64, ) -> PreparedCommand<'a, Self, BZpopMinMaxResult<R1, R2>>

This command is the blocking variant of zpopmax. Read more
Source§

fn bzpopmin<R1: Response + DeserializeOwned, R2: Response + DeserializeOwned>( self, keys: impl Args, timeout: f64, ) -> PreparedCommand<'a, Self, BZpopMinMaxResult<R1, R2>>

This command is the blocking variant of zpopmin. Read more
Source§

impl<'a> BloomCommands<'a> for &'a Client

Source§

fn bf_add( self, key: impl Args, item: impl Args, ) -> PreparedCommand<'a, Self, bool>

Adds an item to a bloom filter Read more
Source§

fn bf_exists( self, key: impl Args, item: impl Args, ) -> PreparedCommand<'a, Self, bool>

Determines whether an item may exist in the Bloom Filter or not. Read more
Source§

fn bf_info_all(self, key: impl Args) -> PreparedCommand<'a, Self, BfInfoResult>

Return information about key filter. Read more
Source§

fn bf_info<R: Response>( self, key: impl Args, param: BfInfoParameter, ) -> PreparedCommand<'a, Self, R>

Return information about key filter for a specific information parameter Read more
Source§

fn bf_insert<R: Response>( self, key: impl Args, items: impl Args, options: BfInsertOptions, ) -> PreparedCommand<'a, Self, R>

bf_insert is a sugarcoated combination of bf_reserve and bf_add. Read more
Source§

fn bf_loadchunk( self, key: impl Args, iterator: i64, data: impl Args, ) -> PreparedCommand<'a, Self, ()>

Restores a filter previously saved using bf_scandump. Read more
Source§

fn bf_madd<R: Response>( self, key: impl Args, items: impl Args, ) -> PreparedCommand<'a, Self, R>

Adds one or more items to the Bloom Filter and creates the filter if it does not exist yet. Read more
Source§

fn bf_mexists<R: Response>( self, key: impl Args, items: impl Args, ) -> PreparedCommand<'a, Self, R>

Determines if one or more items may exist in the filter or not. Read more
Source§

fn bf_reserve( self, key: impl Args, error_rate: f64, capacity: usize, options: BfReserveOptions, ) -> PreparedCommand<'a, Self, ()>

Creates an empty Bloom Filter with a single sub-filter for the initial capacity requested and with an upper bound error_rate. Read more
Source§

fn bf_scandump( self, key: impl Args, iterator: i64, ) -> PreparedCommand<'a, Self, BfScanDumpResult>

Begins an incremental save of the bloom filter. This is useful for large bloom filters which cannot fit into the normal dump and restore model. Read more
Source§

impl Clone for Client

Source§

fn clone(&self) -> Client

Returns a duplicate of the value. Read more
1.0.0§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a> ClusterCommands<'a> for &'a Client

Source§

fn asking(self) -> PreparedCommand<'a, Self, ()>

When a cluster client receives an -ASK redirect, the ASKING command is sent to the target node followed by the command which was redirected. This is normally done automatically by cluster clients. Read more
Source§

fn cluster_addslots<S>(self, slots: impl Args) -> PreparedCommand<'a, Self, ()>

This command is useful in order to modify a node’s view of the cluster configuration. Read more
Source§

fn cluster_addslotsrange<S>( self, slots: impl Args, ) -> PreparedCommand<'a, Self, ()>

This command is similar to the cluster_addslots command in that they both assign hash slots to nodes. Read more
Source§

fn cluster_bumpepoch(self) -> PreparedCommand<'a, Self, ClusterBumpEpochResult>

Advances the cluster config epoch. Read more
Source§

fn cluster_count_failure_reports<I>( self, node_id: impl Args, ) -> PreparedCommand<'a, Self, usize>

The command returns the number of failure reports for the specified node. Read more
Source§

fn cluster_countkeysinslot( self, slot: usize, ) -> PreparedCommand<'a, Self, usize>

Returns the number of keys in the specified Redis Cluster hash slot. Read more
Source§

fn cluster_delslots<S>(self, slots: impl Args) -> PreparedCommand<'a, Self, ()>

In Redis Cluster, each node keeps track of which master is serving a particular hash slot. This command asks a particular Redis Cluster node to forget which master is serving the hash slots specified as arguments. Read more
Source§

fn cluster_delslotsrange<S>( self, slots: impl Args, ) -> PreparedCommand<'a, Self, ()>

This command is similar to the cluster_delslotsrange command in that they both remove hash slots from the node. Read more
Source§

fn cluster_failover( self, option: ClusterFailoverOption, ) -> PreparedCommand<'a, Self, ()>

This command, that can only be sent to a Redis Cluster replica node, forces the replica to start a manual failover of its master instance. Read more
Source§

fn cluster_flushslots(self) -> PreparedCommand<'a, Self, ()>

Deletes all slots from a node. Read more
Source§

fn cluster_forget<I>(self, node_id: impl Args) -> PreparedCommand<'a, Self, ()>

The command is used in order to remove a node, specified via its node ID, from the set of known nodes of the Redis Cluster node receiving the command. In other words the specified node is removed from the nodes table of the node receiving the command. Read more
Source§

fn cluster_getkeysinslot( self, slot: u16, count: usize, ) -> PreparedCommand<'a, Self, ()>

The command returns an array of keys names stored in the contacted node and hashing to the specified hash slot. Read more
Source§

fn cluster_info( self, slot: u16, count: usize, ) -> PreparedCommand<'a, Self, ClusterInfo>

This command provides info style information about Redis Cluster vital parameters. Read more
Source§

fn cluster_keyslot(self, key: impl Args) -> PreparedCommand<'a, Self, u16>

Returns an integer identifying the hash slot the specified key hashes to. Read more
Each node in a Redis Cluster maintains a pair of long-lived TCP link with each peer in the cluster: Read more
Source§

fn cluster_meet( self, ip: impl Args, port: u16, cluster_bus_port: Option<u16>, ) -> PreparedCommand<'a, Self, ()>

This command is used in order to connect different Redis nodes with cluster support enabled, into a working cluster. Read more
Source§

fn cluster_myid<R: Response>(self) -> PreparedCommand<'a, Self, R>

This command returns the unique, auto-generated identifier that is associated with the connected cluster node. Read more
Source§

fn cluster_nodes<R: Response>(self) -> PreparedCommand<'a, Self, R>

Each node in a Redis Cluster has its view of the current cluster configuration, given by the set of known nodes, the state of the connection we have with such nodes, their flags, properties and assigned slots, and so forth. Read more
Source§

fn cluster_replicas<R: Response>( self, node_id: impl Args, ) -> PreparedCommand<'a, Self, R>

The command provides a list of replica nodes replicating from the specified master node. Read more
Source§

fn cluster_replicate(self, node_id: impl Args) -> PreparedCommand<'a, Self, ()>

The command reconfigures a node as a replica of the specified master. If the node receiving the command is an empty master, as a side effect of the command, the node role is changed from master to replica. Read more
Source§

fn cluster_reset( self, reset_type: ClusterResetType, ) -> PreparedCommand<'a, Self, ()>

Reset a Redis Cluster node, in a more or less drastic way depending on the reset type, that can be hard or soft. Read more
Source§

fn cluster_saveconfig(self) -> PreparedCommand<'a, Self, ()>

Forces a node to save the nodes.conf configuration on disk. Before to return the command calls fsync(2) in order to make sure the configuration is flushed on the computer disk. Read more
Source§

fn cluster_set_config_epoch( self, config_epoch: u64, ) -> PreparedCommand<'a, Self, ()>

This command sets a specific config epoch in a fresh node. Read more
Source§

fn cluster_setslot( self, slot: u16, subcommand: ClusterSetSlotSubCommand, ) -> PreparedCommand<'a, Self, ()>

This command is responsible of changing the state of a hash slot in the receiving node in different ways. Read more
Source§

fn cluster_shards<R: Response>(self) -> PreparedCommand<'a, Self, R>

This command returns details about the shards of the cluster. Read more
Source§

fn cluster_slots<R: Response>(self) -> PreparedCommand<'a, Self, R>

This command returns details details about which cluster slots map to which Redis instances. Read more
Source§

fn readonly(self) -> PreparedCommand<'a, Self, ()>

Enables read queries for a connection to a Redis Cluster replica node. Read more
Source§

fn readwrite(self) -> PreparedCommand<'a, Self, ()>

Disables read queries for a connection to a Redis Cluster replica node. Read more
Source§

impl<'a> ConnectionCommands<'a> for &'a Client

Source§

fn auth( self, username: Option<impl Args>, password: impl Args, ) -> PreparedCommand<'a, Self, ()>

Authenticates the current connection. Read more
Source§

fn client_caching( self, mode: ClientCachingMode, ) -> PreparedCommand<'a, Self, Option<()>>

This command controls the tracking of the keys in the next command executed by the connection, when tracking is enabled in OPTIN or OPTOUT mode. Read more
Source§

fn client_getname<R: Response>(self) -> PreparedCommand<'a, Self, R>

Returns the name of the current connection as set by [CLIENT SETNAME]. Read more
Source§

fn client_getredir(self) -> PreparedCommand<'a, Self, i64>

This command returns the client ID we are redirecting our tracking notifications to. Read more
Source§

fn client_help<R: Response>(self) -> PreparedCommand<'a, Self, R>

The command returns a helpful text describing the different CLIENT subcommands. Read more
Source§

fn client_id(self) -> PreparedCommand<'a, Self, i64>

The command just returns the ID of the current connection. Read more
Source§

fn client_info(self) -> PreparedCommand<'a, Self, ClientInfo>

The command returns information and statistics about the current client connection in a mostly human readable format. Read more
Source§

fn client_kill( self, options: ClientKillOptions, ) -> PreparedCommand<'a, Self, usize>

Closes a given clients connection based on a filter list Read more
Source§

fn client_list( self, options: ClientListOptions, ) -> PreparedCommand<'a, Self, ClientListResult>

Returns information and statistics about the client connections server in a mostly human readable format. Read more
Source§

fn client_no_evict(self, no_evict: bool) -> PreparedCommand<'a, Self, ()>

sets the client eviction mode for the current connection. Read more
Source§

fn client_no_touch(self, no_touch: bool) -> PreparedCommand<'a, Self, ()>

The command controls whether commands sent by the client will alter the LRU/LFU of the keys they access. If ON, the client will not change LFU/LRU stats. If OFF or send TOUCH, client will change LFU/LRU stats just as a normal client. Read more
Source§

fn client_pause( self, timeout: u64, mode: ClientPauseMode, ) -> PreparedCommand<'a, Self, ()>

Connections control command able to suspend all the Redis clients for the specified amount of time (in milliseconds). Read more
Source§

fn client_reply(self, mode: ClientReplyMode) -> PreparedCommand<'a, Self, ()>

Sometimes it can be useful for clients to completely disable replies from the Redis server. Read more
Source§

fn client_setname( self, connection_name: impl Args, ) -> PreparedCommand<'a, Self, ()>

Assigns a name to the current connection. Read more
Source§

fn client_setinfo( self, attr: ClientInfoAttribute, info: impl Args, ) -> PreparedCommand<'a, Self, ()>

Assigns various info attributes to the current connection. There is no limit to the length of these attributes. However it is not possible to use spaces, newlines, or other non-printable characters. Look changes with commands client_list or client_info. Read more
Source§

fn client_tracking( self, status: ClientTrackingStatus, options: ClientTrackingOptions, ) -> PreparedCommand<'a, Self, ()>

This command enables the tracking feature of the Redis server, that is used for server assisted client side caching. Read more
Source§

fn client_trackinginfo(self) -> PreparedCommand<'a, Self, ClientTrackingInfo>

This command enables the tracking feature of the Redis server, that is used for server assisted client side caching. Read more
Source§

fn client_unblock( self, client_id: i64, mode: ClientUnblockMode, ) -> PreparedCommand<'a, Self, bool>

This command can unblock, from a different connection, a client blocked in a blocking operation, such as for instance BRPOP or XREAD or WAIT. Read more
Source§

fn client_unpause(self) -> PreparedCommand<'a, Self, bool>

Used to resume command processing for all clients that were paused by client_pause. Read more
Source§

fn echo<R: Response>(self, message: impl Args) -> PreparedCommand<'a, Self, R>

Returns message. Read more
Source§

fn hello(self, options: HelloOptions) -> PreparedCommand<'a, Self, HelloResult>

Switch to a different protocol, optionally authenticating and setting the connection’s name, or provide a contextual client report. Read more
Source§

fn ping<R: Response>(self, options: PingOptions) -> PreparedCommand<'a, Self, R>

Returns PONG if no argument is provided, otherwise return a copy of the argument as a bulk. Read more
Source§

fn quit(self) -> PreparedCommand<'a, Self, ()>

Ask the server to close the connection. Read more
Source§

fn reset(self) -> PreparedCommand<'a, Self, ()>

This command performs a full reset of the connection’s server-side context, mimicking the effect of disconnecting and reconnecting again. Read more
Source§

fn select(self, index: usize) -> PreparedCommand<'a, Self, ()>

Select the Redis logical database having the specified zero-based numeric index. Read more
Source§

impl<'a> CountMinSketchCommands<'a> for &'a Client

Source§

fn cms_incrby<R: Response>( self, key: impl Args, items: impl Args, ) -> PreparedCommand<'a, Self, R>

Increases the count of item by increment. Read more
Source§

fn cms_info(self, key: impl Args) -> PreparedCommand<'a, Self, CmsInfoResult>

Returns width, depth and total count of the sketch. Read more
Source§

fn cms_initbydim( self, key: impl Args, width: usize, depth: usize, ) -> PreparedCommand<'a, Self, ()>

Initializes a Count-Min Sketch to dimensions specified by user. Read more
Source§

fn cms_initbyprob( self, key: impl Args, error: f64, probability: f64, ) -> PreparedCommand<'a, Self, ()>

Initializes a Count-Min Sketch to accommodate requested tolerances. Read more
Source§

fn cms_merge( self, destination: impl Args, sources: impl Args, weights: Option<impl Args>, ) -> PreparedCommand<'a, Self, ()>

Returns the count for one or more items in a sketch. Read more
Source§

fn cms_query<R: Response>( self, key: impl Args, items: impl Args, ) -> PreparedCommand<'a, Self, R>

Merges several sketches into one sketch. Read more
Source§

impl<'a> CuckooCommands<'a> for &'a Client

Source§

fn cf_add( self, key: impl Args, item: impl Args, ) -> PreparedCommand<'a, Self, ()>

Adds an item to the cuckoo filter, creating the filter if it does not exist. Read more
Source§

fn cf_addnx( self, key: impl Args, item: impl Args, ) -> PreparedCommand<'a, Self, bool>

Adds an item to a cuckoo filter if the item did not exist previously. Read more
Source§

fn cf_count( self, key: impl Args, item: impl Args, ) -> PreparedCommand<'a, Self, usize>

Returns the number of times an item may be in the filter. Read more
Source§

fn cf_del( self, key: impl Args, item: impl Args, ) -> PreparedCommand<'a, Self, bool>

Deletes an item once from the filter. Read more
Source§

fn cf_exists( self, key: impl Args, item: impl Args, ) -> PreparedCommand<'a, Self, bool>

Check if an item exists in a Cuckoo Filter key Read more
Source§

fn cf_info(self, key: impl Args) -> PreparedCommand<'a, Self, CfInfoResult>

Return information about key Read more
Source§

fn cf_insert( self, key: impl Args, options: CfInsertOptions, item: impl Args, ) -> PreparedCommand<'a, Self, Vec<bool>>

Adds one or more items to a cuckoo filter, allowing the filter to be created with a custom capacity if it does not exist yet. Read more
Source§

fn cf_insertnx<R: Response>( self, key: impl Args, options: CfInsertOptions, item: impl Args, ) -> PreparedCommand<'a, Self, R>

Adds one or more items to a cuckoo filter, allowing the filter to be created with a custom capacity if it does not exist yet. Read more
Source§

fn cf_loadchunk( self, key: impl Args, iterator: i64, data: impl Args, ) -> PreparedCommand<'a, Self, ()>

Restores a filter previously saved using cf_scandump. Read more
Source§

fn cf_mexists<R: Response>( self, key: impl Args, items: impl Args, ) -> PreparedCommand<'a, Self, R>

Check if one or more items exists in a Cuckoo Filter key Read more
Source§

fn cf_reserve( self, key: impl Args, capacity: usize, options: CfReserveOptions, ) -> PreparedCommand<'a, Self, ()>

Create a Cuckoo Filter as key with a single sub-filter for the initial amount of capacity for items. Because of how Cuckoo Filters work, the filter is likely to declare itself full before capacity is reached and therefore fill rate will likely never reach 100%. The fill rate can be improved by using a larger bucketsize at the cost of a higher error rate. When the filter self-declare itself full, it will auto-expand by generating additional sub-filters at the cost of reduced performance and increased error rate. The new sub-filter is created with size of the previous sub-filter multiplied by expansion. Like bucket size, additional sub-filters grow the error rate linearly. The size of the new sub-filter is the size of the last sub-filter multiplied by expansion. Read more
Source§

fn cf_scandump( self, key: impl Args, iterator: i64, ) -> PreparedCommand<'a, Self, CfScanDumpResult>

Begins an incremental save of the cuckoo filter. This is useful for large cuckoo filters which cannot fit into the normal dump and restore model. Read more
Source§

impl Drop for Client

Source§

fn drop(&mut self)

if this client is the last client on the shared connection, the channel to send messages to the underlying network handler will be closed explicitely

Source§

impl<'a> GenericCommands<'a> for &'a Client

Source§

fn copy( self, source: impl Args, destination: impl Args, destination_db: Option<usize>, replace: bool, ) -> PreparedCommand<'a, Self, bool>

This command copies the value stored at the source key to the destination key. Read more
Source§

fn del(self, keys: impl Args) -> PreparedCommand<'a, Self, usize>

Removes the specified keys. A key is ignored if it does not exist. Read more
Source§

fn dump(self, key: impl Args) -> PreparedCommand<'a, Self, DumpResult>

Serialize the value stored at key in a Redis-specific format and return it to the user. Read more
Source§

fn exists(self, keys: impl Args) -> PreparedCommand<'a, Self, usize>

Returns if keys exist. Read more
Source§

fn expire( self, key: impl Args, seconds: u64, option: ExpireOption, ) -> PreparedCommand<'a, Self, bool>

Set a timeout on key in seconds Read more
Source§

fn expireat( self, key: impl Args, unix_time_seconds: u64, option: ExpireOption, ) -> PreparedCommand<'a, Self, bool>

EXPIREAT has the same effect and semantic as EXPIRE, but instead of specifying the number of seconds representing the TTL (time to live), it takes an absolute Unix timestamp (seconds since January 1, 1970) Read more
Source§

fn expiretime(self, key: impl Args) -> PreparedCommand<'a, Self, i64>

Returns the absolute Unix timestamp (since January 1, 1970) in seconds at which the given key will expire. Read more
Source§

fn keys<R: Response>(self, pattern: impl Args) -> PreparedCommand<'a, Self, R>

Returns all keys matching pattern. Read more
Source§

fn migrate( self, host: impl Args, port: u16, key: impl Args, destination_db: usize, timeout: u64, options: MigrateOptions, ) -> PreparedCommand<'a, Self, MigrateResult>

Atomically transfer a key or a collection of keys from a source Redis instance to a destination Redis instance. Read more
Source§

fn move_(self, key: impl Args, db: usize) -> PreparedCommand<'a, Self, i64>

Move key from the currently selected database to the specified destination database. Read more
Source§

fn object_encoding<R: Response>( self, key: impl Args, ) -> PreparedCommand<'a, Self, R>

Returns the internal encoding for the Redis object stored at key Read more
Source§

fn object_freq(self, key: impl Args) -> PreparedCommand<'a, Self, i64>

This command returns the logarithmic access frequency counter of a Redis object stored at key. Read more
Source§

fn object_help<R: Response>(self) -> PreparedCommand<'a, Self, R>

The command returns a helpful text describing the different OBJECT subcommands. Read more
Source§

fn object_idle_time(self, key: impl Args) -> PreparedCommand<'a, Self, i64>

This command returns the time in seconds since the last access to the value stored at key. Read more
Source§

fn object_refcount(self, key: impl Args) -> PreparedCommand<'a, Self, i64>

This command returns the reference count of the stored at key. Read more
Source§

fn persist(self, key: impl Args) -> PreparedCommand<'a, Self, bool>

Remove the existing timeout on key, turning the key from volatile (a key with an expire set) to persistent (a key that will never expire as no timeout is associated). Read more
Source§

fn pexpire( self, key: impl Args, milliseconds: u64, option: ExpireOption, ) -> PreparedCommand<'a, Self, bool>

This command works exactly like EXPIRE but the time to live of the key is specified in milliseconds instead of seconds. Read more
Source§

fn pexpireat( self, key: impl Args, unix_time_milliseconds: u64, option: ExpireOption, ) -> PreparedCommand<'a, Self, bool>

PEXPIREAT has the same effect and semantic as EXPIREAT, but the Unix time at which the key will expire is specified in milliseconds instead of seconds. Read more
Source§

fn pexpiretime(self, key: impl Args) -> PreparedCommand<'a, Self, i64>

PEXPIRETIME has the same semantic as EXPIRETIME, but returns the absolute Unix expiration timestamp in milliseconds instead of seconds. Read more
Source§

fn pttl(self, key: impl Args) -> PreparedCommand<'a, Self, i64>

Returns the remaining time to live of a key that has a timeout. Read more
Source§

fn randomkey<R: Response>(self) -> PreparedCommand<'a, Self, R>

Return a random key from the currently selected database. Read more
Source§

fn rename( self, key: impl Args, new_key: impl Args, ) -> PreparedCommand<'a, Self, ()>

Renames key to newkey. Read more
Source§

fn renamenx( self, key: impl Args, new_key: impl Args, ) -> PreparedCommand<'a, Self, bool>

Renames key to newkey if newkey does not yet exist. It returns an error when key does not exist. Read more
Source§

fn restore( self, key: impl Args, ttl: u64, serialized_value: Vec<u8>, options: RestoreOptions, ) -> PreparedCommand<'a, Self, ()>

Create a key associated with a value that is obtained by deserializing the provided serialized value (obtained via DUMP). Read more
Source§

fn scan<R: Response>( self, cursor: u64, options: ScanOptions, ) -> PreparedCommand<'a, Self, R>

Iterates the set of keys in the currently selected Redis database. Read more
Source§

fn sort<R: Response>( self, key: impl Args, options: SortOptions, ) -> PreparedCommand<'a, Self, R>

Returns the elements contained in the list, set or sorted set at key. Read more
Source§

fn sort_and_store( self, key: impl Args, destination: impl Args, options: SortOptions, ) -> PreparedCommand<'a, Self, usize>

Stores the elements contained in the list, set or sorted set at key. Read more
Source§

fn sort_readonly<R: Response>( self, key: impl Args, options: SortOptions, ) -> PreparedCommand<'a, Self, R>

Read-only variant of the SORT command. Read more
Source§

fn touch(self, keys: impl Args) -> PreparedCommand<'a, Self, usize>

Alters the last access time of a key(s). A key is ignored if it does not exist. Read more
Source§

fn ttl(self, key: impl Args) -> PreparedCommand<'a, Self, i64>

Returns the remaining time to live of a key that has a timeout. Read more
Source§

fn type_(self, key: impl Args) -> PreparedCommand<'a, Self, String>

Returns the string representation of the type of the value stored at key. Read more
This command is very similar to DEL: it removes the specified keys. Read more
Source§

fn wait( self, num_replicas: usize, timeout: u64, ) -> PreparedCommand<'a, Self, usize>

This command blocks the current client until all the previous write commands are successfully transferred and acknowledged by at least the specified number of replicas. Read more
Source§

impl<'a> GeoCommands<'a> for &'a Client

Source§

fn geoadd( self, key: impl Args, condition: GeoAddCondition, change: bool, items: impl Args, ) -> PreparedCommand<'a, Self, usize>

Adds the specified geospatial items (longitude, latitude, name) to the specified key. Read more
Source§

fn geodist( self, key: impl Args, member1: impl Args, member2: impl Args, unit: GeoUnit, ) -> PreparedCommand<'a, Self, Option<f64>>

Return the distance between two members in the geospatial index represented by the sorted set. Read more
Source§

fn geohash<R: Response>( self, key: impl Args, members: impl Args, ) -> PreparedCommand<'a, Self, R>

Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using geoadd). Read more
Source§

fn geopos( self, key: impl Args, members: impl Args, ) -> PreparedCommand<'a, Self, Vec<Option<(f64, f64)>>>

Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key. Read more
Source§

fn geosearch<F: Args, R: Response>( self, key: impl Args, from: GeoSearchFrom<F>, by: GeoSearchBy, options: GeoSearchOptions, ) -> PreparedCommand<'a, Self, R>

Return the members of a sorted set populated with geospatial information using geoadd, which are within the borders of the area specified by a given shape. Read more
Source§

fn geosearchstore<F: Args>( self, destination: impl Args, source: impl Args, from: GeoSearchFrom<F>, by: GeoSearchBy, options: GeoSearchStoreOptions, ) -> PreparedCommand<'a, Self, usize>

This command is like geosearch, but stores the result in destination key. Read more
Source§

impl<'a> HashCommands<'a> for &'a Client

Source§

fn hdel( self, key: impl Args, fields: impl Args, ) -> PreparedCommand<'a, Self, usize>

Removes the specified fields from the hash stored at key. Read more
Source§

fn hexists( self, key: impl Args, field: impl Args, ) -> PreparedCommand<'a, Self, bool>

Returns if field is an existing field in the hash stored at key. Read more
Source§

fn hexpire<R: Response>( self, key: impl Args, seconds: u64, option: ExpireOption, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

Set an expiration (TTL or time to live) on one or more fields of a given hash key. Read more
Source§

fn hexpireat<R: Response>( self, key: impl Args, unix_time_seconds: u64, option: ExpireOption, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

HEXPIREAT has the same effect and semantics as HEXPIRE, but instead of specifying the number of seconds for the TTL (time to live), it takes an absolute Unix timestamp in seconds since Unix epoch. Read more
Source§

fn hexpiretime<R: Response>( self, key: impl Args, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

Returns the absolute Unix timestamp in seconds since Unix epoch at which the given key’s field(s) will expire. Read more
Source§

fn hget<R: Response>( self, key: impl Args, field: impl Args, ) -> PreparedCommand<'a, Self, R>

Returns the value associated with field in the hash stored at key. Read more
Source§

fn hgetall<R: Response>(self, key: impl Args) -> PreparedCommand<'a, Self, R>

Returns all fields and values of the hash stored at key. Read more
Source§

fn hgetdel<R: Response>( self, key: impl Args, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

Get and delete the value of one or more fields of a given hash key. Read more
Source§

fn hgetex<R: Response>( self, key: impl Args, options: GetExOptions, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

Get the value of one or more fields of a given hash key and optionally set their expiration time or time-to-live (TTL). Read more
Source§

fn hincrby( self, key: impl Args, field: impl Args, increment: i64, ) -> PreparedCommand<'a, Self, i64>

Increments the number stored at field in the hash stored at key by increment. Read more
Source§

fn hincrbyfloat( self, key: impl Args, field: impl Args, increment: f64, ) -> PreparedCommand<'a, Self, f64>

Increment the specified field of a hash stored at key, and representing a floating point number, by the specified increment. Read more
Source§

fn hkeys<R: Response>(self, key: impl Args) -> PreparedCommand<'a, Self, R>

Returns all field names in the hash stored at key. Read more
Source§

fn hlen(self, key: impl Args) -> PreparedCommand<'a, Self, usize>

Returns the number of fields contained in the hash stored at key. Read more
Source§

fn hmget<R: Response>( self, key: impl Args, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

Returns the values associated with the specified fields in the hash stored at key. Read more
Source§

fn hpersist<R: Response>( self, key: impl Args, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

Remove the existing expiration on a hash key’s field(s), turning the field(s) from volatile (a field with expiration set) to persistent (a field that will never expire as no TTL (time to live) is associated). Read more
Source§

fn hpexpire<R: Response>( self, key: impl Args, milliseconds: u64, option: ExpireOption, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

This command works like hexpire, but the expiration of a field is specified in milliseconds instead of seconds. Read more
Source§

fn hpexpireat<R: Response>( self, key: impl Args, unix_time_milliseconds: u64, option: ExpireOption, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

This command has the same effect and semantics as hexpireat, but the Unix time at which the field will expire is specified in milliseconds since Unix epoch instead of seconds. Read more
Source§

fn hpexpiretime<R: Response>( self, key: impl Args, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

This command has the same semantics as hexpiretime, but returns the absolute Unix expiration timestamp in milliseconds since Unix epoch instead of seconds. Read more
Source§

fn hpttl<R: Response>( self, key: impl Args, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

Like httl, this command returns the remaining TTL (time to live) of a field that has an expiration set, but in milliseconds instead of seconds. Read more
Source§

fn hrandfield<R: Response>(self, key: impl Args) -> PreparedCommand<'a, Self, R>

return random fields from the hash value stored at key. Read more
Source§

fn hrandfields<R: Response>( self, key: impl Args, count: isize, ) -> PreparedCommand<'a, Self, R>

return random fields from the hash value stored at key. Read more
Source§

fn hrandfields_with_values<R: Response>( self, key: impl Args, count: isize, ) -> PreparedCommand<'a, Self, R>

return random fields from the hash value stored at key. Read more
Source§

fn hscan<F: Response + DeserializeOwned, V: Response + DeserializeOwned>( self, key: impl Args, cursor: u64, options: HScanOptions, ) -> PreparedCommand<'a, Self, HScanResult<F, V>>

Iterates fields of Hash types and their associated values. Read more
Source§

fn hset( self, key: impl Args, items: impl Args, ) -> PreparedCommand<'a, Self, usize>

Sets field in the hash stored at key to value. Read more
Source§

fn hsetex( self, key: impl Args, condition: HSetExCondition, expiration: SetExpiration, keep_ttl: bool, items: impl Args, ) -> PreparedCommand<'a, Self, bool>

Set the value of one or more fields of a given hash key, and optionally set their expiration time or time-to-live (TTL). Read more
Source§

fn hsetnx( self, key: impl Args, field: impl Args, value: impl Args, ) -> PreparedCommand<'a, Self, bool>

Sets field in the hash stored at key to value, only if field does not yet exist. Read more
Source§

fn hstrlen( self, key: impl Args, field: impl Args, ) -> PreparedCommand<'a, Self, usize>

Returns the string length of the value associated with field in the hash stored at key. Read more
Source§

fn httl<R: Response>( self, key: impl Args, fields: impl Args, ) -> PreparedCommand<'a, Self, R>

Returns the remaining TTL (time to live) of a hash key’s field(s) that have a set expiration. This introspection capability allows you to check how many seconds a given hash field will continue to be part of the hash key. Read more
Source§

fn hvals<R: Response>(self, key: impl Args) -> PreparedCommand<'a, Self, R>

list of values in the hash, or an empty list when key does not exist. Read more
Source§

impl<'a> HyperLogLogCommands<'a> for &'a Client

Source§

fn pfadd( self, key: impl Args, elements: impl Args, ) -> PreparedCommand<'a, Self, bool>

Adds the specified elements to the specified HyperLogLog. Read more
Source§

fn pfcount(self, keys: impl Args) -> PreparedCommand<'a, Self, usize>

Return the approximated cardinality of the set(s) observed by the HyperLogLog at key(s). Read more
Source§

fn pfmerge( self, dest_key: impl Args, source_keys: impl Args, ) -> PreparedCommand<'a, Self, ()>

Merge N different HyperLogLogs into a single one. Read more
Source§

impl<'a> JsonCommands<'a> for &'a Client

Source§

fn json_arrappend<R: Response>( self, key: impl Args, path: impl Args, values: impl Args, ) -> PreparedCommand<'a, Self, R>

Append the json values into the array at path after the last element in it Read more
Source§

fn json_arrindex<R: Response>( self, key: impl Args, path: impl Args, value: impl Args, options: JsonArrIndexOptions, ) -> PreparedCommand<'a, Self, R>

Search for the first occurrence of a scalar JSON value in an array Read more
Source§

fn json_arrinsert<R: Response>( self, key: impl Args, path: impl Args, index: isize, values: impl Args, ) -> PreparedCommand<'a, Self, R>

Insert the json values into the array at path before the index (shifts to the right) Read more
Source§

fn json_arrlen<R: Response>( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, R>

Report the length of the JSON array at path in key Read more
Source§

fn json_arrpop<R: Response>( self, key: impl Args, path: impl Args, index: isize, ) -> PreparedCommand<'a, Self, R>

Remove and return an element from the index in the array Read more
Source§

fn json_arrtrim<R: Response>( self, key: impl Args, path: impl Args, start: isize, stop: isize, ) -> PreparedCommand<'a, Self, R>

Remove and return an element from the index in the array Read more
Source§

fn json_clear( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, usize>

Clear container values (arrays/objects) and set numeric values to 0 Read more
Source§

fn json_debug_memory<R: Response>( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, R>

Report a value’s memory usage in bytes Read more
Source§

fn json_del( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, usize>

Delete a value Read more
Source§

fn json_forget( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, usize>

Source§

fn json_get<R: Response>( self, key: impl Args, options: JsonGetOptions, ) -> PreparedCommand<'a, Self, R>

Return the value at path in JSON serialized form Read more
Source§

fn json_mget<R: Response>( self, keys: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, R>

Return the values at path from multiple key arguments Read more
Source§

fn json_numincrby<R: Response>( self, key: impl Args, path: impl Args, value: impl Args, ) -> PreparedCommand<'a, Self, R>

Increment the number value stored at path by number Read more
Source§

fn json_nummultby<R: Response>( self, key: impl Args, path: impl Args, value: impl Args, ) -> PreparedCommand<'a, Self, R>

Multiply the number value stored at path by number Read more
Source§

fn json_objkeys<R: Response>( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, R>

Return the keys in the object that’s referenced by path Read more
Source§

fn json_objlen<R: Response>( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, R>

Report the number of keys in the JSON object at path in key Read more
Source§

fn json_resp<R: Response>( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, R>

Source§

fn json_set( self, key: impl Args, path: impl Args, value: impl Args, condition: SetCondition, ) -> PreparedCommand<'a, Self, ()>

Set the JSON value at path in key Read more
Source§

fn json_strappend<R: Response>( self, key: impl Args, path: impl Args, value: impl Args, ) -> PreparedCommand<'a, Self, R>

Append the json-string values to the string at path Read more
Source§

fn json_strlen<R: Response>( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, R>

Report the length of the JSON String at path in key Read more
Source§

fn json_toggle<R: Response>( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, R>

Toggle a Boolean value stored at path Read more
Source§

fn json_type<R: Response>( self, key: impl Args, path: impl Args, ) -> PreparedCommand<'a, Self, R>

Report the type of JSON value at path Read more
Source§

impl<'a> ListCommands<'a> for &'a Client

Source§

fn lindex<R: Response>( self, key: impl Args, index: isize, ) -> PreparedCommand<'a, Self, R>

Returns the element at index index in the list stored at key. Read more
Source§

fn linsert( self, key: impl Args, where_: LInsertWhere, pivot: impl Args, element: impl Args, ) -> PreparedCommand<'a, Self, usize>

Inserts element in the list stored at key either before or after the reference value pivot. Read more
Source§

fn llen(self, key: impl Args) -> PreparedCommand<'a, Self, usize>

Inserts element in the list stored at key either before or after the reference value pivot. Read more
Source§

fn lmove<R: Response>( self, source: impl Args, destination: impl Args, where_from: LMoveWhere, where_to: LMoveWhere, ) -> PreparedCommand<'a, Self, R>

Atomically returns and removes the first/last element (head/tail depending on the wherefrom argument) of the list stored at source, and pushes the element at the first/last element (head/tail depending on the whereto argument) of the list stored at destination. Read more
Source§

fn lmpop<R: Response + DeserializeOwned>( self, keys: impl Args, where_: LMoveWhere, count: usize, ) -> PreparedCommand<'a, Self, (String, Vec<R>)>

Pops one or more elements from the first non-empty list key from the list of provided key names. Read more
Source§

fn lpop<R: Response>( self, key: impl Args, count: usize, ) -> PreparedCommand<'a, Self, R>

Removes and returns the first elements of the list stored at key. Read more
Source§

fn lpos( self, key: impl Args, element: impl Args, rank: Option<usize>, max_len: Option<usize>, ) -> PreparedCommand<'a, Self, Option<usize>>

Returns the index of matching elements inside a Redis list. Read more
Source§

fn lpos_with_count<R: Response>( self, key: impl Args, element: impl Args, num_matches: usize, rank: Option<usize>, max_len: Option<usize>, ) -> PreparedCommand<'a, Self, R>

Returns the index of matching elements inside a Redis list. Read more
Source§

fn lpush( self, key: impl Args, elements: impl Args, ) -> PreparedCommand<'a, Self, usize>

Insert all the specified values at the head of the list stored at key Read more
Source§

fn lpushx( self, key: impl Args, elements: impl Args, ) -> PreparedCommand<'a, Self, usize>

Inserts specified values at the head of the list stored at key, only if key already exists and holds a list. Read more
Source§

fn lrange<R: Response>( self, key: impl Args, start: isize, stop: isize, ) -> PreparedCommand<'a, Self, R>

Returns the specified elements of the list stored at key. Read more
Source§

fn lrem( self, key: impl Args, count: isize, element: impl Args, ) -> PreparedCommand<'a, Self, usize>

Removes the first count occurrences of elements equal to element from the list stored at key. Read more
Source§

fn lset( self, key: impl Args, index: isize, element: impl Args, ) -> PreparedCommand<'a, Self, ()>

Sets the list element at index to element. Read more
Source§

fn ltrim( self, key: impl Args, start: isize, stop: isize, ) -> PreparedCommand<'a, Self, ()>

Trim an existing list so that it will contain only the specified range of elements specified. Read more
Source§

fn rpop<R: Response>( self, key: impl Args, count: usize, ) -> PreparedCommand<'a, Self, R>

Removes and returns the first elements of the list stored at key. Read more
Source§

fn rpush( self, key: impl Args, elements: impl Args, ) -> PreparedCommand<'a, Self, usize>

Insert all the specified values at the tail of the list stored at key Read more
Source§

fn rpushx( self, key: impl Args, elements: impl Args, ) -> PreparedCommand<'a, Self, usize>

Inserts specified values at the tail of the list stored at key, only if key already exists and holds a list. Read more
Source§

impl<'a> PubSubCommands<'a> for &'a Client

Source§

async fn subscribe(self, channels: impl Args) -> Result<PubSubStream>

Subscribes the client to the specified channels. Read more
Source§

async fn psubscribe(self, patterns: impl Args) -> Result<PubSubStream>

Subscribes the client to the given patterns. Read more
Source§

async fn ssubscribe(self, shardchannels: impl Args) -> Result<PubSubStream>

Subscribes the client to the specified channels. Read more
Source§

fn publish( self, channel: impl Args, message: impl Args, ) -> PreparedCommand<'a, Self, usize>

Posts a message to the given channel. Read more
Source§

fn pub_sub_channels<R: Response>( self, options: PubSubChannelsOptions, ) -> PreparedCommand<'a, Self, R>

Lists the currently active channels. Read more
Source§

fn pub_sub_help(self) -> PreparedCommand<'a, Self, Vec<String>>

The command returns a helpful text describing the different PUBSUB subcommands. Read more
Source§

fn pub_sub_numpat(self) -> PreparedCommand<'a, Self, usize>

Returns the number of unique patterns that are subscribed to by clients (that are performed using the PSUBSCRIBE command). Read more
Source§

fn pub_sub_numsub<R: Response>( self, channels: impl Args, ) -> PreparedCommand<'a, Self, R>

Returns the number of subscribers (exclusive of clients subscribed to patterns) for the specified channels. Read more
Source§

fn pub_sub_shardchannels<R: Response>( self, options: PubSubChannelsOptions, ) -> PreparedCommand<'a, Self, R>

Lists the currently active shard channels. Read more
Source§

fn pub_sub_shardnumsub<R: Response>( self, channels: impl Args, ) -> PreparedCommand<'a, Self, R>

Returns the number of subscribers for the specified shard channels. Read more
Source§

fn spublish( self, shardchannel: impl Args, message: impl Args, ) -> PreparedCommand<'a, Self, usize>

Posts a message to the given shard channel. Read more
Source§

impl<'a> ScriptingCommands<'a> for &'a Client

Source§

fn eval<R: Response>(self, builder: CallBuilder) -> PreparedCommand<'a, Self, R>

Invoke the execution of a server-side Lua script. Read more
Source§

fn eval_readonly<R: Response>( self, builder: CallBuilder, ) -> PreparedCommand<'a, Self, R>

This is a read-only variant of the eval] command that cannot execute commands that modify data. Read more
Source§

fn evalsha<R: Response>( self, builder: CallBuilder, ) -> PreparedCommand<'a, Self, R>

Evaluate a script from the server’s cache by its SHA1 digest. Read more
Source§

fn evalsha_readonly<R: Response>( self, builder: CallBuilder, ) -> PreparedCommand<'a, Self, R>

This is a read-only variant of the evalsha command that cannot execute commands that modify data. Read more
Source§

fn fcall<R: Response>( self, builder: CallBuilder, ) -> PreparedCommand<'a, Self, R>

Invoke a function. Read more
Source§

fn fcall_readonly<R: Response>( self, builder: CallBuilder, ) -> PreparedCommand<'a, Self, R>

Invoke a function. Read more
Source§

fn function_delete( self, library_name: impl Args, ) -> PreparedCommand<'a, Self, ()>

Delete a library and all its functions. Read more
Source§

fn function_dump(self) -> PreparedCommand<'a, Self, FunctionDumpResult>

Return the serialized payload of loaded libraries. You can restore the serialized payload later with the function_restore command. Read more
Source§

fn function_flush( self, flushing_mode: FlushingMode, ) -> PreparedCommand<'a, Self, ()>

Deletes all the libraries. Read more
Source§

fn function_help(self) -> PreparedCommand<'a, Self, Vec<String>>

The command returns a helpful text describing the different FUNCTION subcommands. Read more
Source§

fn function_kill(self) -> PreparedCommand<'a, Self, ()>

Kill a function that is currently executing. Read more
Source§

fn function_list( self, options: FunctionListOptions, ) -> PreparedCommand<'a, Self, Vec<LibraryInfo>>

Return information about the functions and libraries. Read more
Source§

fn function_load<R: Response>( self, replace: bool, function_code: impl Args, ) -> PreparedCommand<'a, Self, R>

Load a library to Redis. Read more
Source§

fn function_restore( self, serialized_payload: impl Args, policy: FunctionRestorePolicy, ) -> PreparedCommand<'a, Self, ()>

Restore libraries from the serialized payload. Read more
Source§

fn function_stats(self) -> PreparedCommand<'a, Self, FunctionStats>

Return information about the function that’s currently running and information about the available execution engines. Read more
Source§

fn script_debug( self, debug_mode: ScriptDebugMode, ) -> PreparedCommand<'a, Self, ()>

Set the debug mode for subsequent scripts executed with EVAL. Read more
Source§

fn script_exists(self, sha1s: impl Args) -> PreparedCommand<'a, Self, Vec<bool>>

Returns information about the existence of the scripts in the script cache. Read more
Source§

fn script_flush( self, flushing_mode: FlushingMode, ) -> PreparedCommand<'a, Self, ()>

Flush the Lua scripts cache. Read more
Source§

fn script_kill(self) -> PreparedCommand<'a, Self, ()>

Kills the currently executing EVAL script, assuming no write operation was yet performed by the script. Read more
Source§

fn script_load<R: Response>( self, script: impl Args, ) -> PreparedCommand<'a, Self, R>

Load a script into the scripts cache, without executing it. Read more
Source§

impl<'a> SearchCommands<'a> for &'a Client

Source§

fn ft_aggregate( self, index: impl Args, query: impl Args, options: FtAggregateOptions, ) -> PreparedCommand<'a, Self, FtAggregateResult>

Run a search query on an index, and perform aggregate transformations on the results, extracting statistics etc from them Read more
Source§

fn ft_aliasadd( self, alias: impl Args, index: impl Args, ) -> PreparedCommand<'a, Self, ()>

Add an alias to an index Read more
Source§

fn ft_aliasdel(self, alias: impl Args) -> PreparedCommand<'a, Self, ()>

Remove an alias from an index Read more
Source§

fn ft_aliasupdate( self, alias: impl Args, index: impl Args, ) -> PreparedCommand<'a, Self, ()>

Add an alias to an index. Read more
Source§

fn ft_alter( self, index: impl Args, skip_initial_scan: bool, attribute: FtFieldSchema, ) -> PreparedCommand<'a, Self, ()>

Add a new attribute to the index. Read more
Source§

fn ft_config_get<R: Response>( self, option: impl Args, ) -> PreparedCommand<'a, Self, R>

Retrieve configuration options Read more
Source§

fn ft_config_set( self, option: impl Args, value: impl Args, ) -> PreparedCommand<'a, Self, ()>

Set configuration options Read more
Source§

fn ft_create( self, index: impl Args, options: FtCreateOptions, schema: impl Args, ) -> PreparedCommand<'a, Self, ()>

Create an index with the given specification Read more
Source§

fn ft_cursor_del( self, index: impl Args, cursor_id: u64, ) -> PreparedCommand<'a, Self, ()>

Delete a cursor Read more
Source§

fn ft_cursor_read( self, index: impl Args, cursor_id: u64, ) -> PreparedCommand<'a, Self, FtAggregateResult>

Read next results from an existing cursor Read more
Source§

fn ft_dictadd( self, dict: impl Args, terms: impl Args, ) -> PreparedCommand<'a, Self, usize>

Add terms to a dictionary Read more
Source§

fn ft_dictdel( self, dict: impl Args, terms: impl Args, ) -> PreparedCommand<'a, Self, usize>

Delete terms from a dictionary Read more
Source§

fn ft_dictdump<R: Response>( self, dict: impl Args, ) -> PreparedCommand<'a, Self, R>

Dump all terms in the given dictionary Read more
Source§

fn ft_dropindex( self, index: impl Args, dd: bool, ) -> PreparedCommand<'a, Self, ()>

Delete an index Read more
Source§

fn ft_explain<R: Response>( self, index: impl Args, query: impl Args, dialect_version: Option<u64>, ) -> PreparedCommand<'a, Self, R>

Return the execution plan for a complex query Read more
Source§

fn ft_explaincli( self, index: impl Args, query: impl Args, dialect_version: Option<u64>, ) -> PreparedCommand<'a, Self, Value>

Return the execution plan for a complex query but formatted for easier reading without using redis-cli --raw Read more
Source§

fn ft_info(self, index: impl Args) -> PreparedCommand<'a, Self, FtInfoResult>

Return information and statistics on the index Read more
Source§

fn ft_list<R: Response>(self) -> PreparedCommand<'a, Self, R>

Returns a list of all existing indexes. Read more
Perform a ft_search command and collects performance information Read more
Source§

fn ft_profile_aggregate( self, index: impl Args, limited: bool, query: impl Args, ) -> PreparedCommand<'a, Self, Value>

Perform a ft_aggregate command and collects performance information Read more
Search the index with a textual query, returning either documents or just ids Read more
Source§

fn ft_spellcheck( self, index: impl Args, query: impl Args, options: FtSpellCheckOptions, ) -> PreparedCommand<'a, Self, FtSpellCheckResult>

Perform spelling correction on a query, returning suggestions for misspelled terms Read more
Source§

fn ft_syndump<R: Response>( self, index: impl Args, ) -> PreparedCommand<'a, Self, R>

Dump the contents of a synonym group Read more
Source§

fn ft_synupdate( self, index: impl Args, synonym_group_id: impl Args, skip_initial_scan: bool, terms: impl Args, ) -> PreparedCommand<'a, Self, ()>

Update a synonym group Read more
Source§

fn ft_tagvals<R: Response>( self, index: impl Args, field_name: impl Args, ) -> PreparedCommand<'a, Self, R>

Return a distinct set of values indexed in a Tag field Read more
Source§

fn ft_sugadd( self, key: impl Args, string: impl Args, score: f64, options: FtSugAddOptions, ) -> PreparedCommand<'a, Self, usize>

Add a suggestion string to an auto-complete suggestion dictionary Read more
Source§

fn ft_sugdel( self, key: impl Args, string: impl Args, ) -> PreparedCommand<'a, Self, bool>

Delete a string from a suggestion index Read more
Source§

fn ft_sugget( self, key: impl Args, prefix: impl Args, options: FtSugGetOptions, ) -> PreparedCommand<'a, Self, Vec<FtSuggestion>>

Get completion suggestions for a prefix Read more
Source§

fn ft_suglen(self, key: impl Args) -> PreparedCommand<'a, Self, usize>

Get the size of an auto-complete suggestion dictionary Read more
Source§

impl<'a> SentinelCommands<'a> for &'a Client

Source§

fn sentinel_config_get<R: Response>( self, name: impl Args, ) -> PreparedCommand<'a, Self, R>

Get the current value of a global Sentinel configuration parameter. Read more
Source§

fn sentinel_config_set( self, name: impl Args, value: impl Args, ) -> PreparedCommand<'a, Self, ()>

Set the value of a global Sentinel configuration parameter.
Source§

fn sentinel_ckquorum( self, master_name: impl Args, ) -> PreparedCommand<'a, Self, ()>

Check if the current Sentinel configuration is able to reach the quorum needed to failover a master, and the majority needed to authorize the failover. Read more
Source§

fn sentinel_failover<N>( self, master_name: impl Args, ) -> PreparedCommand<'a, Self, ()>

Force a failover as if the master was not reachable, and without asking for agreement to other Sentinels (however a new version of the configuration will be published so that the other Sentinels will update their configurations).
Source§

fn sentinel_flushconfig(self) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

Force Sentinel to rewrite its configuration on disk, including the current Sentinel state. Read more
Source§

fn sentinel_get_master_addr_by_name( self, master_name: impl Args, ) -> PreparedCommand<'a, Self, Option<(String, u16)>>

Return the ip and port number of the master with that name. Read more
Source§

fn sentinel_info_cache<R: Response>( self, master_names: impl Args, ) -> PreparedCommand<'a, Self, R>

Return cached info output from masters and replicas.
Source§

fn sentinel_master( self, master_name: impl Args, ) -> PreparedCommand<'a, Self, SentinelMasterInfo>

Show the state and info of the specified master.
Source§

fn sentinel_masters(self) -> PreparedCommand<'a, Self, Vec<SentinelMasterInfo>>
where Self: Sized,

Show a list of monitored masters and their state.
Source§

fn sentinel_monitor( self, name: impl Args, ip: impl Args, port: u16, quorum: usize, ) -> PreparedCommand<'a, Self, ()>

This command tells the Sentinel to start monitoring a new master with the specified name, ip, port, and quorum. Read more
Source§

fn sentinel_remove(self, name: impl Args) -> PreparedCommand<'a, Self, ()>

This command is used in order to remove the specified master. Read more
Source§

fn sentinel_set( self, name: impl Args, configs: impl Args, ) -> PreparedCommand<'a, Self, ()>

The SET command is very similar to the config_set command of Redis, and is used in order to change configuration parameters of a specific master. Read more
Source§

fn sentinel_myid(self) -> PreparedCommand<'a, Self, String>

Return the ID of the Sentinel instance.
Source§

fn sentinel_pending_scripts(self) -> PreparedCommand<'a, Self, Vec<Value>>

This command returns information about pending scripts.
Source§

fn sentinel_replicas( self, master_name: impl Args, ) -> PreparedCommand<'a, Self, Vec<SentinelReplicaInfo>>

Show a list of replicas for this master, and their state.
Source§

fn sentinel_reset(self, pattern: impl Args) -> PreparedCommand<'a, Self, usize>

This command will reset all the masters with matching name. Read more
Source§

fn sentinel_sentinels( self, master_name: impl Args, ) -> PreparedCommand<'a, Self, Vec<SentinelInfo>>

Show a list of sentinel instances for this master, and their state.
Source§

fn sentinel_simulate_failure( self, mode: SentinelSimulateFailureMode, ) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

This command simulates different Sentinel crash scenarios.
Source§

impl<'a> ServerCommands<'a> for &'a Client

Source§

fn acl_cat<R: Response>( self, options: AclCatOptions, ) -> PreparedCommand<'a, Self, R>

The command shows the available ACL categories if called without arguments. If a category name is given, the command shows all the Redis commands in the specified category. Read more
Source§

fn acl_deluser(self, usernames: impl Args) -> PreparedCommand<'a, Self, usize>

Delete all the specified ACL users and terminate all the connections that are authenticated with such users. Read more
Source§

fn acl_dryrun<R: Response>( self, username: impl Args, command: impl Args, options: AclDryRunOptions, ) -> PreparedCommand<'a, Self, R>

Simulate the execution of a given command by a given user. Read more
Source§

fn acl_genpass<R: Response>( self, options: AclGenPassOptions, ) -> PreparedCommand<'a, Self, R>

Generates a password starting from /dev/urandom if available, otherwise (in systems without /dev/urandom) it uses a weaker system that is likely still better than picking a weak password by hand. Read more
Source§

fn acl_getuser<R: Response>( self, username: impl Args, ) -> PreparedCommand<'a, Self, R>

The command returns all the rules defined for an existing ACL user. Read more
Source§

fn acl_help<R: Response>(self) -> PreparedCommand<'a, Self, R>
where Self: Sized,

The command returns a helpful text describing the different ACL subcommands. Read more
Source§

fn acl_list<R: Response>(self) -> PreparedCommand<'a, Self, R>
where Self: Sized,

The command shows the currently active ACL rules in the Redis server. Read more
Source§

fn acl_load(self) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

When Redis is configured to use an ACL file (with the aclfile configuration option), this command will reload the ACLs from the file, replacing all the current ACL rules with the ones defined in the file. Read more
Source§

fn acl_log<R: Response>( self, options: AclLogOptions, ) -> PreparedCommand<'a, Self, R>

The command shows a list of recent ACL security events Read more
Source§

fn acl_save(self) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

When Redis is configured to use an ACL file (with the aclfile configuration option), this command will save the currently defined ACLs from the server memory to the ACL file. Read more
Source§

fn acl_setuser( self, username: impl Args, rules: impl Args, ) -> PreparedCommand<'a, Self, ()>

Create an ACL user with the specified rules or modify the rules of an existing user. Read more
Source§

fn acl_users<R: Response>(self) -> PreparedCommand<'a, Self, R>

The command shows a list of all the usernames of the currently configured users in the Redis ACL system. Read more
Source§

fn acl_whoami<R: Response>(self) -> PreparedCommand<'a, Self, R>
where Self: Sized,

Return the username the current connection is authenticated with. Read more
Source§

fn bgrewriteaof<R: Response>(self) -> PreparedCommand<'a, Self, R>

The command async rewrites the append-only file to disk. Read more
Source§

fn bgsave<R: Response>( self, options: BgsaveOptions, ) -> PreparedCommand<'a, Self, R>

The command save the DB in background. Read more
Source§

fn command(self) -> PreparedCommand<'a, Self, Vec<CommandInfo>>
where Self: Sized,

Return an array with details about every Redis command. Read more
Source§

fn command_count(self) -> PreparedCommand<'a, Self, usize>
where Self: Sized,

Number of total commands in this Redis server. Read more
Source§

fn command_docs<R: Response>( self, command_names: impl Args, ) -> PreparedCommand<'a, Self, R>

Number of total commands in this Redis server. Read more
Source§

fn command_getkeys<R: Response>( self, args: impl Args, ) -> PreparedCommand<'a, Self, R>

A helper command to let you find the keys from a full Redis command. Read more
Source§

fn command_getkeysandflags<R: Response>( self, args: impl Args, ) -> PreparedCommand<'a, Self, R>

A helper command to let you find the keys from a full Redis command together with flags indicating what each key is used for. Read more
Source§

fn command_help<R: Response>(self) -> PreparedCommand<'a, Self, R>
where Self: Sized,

The command returns a helpful text describing the different COMMAND subcommands. Read more
Source§

fn command_info( self, command_names: impl Args, ) -> PreparedCommand<'a, Self, Vec<CommandInfo>>

Return an array with details about multiple Redis command. Read more
Source§

fn command_list<R: Response>( self, options: CommandListOptions, ) -> PreparedCommand<'a, Self, R>

Return an array of the server’s command names based on optional filters Read more
Source§

fn config_get<R: Response>( self, params: impl Args, ) -> PreparedCommand<'a, Self, R>

Used to read the configuration parameters of a running Redis server. Read more
Source§

fn config_help(self) -> PreparedCommand<'a, Self, Vec<String>>
where Self: Sized,

The command returns a helpful text describing the different CONFIG subcommands. Read more
Source§

fn config_resetstat(self) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

Resets the statistics reported by Redis using the info command. Read more
Source§

fn config_rewrite(self) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

Rewrites the redis.conf file the server was started with, applying the minimal changes needed to make it reflect the configuration currently used by the server, which may be different compared to the original one because of the use of the config_set command. Read more
Source§

fn config_set(self, configs: impl Args) -> PreparedCommand<'a, Self, ()>

Used in order to reconfigure the server at run time without the need to restart Redis. Read more
Source§

fn dbsize(self) -> PreparedCommand<'a, Self, usize>
where Self: Sized,

Return the number of keys in the currently-selected database. Read more
Source§

fn failover(self, options: FailOverOptions) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

This command will start a coordinated failover between the currently-connected-to master and one of its replicas. Read more
Source§

fn flushdb(self, flushing_mode: FlushingMode) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

Delete all the keys of the currently selected DB. Read more
Source§

fn flushall(self, flushing_mode: FlushingMode) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

Delete all the keys of all the existing databases, not just the currently selected one. Read more
Source§

fn info<R: Response>(self, sections: impl Args) -> PreparedCommand<'a, Self, R>

This command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans. Read more
Source§

fn lastsave(self) -> PreparedCommand<'a, Self, u64>
where Self: Sized,

Return the UNIX TIME of the last DB save executed with success. Read more
Source§

fn latency_doctor<R: Response>(self) -> PreparedCommand<'a, Self, R>
where Self: Sized,

This command reports about different latency-related issues and advises about possible remedies. Read more
Source§

fn latency_graph<R: Response>( self, event: LatencyHistoryEvent, ) -> PreparedCommand<'a, Self, R>
where Self: Sized,

Produces an ASCII-art style graph for the specified event. Read more
Source§

fn latency_help<R: Response>(self) -> PreparedCommand<'a, Self, R>
where Self: Sized,

The command returns a helpful text describing the different LATENCY subcommands. Read more
Source§

fn latency_histogram<R: Response>( self, commands: impl Args, ) -> PreparedCommand<'a, Self, R>

This command reports a cumulative distribution of latencies in the format of a histogram for each of the specified command names. Read more
Source§

fn latency_history<R: Response>( self, event: LatencyHistoryEvent, ) -> PreparedCommand<'a, Self, R>

This command returns the raw data of the event’s latency spikes time series. Read more
Source§

fn latency_latest<R: Response>(self) -> PreparedCommand<'a, Self, R>

This command reports the latest latency events logged. Read more
Source§

fn latency_reset(self, events: impl Args) -> PreparedCommand<'a, Self, usize>

This command resets the latency spikes time series of all, or only some, events. Read more
Source§

fn lolwut(self, options: LolWutOptions) -> PreparedCommand<'a, Self, String>
where Self: Sized,

The LOLWUT command displays the Redis version: however as a side effect of doing so, it also creates a piece of generative computer art that is different with each version of Redis. Read more
Source§

fn memory_doctor(self) -> PreparedCommand<'a, Self, String>
where Self: Sized,

This command reports about different memory-related issues that the Redis server experiences, and advises about possible remedies. Read more
Source§

fn memory_help(self) -> PreparedCommand<'a, Self, Vec<String>>
where Self: Sized,

The command returns a helpful text describing the different MEMORY subcommands. Read more
Source§

fn memory_malloc_stats(self) -> PreparedCommand<'a, Self, String>
where Self: Sized,

This command provides an internal statistics report from the memory allocator. Read more
Source§

fn memory_purge(self) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

This command attempts to purge dirty pages so these can be reclaimed by the allocator. Read more
Source§

fn memory_stats(self) -> PreparedCommand<'a, Self, MemoryStats>
where Self: Sized,

This command returns information about the memory usage of the server. Read more
Source§

fn memory_usage( self, key: impl Args, options: MemoryUsageOptions, ) -> PreparedCommand<'a, Self, Option<usize>>

This command reports the number of bytes that a key and its value require to be stored in RAM. Read more
Source§

fn module_list<R: Response>(self) -> PreparedCommand<'a, Self, R>

Returns information about the modules loaded to the server. Read more
Source§

fn module_help(self) -> PreparedCommand<'a, Self, Vec<String>>
where Self: Sized,

The command returns a helpful text describing the different MODULE subcommands. Read more
Source§

fn module_load( self, path: impl Args, options: ModuleLoadOptions, ) -> PreparedCommand<'a, Self, ()>

Loads a module from a dynamic library at runtime. Read more
Source§

fn module_unload(self, name: impl Args) -> PreparedCommand<'a, Self, ()>

Unloads a module. Read more
Source§

fn replicaof(self, options: ReplicaOfOptions) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

This command can change the replication settings of a replica on the fly. Read more
Source§

fn role(self) -> PreparedCommand<'a, Self, RoleResult>
where Self: Sized,

Provide information on the role of a Redis instance in the context of replication, by returning if the instance is currently a master, slave, or sentinel. Read more
Source§

fn save(self) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

This command performs a synchronous save of the dataset producing a point in time snapshot of all the data inside the Redis instance, in the form of an RDB file. Read more
Source§

fn shutdown(self, options: ShutdownOptions) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

Shutdown the server Read more
Source§

fn slowlog_get( self, options: SlowLogOptions, ) -> PreparedCommand<'a, Self, Vec<SlowLogEntry>>
where Self: Sized,

This command returns entries from the slow log in chronological order. Read more
Source§

fn slowlog_help(self) -> PreparedCommand<'a, Self, Vec<String>>
where Self: Sized,

The command returns a helpful text describing the different SLOWLOG subcommands. Read more
Source§

fn slowlog_len(self) -> PreparedCommand<'a, Self, usize>
where Self: Sized,

This command returns the current number of entries in the slow log. Read more
Source§

fn slowlog_reset(self) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

This command resets the slow log, clearing all entries in it. Read more
Source§

fn swapdb(self, index1: usize, index2: usize) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

This command swaps two Redis databases, so that immediately all the clients connected to a given database will see the data of the other database, and the other way around. Read more
Source§

fn time(self) -> PreparedCommand<'a, Self, (u32, u32)>
where Self: Sized,

The TIME command returns the current server time as a two items lists: a Unix timestamp and the amount of microseconds already elapsed in the current second. Read more
Source§

impl<'a> SetCommands<'a> for &'a Client

Source§

fn sadd( self, key: impl Args, members: impl Args, ) -> PreparedCommand<'a, Self, usize>

Add the specified members to the set stored at key. Read more
Source§

fn scard(self, key: impl Args) -> PreparedCommand<'a, Self, usize>

Returns the set cardinality (number of elements) of the set stored at key. Read more
Source§

fn sdiff<R: Response>(self, keys: impl Args) -> PreparedCommand<'a, Self, R>

Returns the members of the set resulting from the difference between the first set and all the successive sets. Read more
Source§

fn sdiffstore( self, destination: impl Args, keys: impl Args, ) -> PreparedCommand<'a, Self, usize>

This command is equal to sdiff, but instead of returning the resulting set, it is stored in destination. Read more
Source§

fn sinter<R: Response>(self, keys: impl Args) -> PreparedCommand<'a, Self, R>

Returns the members of the set resulting from the intersection of all the given sets. Read more
Source§

fn sintercard( self, keys: impl Args, limit: usize, ) -> PreparedCommand<'a, Self, usize>

This command is similar to sinter, but instead of returning the result set, it returns just the cardinality of the result. Read more
Source§

fn sinterstore( self, destination: impl Args, keys: impl Args, ) -> PreparedCommand<'a, Self, usize>

This command is equal to sinter, but instead of returning the resulting set, it is stored in destination. Read more
Source§

fn sismember( self, key: impl Args, member: impl Args, ) -> PreparedCommand<'a, Self, bool>

Returns if member is a member of the set stored at key. Read more
Source§

fn smembers<R: Response>(self, key: impl Args) -> PreparedCommand<'a, Self, R>

Returns all the members of the set value stored at key. Read more
Source§

fn smismember<R: Response>( self, key: impl Args, members: impl Args, ) -> PreparedCommand<'a, Self, R>

Returns whether each member is a member of the set stored at key. Read more
Source§

fn smove( self, source: impl Args, destination: impl Args, member: impl Args, ) -> PreparedCommand<'a, Self, bool>

Move member from the set at source to the set at destination. Read more
Source§

fn spop<R: Response>( self, key: impl Args, count: usize, ) -> PreparedCommand<'a, Self, R>

Removes and returns one or more random members from the set value store at key. Read more
Source§

fn srandmember<R: Response>( self, key: impl Args, count: usize, ) -> PreparedCommand<'a, Self, R>

Removes and returns one or more random members from the set value store at key. Read more
Source§

fn srem( self, key: impl Args, members: impl Args, ) -> PreparedCommand<'a, Self, usize>

Remove the specified members from the set stored at key. Read more
Source§

fn sscan<R: Response + DeserializeOwned>( self, key: impl Args, cursor: u64, options: SScanOptions, ) -> PreparedCommand<'a, Self, (u64, R)>

Iterates elements of Sets types. Read more
Source§

fn sunion<R: Response>(self, keys: impl Args) -> PreparedCommand<'a, Self, R>

Returns the members of the set resulting from the union of all the given sets. Read more
Source§

fn sunionstore( self, destination: impl Args, keys: impl Args, ) -> PreparedCommand<'a, Self, usize>

This command is equal to sunion, but instead of returning the resulting set, it is stored in destination. Read more
Source§

impl<'a> SortedSetCommands<'a> for &'a Client

Source§

fn zadd( self, key: impl Args, items: impl Args, options: ZAddOptions, ) -> PreparedCommand<'a, Self, usize>

Adds all the specified members with the specified scores to the sorted set stored at key. Read more
Source§

fn zadd_incr( self, key: impl Args, condition: ZAddCondition, comparison: ZAddComparison, change: bool, score: f64, member: impl Args, ) -> PreparedCommand<'a, Self, Option<f64>>

In this mode ZADD acts like ZINCRBY. Only one score-element pair can be specified in this mode. Read more
Source§

fn zcard(self, key: impl Args) -> PreparedCommand<'a, Self, usize>

Returns the sorted set cardinality (number of elements) of the sorted set stored at key. Read more
Source§

fn zcount( self, key: impl Args, min: impl Args, max: impl Args, ) -> PreparedCommand<'a, Self, usize>

Returns the number of elements in the sorted set at key with a score between min and max. Read more
Source§

fn zdiff<R: Response>(self, keys: impl Args) -> PreparedCommand<'a, Self, R>

This command is similar to zdiffstore, but instead of storing the resulting sorted set, it is returned to the client. Read more
Source§

fn zdiff_with_scores<R: Response>( self, keys: impl Args, ) -> PreparedCommand<'a, Self, R>

This command is similar to zdiffstore, but instead of storing the resulting sorted set, it is returned to the client. Read more
Source§

fn zdiffstore( self, destination: impl Args, keys: impl Args, ) -> PreparedCommand<'a, Self, usize>

Computes the difference between the first and all successive input sorted sets and stores the result in destination. Read more
Source§

fn zincrby( self, key: impl Args, increment: f64, member: impl Args, ) -> PreparedCommand<'a, Self, f64>

Increments the score of member in the sorted set stored at key by increment. Read more
Source§

fn zinter<R: Response>( self, keys: impl Args, weights: Option<impl Args>, aggregate: ZAggregate, ) -> PreparedCommand<'a, Self, R>

This command is similar to zinterstore, but instead of storing the resulting sorted set, it is returned to the client. Read more
Source§

fn zinter_with_scores<R: Response>( self, keys: impl Args, weights: Option<impl Args>, aggregate: ZAggregate, ) -> PreparedCommand<'a, Self, R>

This command is similar to zinterstore, but instead of storing the resulting sorted set, it is returned to the client. Read more
Source§

fn zintercard( self, keys: impl Args, limit: usize, ) -> PreparedCommand<'a, Self, usize>

This command is similar to zinter, but instead of returning the result set, it returns just the cardinality of the result. Read more
Source§

fn zinterstore( self, destination: impl Args, keys: impl Args, weights: Option<impl Args>, aggregate: ZAggregate, ) -> PreparedCommand<'a, Self, usize>

Computes the intersection of numkeys sorted sets given by the specified keys, and stores the result in destination. Read more
Source§

fn zlexcount( self, key: impl Args, min: impl Args, max: impl Args, ) -> PreparedCommand<'a, Self, usize>

When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns the number of elements in the sorted set at key with a value between min and max. Read more
Source§

fn zmpop<R: Response + DeserializeOwned>( self, keys: impl Args, where_: ZWhere, count: usize, ) -> PreparedCommand<'a, Self, Option<ZMPopResult<R>>>

Pops one or more elements, that are member-score pairs, from the first non-empty sorted set in the provided list of key names. Read more
Source§

fn zmscore<R: Response>( self, key: impl Args, members: impl Args, ) -> PreparedCommand<'a, Self, R>

Returns the scores associated with the specified members in the sorted set stored at key. Read more
Source§

fn zpopmax<R: Response>( self, key: impl Args, count: usize, ) -> PreparedCommand<'a, Self, R>

Removes and returns up to count members with the highest scores in the sorted set stored at key. Read more
Source§

fn zpopmin<R: Response>( self, key: impl Args, count: usize, ) -> PreparedCommand<'a, Self, R>

Removes and returns up to count members with the lowest scores in the sorted set stored at key. Read more
Source§

fn zrandmember<R: Response>( self, key: impl Args, ) -> PreparedCommand<'a, Self, R>

Return a random element from the sorted set value stored at key. Read more
Source§

fn zrandmembers<R: Response>( self, key: impl Args, count: isize, ) -> PreparedCommand<'a, Self, R>

Return random elements from the sorted set value stored at key. Read more
Source§

fn zrandmembers_with_scores<R: Response>( self, key: impl Args, count: isize, ) -> PreparedCommand<'a, Self, R>

Return random elements with their scores from the sorted set value stored at key. Read more
Source§

fn zrange<R: Response>( self, key: impl Args, start: impl Args, stop: impl Args, options: ZRangeOptions, ) -> PreparedCommand<'a, Self, R>

Returns the specified range of elements in the sorted set stored at key. Read more
Source§

fn zrange_with_scores<R: Response>( self, key: impl Args, start: impl Args, stop: impl Args, options: ZRangeOptions, ) -> PreparedCommand<'a, Self, R>

Returns the specified range of elements in the sorted set stored at key. Read more
Source§

fn zrangestore( self, dst: impl Args, src: impl Args, start: impl Args, stop: impl Args, options: ZRangeOptions, ) -> PreparedCommand<'a, Self, usize>

This command is like zrange, but stores the result in the dst destination key. Read more
Source§

fn zrank( self, key: impl Args, member: impl Args, ) -> PreparedCommand<'a, Self, Option<usize>>

Returns the rank of member in the sorted set stored at key, with the scores ordered from low to high. Read more
Source§

fn zrank_with_score( self, key: impl Args, member: impl Args, ) -> PreparedCommand<'a, Self, Option<(usize, f64)>>

Returns the rank of member in the sorted set stored at key, with the scores ordered from low to high. Read more
Source§

fn zrem( self, key: impl Args, members: impl Args, ) -> PreparedCommand<'a, Self, usize>

Removes the specified members from the sorted set stored at key. Read more
Source§

fn zremrangebylex( self, key: impl Args, start: impl Args, stop: impl Args, ) -> PreparedCommand<'a, Self, usize>

When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command removes all elements in the sorted set stored at key between the lexicographical range specified by min and max. Read more
Source§

fn zremrangebyrank( self, key: impl Args, start: isize, stop: isize, ) -> PreparedCommand<'a, Self, usize>

Removes all elements in the sorted set stored at key with rank between start and stop. Read more
Source§

fn zremrangebyscore( self, key: impl Args, start: impl Args, stop: impl Args, ) -> PreparedCommand<'a, Self, usize>

Removes all elements in the sorted set stored at key with a score between min and max (inclusive). Read more
Source§

fn zrevrank( self, key: impl Args, member: impl Args, ) -> PreparedCommand<'a, Self, Option<usize>>

Returns the rank of member in the sorted set stored at key, with the scores ordered from high to low. Read more
Source§

fn zrevrank_with_score( self, key: impl Args, member: impl Args, ) -> PreparedCommand<'a, Self, Option<(usize, f64)>>

Returns the rank of member in the sorted set stored at key, with the scores ordered from high to low. Read more
Source§

fn zscan<R: Response + DeserializeOwned>( self, key: impl Args, cursor: usize, options: ZScanOptions, ) -> PreparedCommand<'a, Self, ZScanResult<R>>

Iterates elements of Sorted Set types and their associated scores. Read more
Source§

fn zscore( self, key: impl Args, member: impl Args, ) -> PreparedCommand<'a, Self, Option<f64>>

Returns the score of member in the sorted set at key. Read more
Source§

fn zunion<R: Response>( self, keys: impl Args, weights: Option<impl Args>, aggregate: ZAggregate, ) -> PreparedCommand<'a, Self, R>

This command is similar to zunionstore, but instead of storing the resulting sorted set, it is returned to the client. Read more
Source§

fn zunion_with_scores<R: Response>( self, keys: impl Args, weights: Option<impl Args>, aggregate: ZAggregate, ) -> PreparedCommand<'a, Self, R>

This command is similar to zunionstore, but instead of storing the resulting sorted set, it is returned to the client. Read more
Source§

fn zunionstore( self, destination: impl Args, keys: impl Args, weights: Option<impl Args>, aggregate: ZAggregate, ) -> PreparedCommand<'a, Self, usize>

Computes the unionsection of numkeys sorted sets given by the specified keys, and stores the result in destination. Read more
Source§

impl<'a> StreamCommands<'a> for &'a Client

Source§

fn xack( self, key: impl Args, group: impl Args, ids: impl Args, ) -> PreparedCommand<'a, Self, usize>

The XACK command removes one or multiple messages from the Pending Entries List (PEL) of a stream consumer group Read more
Source§

fn xadd<R: Response>( self, key: impl Args, stream_id: impl Args, items: impl Args, options: XAddOptions, ) -> PreparedCommand<'a, Self, R>

Appends the specified stream entry to the stream at the specified key. Read more
Source§

fn xautoclaim<R: Response + DeserializeOwned>( self, key: impl Args, group: impl Args, consumer: impl Args, min_idle_time: u64, start: impl Args, options: XAutoClaimOptions, ) -> PreparedCommand<'a, Self, XAutoClaimResult<R>>

This command transfers ownership of pending stream entries that match the specified criteria. Read more
Source§

fn xclaim<R: Response>( self, key: impl Args, group: impl Args, consumer: impl Args, min_idle_time: u64, ids: impl Args, options: XClaimOptions, ) -> PreparedCommand<'a, Self, R>

In the context of a stream consumer group, this command changes the ownership of a pending message, so that the new owner is the consumer specified as the command argument. Read more
Source§

fn xdel( self, key: impl Args, ids: impl Args, ) -> PreparedCommand<'a, Self, usize>

Removes the specified entries from a stream, and returns the number of entries deleted. Read more
Source§

fn xgroup_create( self, key: impl Args, groupname: impl Args, id: impl Args, options: XGroupCreateOptions, ) -> PreparedCommand<'a, Self, bool>

This command creates a new consumer group uniquely identified by groupname for the stream stored at key. Read more
Source§

fn xgroup_createconsumer( self, key: impl Args, groupname: impl Args, consumername: impl Args, ) -> PreparedCommand<'a, Self, bool>

Create a consumer named consumername in the consumer group groupname`` of the stream that's stored at key. Read more
Source§

fn xgroup_delconsumer( self, key: impl Args, groupname: impl Args, consumername: impl Args, ) -> PreparedCommand<'a, Self, usize>

The XGROUP DELCONSUMER command deletes a consumer from the consumer group. Read more
Source§

fn xgroup_destroy( self, key: impl Args, groupname: impl Args, ) -> PreparedCommand<'a, Self, bool>

The XGROUP DESTROY command completely destroys a consumer group. Read more
Source§

fn xgroup_help(self) -> PreparedCommand<'a, Self, Vec<String>>
where Self: Sized,

The command returns a helpful text describing the different XGROUP subcommands. Read more
Source§

fn xgroup_setid( self, key: impl Args, groupname: impl Args, id: impl Args, entries_read: Option<usize>, ) -> PreparedCommand<'a, Self, ()>

Set the last delivered ID for a consumer group. Read more
Source§

fn xinfo_consumers( self, key: impl Args, groupname: impl Args, ) -> PreparedCommand<'a, Self, Vec<XConsumerInfo>>

This command returns the list of consumers that belong to the groupname consumer group of the stream stored at key. Read more
Source§

fn xinfo_groups( self, key: impl Args, ) -> PreparedCommand<'a, Self, Vec<XGroupInfo>>

This command returns the list of consumers that belong to the groupname consumer group of the stream stored at key. Read more
Source§

fn xinfo_help(self) -> PreparedCommand<'a, Self, Vec<String>>
where Self: Sized,

The command returns a helpful text describing the different XINFO subcommands. Read more
Source§

fn xinfo_stream( self, key: impl Args, options: XInfoStreamOptions, ) -> PreparedCommand<'a, Self, XStreamInfo>

This command returns information about the stream stored at key. Read more
Source§

fn xlen(self, key: impl Args) -> PreparedCommand<'a, Self, usize>

Returns the number of entries inside a stream. Read more
Source§

fn xpending( self, key: impl Args, group: impl Args, ) -> PreparedCommand<'a, Self, XPendingResult>

The XPENDING command is the interface to inspect the list of pending messages. Read more
Source§

fn xpending_with_options<R: Response>( self, key: impl Args, group: impl Args, options: XPendingOptions, ) -> PreparedCommand<'a, Self, R>

The XPENDING command is the interface to inspect the list of pending messages. Read more
Source§

fn xrange<R: Response>( self, key: impl Args, start: impl Args, end: impl Args, count: Option<usize>, ) -> PreparedCommand<'a, Self, R>

The command returns the stream entries matching a given range of IDs. Read more
Source§

fn xread<R: Response>( self, options: XReadOptions, keys: impl Args, ids: impl Args, ) -> PreparedCommand<'a, Self, R>

Read data from one or multiple streams, only returning entries with an ID greater than the last received ID reported by the caller. Read more
Source§

fn xreadgroup<R: Response>( self, group: impl Args, consumer: impl Args, options: XReadGroupOptions, keys: impl Args, ids: impl Args, ) -> PreparedCommand<'a, Self, R>

The XREADGROUP command is a special version of the xread command with support for consumer groups. Read more
Source§

fn xrevrange<R: Response>( self, key: impl Args, end: impl Args, start: impl Args, count: Option<usize>, ) -> PreparedCommand<'a, Self, R>

This command is exactly like xrange, but with the notable difference of returning the entries in reverse order, and also taking the start-end range in reverse order Read more
Source§

fn xtrim( self, key: impl Args, options: XTrimOptions, ) -> PreparedCommand<'a, Self, usize>

XTRIM trims the stream by evicting older entries (entries with lower IDs) if needed. Read more
Source§

impl<'a> StringCommands<'a> for &'a Client

Source§

fn append( self, key: impl Args, value: impl Args, ) -> PreparedCommand<'a, Self, usize>

If key already exists and is a string, this command appends the value at the end of the string. If key does not exist it is created and set as an empty string, so APPEND will be similar to SET in this special case. Read more
Source§

fn decr(self, key: impl Args) -> PreparedCommand<'a, Self, i64>

Decrements the number stored at key by one. Read more
Source§

fn decrby( self, key: impl Args, decrement: i64, ) -> PreparedCommand<'a, Self, i64>

Decrements the number stored at key by one. Read more
Source§

fn get<R: Response>(self, key: impl Args) -> PreparedCommand<'a, Self, R>

Get the value of key. Read more
Source§

fn getdel<R: Response>(self, key: impl Args) -> PreparedCommand<'a, Self, R>

Get the value of key and delete the key. Read more
Source§

fn getex<R: Response>( self, key: impl Args, options: GetExOptions, ) -> PreparedCommand<'a, Self, R>

Get the value of key and optionally set its expiration. GETEX is similar to GET, but is a write command with additional options. Read more
Source§

fn getrange<R: Response>( self, key: impl Args, start: isize, end: isize, ) -> PreparedCommand<'a, Self, R>

Returns the substring of the string value stored at key, determined by the offsets start and end (both are inclusive). Read more
Source§

fn getset<R: Response>( self, key: impl Args, value: impl Args, ) -> PreparedCommand<'a, Self, R>

Atomically sets key to value and returns the old value stored at key. Returns an error when key exists but does not hold a string value. Any previous time to live associated with the key is discarded on successful SET operation. Read more
Source§

fn incr(self, key: impl Args) -> PreparedCommand<'a, Self, i64>

Increments the number stored at key by one. Read more
Source§

fn incrby( self, key: impl Args, increment: i64, ) -> PreparedCommand<'a, Self, i64>

Increments the number stored at key by increment. Read more
Source§

fn incrbyfloat( self, key: impl Args, increment: f64, ) -> PreparedCommand<'a, Self, f64>

Increment the string representing a floating point number stored at key by the specified increment. By using a negative increment value, the result is that the value stored at the key is decremented (by the obvious properties of addition). If the key does not exist, it is set to 0 before performing the operation. An error is returned if one of the following conditions occur: Read more
Source§

fn lcs<R: Response>( self, key1: impl Args, key2: impl Args, ) -> PreparedCommand<'a, Self, R>

The LCS command implements the longest common subsequence algorithm Read more
Source§

fn lcs_len( self, key1: impl Args, key2: impl Args, ) -> PreparedCommand<'a, Self, usize>

The LCS command implements the longest common subsequence algorithm Read more
Source§

fn lcs_idx( self, key1: impl Args, key2: impl Args, min_match_len: Option<usize>, with_match_len: bool, ) -> PreparedCommand<'a, Self, LcsResult>

The LCS command implements the longest common subsequence algorithm Read more
Source§

fn mget<R: Response>(self, keys: impl Args) -> PreparedCommand<'a, Self, R>

Returns the values of all specified keys. Read more
Source§

fn mset(self, items: impl Args) -> PreparedCommand<'a, Self, ()>

Sets the given keys to their respective values. Read more
Source§

fn msetnx(self, items: impl Args) -> PreparedCommand<'a, Self, bool>

Sets the given keys to their respective values. MSETNX will not perform any operation at all even if just a single key already exists. Read more
Source§

fn psetex( self, key: impl Args, milliseconds: u64, value: impl Args, ) -> PreparedCommand<'a, Self, ()>

Works exactly like setex with the sole difference that the expire time is specified in milliseconds instead of seconds. Read more
Source§

fn set(self, key: impl Args, value: impl Args) -> PreparedCommand<'a, Self, ()>

Set key to hold the string value. Read more
Source§

fn set_with_options( self, key: impl Args, value: impl Args, condition: SetCondition, expiration: SetExpiration, keep_ttl: bool, ) -> PreparedCommand<'a, Self, bool>

Set key to hold the string value. Read more
Source§

fn set_get_with_options<R: Response>( self, key: impl Args, value: impl Args, condition: SetCondition, expiration: SetExpiration, keep_ttl: bool, ) -> PreparedCommand<'a, Self, R>

Set key to hold the string value wit GET option enforced Read more
Source§

fn setex( self, key: impl Args, seconds: u64, value: impl Args, ) -> PreparedCommand<'a, Self, ()>

Set key to hold the string value and set key to timeout after a given number of seconds. Read more
Source§

fn setnx( self, key: impl Args, value: impl Args, ) -> PreparedCommand<'a, Self, bool>

Set key to hold string value if key does not exist. Read more
Source§

fn setrange( self, key: impl Args, offset: usize, value: impl Args, ) -> PreparedCommand<'a, Self, usize>

Overwrites part of the string stored at key, starting at the specified offset, for the entire length of value. Read more
Source§

fn strlen(self, key: impl Args) -> PreparedCommand<'a, Self, usize>

Returns the length of the string value stored at key. Read more
Source§

fn substr<R: Response>( self, key: impl Args, start: isize, end: isize, ) -> PreparedCommand<'a, Self, R>

Returns the substring of the string value stored at key, determined by the offsets start and end (both are inclusive). Read more
Source§

impl<'a> TDigestCommands<'a> for &'a Client

Source§

fn tdigest_add( self, key: impl Args, values: impl Args, ) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

Adds one or more observations to a t-digest sketch. Read more
Source§

fn tdigest_byrank<R: Response>( self, key: impl Args, ranks: impl Args, ) -> PreparedCommand<'a, Self, R>
where Self: Sized,

Returns, for each input rank, an estimation of the value (floating-point) with that rank. Read more
Source§

fn tdigest_byrevrank<R: Response>( self, key: impl Args, ranks: impl Args, ) -> PreparedCommand<'a, Self, R>
where Self: Sized,

Returns, for each input reverse rank, an estimation of the value (floating-point) with that reverse rank. Read more
Source§

fn tdigest_cdf<R: Response>( self, key: impl Args, values: impl Args, ) -> PreparedCommand<'a, Self, R>
where Self: Sized,

Returns, for each input reverse rank, an estimation of the value (floating-point) with that reverse rank. Read more
Source§

fn tdigest_create( self, key: impl Args, compression: Option<i64>, ) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

Allocates memory and initializes a new t-digest sketch. Read more
Source§

fn tdigest_info( self, key: impl Args, ) -> PreparedCommand<'a, Self, TDigestInfoResult>
where Self: Sized,

Returns information and statistics about a t-digest sketch Read more
Source§

fn tdigest_max(self, key: impl Args) -> PreparedCommand<'a, Self, f64>
where Self: Sized,

Returns the maximum observation value from a t-digest sketch. Read more
Source§

fn tdigest_merge( self, destination: impl Args, sources: impl Args, options: TDigestMergeOptions, ) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

Merges multiple t-digest sketches into a single sketch. Read more
Source§

fn tdigest_min(self, key: impl Args) -> PreparedCommand<'a, Self, f64>
where Self: Sized,

Returns the minimum observation value from a t-digest sketch. Read more
Source§

fn tdigest_quantile<R: Response>( self, key: impl Args, quantiles: impl Args, ) -> PreparedCommand<'a, Self, R>
where Self: Sized,

Returns, for each input fraction, an estimation of the value (floating point) that is smaller than the given fraction of observations. Read more
Source§

fn tdigest_rank<R: Response>( self, key: impl Args, values: impl Args, ) -> PreparedCommand<'a, Self, R>
where Self: Sized,

Returns, for each input value (floating-point), the estimated rank of the value (the number of observations in the sketch that are smaller than the value + half the number of observations that are equal to the value). Read more
Source§

fn tdigest_reset(self, key: impl Args) -> PreparedCommand<'a, Self, ()>
where Self: Sized,

Resets a t-digest sketch: empty the sketch and re-initializes it. Read more
Source§

fn tdigest_revrank<R: Response>( self, key: impl Args, values: impl Args, ) -> PreparedCommand<'a, Self, R>
where Self: Sized,

Returns, for each input value (floating-point), the estimated reverse rank of the value (the number of observations in the sketch that are smaller than the value + half the number of observations that are equal to the value). Read more
Source§

fn tdigest_trimmed_mean( self, key: impl Args, low_cut_quantile: f64, high_cut_quantile: f64, ) -> PreparedCommand<'a, Self, f64>
where Self: Sized,

Returns an estimation of the mean value from the sketch, excluding observation values outside the low and high cutoff quantiles. Read more
Source§

impl<'a> TimeSeriesCommands<'a> for &'a Client

Source§

fn ts_add( self, key: impl Args, timestamp: impl Args, value: f64, options: TsAddOptions, ) -> PreparedCommand<'a, Self, u64>

Append a sample to a time series Read more
Source§

fn ts_alter( self, key: impl Args, options: TsCreateOptions, ) -> PreparedCommand<'a, Self, ()>

Update the retention, chunk size, duplicate policy, and labels of an existing time series Read more
Source§

fn ts_create( self, key: impl Args, options: TsCreateOptions, ) -> PreparedCommand<'a, Self, ()>

Create a new time series Read more
Source§

fn ts_createrule( self, src_key: impl Args, dst_key: impl Args, aggregator: TsAggregationType, bucket_duration: u64, options: TsCreateRuleOptions, ) -> PreparedCommand<'a, Self, ()>

Create a compaction rule Read more
Source§

fn ts_decrby( self, key: impl Args, value: f64, options: TsIncrByDecrByOptions, ) -> PreparedCommand<'a, Self, ()>

Decrease the value of the sample with the maximum existing timestamp, or create a new sample with a value equal to the value of the sample with the maximum existing timestamp with a given decrement Read more
Source§

fn ts_del( self, key: impl Args, from_timestamp: u64, to_timestamp: u64, ) -> PreparedCommand<'a, Self, usize>

Delete all samples between two timestamps for a given time series Read more
Source§

fn ts_deleterule( self, src_key: impl Args, dst_key: impl Args, ) -> PreparedCommand<'a, Self, ()>

Delete a compaction rule Read more
Source§

fn ts_get( self, key: impl Args, options: TsGetOptions, ) -> PreparedCommand<'a, Self, Option<(u64, f64)>>

Get the last sample Read more
Source§

fn ts_incrby( self, key: impl Args, value: f64, options: TsIncrByDecrByOptions, ) -> PreparedCommand<'a, Self, u64>

Increase the value of the sample with the maximum existing timestamp, or create a new sample with a value equal to the value of the sample with the maximum existing timestamp with a given increment Read more
Source§

fn ts_info( self, key: impl Args, debug: bool, ) -> PreparedCommand<'a, Self, TsInfoResult>

Return information and statistics for a time series. Read more
Source§

fn ts_madd<R: Response>(self, items: impl Args) -> PreparedCommand<'a, Self, R>

Append new samples to one or more time series Read more
Source§

fn ts_mget<R: Response>( self, options: TsMGetOptions, filters: impl Args, ) -> PreparedCommand<'a, Self, R>

Get the last samples matching a specific filter Read more
Source§

fn ts_mrange<R: Response>( self, from_timestamp: impl Args, to_timestamp: impl Args, options: TsMRangeOptions, filters: impl Args, groupby_options: TsGroupByOptions, ) -> PreparedCommand<'a, Self, R>

Query a range across multiple time series by filters in forward direction Read more
Source§

fn ts_mrevrange<R: Response>( self, from_timestamp: impl Args, to_timestamp: impl Args, options: TsMRangeOptions, filters: impl Args, groupby_options: TsGroupByOptions, ) -> PreparedCommand<'a, Self, R>

Query a range across multiple time series by filters in reverse direction Read more
Source§

fn ts_queryindex<R: Response>( self, filters: impl Args, ) -> PreparedCommand<'a, Self, R>

Get all time series keys matching a filter list Read more
Source§

fn ts_range<R: Response>( self, key: impl Args, from_timestamp: impl Args, to_timestamp: impl Args, options: TsRangeOptions, ) -> PreparedCommand<'a, Self, R>

Query a range in forward direction Read more
Source§

fn ts_revrange<R: Response>( self, key: impl Args, from_timestamp: impl Args, to_timestamp: impl Args, options: TsRangeOptions, ) -> PreparedCommand<'a, Self, R>

Query a range in reverse direction Read more
Source§

impl<'a> TopKCommands<'a> for &'a Client

Source§

fn topk_add<R: Response>( self, key: impl Args, items: impl Args, ) -> PreparedCommand<'a, Self, R>

Adds an item to the data structure. Read more
Source§

fn topk_incrby<R: Response>( self, key: impl Args, items: impl Args, ) -> PreparedCommand<'a, Self, R>

Increase the score of an item in the data structure by increment. Read more
Source§

fn topk_info(self, key: impl Args) -> PreparedCommand<'a, Self, TopKInfoResult>

Returns number of required items (k), width, depth and decay values. Read more
Source§

fn topk_list<R: Response>(self, key: impl Args) -> PreparedCommand<'a, Self, R>

Return full list of items in Top K list. Read more
Source§

fn topk_list_with_count<R: Response + DeserializeOwned>( self, key: impl Args, ) -> PreparedCommand<'a, Self, TopKListWithCountResult<R>>

Return full list of items in Top K list. Read more
Source§

fn topk_query<R: Response>( self, key: impl Args, items: impl Args, ) -> PreparedCommand<'a, Self, R>

Return full list of items in Top K list. Read more
Source§

fn topk_reserve( self, key: impl Args, topk: usize, width_depth_decay: Option<(usize, usize, f64)>, ) -> PreparedCommand<'a, Self, ()>

Initializes a TopK with specified parameters. Read more
Source§

impl<'a> TransactionCommands<'a> for &'a Client

Source§

fn watch(self, keys: impl Args) -> PreparedCommand<'a, Self, ()>

Marks the given keys to be watched for conditional execution of a transaction. Read more
Source§

fn unwatch(self) -> PreparedCommand<'a, Self, ()>

Flushes all the previously watched keys for a transaction. Read more
Source§

impl<'a> VectorSetCommands<'a> for &'a Client

Source§

fn vadd( self, key: impl Args, reduce_dim: Option<usize>, values: &[f32], element: impl Args, options: VAddOptions, ) -> PreparedCommand<'a, Self, bool>

Add a new element into the vector set specified by key. Read more
Source§

fn vcard(self, key: impl Args) -> PreparedCommand<'a, Self, usize>

Return the number of elements in the specified vector set. Read more
Source§

fn vdim(self, key: impl Args) -> PreparedCommand<'a, Self, usize>

Return the number of dimensions of the vectors in the specified vector set. Read more
Source§

fn vemb<R: Response>( self, key: impl Args, element: impl Args, ) -> PreparedCommand<'a, Self, R>

Return the approximate vector associated with a given element in the vector set. Read more
Source§

fn vgetattr<R: Response>( self, key: impl Args, element: impl Args, ) -> PreparedCommand<'a, Self, R>

Return the JSON attributes associated with an element in a vector set. Read more
Source§

fn vinfo(self, key: impl Args) -> PreparedCommand<'a, Self, VInfoResult>

Return metadata and internal details about a vector set, including size, dimensions, quantization type, and graph structure. Read more
Return the neighbors of a specified element in a vector set. The command shows the connections for each layer of the HNSW graph. Read more
Return the neighbors of a specified element in a vector set. The command shows the connections for each layer of the HNSW graph. Read more
Source§

fn vrandmember<R: Response>( self, key: impl Args, count: isize, ) -> PreparedCommand<'a, Self, R>

Return one or more random elements from a vector set. Read more
Source§

fn vrem( self, key: impl Args, element: impl Args, ) -> PreparedCommand<'a, Self, bool>

Remove an element from a vector set. Read more
Source§

fn vsetattr( self, key: impl Args, element: impl Args, json: impl Args, ) -> PreparedCommand<'a, Self, bool>

Associate a JSON object with an element in a vector set. Read more
Source§

fn vsim<R: Response>( self, key: impl Args, vector_or_element: VectorOrElement<'_>, options: VSimOptions, ) -> PreparedCommand<'a, Self, R>

Return elements similar to a given vector or element. Use this command to perform approximate or exact similarity searches within a vector set. Read more
Source§

fn vsim_with_scores<R: Response>( self, key: impl Args, vector_or_element: VectorOrElement<'_>, options: VSimOptions, ) -> PreparedCommand<'a, Self, R>

Return elements similar to a given vector or element. Use this command to perform approximate or exact similarity searches within a vector set. Read more

Auto Trait Implementations§

§

impl Freeze for Client

§

impl !RefUnwindSafe for Client

§

impl Send for Client

§

impl Sync for Client

§

impl Unpin for Client

§

impl !UnwindSafe for Client

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V