Trait redis::FromRedisValue
source · pub trait FromRedisValue: Sized {
// Required method
fn from_redis_value(v: &Value) -> RedisResult<Self>;
// Provided methods
fn from_redis_values(items: &[Value]) -> RedisResult<Vec<Self>> { ... }
fn from_byte_vec(_vec: &[u8]) -> Option<Vec<Self>> { ... }
}
Expand description
This trait is used to convert a redis value into a more appropriate
type. While a redis Value
can represent any response that comes
back from the redis server, usually you want to map this into something
that works better in rust. For instance you might want to convert the
return value into a String
or an integer.
This trait is well supported throughout the library and you can implement it for your own types if you want.
In addition to what you can see from the docs, this is also implemented
for tuples up to size 12 and for Vec<u8>
.
Required Methods§
sourcefn from_redis_value(v: &Value) -> RedisResult<Self>
fn from_redis_value(v: &Value) -> RedisResult<Self>
Given a redis Value
this attempts to convert it into the given
destination type. If that fails because it’s not compatible an
appropriate error is generated.
Provided Methods§
sourcefn from_redis_values(items: &[Value]) -> RedisResult<Vec<Self>>
fn from_redis_values(items: &[Value]) -> RedisResult<Vec<Self>>
Similar to from_redis_value
but constructs a vector of objects
from another vector of values. This primarily exists internally
to customize the behavior for vectors of tuples.
sourcefn from_byte_vec(_vec: &[u8]) -> Option<Vec<Self>>
fn from_byte_vec(_vec: &[u8]) -> Option<Vec<Self>>
Convert bytes to a single element vector.
Implementations on Foreign Types§
source§impl<T: FromRedisValue> FromRedisValue for Vec<T>
impl<T: FromRedisValue> FromRedisValue for Vec<T>
fn from_redis_value(v: &Value) -> RedisResult<Vec<T>>
source§impl FromRedisValue for f32
impl FromRedisValue for f32
fn from_redis_value(v: &Value) -> RedisResult<f32>
source§impl FromRedisValue for i128
impl FromRedisValue for i128
fn from_redis_value(v: &Value) -> RedisResult<i128>
source§impl<K: FromRedisValue + Eq + Hash, V: FromRedisValue, S: BuildHasher + Default> FromRedisValue for HashMap<K, V, S>
impl<K: FromRedisValue + Eq + Hash, V: FromRedisValue, S: BuildHasher + Default> FromRedisValue for HashMap<K, V, S>
fn from_redis_value(v: &Value) -> RedisResult<HashMap<K, V, S>>
source§impl<T: FromRedisValue + Eq + Hash, S: BuildHasher + Default> FromRedisValue for AHashSet<T, S>
impl<T: FromRedisValue + Eq + Hash, S: BuildHasher + Default> FromRedisValue for AHashSet<T, S>
fn from_redis_value(v: &Value) -> RedisResult<AHashSet<T, S>>
source§impl FromRedisValue for u128
impl FromRedisValue for u128
fn from_redis_value(v: &Value) -> RedisResult<u128>
source§impl FromRedisValue for u16
impl FromRedisValue for u16
fn from_redis_value(v: &Value) -> RedisResult<u16>
source§impl<K, V: FromRedisValue> FromRedisValue for BTreeMap<K, V>where
K: Ord + FromRedisValue + Eq + Hash,
impl<K, V: FromRedisValue> FromRedisValue for BTreeMap<K, V>where K: Ord + FromRedisValue + Eq + Hash,
fn from_redis_value(v: &Value) -> RedisResult<BTreeMap<K, V>>
source§impl FromRedisValue for bool
impl FromRedisValue for bool
fn from_redis_value(v: &Value) -> RedisResult<bool>
source§impl FromRedisValue for u64
impl FromRedisValue for u64
fn from_redis_value(v: &Value) -> RedisResult<u64>
source§impl FromRedisValue for usize
impl FromRedisValue for usize
fn from_redis_value(v: &Value) -> RedisResult<usize>
source§impl FromRedisValue for u8
impl FromRedisValue for u8
fn from_redis_value(v: &Value) -> RedisResult<u8>
fn from_byte_vec(vec: &[u8]) -> Option<Vec<u8>>
source§impl FromRedisValue for f64
impl FromRedisValue for f64
fn from_redis_value(v: &Value) -> RedisResult<f64>
source§impl FromRedisValue for i16
impl FromRedisValue for i16
fn from_redis_value(v: &Value) -> RedisResult<i16>
source§impl<T: FromRedisValue> FromRedisValue for Option<T>
impl<T: FromRedisValue> FromRedisValue for Option<T>
fn from_redis_value(v: &Value) -> RedisResult<Option<T>>
source§impl FromRedisValue for u32
impl FromRedisValue for u32
fn from_redis_value(v: &Value) -> RedisResult<u32>
source§impl FromRedisValue for Bytes
impl FromRedisValue for Bytes
fn from_redis_value(v: &Value) -> RedisResult<Self>
source§impl FromRedisValue for isize
impl FromRedisValue for isize
fn from_redis_value(v: &Value) -> RedisResult<isize>
source§impl FromRedisValue for ()
impl FromRedisValue for ()
fn from_redis_value(_v: &Value) -> RedisResult<()>
source§impl FromRedisValue for i8
impl FromRedisValue for i8
fn from_redis_value(v: &Value) -> RedisResult<i8>
source§impl FromRedisValue for CString
impl FromRedisValue for CString
fn from_redis_value(v: &Value) -> RedisResult<CString>
source§impl FromRedisValue for i64
impl FromRedisValue for i64
fn from_redis_value(v: &Value) -> RedisResult<i64>
source§impl FromRedisValue for String
impl FromRedisValue for String
fn from_redis_value(v: &Value) -> RedisResult<String>
source§impl FromRedisValue for i32
impl FromRedisValue for i32
fn from_redis_value(v: &Value) -> RedisResult<i32>
source§impl<K: FromRedisValue + Eq + Hash, V: FromRedisValue, S: BuildHasher + Default> FromRedisValue for AHashMap<K, V, S>
impl<K: FromRedisValue + Eq + Hash, V: FromRedisValue, S: BuildHasher + Default> FromRedisValue for AHashMap<K, V, S>
fn from_redis_value(v: &Value) -> RedisResult<AHashMap<K, V, S>>
source§impl<T: FromRedisValue + Eq + Hash, S: BuildHasher + Default> FromRedisValue for HashSet<T, S>
impl<T: FromRedisValue + Eq + Hash, S: BuildHasher + Default> FromRedisValue for HashSet<T, S>
fn from_redis_value(v: &Value) -> RedisResult<HashSet<T, S>>
source§impl<T> FromRedisValue for BTreeSet<T>where
T: Ord + FromRedisValue + Eq + Hash,
impl<T> FromRedisValue for BTreeSet<T>where T: Ord + FromRedisValue + Eq + Hash,
fn from_redis_value(v: &Value) -> RedisResult<BTreeSet<T>>
Implementors§
impl FromRedisValue for Value
impl FromRedisValue for StreamPendingReply
streams
only.impl FromRedisValue for AclInfo
acl
only.impl FromRedisValue for RadiusSearchResult
geospatial
only.impl FromRedisValue for StreamClaimReply
streams
only.impl FromRedisValue for StreamInfoConsumersReply
streams
only.impl FromRedisValue for StreamInfoGroupsReply
streams
only.impl FromRedisValue for StreamInfoStreamReply
streams
only.impl FromRedisValue for StreamPendingCountReply
streams
only.impl FromRedisValue for StreamRangeReply
streams
only.impl FromRedisValue for StreamReadReply
streams
only.impl FromRedisValue for InfoDict
impl<T: FromRedisValue> FromRedisValue for Coord<T>
geospatial
only.