pub unsafe trait CartablePointerLike: StableDeref + Sealed { }
Expand description
An object fully representable by a non-null pointer.
§Safety
Implementer safety:
into_raw
transfers ownership of the values referenced by StableDeref to the caller, if there is ownership to transferdrop_raw
returns ownership back to the impl, if there is ownership to transfer
Note: if into_raw
returns the sentinel pointer, memory leaks may occur, but this will not
lead to undefined behaviour.
Note: the pointer NonNull<Self::Raw>
may or may not be aligned and it should never
be dereferenced. Rust allows unaligned pointers; see std::ptr::read_unaligned
.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.