pub struct FatPtr { /* private fields */ }Expand description
A fat pointer to noatun materialized view storage.
Contains a start and a count.
Note, in contrast to regular rust fat pointers, the second field really must be a count, and can not be a vtable.
Implementations§
Trait Implementations§
Source§impl NoatunStorable for FatPtr
impl NoatunStorable for FatPtr
Source§fn hash_schema(hasher: &mut SchemaHasher)
fn hash_schema(hasher: &mut SchemaHasher)
Write a unique value to ‘hasher’, that uniquely identifies this data type. Read more
Source§fn zeroed<T: NoatunStorable>() -> T
fn zeroed<T: NoatunStorable>() -> T
Return an instance of T that has a memory-representation of all zeroes. Read more
Source§fn copy_from(&mut self, source: &Self)
fn copy_from(&mut self, source: &Self)
Shallow copy source to self, unconditionally overwriting self.
Source§fn initialize(dest: &mut MaybeUninit<Self>, source: &Self)
fn initialize(dest: &mut MaybeUninit<Self>, source: &Self)
Initialize ‘dest’ from source. Read more
Source§impl Pointer for FatPtr
impl Pointer for FatPtr
Source§fn create<T: ?Sized>(addr: &T, buffer_start: *const u8) -> Self
fn create<T: ?Sized>(addr: &T, buffer_start: *const u8) -> Self
Create a pointer to the given object. Read more
Source§fn as_generic(&self) -> GenPtr
fn as_generic(&self) -> GenPtr
Return a type-erased noatun pointer
Source§unsafe fn access_mut<'a, T: ?Sized>(&self) -> Pin<&'a mut T>
unsafe fn access_mut<'a, T: ?Sized>(&self) -> Pin<&'a mut T>
Return a mutable reference to the pointee Read more
impl Copy for FatPtr
Auto Trait Implementations§
impl Freeze for FatPtr
impl RefUnwindSafe for FatPtr
impl Send for FatPtr
impl Sync for FatPtr
impl Unpin for FatPtr
impl UnwindSafe for FatPtr
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more