2 unstable releases
0.4.0 | Dec 19, 2019 |
---|---|
0.3.0 | Mar 21, 2019 |
#13 in #partial-ord
30,587 downloads per month
Used in 26 crates
(10 directly)
4KB
partial-min-max
Provides min
and max
functions that work with PartialOrd
.
use partial_min_max::{min, max};
use std::f32::NAN;
// Does what you expect for the easy cases...
assert_eq!(min(0.0, 1.0), 0.0);
assert_eq!(max(0.0, 1.0), 1.0);
// In the case of comparisons with NaN or other partial orderings, returns the
// second value.
assert!(min(0.0, NAN).is_nan());
assert_eq!(min(NAN, 0.0), 0.0);
lib.rs
:
min
and max
functions that work with PartialOrd
.
When given NaN
s and other values that don't have total orderings, the
functions have well-defined (but arbitrary) behavior: return the second
argument.
use partial_min_max::{min, max};
use std::f32::NAN;
// Does what you expect for the easy cases...
assert_eq!(min(0.0, 1.0), 0.0);
assert_eq!(max(0.0, 1.0), 1.0);
// In the case of comparisons with NaN or other partial orderings, returns the
// second value.
assert!(min(0.0, NAN).is_nan());
assert_eq!(min(NAN, 0.0), 0.0);