twizzler_object::marker

Trait ObjSafe

source
pub unsafe auto trait ObjSafe { }
Expand description

This auto trait specifies that some type is “safe” to to store inside an object. This means that the type contains no non-invariant references nor any unsafe interior mutability not implemented via twizzler-nando.

§Safety

Manually marking type as safe requires that the programmer adhere to the rules set above.

Implementations on Foreign Types§

source§

impl ObjSafe for AtomicBool

source§

impl ObjSafe for AtomicI8

source§

impl ObjSafe for AtomicI16

source§

impl ObjSafe for AtomicI32

source§

impl ObjSafe for AtomicI64

source§

impl ObjSafe for AtomicIsize

source§

impl ObjSafe for AtomicU8

source§

impl ObjSafe for AtomicU16

source§

impl ObjSafe for AtomicU32

source§

impl ObjSafe for AtomicU64

source§

impl ObjSafe for AtomicUsize

source§

impl<T> !ObjSafe for *const T

source§

impl<T> !ObjSafe for *mut T

source§

impl<T> !ObjSafe for &T

source§

impl<T> !ObjSafe for &mut T

source§

impl<T> !ObjSafe for UnsafeCell<T>

Implementors§

Auto implementors§

§

impl !ObjSafe for Slot

§

impl !ObjSafe for CreateSpec

§

impl ObjSafe for CreateError

§

impl ObjSafe for ObjectInitError

§

impl ObjSafe for FotEntry

§

impl ObjSafe for ObjID

§

impl ObjSafe for ObjectInitFlags

§

impl ObjSafe for Protections

§

impl ObjSafe for BaseTag

§

impl ObjSafe for BaseVersion

§

impl<T> !ObjSafe for Object<T>

§

impl<T> ObjSafe for AtomicInvPtr<T>
where T: ObjSafe,

§

impl<T> ObjSafe for InvPtr<T>
where T: ObjSafe,