diff --git a/traits/src/float.rs b/traits/src/float.rs index 757be876e5..3c8779a5f7 100644 --- a/traits/src/float.rs +++ b/traits/src/float.rs @@ -323,41 +323,39 @@ pub trait Float /// ``` fn signum(self) -> Self; - /// Returns `true` if `self` is positive, including `+0.0` and - /// `Float::infinity()`. + /// Returns `true` if `self` is positive, including `+0.0`, + /// `Float::infinity()`, and with newer versions of Rust `f64::NAN`. /// /// ``` /// use num_traits::Float; /// use std::f64; /// - /// let nan: f64 = f64::NAN; + /// let neg_nan: f64 = -f64::NAN; /// /// let f = 7.0; /// let g = -7.0; /// /// assert!(f.is_sign_positive()); /// assert!(!g.is_sign_positive()); - /// // Requires both tests to determine if is `NaN` - /// assert!(!nan.is_sign_positive() && !nan.is_sign_negative()); + /// assert!(!neg_nan.is_sign_positive()); /// ``` fn is_sign_positive(self) -> bool; - /// Returns `true` if `self` is negative, including `-0.0` and - /// `Float::neg_infinity()`. + /// Returns `true` if `self` is negative, including `-0.0`, + /// `Float::neg_infinity()`, and with newer versions of Rust `-f64::NAN`. /// /// ``` /// use num_traits::Float; /// use std::f64; /// - /// let nan = f64::NAN; + /// let nan: f64 = f64::NAN; /// /// let f = 7.0; /// let g = -7.0; /// /// assert!(!f.is_sign_negative()); /// assert!(g.is_sign_negative()); - /// // Requires both tests to determine if is `NaN`. - /// assert!(!nan.is_sign_positive() && !nan.is_sign_negative()); + /// assert!(!nan.is_sign_negative()); /// ``` fn is_sign_negative(self) -> bool;