Struct cglue::ext::AsRefVtbl [−][src]
#[repr(C)]pub struct AsRefVtbl<'cglue_a, CGlueT, CGlueF, CGlueC: 'static, CGlueD: 'static, T> { /* fields omitted */ }
Expand description
CGlue vtable for trait AsRef.
This virtual function table contains ABI-safe interface for the given trait.
Implementations
Trait Implementations
impl<'cglue_a, CGlueT: Opaquable + 'cglue_a, CGlueF: AsRef<T>, CGlueC: Opaquable<OpaqueTarget = CGlueD> + 'static, CGlueD: 'static, T> CGlueBaseVtbl for AsRefVtbl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> where
CGlueC::OpaqueTarget: Opaquable,
impl<'cglue_a, CGlueT: Opaquable + 'cglue_a, CGlueF: AsRef<T>, CGlueC: Opaquable<OpaqueTarget = CGlueD> + 'static, CGlueD: 'static, T> CGlueBaseVtbl for AsRefVtbl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> where
CGlueC::OpaqueTarget: Opaquable,
type OpaqueVtbl = AsRefOpaqueVtbl<'cglue_a, CGlueT::OpaqueTarget, CGlueD, T>
type RetTmp = AsRefRetTmp<T>
Get the opaque vtable for the type.
Default vtable reference creation.
impl<'cglue_a, CGlueT: Deref<Target = CGlueF>, CGlueF: AsRef<T>, CGlueC: 'static + Clone + Send + Sync + Opaquable<OpaqueTarget = CGlueD>, CGlueD: 'static + Clone + Send + Sync + Opaquable<OpaqueTarget = CGlueD>, T> CGlueVtbl<CGlueF, CGlueC> for AsRefVtbl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> where
CGlueT: Opaquable,
CGlueC::OpaqueTarget: Opaquable,
Auto Trait Implementations
impl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> RefUnwindSafe for AsRefVtbl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> where
CGlueC: RefUnwindSafe,
CGlueD: RefUnwindSafe,
CGlueT: RefUnwindSafe,
impl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> Send for AsRefVtbl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> where
CGlueC: Send,
CGlueD: Send,
CGlueT: Send + Sync,
impl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> Sync for AsRefVtbl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> where
CGlueC: Sync,
CGlueD: Sync,
CGlueT: Sync,
impl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> Unpin for AsRefVtbl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> where
CGlueC: Unpin,
CGlueD: Unpin,
CGlueT: Unpin,
impl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> UnwindSafe for AsRefVtbl<'cglue_a, CGlueT, CGlueF, CGlueC, CGlueD, T> where
CGlueC: UnwindSafe,
CGlueD: UnwindSafe,
CGlueT: RefUnwindSafe + UnwindSafe,