pub trait HostConnection: Send {
// Required methods
fn open(
&mut self,
address: String,
) -> impl Future<Output = Result<Resource<Connection>, Error>> + Send;
fn publish(
&mut self,
self_: Resource<Connection>,
channel: String,
payload: Payload,
) -> impl Future<Output = Result<(), Error>> + Send;
fn get(
&mut self,
self_: Resource<Connection>,
key: String,
) -> impl Future<Output = Result<Option<Payload>, Error>> + Send;
fn set(
&mut self,
self_: Resource<Connection>,
key: String,
value: Payload,
) -> impl Future<Output = Result<(), Error>> + Send;
fn incr(
&mut self,
self_: Resource<Connection>,
key: String,
) -> impl Future<Output = Result<i64, Error>> + Send;
fn del(
&mut self,
self_: Resource<Connection>,
keys: Vec<String>,
) -> impl Future<Output = Result<u32, Error>> + Send;
fn sadd(
&mut self,
self_: Resource<Connection>,
key: String,
values: Vec<String>,
) -> impl Future<Output = Result<u32, Error>> + Send;
fn smembers(
&mut self,
self_: Resource<Connection>,
key: String,
) -> impl Future<Output = Result<Vec<String>, Error>> + Send;
fn srem(
&mut self,
self_: Resource<Connection>,
key: String,
values: Vec<String>,
) -> impl Future<Output = Result<u32, Error>> + Send;
fn execute(
&mut self,
self_: Resource<Connection>,
command: String,
arguments: Vec<RedisParameter>,
) -> impl Future<Output = Result<Vec<RedisResult>, Error>> + Send;
fn drop(
&mut self,
rep: Resource<Connection>,
) -> impl Future<Output = Result<()>> + Send;
}Required Methods§
Sourcefn open(
&mut self,
address: String,
) -> impl Future<Output = Result<Resource<Connection>, Error>> + Send
fn open( &mut self, address: String, ) -> impl Future<Output = Result<Resource<Connection>, Error>> + Send
Open a connection to the Redis instance at address.
Sourcefn publish(
&mut self,
self_: Resource<Connection>,
channel: String,
payload: Payload,
) -> impl Future<Output = Result<(), Error>> + Send
fn publish( &mut self, self_: Resource<Connection>, channel: String, payload: Payload, ) -> impl Future<Output = Result<(), Error>> + Send
Publish a Redis message to the specified channel.
Sourcefn get(
&mut self,
self_: Resource<Connection>,
key: String,
) -> impl Future<Output = Result<Option<Payload>, Error>> + Send
fn get( &mut self, self_: Resource<Connection>, key: String, ) -> impl Future<Output = Result<Option<Payload>, Error>> + Send
Get the value of a key.
Sourcefn set(
&mut self,
self_: Resource<Connection>,
key: String,
value: Payload,
) -> impl Future<Output = Result<(), Error>> + Send
fn set( &mut self, self_: Resource<Connection>, key: String, value: Payload, ) -> impl Future<Output = Result<(), Error>> + Send
Set key to value.
If key already holds a value, it is overwritten.
Sourcefn incr(
&mut self,
self_: Resource<Connection>,
key: String,
) -> impl Future<Output = Result<i64, Error>> + Send
fn incr( &mut self, self_: Resource<Connection>, key: String, ) -> impl Future<Output = Result<i64, Error>> + Send
Increments the number stored at key by one.
If the key does not exist, it is set to 0 before performing the operation.
An error::type-error is returned if the key contains a value of the wrong type
or contains a string that can not be represented as integer.
Sourcefn del(
&mut self,
self_: Resource<Connection>,
keys: Vec<String>,
) -> impl Future<Output = Result<u32, Error>> + Send
fn del( &mut self, self_: Resource<Connection>, keys: Vec<String>, ) -> impl Future<Output = Result<u32, Error>> + Send
Removes the specified keys.
A key is ignored if it does not exist. Returns the number of keys deleted.
Sourcefn sadd(
&mut self,
self_: Resource<Connection>,
key: String,
values: Vec<String>,
) -> impl Future<Output = Result<u32, Error>> + Send
fn sadd( &mut self, self_: Resource<Connection>, key: String, values: Vec<String>, ) -> impl Future<Output = Result<u32, Error>> + Send
Add the specified values to the set named key, returning the number of newly-added values.
Sourcefn smembers(
&mut self,
self_: Resource<Connection>,
key: String,
) -> impl Future<Output = Result<Vec<String>, Error>> + Send
fn smembers( &mut self, self_: Resource<Connection>, key: String, ) -> impl Future<Output = Result<Vec<String>, Error>> + Send
Retrieve the contents of the set named key.
Sourcefn srem(
&mut self,
self_: Resource<Connection>,
key: String,
values: Vec<String>,
) -> impl Future<Output = Result<u32, Error>> + Send
fn srem( &mut self, self_: Resource<Connection>, key: String, values: Vec<String>, ) -> impl Future<Output = Result<u32, Error>> + Send
Remove the specified values from the set named key, returning the number of newly-removed values.
Sourcefn execute(
&mut self,
self_: Resource<Connection>,
command: String,
arguments: Vec<RedisParameter>,
) -> impl Future<Output = Result<Vec<RedisResult>, Error>> + Send
fn execute( &mut self, self_: Resource<Connection>, command: String, arguments: Vec<RedisParameter>, ) -> impl Future<Output = Result<Vec<RedisResult>, Error>> + Send
Execute an arbitrary Redis command and receive the result.
fn drop( &mut self, rep: Resource<Connection>, ) -> impl Future<Output = Result<()>> + Send
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl<_T: HostConnection + ?Sized + Send> HostConnection for &mut _T
impl<_T: HostConnection + ?Sized + Send> HostConnection for &mut _T
Source§fn open(
&mut self,
address: String,
) -> impl Future<Output = Result<Resource<Connection>, Error>> + Send
fn open( &mut self, address: String, ) -> impl Future<Output = Result<Resource<Connection>, Error>> + Send
Open a connection to the Redis instance at address.
Source§fn publish(
&mut self,
self_: Resource<Connection>,
channel: String,
payload: Payload,
) -> impl Future<Output = Result<(), Error>> + Send
fn publish( &mut self, self_: Resource<Connection>, channel: String, payload: Payload, ) -> impl Future<Output = Result<(), Error>> + Send
Publish a Redis message to the specified channel.
Source§fn get(
&mut self,
self_: Resource<Connection>,
key: String,
) -> impl Future<Output = Result<Option<Payload>, Error>> + Send
fn get( &mut self, self_: Resource<Connection>, key: String, ) -> impl Future<Output = Result<Option<Payload>, Error>> + Send
Get the value of a key.
Source§fn set(
&mut self,
self_: Resource<Connection>,
key: String,
value: Payload,
) -> impl Future<Output = Result<(), Error>> + Send
fn set( &mut self, self_: Resource<Connection>, key: String, value: Payload, ) -> impl Future<Output = Result<(), Error>> + Send
Set key to value.
If key already holds a value, it is overwritten.
Source§fn incr(
&mut self,
self_: Resource<Connection>,
key: String,
) -> impl Future<Output = Result<i64, Error>> + Send
fn incr( &mut self, self_: Resource<Connection>, key: String, ) -> impl Future<Output = Result<i64, Error>> + Send
Increments the number stored at key by one.
If the key does not exist, it is set to 0 before performing the operation.
An error::type-error is returned if the key contains a value of the wrong type
or contains a string that can not be represented as integer.
Source§fn del(
&mut self,
self_: Resource<Connection>,
keys: Vec<String>,
) -> impl Future<Output = Result<u32, Error>> + Send
fn del( &mut self, self_: Resource<Connection>, keys: Vec<String>, ) -> impl Future<Output = Result<u32, Error>> + Send
Removes the specified keys.
A key is ignored if it does not exist. Returns the number of keys deleted.
Source§fn sadd(
&mut self,
self_: Resource<Connection>,
key: String,
values: Vec<String>,
) -> impl Future<Output = Result<u32, Error>> + Send
fn sadd( &mut self, self_: Resource<Connection>, key: String, values: Vec<String>, ) -> impl Future<Output = Result<u32, Error>> + Send
Add the specified values to the set named key, returning the number of newly-added values.
Source§fn smembers(
&mut self,
self_: Resource<Connection>,
key: String,
) -> impl Future<Output = Result<Vec<String>, Error>> + Send
fn smembers( &mut self, self_: Resource<Connection>, key: String, ) -> impl Future<Output = Result<Vec<String>, Error>> + Send
Retrieve the contents of the set named key.
Source§fn srem(
&mut self,
self_: Resource<Connection>,
key: String,
values: Vec<String>,
) -> impl Future<Output = Result<u32, Error>> + Send
fn srem( &mut self, self_: Resource<Connection>, key: String, values: Vec<String>, ) -> impl Future<Output = Result<u32, Error>> + Send
Remove the specified values from the set named key, returning the number of newly-removed values.
Source§fn execute(
&mut self,
self_: Resource<Connection>,
command: String,
arguments: Vec<RedisParameter>,
) -> impl Future<Output = Result<Vec<RedisResult>, Error>> + Send
fn execute( &mut self, self_: Resource<Connection>, command: String, arguments: Vec<RedisParameter>, ) -> impl Future<Output = Result<Vec<RedisResult>, Error>> + Send
Execute an arbitrary Redis command and receive the result.