pub struct InvPtr<T> { /* private fields */ }
Expand description
The raw invariant pointer, containing just a 64-bit packed FOT entry and offset.
Implementations§
source§impl<Target> InvPtr<Target>
impl<Target> InvPtr<Target>
sourcepub unsafe fn parts_unguarded(&self) -> (usize, u64)
pub unsafe fn parts_unguarded(&self) -> (usize, u64)
Read the invariant pointer into its raw parts.
§Safety
See this crate’s base documentation (Isolation Safety).
sourcepub fn from_parts(fote: usize, off: u64) -> Self
pub fn from_parts(fote: usize, off: u64) -> Self
Construct an InvPtr from an FOT entry and an offset.
sourcepub unsafe fn is_null_unguarded(&self) -> bool
pub unsafe fn is_null_unguarded(&self) -> bool
Check if an invariant pointer is null.
§Safety
See this crate’s base documentation (Isolation Safety).
Trait Implementations§
Auto Trait Implementations§
impl<T> Freeze for InvPtr<T>
impl<T> ObjSafe for InvPtr<T>where
T: ObjSafe,
impl<T> RefUnwindSafe for InvPtr<T>where
T: RefUnwindSafe,
impl<T> Send for InvPtr<T>where
T: Send,
impl<T> Sync for InvPtr<T>where
T: Sync,
impl<T> UnwindSafe for InvPtr<T>where
T: UnwindSafe,
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