Enum itertools::MinMaxResult [−][src]
pub enum MinMaxResult<T> { NoElements, OneElement(T), MinMax(T, T), }
MinMaxResult
is an enum returned by minmax
. See Itertools::minmax()
for
more detail.
Variants
Empty iterator
Iterator with one element, so the minimum and maximum are the same
More than one element in the iterator, the first element is not larger than the second
Implementations
impl<T: Clone> MinMaxResult<T>
[src]
impl<T: Clone> MinMaxResult<T>
[src]pub fn into_option(self) -> Option<(T, T)>
[src]
into_option
creates an Option
of type (T, T)
. The returned Option
has variant None
if and only if the MinMaxResult
has variant
NoElements
. Otherwise Some((x, y))
is returned where x <= y
.
If the MinMaxResult
has variant OneElement(x)
, performing this
operation will make one clone of x
.
Examples
use itertools::MinMaxResult::{self, NoElements, OneElement, MinMax}; let r: MinMaxResult<i32> = NoElements; assert_eq!(r.into_option(), None); let r = OneElement(1); assert_eq!(r.into_option(), Some((1, 1))); let r = MinMax(1, 2); assert_eq!(r.into_option(), Some((1, 2)));
Trait Implementations
impl<T: Clone> Clone for MinMaxResult<T>
[src]
impl<T: Clone> Clone for MinMaxResult<T>
[src]fn clone(&self) -> MinMaxResult<T>
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<T: PartialEq> PartialEq<MinMaxResult<T>> for MinMaxResult<T>
[src]
impl<T: PartialEq> PartialEq<MinMaxResult<T>> for MinMaxResult<T>
[src]fn eq(&self, other: &MinMaxResult<T>) -> bool
[src]
fn ne(&self, other: &MinMaxResult<T>) -> bool
[src]
impl<T: Copy> Copy for MinMaxResult<T>
[src]
impl<T> StructuralPartialEq for MinMaxResult<T>
[src]
Auto Trait Implementations
impl<T> RefUnwindSafe for MinMaxResult<T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Send for MinMaxResult<T> where
T: Send,
T: Send,
impl<T> Sync for MinMaxResult<T> where
T: Sync,
T: Sync,
impl<T> Unpin for MinMaxResult<T> where
T: Unpin,
T: Unpin,
impl<T> UnwindSafe for MinMaxResult<T> where
T: UnwindSafe,
T: UnwindSafe,