Function core::cmp::max_by

1.53.0 · source ·
pub fn max_by<T, F: FnOnce(&T, &T) -> Ordering>(v1: T, v2: T, compare: F) -> T
Expand description

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

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


use std::cmp;

let result = cmp::max_by(-2, 1, |x: &i32, y: &i32| x.abs().cmp(&y.abs()));
assert_eq!(result, -2);

let result = cmp::max_by(-2, 2, |x: &i32, y: &i32| x.abs().cmp(&y.abs())) ;
assert_eq!(result, 2);