pub struct Stability;Expand description
Neglect statically guaranteeing that the source and destination types have stable in-memory representations.
By default, Typic statically requires that the layouts of the
source and destination types are part of their API guarantee. Library
authors indicate this for their types by implementing a marker trait.
This trait should only be implementable for types where Rust makes
guarantees about their layout (e.g., #[repr(C)]).
This is the only option available for safe transmutations.
Typic will still reject transmutes between types where the
layouts of the source or destination types are compiler UB (e.g.,
most repr(Rust) types).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Stability
impl RefUnwindSafe for Stability
impl Send for Stability
impl Sync for Stability
impl Unpin for Stability
impl UnwindSafe for Stability
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
Source§impl<T, U> StableTransmuteInto<U> for Twhere
T: TransmuteInto<U>,
impl<T, U> StableTransmuteInto<U> for Twhere
T: TransmuteInto<U>,
fn transmute_into(self) -> U
Source§impl<T, U, O> TransmuteInto<U, O> for T
impl<T, U, O> TransmuteInto<U, O> for T
Source§fn transmute_into(self) -> U
fn transmute_into(self) -> U
Reinterprets the bits of
self as type U.Source§impl<T, U, O> UnsafeTransmuteInto<U, O> for Twhere
U: UnsafeTransmuteFrom<T, O>,
O: UnsafeTransmuteOptions,
impl<T, U, O> UnsafeTransmuteInto<U, O> for Twhere
U: UnsafeTransmuteFrom<T, O>,
O: UnsafeTransmuteOptions,
Source§unsafe fn unsafe_transmute_into(self) -> U
unsafe fn unsafe_transmute_into(self) -> U
Reinterprets the bits of
from as type Self.