Struct AlignmentError
struct AlignmentError<Src, Dst: ?Sized> { ... }
The error emitted if the conversion source is improperly aligned.
Implementations
impl<Src, Dst: ?Sized> AlignmentError<Src, Dst>
fn into_src(self: Self) -> SrcProduces the source underlying the failed conversion.
fn map_src<NewSrc, impl FnOnce(Src) -> NewSrc: FnOnce(Src) -> NewSrc>(self: Self, f: impl FnOnce(Src) -> NewSrc) -> AlignmentError<NewSrc, Dst>Maps the source value associated with the conversion error.
This can help mitigate [issues with
Send,Syncand'staticbounds][self#send-sync-and-static].Examples
use *; let unaligned = new; // Attempt to deref `unaligned`. This might fail with an alignment error. let maybe_n: = unaligned.try_deref; // Map the error's source to its address as a usize. let maybe_n: = maybe_n.map_err;
impl<Src, Dst> Display for AlignmentError<Src, Dst>
fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result
impl<Src, Dst> Error for AlignmentError<Src, Dst>
impl<Src, Dst> Freeze for AlignmentError<Src, Dst>
impl<Src, Dst> RefUnwindSafe for AlignmentError<Src, Dst>
impl<Src, Dst> Send for AlignmentError<Src, Dst>
impl<Src, Dst> Sync for AlignmentError<Src, Dst>
impl<Src, Dst> Unpin for AlignmentError<Src, Dst>
impl<Src, Dst> UnsafeUnpin for AlignmentError<Src, Dst>
impl<Src, Dst> UnwindSafe for AlignmentError<Src, Dst>
impl<Src, Dst: ?Sized> Debug for AlignmentError<Src, Dst>
fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result
impl<Src: Clone, Dst: ?Sized> Clone for AlignmentError<Src, Dst>
fn clone(self: &Self) -> Self
impl<Src: Eq, Dst: ?Sized> Eq for AlignmentError<Src, Dst>
impl<Src: PartialEq, Dst: ?Sized> PartialEq for AlignmentError<Src, Dst>
fn eq(self: &Self, other: &Self) -> bool
impl<T> Any for AlignmentError<Src, Dst>
fn type_id(self: &Self) -> TypeId
impl<T> Borrow for AlignmentError<Src, Dst>
fn borrow(self: &Self) -> &T
impl<T> BorrowMut for AlignmentError<Src, Dst>
fn borrow_mut(self: &mut Self) -> &mut T
impl<T> CloneToUninit for AlignmentError<Src, Dst>
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)
impl<T> From for AlignmentError<Src, Dst>
fn from(t: T) -> TReturns the argument unchanged.
impl<T, U> Into for AlignmentError<Src, Dst>
fn into(self: Self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom for AlignmentError<Src, Dst>
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T, U> TryInto for AlignmentError<Src, Dst>
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>