#[repr(transparent)]pub struct ExtraChecks_TO<_ErasedPtr>where
_ErasedPtr: __GetPointerKind,{
pub obj: ExtraChecks_Backend<_ErasedPtr>,
/* private fields */
}
Expand description
The trait object for ExtraChecks.
There are extra methods on the obj
field.
Fields§
§obj: ExtraChecks_Backend<_ErasedPtr>
Implementations§
source§impl<_ErasedPtr> ExtraChecks_TO<_ErasedPtr>
impl<_ErasedPtr> ExtraChecks_TO<_ErasedPtr>
sourcepub fn from_ptr<_OrigPtr, Downcasting>(
ptr: _OrigPtr,
can_it_downcast: Downcasting,
) -> Selfwhere
_OrigPtr: CanTransmuteElement<(), TransmutedPtr = _ErasedPtr>,
_OrigPtr::PtrTarget: ExtraChecks + Sized,
ExtraChecks_Interface: GetRObjectVTable<Downcasting, _OrigPtr::PtrTarget, _ErasedPtr, _OrigPtr>,
pub fn from_ptr<_OrigPtr, Downcasting>(
ptr: _OrigPtr,
can_it_downcast: Downcasting,
) -> Selfwhere
_OrigPtr: CanTransmuteElement<(), TransmutedPtr = _ErasedPtr>,
_OrigPtr::PtrTarget: ExtraChecks + Sized,
ExtraChecks_Interface: GetRObjectVTable<Downcasting, _OrigPtr::PtrTarget, _ErasedPtr, _OrigPtr>,
Constructs this trait object from a pointer to a type that implements ExtraChecks
.
This method is automatically generated,
for more documentation you can look at
abi_stable::docs::sabi_trait_inherent
can_it_downcast
describes whether the trait object can be converted back into the original type or not.
Its possible values are TD_CanDowncast
and TD_Opaque
.
sourcepub fn from_sabi(obj: ExtraChecks_Backend<_ErasedPtr>) -> Self
pub fn from_sabi(obj: ExtraChecks_Backend<_ErasedPtr>) -> Self
Constructs this trait object from its underlying implementation.
This method is automatically generated,
for more documentation you can look at
abi_stable::docs::sabi_trait_inherent
sourcepub fn sabi_reborrow<'_sub>(&'_sub self) -> ExtraChecks_TO<RRef<'_sub, ()>>
pub fn sabi_reborrow<'_sub>(&'_sub self) -> ExtraChecks_TO<RRef<'_sub, ()>>
Reborrows this trait object to a reference-based trait object.
This method is automatically generated,
for more documentation you can look at
abi_stable::docs::sabi_trait_inherent
sourcepub fn sabi_reborrow_mut<'_sub>(
&'_sub mut self,
) -> ExtraChecks_TO<RMut<'_sub, ()>>
pub fn sabi_reborrow_mut<'_sub>( &'_sub mut self, ) -> ExtraChecks_TO<RMut<'_sub, ()>>
Reborrows this trait object to a mutable-reference-based trait object.
This method is automatically generated,
for more documentation you can look at
abi_stable::docs::sabi_trait_inherent
source§impl ExtraChecks_TO<RBox<()>>
impl ExtraChecks_TO<RBox<()>>
sourcepub fn from_value<_Self, Downcasting>(
ptr: _Self,
can_it_downcast: Downcasting,
) -> Selfwhere
_Self: ExtraChecks,
ExtraChecks_Interface: GetRObjectVTable<Downcasting, _Self, RBox<()>, RBox<_Self>>,
pub fn from_value<_Self, Downcasting>(
ptr: _Self,
can_it_downcast: Downcasting,
) -> Selfwhere
_Self: ExtraChecks,
ExtraChecks_Interface: GetRObjectVTable<Downcasting, _Self, RBox<()>, RBox<_Self>>,
Constructs this trait from a type that implements ExtraChecks
.
This method is automatically generated,
for more documentation you can look at
abi_stable::docs::sabi_trait_inherent
can_it_downcast
describes whether the trait object can be converted back into the original type or not.
Its possible values are TD_CanDowncast
and TD_Opaque
.
source§impl<'_sub> ExtraChecks_TO<RRef<'_sub, ()>>
impl<'_sub> ExtraChecks_TO<RRef<'_sub, ()>>
sourcepub const fn from_const<_Self, Downcasting>(
ptr: &'_sub _Self,
can_it_downcast: Downcasting,
) -> Selfwhere
_Self: ExtraChecks + 'static,
ExtraChecks_Interface: GetRObjectVTable<Downcasting, _Self, RRef<'_sub, ()>, &'_sub _Self>,
pub const fn from_const<_Self, Downcasting>(
ptr: &'_sub _Self,
can_it_downcast: Downcasting,
) -> Selfwhere
_Self: ExtraChecks + 'static,
ExtraChecks_Interface: GetRObjectVTable<Downcasting, _Self, RRef<'_sub, ()>, &'_sub _Self>,
Constructs this trait from a constant of a type that implements ExtraChecks
.
This method is automatically generated,
for more documentation you can look at
abi_stable::docs::sabi_trait_inherent
You can construct the vtable_for
parameter with [ExtraChecks_MV::VTABLE
].
can_it_downcast
describes whether the trait object can be converted back into the original type or not.
Its possible values are TD_CanDowncast
and TD_Opaque
.
source§impl<_ErasedPtr> ExtraChecks_TO<_ErasedPtr>
impl<_ErasedPtr> ExtraChecks_TO<_ErasedPtr>
sourcepub fn type_layout(&self) -> &'static TypeLayout
pub fn type_layout(&self) -> &'static TypeLayout
This is the inherent equivalent of the trait method of the same name
sourcepub fn check_compatibility(
&self,
param_0: &'static TypeLayout,
param_1: &'static TypeLayout,
param_2: TypeCheckerMut<'_>,
) -> RResult<(), ExtraChecksError>
pub fn check_compatibility( &self, param_0: &'static TypeLayout, param_1: &'static TypeLayout, param_2: TypeCheckerMut<'_>, ) -> RResult<(), ExtraChecksError>
This is the inherent equivalent of the trait method of the same name
sourcepub fn nested_type_layouts<'_self>(
&'_self self,
) -> RCowSlice<'_self, &'static TypeLayout>
pub fn nested_type_layouts<'_self>( &'_self self, ) -> RCowSlice<'_self, &'static TypeLayout>
This is the inherent equivalent of the trait method of the same name
sourcepub fn combine(
&self,
param_0: ExtraChecksRef<'_>,
param_1: TypeCheckerMut<'_>,
) -> RResult<ROption<ExtraChecksBox>, ExtraChecksError>
pub fn combine( &self, param_0: ExtraChecksRef<'_>, param_1: TypeCheckerMut<'_>, ) -> RResult<ROption<ExtraChecksBox>, ExtraChecksError>
This is the inherent equivalent of the trait method of the same name
Trait Implementations§
source§impl<_ErasedPtr> Clone for ExtraChecks_TO<_ErasedPtr>
impl<_ErasedPtr> Clone for ExtraChecks_TO<_ErasedPtr>
source§impl<_ErasedPtr> Debug for ExtraChecks_TO<_ErasedPtr>
impl<_ErasedPtr> Debug for ExtraChecks_TO<_ErasedPtr>
source§impl<_ErasedPtr> Display for ExtraChecks_TO<_ErasedPtr>
impl<_ErasedPtr> Display for ExtraChecks_TO<_ErasedPtr>
source§impl<_ErasedPtr> GetStaticEquivalent_ for ExtraChecks_TO<_ErasedPtr>
impl<_ErasedPtr> GetStaticEquivalent_ for ExtraChecks_TO<_ErasedPtr>
source§type StaticEquivalent = _static_ExtraChecks_TO<<_ErasedPtr as GetStaticEquivalent_>::StaticEquivalent>
type StaticEquivalent = _static_ExtraChecks_TO<<_ErasedPtr as GetStaticEquivalent_>::StaticEquivalent>
'static
equivalent of Self
source§impl<_ErasedPtr> StableAbi for ExtraChecks_TO<_ErasedPtr>
impl<_ErasedPtr> StableAbi for ExtraChecks_TO<_ErasedPtr>
source§type IsNonZeroType = <RObject<'static, _ErasedPtr, ExtraChecks_Interface, VTable_Prefix<(), _ErasedPtr>> as StableAbi>::IsNonZeroType
type IsNonZeroType = <RObject<'static, _ErasedPtr, ExtraChecks_Interface, VTable_Prefix<(), _ErasedPtr>> as StableAbi>::IsNonZeroType
source§const LAYOUT: &'static TypeLayout = _
const LAYOUT: &'static TypeLayout = _
source§const ABI_CONSTS: AbiConsts = _
const ABI_CONSTS: AbiConsts = _
const
-equivalents of the associated types.impl<_ErasedPtr> Send for ExtraChecks_TO<_ErasedPtr>where
_ErasedPtr: __GetPointerKind,
impl<_ErasedPtr> Sync for ExtraChecks_TO<_ErasedPtr>where
_ErasedPtr: __GetPointerKind,
Auto Trait Implementations§
impl<_ErasedPtr> Freeze for ExtraChecks_TO<_ErasedPtr>where
_ErasedPtr: Freeze,
impl<_ErasedPtr> RefUnwindSafe for ExtraChecks_TO<_ErasedPtr>where
_ErasedPtr: RefUnwindSafe,
impl<_ErasedPtr> !Unpin for ExtraChecks_TO<_ErasedPtr>
impl<_ErasedPtr> UnwindSafe for ExtraChecks_TO<_ErasedPtr>where
_ErasedPtr: UnwindSafe,
Blanket Implementations§
source§impl<T> AlignerFor<1> for T
impl<T> AlignerFor<1> for T
source§impl<T> AlignerFor<1024> for T
impl<T> AlignerFor<1024> for T
source§type Aligner = AlignTo1024<T>
type Aligner = AlignTo1024<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.source§impl<T> AlignerFor<128> for T
impl<T> AlignerFor<128> for T
source§type Aligner = AlignTo128<T>
type Aligner = AlignTo128<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.source§impl<T> AlignerFor<16> for T
impl<T> AlignerFor<16> for T
source§impl<T> AlignerFor<16384> for T
impl<T> AlignerFor<16384> for T
source§type Aligner = AlignTo16384<T>
type Aligner = AlignTo16384<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.source§impl<T> AlignerFor<2> for T
impl<T> AlignerFor<2> for T
source§impl<T> AlignerFor<2048> for T
impl<T> AlignerFor<2048> for T
source§type Aligner = AlignTo2048<T>
type Aligner = AlignTo2048<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.source§impl<T> AlignerFor<256> for T
impl<T> AlignerFor<256> for T
source§type Aligner = AlignTo256<T>
type Aligner = AlignTo256<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.source§impl<T> AlignerFor<32> for T
impl<T> AlignerFor<32> for T
source§impl<T> AlignerFor<32768> for T
impl<T> AlignerFor<32768> for T
source§type Aligner = AlignTo32768<T>
type Aligner = AlignTo32768<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.source§impl<T> AlignerFor<4> for T
impl<T> AlignerFor<4> for T
source§impl<T> AlignerFor<4096> for T
impl<T> AlignerFor<4096> for T
source§type Aligner = AlignTo4096<T>
type Aligner = AlignTo4096<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.source§impl<T> AlignerFor<512> for T
impl<T> AlignerFor<512> for T
source§type Aligner = AlignTo512<T>
type Aligner = AlignTo512<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.source§impl<T> AlignerFor<64> for T
impl<T> AlignerFor<64> for T
source§impl<T> AlignerFor<8> for T
impl<T> AlignerFor<8> for T
source§impl<T> AlignerFor<8192> for T
impl<T> AlignerFor<8192> for T
source§type Aligner = AlignTo8192<T>
type Aligner = AlignTo8192<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<'a, T> RCowCompatibleRef<'a> for Twhere
T: Clone + 'a,
impl<'a, T> RCowCompatibleRef<'a> for Twhere
T: Clone + 'a,
source§fn as_c_ref(from: &'a T) -> <T as RCowCompatibleRef<'a>>::RefC
fn as_c_ref(from: &'a T) -> <T as RCowCompatibleRef<'a>>::RefC
source§fn as_rust_ref(from: <T as RCowCompatibleRef<'a>>::RefC) -> &'a T
fn as_rust_ref(from: <T as RCowCompatibleRef<'a>>::RefC) -> &'a T
source§impl<S> ROExtAcc for S
impl<S> ROExtAcc for S
source§fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
offset
. Read moresource§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 moresource§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 moresource§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 moresource§impl<S> ROExtOps<Aligned> for S
impl<S> ROExtOps<Aligned> for S
source§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 moresource§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,
source§impl<S> ROExtOps<Unaligned> for S
impl<S> ROExtOps<Unaligned> for S
source§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 moresource§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,
source§impl<T> SelfOps for Twhere
T: ?Sized,
impl<T> SelfOps for Twhere
T: ?Sized,
source§fn piped<F, U>(self, f: F) -> U
fn piped<F, U>(self, f: F) -> U
source§fn piped_ref<'a, F, U>(&'a self, f: F) -> Uwhere
F: FnOnce(&'a Self) -> U,
fn piped_ref<'a, F, U>(&'a self, f: F) -> Uwhere
F: FnOnce(&'a Self) -> U,
piped
except that the function takes &Self
Useful for functions that take &Self
instead of Self
. Read moresource§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
.source§fn mutated<F>(self, f: F) -> Self
fn mutated<F>(self, f: F) -> Self
source§fn observe<F>(self, f: F) -> Self
fn observe<F>(self, f: F) -> Self
source§fn as_ref_<T>(&self) -> &T
fn as_ref_<T>(&self) -> &T
AsRef
,
using the turbofish .as_ref_::<_>()
syntax. Read more