pub struct TaggedPtr(/* private fields */);Expand description
Zig: packed struct(u64) { _ptr: u49, data: u15 }
Packed-struct field order in Zig is LSB-first, so:
bits 0..49 → _ptr
bits 49..64 → data
Implementations§
Trait Implementations§
impl Copy for TaggedPtr
impl Eq for TaggedPtr
impl StructuralPartialEq for TaggedPtr
Auto Trait Implementations§
impl Freeze for TaggedPtr
impl RefUnwindSafe for TaggedPtr
impl Send for TaggedPtr
impl Sync for TaggedPtr
impl Unpin for TaggedPtr
impl UnsafeUnpin for TaggedPtr
impl UnwindSafe for TaggedPtr
Blanket Implementations§
Source§impl<T> AsCtxPtr for Twhere
T: ?Sized,
impl<T> AsCtxPtr for Twhere
T: ?Sized,
Source§fn as_ctx_ptr(&self) -> *mut Selfwhere
Self: Sized,
fn as_ctx_ptr(&self) -> *mut Selfwhere
Self: Sized,
self’s address as *mut Self for deferred-task / scopeguard /
ref_guard ctx slots. The closures/trampolines deref it as shared
(&*p) — every method they reach is &self post-R-2, so no write
provenance is required; the *mut spelling is purely to match the
existing DerefOnDrop / HasAutoFlush / RefCount ABI.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