Trait abi_stable::prefix_type::PrefixRefTrait
source · pub unsafe trait PrefixRefTrait: Sized + ImmutableRef<PtrTarget = WithMetadata_<Self::PrefixFields, Self::PrefixFields>> {
type PrefixFields;
// Provided methods
fn from_prefix_ref(this: PrefixRef<Self::PrefixFields>) -> Self { ... }
fn to_prefix_ref(self) -> PrefixRef<Self::PrefixFields> { ... }
}
Expand description
Marker trait for pointers to prefix field structs.
Generally prefix field structs are named with a _Prefix
suffix,
and have all the fields of some other struct up to the
one with a #[sabi(last_prefix_field)]
attribute.
§Safety
Self
must either be PrefixRef<Self::PrefixFields>
,
or a #[repr(transparent)]
wrapper around one.
Required Associated Types§
sourcetype PrefixFields
type PrefixFields
A struct that contains all the fields of some other struct
up to the field annotated with
#[sabi(last_prefix_field)]
inclusive.
Those structs are usually named with a _Prefix
suffix.
Provided Methods§
sourcefn from_prefix_ref(this: PrefixRef<Self::PrefixFields>) -> Self
fn from_prefix_ref(this: PrefixRef<Self::PrefixFields>) -> Self
Converts a PrefixRef
to Self
sourcefn to_prefix_ref(self) -> PrefixRef<Self::PrefixFields>
fn to_prefix_ref(self) -> PrefixRef<Self::PrefixFields>
Converts Self
to a PrefixRef
Object Safety§
This trait is not object safe.