Enum tract_core::internal::tract_itertools::MinMaxResult
source · [−]pub enum MinMaxResult<T> {
NoElements,
OneElement(T),
MinMax(T, T),
}
Expand description
MinMaxResult
is an enum returned by minmax
.
See .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
Implementations
sourceimpl<T> MinMaxResult<T> where
T: Clone,
impl<T> MinMaxResult<T> where
T: Clone,
sourcepub fn into_option(self) -> Option<(T, T)>
pub 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 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
sourceimpl<T> Clone for MinMaxResult<T> where
T: Clone,
impl<T> Clone for MinMaxResult<T> where
T: Clone,
sourcefn clone(&self) -> MinMaxResult<T>
fn clone(&self) -> MinMaxResult<T>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<T> Debug for MinMaxResult<T> where
T: Debug,
impl<T> Debug for MinMaxResult<T> where
T: Debug,
sourceimpl<T> PartialEq<MinMaxResult<T>> for MinMaxResult<T> where
T: PartialEq<T>,
impl<T> PartialEq<MinMaxResult<T>> for MinMaxResult<T> where
T: PartialEq<T>,
sourcefn eq(&self, other: &MinMaxResult<T>) -> bool
fn eq(&self, other: &MinMaxResult<T>) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &MinMaxResult<T>) -> bool
fn ne(&self, other: &MinMaxResult<T>) -> bool
This method tests for !=
.
impl<T> Copy for MinMaxResult<T> where
T: Copy,
impl<T> StructuralPartialEq for MinMaxResult<T>
Auto Trait Implementations
impl<T> RefUnwindSafe for MinMaxResult<T> where
T: RefUnwindSafe,
impl<T> Send for MinMaxResult<T> where
T: Send,
impl<T> Sync for MinMaxResult<T> where
T: Sync,
impl<T> Unpin for MinMaxResult<T> where
T: Unpin,
impl<T> UnwindSafe for MinMaxResult<T> where
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
sourcefn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘNotable traits for Box<R, Global>impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘNotable traits for Box<R, Global>impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
R: Read + ?Sized, impl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
sourcefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
sourcefn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
sourcefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
sourceimpl<T> DowncastSync for T where
T: Any + Send + Sync,
impl<T> DowncastSync for T where
T: Any + Send + Sync,
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more