TypedMetadata

Trait TypedMetadata 

Source
pub trait TypedMetadata {
    // Required methods
    fn from_meta(meta: Meta) -> Self;
    fn into_meta<Data: 'static>(self) -> Meta;
}
Expand description

Trait for converting between fat pointer metadata and type-erased Meta.

Implemented for () (for concrete types) and DynMetadata<T> (for trait objects).

Required Methods§

Source

fn from_meta(meta: Meta) -> Self

Converts Meta into the corresponding metadata type.

Source

fn into_meta<Data: 'static>(self) -> Meta

Converts metadata type into a type-erased Meta.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl TypedMetadata for ()

Source§

fn from_meta(meta: Meta) -> Self

Source§

fn into_meta<Data: 'static>(self) -> Meta

Source§

impl<T> TypedMetadata for DynMetadata<T>
where T: Pointee<Metadata = Self> + ?Sized + 'static,

Source§

fn from_meta(meta: Meta) -> Self

Source§

fn into_meta<Data: 'static>(self) -> Meta

Implementors§