Enum std::iter::MinMaxResult
pub enum MinMaxResult<T> { NoElements, OneElement(T), MinMax(T, T), }
MinMaxResult
is an enum returned by min_max
. See OrdIterator::min_max
for more detail.
Variants
NoElements | Empty iterator |
OneElement | Iterator with one element, so the minimum and maximum are the same |
MinMax | More than one element in the iterator, the first element is not larger than the second |
Methods
impl<T: Clone> MinMaxResult<T>
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
.
Example
use std::iter::{NoElements, OneElement, MinMax, MinMaxResult}; let r: MinMaxResult<int> = 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
Derived Implementations
impl<T: Show> Show for MinMaxResult<T>
impl<T: Eq> Eq for MinMaxResult<T>
fn eq(&self, __arg_0: &MinMaxResult<T>) -> bool
fn ne(&self, __arg_0: &MinMaxResult<T>) -> bool
impl<T: Clone> Clone for MinMaxResult<T>
fn clone(&self) -> MinMaxResult<T>
Returns a copy of the value. The contents of owned pointers are copied to maintain uniqueness, while the contents of managed pointers are not copied.
fn clone_from(&mut self, source: &Self)
Perform copy-assignment from source
.
a.clone_from(&b)
is equivalent to a = b.clone()
in functionality,
but can be overridden to reuse the resources of a
to avoid unnecessary
allocations.