Trait abi_stable::ImplType[][src]

pub trait ImplType: Sized {
    type Interface: InterfaceType;

    const INFO: &'static TypeInfo;
}
Expand description

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

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

Associated Constants

Information about the type for debugging purposes.

You can use the impl_get_type_info macro to initialize this.

Implementors