pub enum HEither<H, T> {
Head(H),
Tail(T),
}
Expand description
A building block for a generic enum. The “additive-type” mirror for frunk::HCons
. This is
normally used as:
ⓘ
HEither<A,
HEither<B,
HEither<C,
Void>>>
Variants§
Trait Implementations§
Source§impl<TargetHead, TargetTail, SourceHead, SourceTail, HeadIndices, TailIndices, Key> Transmogrifier<HEither<Variant<Key, TargetHead>, TargetTail>, HCons<HeadIndices, TailIndices>> for HEither<Variant<Key, SourceHead>, SourceTail>where
SourceHead: Transmogrifier<TargetHead, HeadIndices>,
SourceTail: Transmogrifier<TargetTail, TailIndices>,
impl<TargetHead, TargetTail, SourceHead, SourceTail, HeadIndices, TailIndices, Key> Transmogrifier<HEither<Variant<Key, TargetHead>, TargetTail>, HCons<HeadIndices, TailIndices>> for HEither<Variant<Key, SourceHead>, SourceTail>where
SourceHead: Transmogrifier<TargetHead, HeadIndices>,
SourceTail: Transmogrifier<TargetTail, TailIndices>,
Auto Trait Implementations§
impl<H, T> Freeze for HEither<H, T>
impl<H, T> RefUnwindSafe for HEither<H, T>where
H: RefUnwindSafe,
T: RefUnwindSafe,
impl<H, T> Send for HEither<H, T>
impl<H, T> Sync for HEither<H, T>
impl<H, T> Unpin for HEither<H, T>
impl<H, T> UnwindSafe for HEither<H, T>where
H: UnwindSafe,
T: UnwindSafe,
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