Enum frunk_enum_core::HEither
source · 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> RefUnwindSafe for HEither<H, T>where H: RefUnwindSafe, T: RefUnwindSafe,
impl<H, T> Send for HEither<H, T>where H: Send, T: Send,
impl<H, T> Sync for HEither<H, T>where H: Sync, T: Sync,
impl<H, T> Unpin for HEither<H, T>where H: Unpin, T: Unpin,
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