Enum quick_kv::types::TypedValue
source · pub enum TypedValue<T> {
Vec(Vec<T>),
Hash(HashMap<String, T>),
Option(Option<T>),
}Expand description
Represents any type of data that can be stored in the database.
The only different between this and Value is that this is a generic type, and Value is not.
This type also only supports Vec<T>, HashMap<String, T>, and Option<T>.
use quick_kv::prelude::*;
let mut list_of_people = vec!["Ray".to_string(), "Noa".to_string(), "Kian".to_string()];
let typed_value = TypedValue::<String>::Vec(list_of_people.clone());You can also convert a TypedValue into a Vec<T>, HashMap<String, T>, or Option<T>.
use quick_kv::prelude::*;
let mut list_of_people = vec!["Ray".to_string(), "Noa".to_string(), "Kian".to_string()];
let typed_value_as_a_vec = TypedValue::<String>::Vec(list_of_people.clone()).into_vec();These are not really practical examples, but the TypedValue enum is useful when working with the normal client and when needing to ensure type safety on data operations.
Variants§
Trait Implementations§
source§impl<T: Clone> Clone for TypedValue<T>
impl<T: Clone> Clone for TypedValue<T>
source§fn clone(&self) -> TypedValue<T>
fn clone(&self) -> TypedValue<T>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl<T: Debug> Debug for TypedValue<T>
impl<T: Debug> Debug for TypedValue<T>
source§impl<'de, T> Deserialize<'de> for TypedValue<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for TypedValue<T>where
T: Deserialize<'de>,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl<T> IntoTypedValue<T> for TypedValue<T>
impl<T> IntoTypedValue<T> for TypedValue<T>
source§impl<T: PartialEq> PartialEq for TypedValue<T>
impl<T: PartialEq> PartialEq for TypedValue<T>
source§fn eq(&self, other: &TypedValue<T>) -> bool
fn eq(&self, other: &TypedValue<T>) -> bool
This method tests for
self and other values to be equal, and is used
by ==.source§impl<T> Serialize for TypedValue<T>where
T: Serialize,
impl<T> Serialize for TypedValue<T>where
T: Serialize,
impl<T> StructuralPartialEq for TypedValue<T>
Auto Trait Implementations§
impl<T> RefUnwindSafe for TypedValue<T>where
T: RefUnwindSafe,
impl<T> Send for TypedValue<T>where
T: Send,
impl<T> Sync for TypedValue<T>where
T: Sync,
impl<T> Unpin for TypedValue<T>where
T: Unpin,
impl<T> UnwindSafe for TypedValue<T>where
T: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more