Struct memflow::plugins::os::cglue_processinstance::ProcessInstance
source · #[repr(C)]pub struct ProcessInstance<'cglue_a, CGlueInst: 'cglue_a, CGlueCtx: ContextBounds>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,{ /* private fields */ }
Expand description
Trait group potentially implementing 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 ProcessInstance
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> ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
pub fn enable_virtualtranslate(self) -> Selfwhere
&'cglue_a VirtualTranslateVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: Default,
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
sourcepub fn new(
instance: CGlueInst,
context: CGlueCtx,
vtbl_virtualtranslate: Option<&'cglue_a VirtualTranslateVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>>
) -> Selfwhere
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
pub fn new(
instance: CGlueInst,
context: CGlueCtx,
vtbl_virtualtranslate: Option<&'cglue_a VirtualTranslateVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>>
) -> Selfwhere
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
Create new instance of ProcessInstance.
source§impl<'cglue_a, CGlueT> ProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, NoContext>
impl<'cglue_a, CGlueT> ProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, NoContext>
sourcepub fn new_boxed(
this: CGlueT,
vtbl_virtualtranslate: Option<&'cglue_a VirtualTranslateVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>>
) -> Selfwhere
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
pub fn new_boxed(
this: CGlueT,
vtbl_virtualtranslate: Option<&'cglue_a VirtualTranslateVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>>
) -> Selfwhere
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
Create new instance of ProcessInstance.
instance
will be moved onto heap.
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
sourcepub fn check_impl_virtualtranslate(&self) -> boolwhere
ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + MemoryView + Process + VirtualTranslate,
pub fn check_impl_virtualtranslate(&self) -> boolwhere
ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + MemoryView + Process + VirtualTranslate,
Check whether ProcessInstance implements 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 + MemoryView + Process + VirtualTranslate>where
ProcessInstanceFinalWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + MemoryView + Process + VirtualTranslate,
pub fn into_impl_virtualtranslate(
self
) -> Option<impl 'cglue_a + MemoryView + Process + VirtualTranslate>where
ProcessInstanceFinalWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + MemoryView + Process + VirtualTranslate,
Retrieve a final ProcessInstance variant that implements MemoryView < > + Process < > + VirtualTranslate < >
.
This consumes the ProcessInstance
, and outputs Some(impl MemoryView < > + Process < > + VirtualTranslate < >)
, if all types are present.
sourcepub fn cast_impl_virtualtranslate(
self
) -> Option<ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>>where
ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + MemoryView + Process + VirtualTranslate,
pub fn cast_impl_virtualtranslate(
self
) -> Option<ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>>where
ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + MemoryView + Process + VirtualTranslate,
Retrieve a concrete ProcessInstance variant that implements MemoryView < > + Process < > + VirtualTranslate < >
.
This consumes the ProcessInstance
, and outputs Some(impl 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 + MemoryView + Process + VirtualTranslate)>where
ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + MemoryView + Process + VirtualTranslate,
pub fn as_mut_impl_virtualtranslate<'b>(
&'b mut self
) -> Option<&'b mut (impl 'cglue_a + MemoryView + Process + VirtualTranslate)>where
ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + MemoryView + Process + VirtualTranslate,
Retrieve mutable reference to a concrete ProcessInstance variant that implements MemoryView < > + Process < > + VirtualTranslate < >
.
sourcepub fn as_ref_impl_virtualtranslate<'b>(
&'b self
) -> Option<&'b (impl 'cglue_a + MemoryView + Process + VirtualTranslate)>where
ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + MemoryView + Process + VirtualTranslate,
pub fn as_ref_impl_virtualtranslate<'b>(
&'b self
) -> Option<&'b (impl 'cglue_a + MemoryView + Process + VirtualTranslate)>where
ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>: 'cglue_a + MemoryView + Process + VirtualTranslate,
Retrieve immutable reference to a concrete ProcessInstance variant that implements MemoryView < > + Process < > + VirtualTranslate < >
.
Trait Implementations§
source§impl<'cglue_a, CGlueInst: Deref, CGlueCtx: ContextBounds> From<(CGlueInst, CGlueCtx)> for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
Self: From<ProcessInstanceContainer<CGlueInst, CGlueCtx>>,
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
impl<'cglue_a, CGlueInst: Deref, CGlueCtx: ContextBounds> From<(CGlueInst, CGlueCtx)> for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
Self: From<ProcessInstanceContainer<CGlueInst, CGlueCtx>>,
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<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 ProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, CGlueCtx>where
Self: From<(CBox<'cglue_a, CGlueT>, CGlueCtx)>,
ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>: CGlueObjBase,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>>: 'cglue_a + Default,
impl<'cglue_a, CGlueT, CGlueCtx: ContextBounds> From<(CGlueT, CGlueCtx)> for ProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, CGlueCtx>where
Self: From<(CBox<'cglue_a, CGlueT>, CGlueCtx)>,
ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>: CGlueObjBase,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<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 ProcessInstance<'cglue_a, CGlueInst, NoContext>where
Self: From<(CGlueInst, NoContext)>,
ProcessInstanceContainer<CGlueInst, NoContext>: CGlueObjBase,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, NoContext>>: 'cglue_a + Default,
impl<'cglue_a, CGlueInst: Deref> From<CGlueInst> for ProcessInstance<'cglue_a, CGlueInst, NoContext>where
Self: From<(CGlueInst, NoContext)>,
ProcessInstanceContainer<CGlueInst, NoContext>: CGlueObjBase,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, NoContext>>: 'cglue_a + Default,
source§impl<'cglue_a, CGlueT> From<CGlueT> for ProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, NoContext>where
Self: From<(CBox<'cglue_a, CGlueT>, NoContext)>,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
impl<'cglue_a, CGlueT> From<CGlueT> for ProcessInstance<'cglue_a, CBox<'cglue_a, CGlueT>, NoContext>where
Self: From<(CBox<'cglue_a, CGlueT>, NoContext)>,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CBox<'cglue_a, CGlueT>, NoContext>>: 'cglue_a + Default,
source§impl<'cglue_a, CGlueInst: Deref, CGlueCtx: ContextBounds> From<ProcessInstanceContainer<CGlueInst, CGlueCtx>> for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst::Target: ProcessInstanceVtableFiller<'cglue_a, CGlueInst, CGlueCtx>,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
impl<'cglue_a, CGlueInst: Deref, CGlueCtx: ContextBounds> From<ProcessInstanceContainer<CGlueInst, CGlueCtx>> for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst::Target: ProcessInstanceVtableFiller<'cglue_a, CGlueInst, CGlueCtx>,
&'cglue_a MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
&'cglue_a ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>: 'cglue_a + Default,
source§fn from(container: ProcessInstanceContainer<CGlueInst, CGlueCtx>) -> Self
fn from(container: ProcessInstanceContainer<CGlueInst, CGlueCtx>) -> Self
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> From<ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>> for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> From<ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>> for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
source§fn from(
input: ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx>
) -> Self
fn from( input: ProcessInstanceWithVirtualTranslate<'cglue_a, CGlueInst, CGlueCtx> ) -> Self
source§impl<CGlueInst: Deref, CGlueCtx: ContextBounds> GetContainer for ProcessInstance<'_, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<CGlueInst: Deref, CGlueCtx: ContextBounds> GetContainer for ProcessInstance<'_, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
source§impl<'cglue_a, CGlueInst, CGlueCtx> GetStaticEquivalent_ for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst: __StableAbi + 'cglue_a,
CGlueCtx: __StableAbi + ContextBounds,
impl<'cglue_a, CGlueInst, CGlueCtx> GetStaticEquivalent_ for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst: __StableAbi + 'cglue_a,
CGlueCtx: __StableAbi + ContextBounds,
type StaticEquivalent = _static_ProcessInstance<'static, <CGlueInst as GetStaticEquivalent_>::StaticEquivalent, <CGlueCtx as GetStaticEquivalent_>::StaticEquivalent>
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> GetVtbl<MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>> for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> GetVtbl<MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>> for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
fn get_vtbl( &self ) -> &MemoryViewVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>
source§impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> GetVtbl<ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>> for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst, CGlueCtx: ContextBounds> GetVtbl<ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>> for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
fn get_vtbl( &self ) -> &ProcessVtbl<'cglue_a, ProcessInstanceContainer<CGlueInst, CGlueCtx>>
source§impl<'cglue_a, CGlueInst: Opaquable, CGlueCtx: ContextBounds> Opaquable for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
ProcessInstanceContainer<CGlueInst::OpaqueTarget, CGlueCtx>: CGlueObjBase,
impl<'cglue_a, CGlueInst: Opaquable, CGlueCtx: ContextBounds> Opaquable for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
ProcessInstanceContainer<CGlueInst::OpaqueTarget, CGlueCtx>: CGlueObjBase,
Convert into opaque object.
This is the prerequisite for using underlying trait implementations.
type OpaqueTarget = ProcessInstance<'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 ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<CGlueInst, CGlueCtx>: CGlueObjBase,
CGlueInst: __StableAbi + 'cglue_a,
CGlueCtx: __StableAbi + ContextBounds,
impl<'cglue_a, CGlueInst, CGlueCtx> StableAbi for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
ProcessInstanceContainer<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 ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
CGlueCtx: RefUnwindSafe,
CGlueInst: RefUnwindSafe,
impl<'cglue_a, CGlueInst, CGlueCtx> Send for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>
impl<'cglue_a, CGlueInst, CGlueCtx> Sync for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>where
CGlueInst: Sync,
impl<'cglue_a, CGlueInst, CGlueCtx> Unpin for ProcessInstance<'cglue_a, CGlueInst, CGlueCtx>
impl<'cglue_a, CGlueInst, CGlueCtx> UnwindSafe for ProcessInstance<'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<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