Function std::cmp::min_by

1.53.0 · source · []
pub fn min_by<T, F>(v1: T, v2: T, compare: F) -> T where
    F: for<'_, '_> FnOnce(&T, &T) -> Ordering
Expand description

Returns the minimum of two values with respect to the specified comparison function.

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


use std::cmp;

assert_eq!(cmp::min_by(-2, 1, |x: &i32, y: &i32| x.abs().cmp(&y.abs())), 1);
assert_eq!(cmp::min_by(-2, 2, |x: &i32, y: &i32| x.abs().cmp(&y.abs())), -2);