Struct memflow::plugins::os::cglue_intoprocessinstance::IntoProcessInstance
source · #[repr(C)]pub struct IntoProcessInstance<'cglue_a, CGlueInst: 'cglue_a, CGlueCtx: ContextBounds>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,{ /* private fields */ }
Expand description
Trait group potentially implementing :: cglue :: ext :: core :: clone :: Clone < > + MemoryView < > + Process < > + VirtualTranslate < >
traits.
Optional traits are not implemented here, however. There are numerous conversion functions available for safely retrieving a concrete collection of traits.
check_impl_
functions allow to check if the object implements the wanted traits.
into_impl_
functions consume the object and produce a new final structure that
keeps only the required information.
cast_impl_
functions merely check and transform the object into a type that can
be transformed back into IntoProcessInstance
without losing data.
as_ref_
, and as_mut_
functions obtain references to safe objects, but do not
perform any memory transformations either. They are the safest to use, because
there is no risk of accidentally consuming the whole object.
Implementations§
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
pub fn enable_virtualtranslate(self) -> Selfwhere
&'cglue_a VirtualTranslateVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: Default,
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
sourcepub fn new(
instance: CGlueInst,
context: CGlueCtx,
vtbl_virtualtranslate: Option<&'cglue_a VirtualTranslateVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>>
) -> Selfwhere
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
pub fn new(
instance: CGlueInst,
context: CGlueCtx,
vtbl_virtualtranslate: Option<&'cglue_a VirtualTranslateVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>>
) -> Selfwhere
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
Create new instance of IntoProcessInstance.
source§impl<'cglue_a, CGlueT> IntoProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, NoContext>
impl<'cglue_a, CGlueT> IntoProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, NoContext>
sourcepub fn new_boxed(
this: CGlueT,
vtbl_virtualtranslate: Option<&'cglue_a VirtualTranslateVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>>
) -> Selfwhere
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
pub fn new_boxed(
this: CGlueT,
vtbl_virtualtranslate: Option<&'cglue_a VirtualTranslateVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>>
) -> Selfwhere
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
Create new instance of IntoProcessInstance.
instance
will be moved onto heap.
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
sourcepub fn check_impl_virtualtranslate(&self) -> boolwhere
IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + Clone + MemoryView + Process + VirtualTranslate,
pub fn check_impl_virtualtranslate(&self) -> boolwhere
IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + Clone + MemoryView + Process + VirtualTranslate,
Check whether IntoProcessInstance implements :: cglue :: ext :: core :: clone :: Clone < > + MemoryView < > + Process < > + VirtualTranslate < >
.
If this check returns true, it is safe to run consuming conversion operations.
sourcepub fn into_impl_virtualtranslate(
self
) -> Option<impl 'cglue_a + Clone + MemoryView + Process + VirtualTranslate>where
IntoProcessInstanceFinalWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + Clone + MemoryView + Process + VirtualTranslate,
pub fn into_impl_virtualtranslate(
self
) -> Option<impl 'cglue_a + Clone + MemoryView + Process + VirtualTranslate>where
IntoProcessInstanceFinalWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + Clone + MemoryView + Process + VirtualTranslate,
Retrieve a final IntoProcessInstance variant that implements :: cglue :: ext :: core :: clone :: Clone < > + MemoryView < > + Process < > + VirtualTranslate < >
.
This consumes the IntoProcessInstance
, and outputs Some(impl :: cglue :: ext :: core :: clone :: Clone < > + MemoryView < > + Process < > + VirtualTranslate < >)
, if all types are present.
sourcepub fn cast_impl_virtualtranslate(
self
) -> Option<IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>>where
IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + Clone + MemoryView + Process + VirtualTranslate,
pub fn cast_impl_virtualtranslate(
self
) -> Option<IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>>where
IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + Clone + MemoryView + Process + VirtualTranslate,
Retrieve a concrete IntoProcessInstance variant that implements :: cglue :: ext :: core :: clone :: Clone < > + MemoryView < > + Process < > + VirtualTranslate < >
.
This consumes the IntoProcessInstance
, and outputs Some(impl :: cglue :: ext :: core :: clone :: Clone < > + MemoryView < > + Process < > + VirtualTranslate < >)
, if all types are present. It is possible to cast this type back with the From
implementation.
sourcepub fn as_mut_impl_virtualtranslate<'b>(
&'b mut self
) -> Option<&'b mut (impl 'cglue_a + Clone + MemoryView + Process + VirtualTranslate)>where
IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + Clone + MemoryView + Process + VirtualTranslate,
pub fn as_mut_impl_virtualtranslate<'b>(
&'b mut self
) -> Option<&'b mut (impl 'cglue_a + Clone + MemoryView + Process + VirtualTranslate)>where
IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + Clone + MemoryView + Process + VirtualTranslate,
Retrieve mutable reference to a concrete IntoProcessInstance variant that implements :: cglue :: ext :: core :: clone :: Clone < > + MemoryView < > + Process < > + VirtualTranslate < >
.
sourcepub fn as_ref_impl_virtualtranslate<'b>(
&'b self
) -> Option<&'b (impl 'cglue_a + Clone + MemoryView + Process + VirtualTranslate)>where
IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + Clone + MemoryView + Process + VirtualTranslate,
pub fn as_ref_impl_virtualtranslate<'b>(
&'b self
) -> Option<&'b (impl 'cglue_a + Clone + MemoryView + Process + VirtualTranslate)>where
IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + Clone + MemoryView + Process + VirtualTranslate,
Retrieve immutable reference to a concrete IntoProcessInstance variant that implements :: cglue :: ext :: core :: clone :: Clone < > + MemoryView < > + Process < > + VirtualTranslate < >
.
Trait Implementations§
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> Clone for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> Clone for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>
source§impl<'cglue_a, CGlueInst: Deref, CGlueCtx: ContextBounds> From<(CGlueInst, CGlueCtx)> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
Self: From<IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>,
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
impl<'cglue_a, CGlueInst: Deref, CGlueCtx: ContextBounds> From<(CGlueInst, CGlueCtx)> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
Self: From<IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>,
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
source§fn from((instance, context): (CGlueInst, CGlueCtx)) -> Self
fn from((instance, context): (CGlueInst, CGlueCtx)) -> Self
source§impl<'cglue_a, CGlueT, CGlueCtx: ContextBounds> From<(CGlueT, CGlueCtx)> for IntoProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, CGlueCtx>where
Self: From<(CBox<'cglue_a, CGlueT>, CGlueCtx)>,
IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>: CGlueObjBase,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>>: 'cglue_a + Default,
impl<'cglue_a, CGlueT, CGlueCtx: ContextBounds> From<(CGlueT, CGlueCtx)> for IntoProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, CGlueCtx>where
Self: From<(CBox<'cglue_a, CGlueT>, CGlueCtx)>,
IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>: CGlueObjBase,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>>: 'cglue_a + Default,
source§fn from((this, context): (CGlueT, CGlueCtx)) -> Self
fn from((this, context): (CGlueT, CGlueCtx)) -> Self
source§impl<'cglue_a, CGlueInst: Deref> From<CGlueInst> for IntoProcessInstance<'cglue_a, CGlueInst, NoContext>where
Self: From<(CGlueInst, NoContext)>,
IntoProcessInstanceContainer<CGlueInst, NoContext>: CGlueObjBase,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, NoContext>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, NoContext>>: 'cglue_a + Default,
impl<'cglue_a, CGlueInst: Deref> From<CGlueInst> for IntoProcessInstance<'cglue_a, CGlueInst, NoContext>where
Self: From<(CGlueInst, NoContext)>,
IntoProcessInstanceContainer<CGlueInst, NoContext>: CGlueObjBase,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, NoContext>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, NoContext>>: 'cglue_a + Default,
source§impl<'cglue_a, CGlueT> From<CGlueT> for IntoProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, NoContext>where
Self: From<(CBox<'cglue_a, CGlueT>, NoContext)>,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
impl<'cglue_a, CGlueT> From<CGlueT> for IntoProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, NoContext>where
Self: From<(CBox<'cglue_a, CGlueT>, NoContext)>,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
source§impl<'cglue_a, CGlueInst: Deref, CGlueCtx: ContextBounds> From<IntoProcessInstanceContainer<CGlueInst, CGlueCtx>> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst::Target: IntoProcessInstanceVtableFiller<'cglue_a, CGlueInst, CGlueCtx>,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
impl<'cglue_a, CGlueInst: Deref, CGlueCtx: ContextBounds> From<IntoProcessInstanceContainer<CGlueInst, CGlueCtx>> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst::Target: IntoProcessInstanceVtableFiller<'cglue_a, CGlueInst, CGlueCtx>,
&'cglue_a CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
source§fn from(container: IntoProcessInstanceContainer<CGlueInst, CGlueCtx>) -> Self
fn from(container: IntoProcessInstanceContainer<CGlueInst, CGlueCtx>) -> Self
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> From<IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> From<IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
source§fn from(
input: IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>
) -> Self
fn from( input: IntoProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx> ) -> Self
source§impl<CGlueInst: Deref, CGlueCtx: ContextBounds> GetContainer for IntoProcessInstance<'_, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<CGlueInst: Deref, CGlueCtx: ContextBounds> GetContainer for IntoProcessInstance<'_, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
source§impl<'cglue_a, CGlueInst, CGlueCtx> GetStaticEquivalent_ for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst: __StableAbi + 'cglue_a,
CGlueCtx: __StableAbi + ContextBounds,
impl<'cglue_a, CGlueInst, CGlueCtx> GetStaticEquivalent_ for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst: __StableAbi + 'cglue_a,
CGlueCtx: __StableAbi + ContextBounds,
type StaticEquivalent = _static_IntoProcessInstance<'static, <CGlueInst as GetStaticEquivalent_>::StaticEquivalent, <CGlueCtx as GetStaticEquivalent_>::StaticEquivalent>
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> GetVtbl<CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> GetVtbl<CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
fn get_vtbl( &self ) -> &CloneVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> GetVtbl<MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> GetVtbl<MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
fn get_vtbl( &self ) -> &MemoryViewVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> GetVtbl<ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> GetVtbl<ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>> for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
fn get_vtbl( &self ) -> &ProcessVtbl<'cglue_a, IntoProcessInstanceContainer<CGlueInst, CGlueCtx>>
source§impl<'cglue_a, CGlueInst: Opaquable, CGlueCtx: ContextBounds> Opaquable for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
IntoProcessInstanceContainer<CGlueInst::OpaqueTarget, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst: Opaquable, CGlueCtx: ContextBounds> Opaquable for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
IntoProcessInstanceContainer<CGlueInst::OpaqueTarget, CGlueCtx>: CGlueObjBase,
Convert into opaque object.
This is the prerequisite for using underlying trait implementations.
type OpaqueTarget = IntoProcessInstance<'cglue_a, <CGlueInst as Opaquable>::OpaqueTarget, CGlueCtx>
source§fn into_opaque(self) -> Self::OpaqueTarget
fn into_opaque(self) -> Self::OpaqueTarget
source§impl<'cglue_a, CGlueInst, CGlueCtx> StableAbi for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst: __StableAbi + 'cglue_a,
CGlueCtx: __StableAbi + ContextBounds,
impl<'cglue_a, CGlueInst, CGlueCtx> StableAbi for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
IntoProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst: __StableAbi + 'cglue_a,
CGlueCtx: __StableAbi + ContextBounds,
§type IsNonZeroType = False
type IsNonZeroType = False
source§const LAYOUT: &'static TypeLayout = _
const LAYOUT: &'static TypeLayout = _
source§const ABI_CONSTS: AbiConsts = _
const ABI_CONSTS: AbiConsts = _
const
-equivalents of the associated types.Auto Trait Implementations§
impl<'cglue_a, CGlueInst, CGlueCtx> RefUnwindSafe for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
CGlueCtx: RefUnwindSafe,
CGlueInst: RefUnwindSafe,
impl<'cglue_a, CGlueInst, CGlueCtx> Send for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>
impl<'cglue_a, CGlueInst, CGlueCtx> Sync for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
CGlueInst: Sync,
impl<'cglue_a, CGlueInst, CGlueCtx> Unpin for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>
impl<'cglue_a, CGlueInst, CGlueCtx> UnwindSafe for IntoProcessInstance<'cglue_a, CGlueInst, CGlueCtx>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<'a, T> BorrowOwned<'a> for Twhere
T: 'a + Clone,
impl<'a, T> BorrowOwned<'a> for Twhere
T: 'a + Clone,
fn r_borrow( this: &'a <T as BorrowOwned<'a>>::ROwned ) -> <T as BorrowOwned<'a>>::RBorrowed
fn r_to_owned( this: <T as BorrowOwned<'a>>::RBorrowed ) -> <T as BorrowOwned<'a>>::ROwned
fn deref_borrowed(this: &<T as BorrowOwned<'a>>::RBorrowed) -> &T
fn deref_owned(this: &<T as BorrowOwned<'a>>::ROwned) -> &T
fn from_cow_borrow(this: &'a T) -> <T as BorrowOwned<'a>>::RBorrowed
fn from_cow_owned(this: <T as ToOwned>::Owned) -> <T as BorrowOwned<'a>>::ROwned
fn into_cow_borrow(this: <T as BorrowOwned<'a>>::RBorrowed) -> &'a T
fn into_cow_owned(this: <T as BorrowOwned<'a>>::ROwned) -> <T as ToOwned>::Owned
source§impl<T> GetWithMetadata for T
impl<T> GetWithMetadata for T
§type ForSelf = WithMetadata_<T, T>
type ForSelf = WithMetadata_<T, T>
WithMetadata_<Self, Self>
§impl<S> ROExtAcc for S
impl<S> ROExtAcc for S
§fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
offset
. Read more§fn f_get_mut<F>(&mut self, offset: FieldOffset<S, F, Aligned>) -> &mut F
fn f_get_mut<F>(&mut self, offset: FieldOffset<S, F, Aligned>) -> &mut F
offset
. Read more§fn f_get_ptr<F, A>(&self, offset: FieldOffset<S, F, A>) -> *const F
fn f_get_ptr<F, A>(&self, offset: FieldOffset<S, F, A>) -> *const F
offset
. Read more§fn f_get_mut_ptr<F, A>(&mut self, offset: FieldOffset<S, F, A>) -> *mut F
fn f_get_mut_ptr<F, A>(&mut self, offset: FieldOffset<S, F, A>) -> *mut F
offset
. Read more§impl<S> ROExtOps<Aligned> for S
impl<S> ROExtOps<Aligned> for S
§fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Aligned>, value: F) -> F
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Aligned>, value: F) -> F
offset
) with value
,
returning the previous value of the field. Read more§fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Aligned>) -> Fwhere
F: Copy,
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Aligned>) -> Fwhere
F: Copy,
§impl<S> ROExtOps<Unaligned> for S
impl<S> ROExtOps<Unaligned> for S
§fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, value: F) -> F
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, value: F) -> F
offset
) with value
,
returning the previous value of the field. Read more§fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Unaligned>) -> Fwhere
F: Copy,
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Unaligned>) -> Fwhere
F: Copy,
§impl<T> SelfOps for Twhere
T: ?Sized,
impl<T> SelfOps for Twhere
T: ?Sized,
§fn piped<F, U>(self, f: F) -> U
fn piped<F, U>(self, f: F) -> U
§fn piped_ref<'a, F, U>(&'a self, f: F) -> U
fn piped_ref<'a, F, U>(&'a self, f: F) -> U
piped
except that the function takes &Self
Useful for functions that take &Self
instead of Self
. Read more§fn piped_mut<'a, F, U>(&'a mut self, f: F) -> Uwhere
F: FnOnce(&'a mut Self) -> U,
fn piped_mut<'a, F, U>(&'a mut self, f: F) -> Uwhere
F: FnOnce(&'a mut Self) -> U,
piped
, except that the function takes &mut Self
.
Useful for functions that take &mut Self
instead of Self
.§fn mutated<F>(self, f: F) -> Self
fn mutated<F>(self, f: F) -> Self
§fn observe<F>(self, f: F) -> Self
fn observe<F>(self, f: F) -> Self
§fn as_ref_<T>(&self) -> &T
fn as_ref_<T>(&self) -> &T
AsRef
,
using the turbofish .as_ref_::<_>()
syntax. Read more