Trait any_vec::any_value::AnyValue

source ·
pub trait AnyValue: AnyValueTypeless {
    // Required method
    fn value_typeid(&self) -> TypeId;

    // Provided methods
    fn downcast_ref<T: 'static>(&self) -> Option<&T> { ... }
    fn downcast<T: 'static>(self) -> Option<T>
       where Self: Sized { ... }
}
Expand description

Type erased value interface.

Know it’s type and size, possibly compile-time.

Required Methods§

Provided Methods§

source

fn downcast_ref<T: 'static>(&self) -> Option<&T>

source

fn downcast<T: 'static>(self) -> Option<T>
where Self: Sized,

Object Safety§

This trait is not object safe.

Implementors§

source§

impl AnyValue for AnyValueRaw

source§

impl<'a, AnyVecPtr: IAnyVecRawPtr> AnyValue for ElementPointer<'a, AnyVecPtr>

source§

impl<'a, T: AnyValueCloneable + AnyValue> AnyValue for LazyClone<'a, T>

source§

impl<Op: Operation> AnyValue for TempValue<Op>

source§

impl<T: 'static> AnyValue for AnyValueWrapper<T>