Struct corundum::default::Ptr [−][src]
Expand description
A wrapper around a raw persistent pointer that indicates that the possessor
of this wrapper owns the referent. Useful for building abstractions like
Pbox<T,P>
, Vec<T,P>
, and String<P>
.
Just like raw pointers, it contains the address of the object, but the address is static within a file.
Note that, memory pools are types, not objects. For more information,
please see MemPool
.
Implementations
Trait Implementations
Size of the object on Persistent Memory Assuming that self is not on PM, or considered else were, the size of allocated persistent memory is the sum of all persistent objects pointed by this object. Read more
Size of the object on Persistent Memory including Self
Assuming that self is also on PM (e.g. the root object), the size of allocated persistent memory
includes the size of all objects pointed by this object and the size Self
. Read more
The allocator does not need to implement PSafe
Ptr
pointers are not Send
because the data they reference may be aliased.
Ptr
pointers are not Sync
because the data they reference may be aliased.
Auto Trait Implementations
impl<T: ?Sized, A> LooseTxInUnsafe for Ptr<T, A> where
A: LooseTxInUnsafe,
T: LooseTxInUnsafe,
impl<T: ?Sized, A> RefUnwindSafe for Ptr<T, A> where
A: RefUnwindSafe,
T: RefUnwindSafe,
impl<T: ?Sized, A> UnwindSafe for Ptr<T, A> where
A: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn vzip(self) -> V