pub trait ToRedisArgs: Sized {
// Required method
fn write_redis_args<W>(&self, out: &mut W)
where W: RedisWrite + ?Sized;
// Provided methods
fn to_redis_args(&self) -> Vec<Vec<u8>> { ... }
fn describe_numeric_behavior(&self) -> NumericBehavior { ... }
fn is_single_arg(&self) -> bool { ... }
}
Expand description
Used to convert a value into one or multiple redis argument strings. Most values will produce exactly one item but in some cases it might make sense to produce more than one.
Required Methods§
Sourcefn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
This writes the value into a vector of bytes. Each item is a single argument. Most items generate a single item.
The exception to this rule currently are vectors of items.
Provided Methods§
Sourcefn to_redis_args(&self) -> Vec<Vec<u8>>
fn to_redis_args(&self) -> Vec<Vec<u8>>
This converts the value into a vector of bytes. Each item is a single argument. Most items generate a vector of a single item.
The exception to this rule currently are vectors of items.
Sourcefn describe_numeric_behavior(&self) -> NumericBehavior
fn describe_numeric_behavior(&self) -> NumericBehavior
Returns an information about the contained value with regards
to it’s numeric behavior in a redis context. This is used in
some high level concepts to switch between different implementations
of redis functions (for instance INCR
vs INCRBYFLOAT
).
Sourcefn is_single_arg(&self) -> bool
fn is_single_arg(&self) -> bool
Returns an indiciation if the value contained is exactly one
argument. It returns false if it’s zero or more than one. This
is used in some high level functions to intelligently switch
between GET
and MGET
variants.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl ToRedisArgs for bool
impl ToRedisArgs for bool
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
Source§impl ToRedisArgs for f32
impl ToRedisArgs for f32
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for f64
impl ToRedisArgs for f64
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for i8
impl ToRedisArgs for i8
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for i16
impl ToRedisArgs for i16
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for i32
impl ToRedisArgs for i32
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for i64
impl ToRedisArgs for i64
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for isize
impl ToRedisArgs for isize
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for u8
impl ToRedisArgs for u8
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
Source§impl ToRedisArgs for u16
impl ToRedisArgs for u16
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for u32
impl ToRedisArgs for u32
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for u64
impl ToRedisArgs for u64
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for usize
impl ToRedisArgs for usize
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for String
impl ToRedisArgs for String
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
Source§impl ToRedisArgs for NonZero<i8>
impl ToRedisArgs for NonZero<i8>
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for NonZero<i16>
impl ToRedisArgs for NonZero<i16>
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for NonZero<i32>
impl ToRedisArgs for NonZero<i32>
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for NonZero<i64>
impl ToRedisArgs for NonZero<i64>
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for NonZero<isize>
impl ToRedisArgs for NonZero<isize>
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for NonZero<u8>
impl ToRedisArgs for NonZero<u8>
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for NonZero<u16>
impl ToRedisArgs for NonZero<u16>
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for NonZero<u32>
impl ToRedisArgs for NonZero<u32>
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for NonZero<u64>
impl ToRedisArgs for NonZero<u64>
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl ToRedisArgs for NonZero<usize>
impl ToRedisArgs for NonZero<usize>
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
Source§impl<'a> ToRedisArgs for &'a str
impl<'a> ToRedisArgs for &'a str
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
Source§impl<'a, T> ToRedisArgs for &'a [T; 0]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 0]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 1]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 1]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 2]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 2]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 3]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 3]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 4]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 4]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 5]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 5]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 6]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 6]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 7]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 7]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 8]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 8]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 9]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 9]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 10]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 10]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 11]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 11]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 12]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 12]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 13]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 13]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 14]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 14]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 15]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 15]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 16]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 16]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 17]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 17]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 18]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 18]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 19]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 19]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 20]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 20]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 21]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 21]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 22]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 22]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 23]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 23]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 24]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 24]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 25]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 25]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 26]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 26]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 27]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 27]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 28]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 28]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 29]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 29]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 30]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 30]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 31]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 31]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T; 32]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T; 32]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<'a, T> ToRedisArgs for &'a [T]where
T: ToRedisArgs,
impl<'a, T> ToRedisArgs for &'a [T]where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<T> ToRedisArgs for Option<T>where
T: ToRedisArgs,
impl<T> ToRedisArgs for Option<T>where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn describe_numeric_behavior(&self) -> NumericBehavior
fn is_single_arg(&self) -> bool
Source§impl<T> ToRedisArgs for &Twhere
T: ToRedisArgs,
impl<T> ToRedisArgs for &Twhere
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
Source§impl<T> ToRedisArgs for BTreeSet<T>
@note: Redis cannot store empty sets so the application has to
check whether the set is empty and if so, not attempt to use that
result
impl<T> ToRedisArgs for BTreeSet<T>
@note: Redis cannot store empty sets so the application has to check whether the set is empty and if so, not attempt to use that result
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<T> ToRedisArgs for Vec<T>where
T: ToRedisArgs,
impl<T> ToRedisArgs for Vec<T>where
T: ToRedisArgs,
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<T, S> ToRedisArgs for HashSet<T, S>
@note: Redis cannot store empty sets so the application has to
check whether the set is empty and if so, not attempt to use that
result
impl<T, S> ToRedisArgs for HashSet<T, S>
@note: Redis cannot store empty sets so the application has to check whether the set is empty and if so, not attempt to use that result
fn write_redis_args<W>(&self, out: &mut W)where
W: RedisWrite + ?Sized,
fn is_single_arg(&self) -> bool
Source§impl<T, V> ToRedisArgs for BTreeMap<T, V>
this flattens BTreeMap into something that goes well with HMSET
@note: Redis cannot store empty sets so the application has to
check whether the set is empty and if so, not attempt to use that
result
impl<T, V> ToRedisArgs for BTreeMap<T, V>
this flattens BTreeMap into something that goes well with HMSET @note: Redis cannot store empty sets so the application has to check whether the set is empty and if so, not attempt to use that result