pub enum Or<L, R> {
Left(L),
Right(R),
Both(L, R),
}
Expand description
Holds an L
, or an R
, or both
Variants§
Implementations§
source§impl<L, R> Or<L, R>
impl<L, R> Or<L, R>
sourcepub fn new(l: Option<L>, r: Option<R>) -> Option<Self>
pub fn new(l: Option<L>, r: Option<R>) -> Option<Self>
Construct an Or<L, R>
if at least one argument is Some
sourcepub fn split(self) -> (Option<L>, Option<R>)
pub fn split(self) -> (Option<L>, Option<R>)
Destructure into two Option
s, where either or both are Some
Trait Implementations§
source§impl<L: Ord, R: Ord> Ord for Or<L, R>
impl<L: Ord, R: Ord> Ord for Or<L, R>
source§impl<L: PartialEq, R: PartialEq> PartialEq for Or<L, R>
impl<L: PartialEq, R: PartialEq> PartialEq for Or<L, R>
source§impl<L: PartialOrd, R: PartialOrd> PartialOrd for Or<L, R>
impl<L: PartialOrd, R: PartialOrd> PartialOrd for Or<L, R>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl<L: Copy, R: Copy> Copy for Or<L, R>
impl<L: Eq, R: Eq> Eq for Or<L, R>
impl<L, R> StructuralEq for Or<L, R>
impl<L, R> StructuralPartialEq for Or<L, R>
Auto Trait Implementations§
impl<L, R> RefUnwindSafe for Or<L, R>where
L: RefUnwindSafe,
R: RefUnwindSafe,
impl<L, R> Send for Or<L, R>
impl<L, R> Sync for Or<L, R>
impl<L, R> Unpin for Or<L, R>
impl<L, R> UnwindSafe for Or<L, R>where
L: UnwindSafe,
R: 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