zng::var

Trait VarValue

source
pub trait VarValue:
    Debug
    + Clone
    + PartialEq
    + Any
    + Send
    + Sync { }
Expand description

Represents a type that can be a Var<T> value.

§Trait Alias

This trait is used like a type alias for traits and is already implemented for all types it applies to.

§Implementing

Types need to be Debug + Clone + PartialEq + Send + Sync + Any to auto-implement this trait, if you want to place an external type in a variable and it does not implement all the traits you may need to declare a newtype wrapper, if the external type is Debug + Send + Sync + Any at least you can use the ArcEq<T> wrapper to quickly implement Clone + PartialEq, this is particularly useful for error types in ResponseVar<Result<_, E>>.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T> VarValue for T
where T: Debug + Clone + PartialEq + Any + Send + Sync,