Skip to main content

min

Function min 

1.6.0 (const: unstable) · Source
pub fn min<T: Ord>(v1: T, v2: T) -> T
This item is validated for IEC 61508 (SIL 2) and ISO 26262 (ASIL B).
Expand description

Compares and returns the minimum of two values.

Returns the first argument if the comparison determines them to be equal.

Internally uses an alias to Ord::min.

§Examples

use std::cmp;

assert_eq!(cmp::min(1, 2), 1);
assert_eq!(cmp::min(2, 2), 2);
use std::cmp::{self, Ordering};

#[derive(Eq)]
struct Equal(&'static str);

impl PartialEq for Equal {
    fn eq(&self, other: &Self) -> bool { true }
}
impl PartialOrd for Equal {
    fn partial_cmp(&self, other: &Self) -> Option<Ordering> { Some(Ordering::Equal) }
}
impl Ord for Equal {
    fn cmp(&self, other: &Self) -> Ordering { Ordering::Equal }
}

assert_eq!(cmp::min(Equal("v1"), Equal("v2")).0, "v1");