Module marker Copy item path Source PhantomData Zero-sized type used to mark things that “act like” they own a T
. PhantomPinned A marker type which does not implement Unpin
. PhantomContravariant Experimental Zero-sized type used to mark a type parameter as contravariant. PhantomContravariantLifetime Experimental Zero-sized type used to mark a lifetime as contravariant. PhantomCovariant Experimental Zero-sized type used to mark a type parameter as covariant. PhantomCovariantLifetime Experimental Zero-sized type used to mark a lifetime as covariant. PhantomInvariant Experimental Zero-sized type used to mark a type parameter as invariant. PhantomInvariantLifetime Experimental Zero-sized type used to mark a lifetime as invariant. Copy Types whose values can be duplicated simply by copying bits. Send Types that can be transferred across thread boundaries. Sized Types with a constant size known at compile time. Sync Types for which it is safe to share references between threads. Unpin Types that do not require any pinning guarantees. ConstParamTy_ Experimental A marker for types which can be used as types of const
generic parameters. Destruct Experimental A marker for types that can be dropped. DiscriminantKind Experimental Compiler-internal trait used to indicate the type of enum discriminants. FnPtr Experimental A common trait implemented by all function pointers. Freeze Experimental Used to determine whether a type contains
any UnsafeCell
internally, but not through an indirection.
This affects, for example, whether a static
of that type is
placed in read-only static memory or writable static memory.
This can be used to declare that a constant with a generic type
will not contain interior mutability, and subsequently allow
placing the constant behind references. PointerLike Experimental A marker for pointer-like types. StructuralPartialEq Experimental Required trait for constants used in pattern matches. Tuple Experimental A marker for tuple types. Unsize Experimental Types that can be “unsized” to a dynamically-sized type. UnsizedConstParamTy Experimental A marker for types which can be used as types of const
generic parameters. Variance Experimental A marker trait for phantom variance types. variance Experimental Construct a variance marker; equivalent to Default::default
. Copy Derive macro generating an impl of the trait Copy
. CoercePointee Experimental Derive macro that makes a smart pointer usable with trait objects. ConstParamTy Experimental Derive macro generating an impl of the trait ConstParamTy
. UnsizedConstParamTy Experimental Derive macro generating an impl of the trait ConstParamTy
.