[][src]Trait abi_stable::ImplType

pub trait ImplType: Sized {
    type Interface: InterfaceType;

    pub const INFO: &'static TypeInfo;
}

An implementation type, with an associated interface type which describes the traits that must be implemented when constructing a DynTrait from Self, using the DynTrait::from_value and DynTrait::from_ptr constructors, so as to pass an opaque type across ffi.

To initialize INFO you can use the impl_get_type_info macro.

Uniqueness

Users of this trait can't enforce that they are the only ones with the same interface, therefore they should handle the Err(..)s returned from the DynTrait::*_unerased functions whenever they convert back and forth between Self and Self::Interface.

Associated Types

type Interface: InterfaceType[src]

Describes the traits that must be implemented when constructing a DynTrait from Self.

Loading content...

Associated Constants

pub const INFO: &'static TypeInfo[src]

Information about the type for debugging purposes.

You can use the impl_get_type_info macro to initialize this.

Loading content...

Implementors

Loading content...