Struct perseus::state::TemplateStateWithType
source · pub struct TemplateStateWithType<T: Serialize + DeserializeOwned> { /* private fields */ }
Expand description
A wrapper for template state stored as a Value
. This loses the
underlying type information, but allows for serialization. This is a
necessary compromise, since, without types being first-class citizens in
Rust, full template type management appears presently impossible.
Implementations§
source§impl<T: Serialize + DeserializeOwned + 'static> TemplateStateWithType<T>
impl<T: Serialize + DeserializeOwned + 'static> TemplateStateWithType<T>
sourcepub fn is_empty(&self) -> bool
pub fn is_empty(&self) -> bool
Checks if this state is empty. This not only checks for states created
as Value::Null
, but also those created with ()
explicitly set as
their underlying type.
sourcepub fn from_value(v: Value) -> Self
pub fn from_value(v: Value) -> Self
Creates a new template state from a pre-deserialized Value
.
Note that end users should almost always prefer ::from_str()
, and this
is intended primarily for server integrations.
Trait Implementations§
source§impl<T: Clone + Serialize + DeserializeOwned> Clone for TemplateStateWithType<T>
impl<T: Clone + Serialize + DeserializeOwned> Clone for TemplateStateWithType<T>
source§fn clone(&self) -> TemplateStateWithType<T>
fn clone(&self) -> TemplateStateWithType<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 moreAuto Trait Implementations§
impl<T> RefUnwindSafe for TemplateStateWithType<T>where T: RefUnwindSafe,
impl<T> Send for TemplateStateWithType<T>where T: Send,
impl<T> Sync for TemplateStateWithType<T>where T: Sync,
impl<T> Unpin for TemplateStateWithType<T>where T: Unpin,
impl<T> UnwindSafe for TemplateStateWithType<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