pub enum Safe {}Available on
zerocopy_unstable_ptr only.Expand description
The referent of a Ptr<T> is valid for T, upholding bit validity and any
library safety invariants.
Trait Implementations§
impl Sealed for Safe
impl<T> TransmuteFrom<*mut T, Safe, Safe> for AtomicPtr<T>
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl<T> TransmuteFrom<Atomic<*mut T>, Safe, Safe> for *mut T
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl<T> TransmuteFrom<Atomic<*mut T>, Safe, Safe> for UnsafeCell<*mut T>
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl TransmuteFrom<Atomic<bool>, Safe, Safe> for bool
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<Atomic<bool>, Safe, Safe> for UnsafeCell<bool>
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<Atomic<i8>, Safe, Safe> for i8
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<Atomic<i8>, Safe, Safe> for UnsafeCell<i8>
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<Atomic<i16>, Safe, Safe> for i16
Available on
rust=1.60.0 and target_has_atomic=16 only.impl TransmuteFrom<Atomic<i16>, Safe, Safe> for UnsafeCell<i16>
Available on
rust=1.60.0 and target_has_atomic=16 only.impl TransmuteFrom<Atomic<i32>, Safe, Safe> for i32
Available on
rust=1.60.0 and target_has_atomic=32 only.impl TransmuteFrom<Atomic<i32>, Safe, Safe> for UnsafeCell<i32>
Available on
rust=1.60.0 and target_has_atomic=32 only.impl TransmuteFrom<Atomic<i64>, Safe, Safe> for i64
Available on
rust=1.60.0 and target_has_atomic=64 only.impl TransmuteFrom<Atomic<i64>, Safe, Safe> for UnsafeCell<i64>
Available on
rust=1.60.0 and target_has_atomic=64 only.impl TransmuteFrom<Atomic<isize>, Safe, Safe> for isize
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl TransmuteFrom<Atomic<isize>, Safe, Safe> for UnsafeCell<isize>
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl TransmuteFrom<Atomic<u8>, Safe, Safe> for u8
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<Atomic<u8>, Safe, Safe> for UnsafeCell<u8>
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<Atomic<u16>, Safe, Safe> for u16
Available on
rust=1.60.0 and target_has_atomic=16 only.impl TransmuteFrom<Atomic<u16>, Safe, Safe> for UnsafeCell<u16>
Available on
rust=1.60.0 and target_has_atomic=16 only.impl TransmuteFrom<Atomic<u32>, Safe, Safe> for u32
Available on
rust=1.60.0 and target_has_atomic=32 only.impl TransmuteFrom<Atomic<u32>, Safe, Safe> for UnsafeCell<u32>
Available on
rust=1.60.0 and target_has_atomic=32 only.impl TransmuteFrom<Atomic<u64>, Safe, Safe> for u64
Available on
rust=1.60.0 and target_has_atomic=64 only.impl TransmuteFrom<Atomic<u64>, Safe, Safe> for UnsafeCell<u64>
Available on
rust=1.60.0 and target_has_atomic=64 only.impl TransmuteFrom<Atomic<usize>, Safe, Safe> for usize
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl TransmuteFrom<Atomic<usize>, Safe, Safe> for UnsafeCell<usize>
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl<T> TransmuteFrom<Cell<T>, Safe, Safe> for UnsafeCell<T>
impl<T> TransmuteFrom<MaybeUninit<T>, Safe, Safe> for Wrapping<T>
impl<T: ?Sized> TransmuteFrom<T, Safe, Safe> for ManuallyDrop<T>
impl<T> TransmuteFrom<T, Safe, Safe> for Unalign<T>
impl<T> TransmuteFrom<T, Safe, Safe> for Wrapping<T>
impl<T: ?Sized> TransmuteFrom<T, Safe, Safe> for UnsafeCell<T>
impl<T: ?Sized> TransmuteFrom<T, Safe, Safe> for Cell<T>
impl<T: ?Sized> TransmuteFrom<T, Safe, Safe> for ReadOnly<T>
impl<T> TransmuteFrom<T, Uninit, Safe> for MaybeUninit<T>
impl<T> TransmuteFrom<UnsafeCell<*mut T>, Safe, Safe> for AtomicPtr<T>
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl<T> TransmuteFrom<UnsafeCell<T>, Safe, Safe> for Cell<T>
impl TransmuteFrom<UnsafeCell<bool>, Safe, Safe> for AtomicBool
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<UnsafeCell<i8>, Safe, Safe> for AtomicI8
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<UnsafeCell<i16>, Safe, Safe> for AtomicI16
Available on
rust=1.60.0 and target_has_atomic=16 only.impl TransmuteFrom<UnsafeCell<i32>, Safe, Safe> for AtomicI32
Available on
rust=1.60.0 and target_has_atomic=32 only.impl TransmuteFrom<UnsafeCell<i64>, Safe, Safe> for AtomicI64
Available on
rust=1.60.0 and target_has_atomic=64 only.impl TransmuteFrom<UnsafeCell<isize>, Safe, Safe> for AtomicIsize
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl TransmuteFrom<UnsafeCell<u8>, Safe, Safe> for AtomicU8
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<UnsafeCell<u16>, Safe, Safe> for AtomicU16
Available on
rust=1.60.0 and target_has_atomic=16 only.impl TransmuteFrom<UnsafeCell<u32>, Safe, Safe> for AtomicU32
Available on
rust=1.60.0 and target_has_atomic=32 only.impl TransmuteFrom<UnsafeCell<u64>, Safe, Safe> for AtomicU64
Available on
rust=1.60.0 and target_has_atomic=64 only.impl TransmuteFrom<UnsafeCell<usize>, Safe, Safe> for AtomicUsize
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl<T> TransmuteFrom<Wrapping<T>, Safe, Safe> for MaybeUninit<T>
impl TransmuteFrom<bool, Safe, Safe> for AtomicBool
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<i8, Safe, Safe> for AtomicI8
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<i16, Safe, Safe> for AtomicI16
Available on
rust=1.60.0 and target_has_atomic=16 only.impl TransmuteFrom<i32, Safe, Safe> for AtomicI32
Available on
rust=1.60.0 and target_has_atomic=32 only.impl TransmuteFrom<i64, Safe, Safe> for AtomicI64
Available on
rust=1.60.0 and target_has_atomic=64 only.impl TransmuteFrom<isize, Safe, Safe> for AtomicIsize
Available on
rust=1.60.0 and target_has_atomic=ptr only.impl TransmuteFrom<u8, Safe, Safe> for AtomicU8
Available on
rust=1.60.0 and target_has_atomic=8 only.impl TransmuteFrom<u16, Safe, Safe> for AtomicU16
Available on
rust=1.60.0 and target_has_atomic=16 only.impl TransmuteFrom<u32, Safe, Safe> for AtomicU32
Available on
rust=1.60.0 and target_has_atomic=32 only.impl TransmuteFrom<u64, Safe, Safe> for AtomicU64
Available on
rust=1.60.0 and target_has_atomic=64 only.impl TransmuteFrom<usize, Safe, Safe> for AtomicUsize
Available on
rust=1.60.0 and target_has_atomic=ptr only.Auto Trait Implementations§
impl Freeze for Safe
impl RefUnwindSafe for Safe
impl Send for Safe
impl Sync for Safe
impl Unpin for Safe
impl UnsafeUnpin for Safe
impl UnwindSafe for Safe
Blanket Implementations§
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<Src, Dst, A, SV, DV, R> MutationCompatible<Src, A, SV, DV, (BecauseRead, R)> for Dst
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> SizeEq<ManuallyDrop<T>> for Twhere
T: ?Sized,
impl<T> SizeEq<ManuallyDrop<T>> for Twhere
T: ?Sized,
Source§impl<T> SizeEq<MaybeUninit<T>> for T
impl<T> SizeEq<MaybeUninit<T>> for T
Source§type CastFrom = CastSizedExact
type CastFrom = CastSizedExact
Available on
zerocopy_unstable_ptr only.Source§impl<T> SizeEq<UnsafeCell<T>> for Twhere
T: ?Sized,
impl<T> SizeEq<UnsafeCell<T>> for Twhere
T: ?Sized,
Source§impl<T> SizeHint for Twhere
T: ?Sized,
impl<T> SizeHint for Twhere
T: ?Sized,
Source§default fn lower_bound(&self) -> usize
default fn lower_bound(&self) -> usize
🔬This is a nightly-only experimental API. (
core_io_internals)Returns a lower bound on the number of elements this container-like item
contains.
For example, an array
[u8; 12] could return any value between 0 and
12 inclusively as a correct implementation. Read moreimpl<T> Sized for T
Source§impl<T> SizedTypeProperties for T
impl<T> SizedTypeProperties for T
Source§#[doc(hidden)]const SIZE: usize = _
#[doc(hidden)]const SIZE: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const ALIGN: usize = _
#[doc(hidden)]const ALIGN: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const ALIGNMENT: Alignment = _
#[doc(hidden)]const ALIGNMENT: Alignment = _
🔬This is a nightly-only experimental API. (
ptr_alignment_type)Source§#[doc(hidden)]const IS_ZST: bool = _
#[doc(hidden)]const IS_ZST: bool = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const LAYOUT: Layout = _
#[doc(hidden)]const LAYOUT: Layout = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const MAX_SLICE_LEN: usize = _
#[doc(hidden)]const MAX_SLICE_LEN: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties)The largest safe length for a
[Self]. Read more