Struct abi_stable::abi_stability::extra_checks::TypeChecker_TO
source · #[repr(transparent)]pub struct TypeChecker_TO<_ErasedPtr>where
_ErasedPtr: __GetPointerKind,{
pub obj: TypeChecker_Backend<_ErasedPtr>,
/* private fields */
}
Expand description
The trait object for TypeChecker.
There are extra methods on the obj
field.
Fields§
§obj: TypeChecker_Backend<_ErasedPtr>
Implementations§
source§impl<_ErasedPtr> TypeChecker_TO<_ErasedPtr>
impl<_ErasedPtr> TypeChecker_TO<_ErasedPtr>
sourcepub fn from_ptr<_OrigPtr, Downcasting>(
ptr: _OrigPtr,
can_it_downcast: Downcasting
) -> Selfwhere
_OrigPtr: CanTransmuteElement<(), TransmutedPtr = _ErasedPtr>,
_OrigPtr::PtrTarget: TypeChecker + Sized,
TypeChecker_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: TypeChecker + Sized,
TypeChecker_Interface: GetRObjectVTable<Downcasting, _OrigPtr::PtrTarget, _ErasedPtr, _OrigPtr>,
Constructs this trait object from a pointer to a type that implements TypeChecker
.
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: TypeChecker_Backend<_ErasedPtr>) -> Self
pub fn from_sabi(obj: TypeChecker_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) -> TypeChecker_TO<RRef<'_sub, ()>>
pub fn sabi_reborrow<'_sub>(&'_sub self) -> TypeChecker_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
) -> TypeChecker_TO<RMut<'_sub, ()>>
pub fn sabi_reborrow_mut<'_sub>( &'_sub mut self ) -> TypeChecker_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 TypeChecker_TO<RBox<()>>
impl TypeChecker_TO<RBox<()>>
sourcepub fn from_value<_Self, Downcasting>(
ptr: _Self,
can_it_downcast: Downcasting
) -> Selfwhere
_Self: TypeChecker,
TypeChecker_Interface: GetRObjectVTable<Downcasting, _Self, RBox<()>, RBox<_Self>>,
pub fn from_value<_Self, Downcasting>(
ptr: _Self,
can_it_downcast: Downcasting
) -> Selfwhere
_Self: TypeChecker,
TypeChecker_Interface: GetRObjectVTable<Downcasting, _Self, RBox<()>, RBox<_Self>>,
Constructs this trait from a type that implements TypeChecker
.
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> TypeChecker_TO<RRef<'_sub, ()>>
impl<'_sub> TypeChecker_TO<RRef<'_sub, ()>>
sourcepub const fn from_const<_Self, Downcasting>(
ptr: &'_sub _Self,
can_it_downcast: Downcasting
) -> Selfwhere
_Self: TypeChecker + 'static,
TypeChecker_Interface: GetRObjectVTable<Downcasting, _Self, RRef<'_sub, ()>, &'_sub _Self>,
pub const fn from_const<_Self, Downcasting>(
ptr: &'_sub _Self,
can_it_downcast: Downcasting
) -> Selfwhere
_Self: TypeChecker + 'static,
TypeChecker_Interface: GetRObjectVTable<Downcasting, _Self, RRef<'_sub, ()>, &'_sub _Self>,
Constructs this trait from a constant of a type that implements TypeChecker
.
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 [TypeChecker_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> TypeChecker_TO<_ErasedPtr>
impl<_ErasedPtr> TypeChecker_TO<_ErasedPtr>
sourcepub fn check_compatibility(
&mut self,
param_0: &'static TypeLayout,
param_1: &'static TypeLayout
) -> RResult<(), ExtraChecksError>
pub fn check_compatibility( &mut self, param_0: &'static TypeLayout, param_1: &'static TypeLayout ) -> RResult<(), ExtraChecksError>
This is the inherent equivalent of the trait method of the same name
sourcepub fn local_check_compatibility(
&mut self,
param_0: &'static TypeLayout,
param_1: &'static TypeLayout
) -> RResult<(), ExtraChecksError>
pub fn local_check_compatibility( &mut self, param_0: &'static TypeLayout, param_1: &'static TypeLayout ) -> RResult<(), ExtraChecksError>
This is the inherent equivalent of the trait method of the same name
Trait Implementations§
source§impl<_ErasedPtr> GetStaticEquivalent_ for TypeChecker_TO<_ErasedPtr>
impl<_ErasedPtr> GetStaticEquivalent_ for TypeChecker_TO<_ErasedPtr>
§type StaticEquivalent = _static_TypeChecker_TO<<_ErasedPtr as GetStaticEquivalent_>::StaticEquivalent>
type StaticEquivalent = _static_TypeChecker_TO<<_ErasedPtr as GetStaticEquivalent_>::StaticEquivalent>
'static
equivalent of Self
source§impl<_ErasedPtr> StableAbi for TypeChecker_TO<_ErasedPtr>
impl<_ErasedPtr> StableAbi for TypeChecker_TO<_ErasedPtr>
§type IsNonZeroType = <RObject<'static, _ErasedPtr, TypeChecker_Interface, VTable_Prefix<(), _ErasedPtr>> as StableAbi>::IsNonZeroType
type IsNonZeroType = <RObject<'static, _ErasedPtr, TypeChecker_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 TypeChecker_TO<_ErasedPtr>where
_ErasedPtr: __GetPointerKind,
impl<_ErasedPtr> Sync for TypeChecker_TO<_ErasedPtr>where
_ErasedPtr: __GetPointerKind,
Auto Trait Implementations§
impl<_ErasedPtr> RefUnwindSafe for TypeChecker_TO<_ErasedPtr>where
_ErasedPtr: RefUnwindSafe,
impl<_ErasedPtr> !Unpin for TypeChecker_TO<_ErasedPtr>
impl<_ErasedPtr> UnwindSafe for TypeChecker_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
§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
§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
§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
§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
§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
§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
§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
§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
§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<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) -> 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 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