Trait abi_stable::erased_types::MakeVTable

source ·
pub trait MakeVTable<'borr, T, OrigPtr, CanDowncast> {
    type Helper0;
    type Helper1;

    const HELPER0: Self::Helper0;
    const HELPER1: Self::Helper1;
    const VTABLE_REF: Self;
}
Expand description

Csontructs a vtable.

This is only exposed to allow users to construct DynTraits with a generic I type parameter.

Required Associated Types§

Required Associated Constants§

source

const HELPER0: Self::Helper0

source

const HELPER1: Self::Helper1

source

const VTABLE_REF: Self

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<'borr, T, ErasedPtr, OrigP, I, CanDowncast> MakeVTable<'borr, T, OrigP, CanDowncast> for VTable_Ref<'borr, ErasedPtr, I>
where I: InterfaceType, CanDowncast: GetUTID<T>, I::Send: MarkerTrait<'borr, T, ErasedPtr, OrigP>, I::Sync: MarkerTrait<'borr, T, ErasedPtr, OrigP>, I::Unpin: MarkerTrait<'borr, T, ErasedPtr, OrigP>, I::Error: MarkerTrait<'borr, T, ErasedPtr, OrigP>, I::Clone: VTableFieldValue<'borr, Option<unsafe extern "C" fn(_: RRef<'_, ErasedPtr>) -> ErasedPtr>, T, ErasedPtr, OrigP, I>, I::Default: VTableFieldValue<'borr, Option<unsafe extern "C" fn() -> ErasedPtr>, T, ErasedPtr, OrigP, I>, I::Display: VTableFieldValue<'borr, Option<unsafe extern "C" fn(_: RRef<'_, ErasedObject>, _: FormattingMode, _: &mut RString) -> RResult<(), ()>>, T, ErasedPtr, OrigP, I>, I::Debug: VTableFieldValue<'borr, Option<unsafe extern "C" fn(_: RRef<'_, ErasedObject>, _: FormattingMode, _: &mut RString) -> RResult<(), ()>>, T, ErasedPtr, OrigP, I>, I::Serialize: VTableFieldValue<'borr, Option<unsafe extern "C" fn(_: RRef<'_, ErasedObject>) -> RResult<ErasedObject, RBoxError>>, T, ErasedPtr, OrigP, I>, I::PartialEq: VTableFieldValue<'borr, Option<unsafe extern "C" fn(_: RRef<'_, ErasedObject>, _: RRef<'_, ErasedObject>) -> bool>, T, ErasedPtr, OrigP, I>, I::Ord: VTableFieldValue<'borr, Option<unsafe extern "C" fn(_: RRef<'_, ErasedObject>, _: RRef<'_, ErasedObject>) -> RCmpOrdering>, T, ErasedPtr, OrigP, I>, I::PartialOrd: VTableFieldValue<'borr, Option<unsafe extern "C" fn(_: RRef<'_, ErasedObject>, _: RRef<'_, ErasedObject>) -> ROption<RCmpOrdering>>, T, ErasedPtr, OrigP, I>, I::Hash: VTableFieldValue<'borr, Option<unsafe extern "C" fn(_: RRef<'_, ErasedObject>, _: HasherObject<'_>)>, T, ErasedPtr, OrigP, I>, I::Iterator: VTableFieldValue<'borr, ROption<IteratorFns<()>>, T, ErasedPtr, OrigP, I>, I::DoubleEndedIterator: VTableFieldValue<'borr, ROption<DoubleEndedIteratorFns<()>>, T, ErasedPtr, OrigP, I>, I::FmtWrite: VTableFieldValue<'borr, Option<unsafe extern "C" fn(_: RMut<'_, ErasedObject>, _: RStr<'_>) -> RResult<(), ()>>, T, ErasedPtr, OrigP, I>, I::IoWrite: VTableFieldValue<'borr, ROption<IoWriteFns>, T, ErasedPtr, OrigP, I>, I::IoRead: VTableFieldValue<'borr, ROption<IoReadFns>, T, ErasedPtr, OrigP, I>, I::IoBufRead: VTableFieldValue<'borr, ROption<IoBufReadFns>, T, ErasedPtr, OrigP, I>, I::IoSeek: VTableFieldValue<'borr, Option<unsafe extern "C" fn(_: RMut<'_, ErasedObject>, _: RSeekFrom) -> RResult<u64, RIoError>>, T, ErasedPtr, OrigP, I>,

source§

const VTABLE_REF: Self = _