[][src]Enum ptr_union::Enum4

pub enum Enum4<A, B, C, D> {
    A(A),
    B(B),
    C(C),
    D(D),
}

An unpacked version of Union4.

Variants

A(A)
B(B)
C(C)
D(D)

Implementations

impl<A: ErasablePtr, B: ErasablePtr, C: ErasablePtr, D: ErasablePtr> Enum4<A, B, C, D>[src]

pub fn pack(self, builder: Builder4<A, B, C, D>) -> Union4<A, B, C, D>[src]

Pack this loose enum into a pointer union.

pub unsafe fn pack_unchecked(self) -> Union4<A, B, C, D>[src]

Pack this loose enum into a pointer union.

Safety

The pointer packed must be properly aligned. Note that only the actually packed pointer is restricted, not any other pointer type involved in this definition.

Trait Implementations

impl<A: Clone, B: Clone, C: Clone, D: Clone> Clone for Enum4<A, B, C, D>[src]

impl<A: Copy, B: Copy, C: Copy, D: Copy> Copy for Enum4<A, B, C, D>[src]

impl<A: Debug, B: Debug, C: Debug, D: Debug> Debug for Enum4<A, B, C, D>[src]

impl<A: Eq, B: Eq, C: Eq, D: Eq> Eq for Enum4<A, B, C, D>[src]

impl<A: Hash, B: Hash, C: Hash, D: Hash> Hash for Enum4<A, B, C, D>[src]

impl<A: PartialEq, B: PartialEq, C: PartialEq, D: PartialEq> PartialEq<Enum4<A, B, C, D>> for Enum4<A, B, C, D>[src]

impl<A, B, C, D> StructuralEq for Enum4<A, B, C, D>[src]

impl<A, B, C, D> StructuralPartialEq for Enum4<A, B, C, D>[src]

Auto Trait Implementations

impl<A, B, C, D> Send for Enum4<A, B, C, D> where
    A: Send,
    B: Send,
    C: Send,
    D: Send

impl<A, B, C, D> Sync for Enum4<A, B, C, D> where
    A: Sync,
    B: Sync,
    C: Sync,
    D: Sync

impl<A, B, C, D> Unpin for Enum4<A, B, C, D> where
    A: Unpin,
    B: Unpin,
    C: Unpin,
    D: Unpin

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Erasable for T[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.