Trait possibly_uninit::cast::PointerMut[][src]

pub unsafe trait PointerMut: Sized + StableDeref + DerefMut where
    Self::Target: Sized
{ fn into_raw_mut(self) -> *mut Self::Target;
unsafe fn from_raw_mut(ptr: *mut Self::Target) -> Self; }

Trait for unique smart pointers/references containing Sized types allowing casting between them.

Required methods

fn into_raw_mut(self) -> *mut Self::Target[src]

Converts the smart pointer into raw pointer.

The original smart pointer must be forgotten.

unsafe fn from_raw_mut(ptr: *mut Self::Target) -> Self[src]

Converts a raw pointer returned from into_raw_mut into smart pointer.

Safety

These operations must be sound:

  • `P::from_raw_mut(P::into_raw_mut(x))
  • `P::from_raw_mut(P<MaybeUninit>::into_raw_mut(x) as *mut T)

Where P is the pointer type corresponding to Self and x is a valid value for given smart pointer.

Loading content...

Implementors

impl<T> PointerMut for &mut T[src]

Loading content...