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

NoElements

Empty iterator

OneElement(T)

Iterator with one element, so the minimum and maximum are the same

MinMax(T, T)

More than one element in the iterator, the first element is not larger than the second

Methods

impl<T: Clone> MinMaxResult<T>
[src]

fn into_option(self) -> Option<(T, T)>

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 variant Some(x, y) is returned where x <= y. If 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: Debug> Debug for MinMaxResult<T>
[src]

fn fmt(&self, __arg_0: &mut Formatter) -> Result

Formats the value using the given formatter.

impl<T: PartialEq> PartialEq for MinMaxResult<T>
[src]

fn eq(&self, __arg_0: &MinMaxResult<T>) -> bool

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, __arg_0: &MinMaxResult<T>) -> bool

This method tests for !=.