[−][src]Struct typic::transmute::safe_transmutation::neglect::Stability
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
impl TransmuteOptions for Stability
[src]
type Stability = Unstable
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T, U> StableTransmuteInto<U> for T where
T: TransmuteInto<U, ()>,
[src]
T: TransmuteInto<U, ()>,
fn transmute_into(Self) -> U
[src]
impl<T, U, O> TransmuteInto<U, O> for T where
O: TransmuteOptions,
T: UnsafeTransmuteInto<U, ()>,
U: TransmuteFrom<T, O>,
[src]
O: TransmuteOptions,
T: UnsafeTransmuteInto<U, ()>,
U: TransmuteFrom<T, O>,
fn transmute_into(Self) -> U
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T, U, O> UnsafeTransmuteInto<U, O> for T where
O: UnsafeTransmuteOptions,
U: UnsafeTransmuteFrom<T, O>,
[src]
O: UnsafeTransmuteOptions,
U: UnsafeTransmuteFrom<T, O>,
unsafe fn unsafe_transmute_into(Self) -> U
[src]
impl<O> UnsafeTransmuteOptions for O where
O: TransmuteOptions,
[src]
O: TransmuteOptions,