Struct thrift::OrderedFloat
source · pub struct OrderedFloat<T>(pub T);
Expand description
A wrapper around floats providing implementations of Eq
, Ord
, and Hash
.
NaN is sorted as greater than all other values and equal to itself, in contradiction with the IEEE standard.
use ordered_float::OrderedFloat;
use std::f32::NAN;
let mut v = [OrderedFloat(NAN), OrderedFloat(2.0), OrderedFloat(1.0)];
v.sort();
assert_eq!(v, [OrderedFloat(1.0), OrderedFloat(2.0), OrderedFloat(NAN)]);
Because OrderedFloat
implements Ord
and Eq
, it can be used as a key in a HashSet
,
HashMap
, BTreeMap
, or BTreeSet
(unlike the primitive f32
or f64
types):
let mut s: HashSet<OrderedFloat<f32>> = HashSet::new();
s.insert(OrderedFloat(NAN));
assert!(s.contains(&OrderedFloat(NAN)));
Tuple Fields
0: T
Implementations
sourceimpl<T> OrderedFloat<T>where
T: Float,
impl<T> OrderedFloat<T>where
T: Float,
sourcepub fn into_inner(self) -> T
pub fn into_inner(self) -> T
Get the value out.
Trait Implementations
sourceimpl<'a, T> Add<&'a OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Add<&'a T>,
impl<'a, T> Add<&'a OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Add<&'a T>,
type Output = OrderedFloat<<&'a T as Add<&'a T>>::Output>
type Output = OrderedFloat<<&'a T as Add<&'a T>>::Output>
The resulting type after applying the
+
operator.sourcefn add(
self,
other: &'a OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Add<&'a OrderedFloat<T>>>::Output
fn add(
self,
other: &'a OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Add<&'a OrderedFloat<T>>>::Output
Performs the
+
operation. Read moresourceimpl<'a, T> Add<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: Add<&'a T>,
impl<'a, T> Add<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: Add<&'a T>,
type Output = OrderedFloat<<T as Add<&'a T>>::Output>
type Output = OrderedFloat<<T as Add<&'a T>>::Output>
The resulting type after applying the
+
operator.sourcefn add(
self,
other: &'a OrderedFloat<T>
) -> <OrderedFloat<T> as Add<&'a OrderedFloat<T>>>::Output
fn add(
self,
other: &'a OrderedFloat<T>
) -> <OrderedFloat<T> as Add<&'a OrderedFloat<T>>>::Output
Performs the
+
operation. Read moresourceimpl<'a, T> Add<OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Add<T>,
impl<'a, T> Add<OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Add<T>,
type Output = OrderedFloat<<&'a T as Add<T>>::Output>
type Output = OrderedFloat<<&'a T as Add<T>>::Output>
The resulting type after applying the
+
operator.sourcefn add(
self,
other: OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Add<OrderedFloat<T>>>::Output
fn add(
self,
other: OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Add<OrderedFloat<T>>>::Output
Performs the
+
operation. Read moresourceimpl<T> Add<OrderedFloat<T>> for OrderedFloat<T>where
T: Add<T>,
impl<T> Add<OrderedFloat<T>> for OrderedFloat<T>where
T: Add<T>,
type Output = OrderedFloat<<T as Add<T>>::Output>
type Output = OrderedFloat<<T as Add<T>>::Output>
The resulting type after applying the
+
operator.sourcefn add(
self,
other: OrderedFloat<T>
) -> <OrderedFloat<T> as Add<OrderedFloat<T>>>::Output
fn add(
self,
other: OrderedFloat<T>
) -> <OrderedFloat<T> as Add<OrderedFloat<T>>>::Output
Performs the
+
operation. Read moresourceimpl<'a, T> Add<T> for &'a OrderedFloat<T>where
&'a T: Add<T>,
impl<'a, T> Add<T> for &'a OrderedFloat<T>where
&'a T: Add<T>,
sourceimpl<T> Add<T> for OrderedFloat<T>where
T: Add<T>,
impl<T> Add<T> for OrderedFloat<T>where
T: Add<T>,
type Output = OrderedFloat<<T as Add<T>>::Output>
type Output = OrderedFloat<<T as Add<T>>::Output>
The resulting type after applying the
+
operator.sourceimpl<'a, T> AddAssign<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: AddAssign<&'a T>,
impl<'a, T> AddAssign<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: AddAssign<&'a T>,
sourcefn add_assign(&mut self, other: &'a OrderedFloat<T>)
fn add_assign(&mut self, other: &'a OrderedFloat<T>)
Performs the
+=
operation. Read moresourceimpl<'a, T> AddAssign<&'a T> for OrderedFloat<T>where
T: AddAssign<&'a T>,
impl<'a, T> AddAssign<&'a T> for OrderedFloat<T>where
T: AddAssign<&'a T>,
sourcefn add_assign(&mut self, other: &'a T)
fn add_assign(&mut self, other: &'a T)
Performs the
+=
operation. Read moresourceimpl<T> AddAssign<OrderedFloat<T>> for OrderedFloat<T>where
T: AddAssign<T>,
impl<T> AddAssign<OrderedFloat<T>> for OrderedFloat<T>where
T: AddAssign<T>,
sourcefn add_assign(&mut self, other: OrderedFloat<T>)
fn add_assign(&mut self, other: OrderedFloat<T>)
Performs the
+=
operation. Read moresourceimpl<T> AddAssign<T> for OrderedFloat<T>where
T: AddAssign<T>,
impl<T> AddAssign<T> for OrderedFloat<T>where
T: AddAssign<T>,
sourcefn add_assign(&mut self, other: T)
fn add_assign(&mut self, other: T)
Performs the
+=
operation. Read moresourceimpl<T> AsMut<T> for OrderedFloat<T>where
T: Float,
impl<T> AsMut<T> for OrderedFloat<T>where
T: Float,
sourceimpl<T> AsRef<T> for OrderedFloat<T>where
T: Float,
impl<T> AsRef<T> for OrderedFloat<T>where
T: Float,
sourceimpl<T> Bounded for OrderedFloat<T>where
T: Bounded,
impl<T> Bounded for OrderedFloat<T>where
T: Bounded,
sourcefn min_value() -> OrderedFloat<T>
fn min_value() -> OrderedFloat<T>
Returns the smallest finite number this type can represent
sourcefn max_value() -> OrderedFloat<T>
fn max_value() -> OrderedFloat<T>
Returns the largest finite number this type can represent
sourceimpl<T> Clone for OrderedFloat<T>where
T: Clone,
impl<T> Clone for OrderedFloat<T>where
T: Clone,
sourcefn clone(&self) -> OrderedFloat<T>
fn clone(&self) -> OrderedFloat<T>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresourceimpl<T> Debug for OrderedFloat<T>where
T: Debug,
impl<T> Debug for OrderedFloat<T>where
T: Debug,
sourceimpl<T> Default for OrderedFloat<T>where
T: Default,
impl<T> Default for OrderedFloat<T>where
T: Default,
sourcefn default() -> OrderedFloat<T>
fn default() -> OrderedFloat<T>
Returns the “default value” for a type. Read more
sourceimpl<T> Deref for OrderedFloat<T>where
T: Float,
impl<T> Deref for OrderedFloat<T>where
T: Float,
sourceimpl<T> DerefMut for OrderedFloat<T>where
T: Float,
impl<T> DerefMut for OrderedFloat<T>where
T: Float,
sourcefn deref_mut(&mut self) -> &mut <OrderedFloat<T> as Deref>::Target
fn deref_mut(&mut self) -> &mut <OrderedFloat<T> as Deref>::Target
Mutably dereferences the value.
sourceimpl<T> Display for OrderedFloat<T>where
T: Float + Display,
impl<T> Display for OrderedFloat<T>where
T: Float + Display,
sourceimpl<'a, T> Div<&'a OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Div<&'a T>,
impl<'a, T> Div<&'a OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Div<&'a T>,
type Output = OrderedFloat<<&'a T as Div<&'a T>>::Output>
type Output = OrderedFloat<<&'a T as Div<&'a T>>::Output>
The resulting type after applying the
/
operator.sourcefn div(
self,
other: &'a OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Div<&'a OrderedFloat<T>>>::Output
fn div(
self,
other: &'a OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Div<&'a OrderedFloat<T>>>::Output
Performs the
/
operation. Read moresourceimpl<'a, T> Div<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: Div<&'a T>,
impl<'a, T> Div<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: Div<&'a T>,
type Output = OrderedFloat<<T as Div<&'a T>>::Output>
type Output = OrderedFloat<<T as Div<&'a T>>::Output>
The resulting type after applying the
/
operator.sourcefn div(
self,
other: &'a OrderedFloat<T>
) -> <OrderedFloat<T> as Div<&'a OrderedFloat<T>>>::Output
fn div(
self,
other: &'a OrderedFloat<T>
) -> <OrderedFloat<T> as Div<&'a OrderedFloat<T>>>::Output
Performs the
/
operation. Read moresourceimpl<'a, T> Div<OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Div<T>,
impl<'a, T> Div<OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Div<T>,
type Output = OrderedFloat<<&'a T as Div<T>>::Output>
type Output = OrderedFloat<<&'a T as Div<T>>::Output>
The resulting type after applying the
/
operator.sourcefn div(
self,
other: OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Div<OrderedFloat<T>>>::Output
fn div(
self,
other: OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Div<OrderedFloat<T>>>::Output
Performs the
/
operation. Read moresourceimpl<T> Div<OrderedFloat<T>> for OrderedFloat<T>where
T: Div<T>,
impl<T> Div<OrderedFloat<T>> for OrderedFloat<T>where
T: Div<T>,
type Output = OrderedFloat<<T as Div<T>>::Output>
type Output = OrderedFloat<<T as Div<T>>::Output>
The resulting type after applying the
/
operator.sourcefn div(
self,
other: OrderedFloat<T>
) -> <OrderedFloat<T> as Div<OrderedFloat<T>>>::Output
fn div(
self,
other: OrderedFloat<T>
) -> <OrderedFloat<T> as Div<OrderedFloat<T>>>::Output
Performs the
/
operation. Read moresourceimpl<'a, T> Div<T> for &'a OrderedFloat<T>where
&'a T: Div<T>,
impl<'a, T> Div<T> for &'a OrderedFloat<T>where
&'a T: Div<T>,
sourceimpl<T> Div<T> for OrderedFloat<T>where
T: Div<T>,
impl<T> Div<T> for OrderedFloat<T>where
T: Div<T>,
type Output = OrderedFloat<<T as Div<T>>::Output>
type Output = OrderedFloat<<T as Div<T>>::Output>
The resulting type after applying the
/
operator.sourceimpl<'a, T> DivAssign<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: DivAssign<&'a T>,
impl<'a, T> DivAssign<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: DivAssign<&'a T>,
sourcefn div_assign(&mut self, other: &'a OrderedFloat<T>)
fn div_assign(&mut self, other: &'a OrderedFloat<T>)
Performs the
/=
operation. Read moresourceimpl<'a, T> DivAssign<&'a T> for OrderedFloat<T>where
T: DivAssign<&'a T>,
impl<'a, T> DivAssign<&'a T> for OrderedFloat<T>where
T: DivAssign<&'a T>,
sourcefn div_assign(&mut self, other: &'a T)
fn div_assign(&mut self, other: &'a T)
Performs the
/=
operation. Read moresourceimpl<T> DivAssign<OrderedFloat<T>> for OrderedFloat<T>where
T: DivAssign<T>,
impl<T> DivAssign<OrderedFloat<T>> for OrderedFloat<T>where
T: DivAssign<T>,
sourcefn div_assign(&mut self, other: OrderedFloat<T>)
fn div_assign(&mut self, other: OrderedFloat<T>)
Performs the
/=
operation. Read moresourceimpl<T> DivAssign<T> for OrderedFloat<T>where
T: DivAssign<T>,
impl<T> DivAssign<T> for OrderedFloat<T>where
T: DivAssign<T>,
sourcefn div_assign(&mut self, other: T)
fn div_assign(&mut self, other: T)
Performs the
/=
operation. Read moresourceimpl<T> Float for OrderedFloat<T>where
T: Float,
impl<T> Float for OrderedFloat<T>where
T: Float,
sourcefn nan() -> OrderedFloat<T>
fn nan() -> OrderedFloat<T>
Returns the
NaN
value. Read moresourcefn infinity() -> OrderedFloat<T>
fn infinity() -> OrderedFloat<T>
Returns the infinite value. Read more
sourcefn neg_infinity() -> OrderedFloat<T>
fn neg_infinity() -> OrderedFloat<T>
Returns the negative infinite value. Read more
sourcefn neg_zero() -> OrderedFloat<T>
fn neg_zero() -> OrderedFloat<T>
Returns
-0.0
. Read moresourcefn min_value() -> OrderedFloat<T>
fn min_value() -> OrderedFloat<T>
Returns the smallest finite value that this type can represent. Read more
sourcefn min_positive_value() -> OrderedFloat<T>
fn min_positive_value() -> OrderedFloat<T>
Returns the smallest positive, normalized value that this type can represent. Read more
sourcefn max_value() -> OrderedFloat<T>
fn max_value() -> OrderedFloat<T>
Returns the largest finite value that this type can represent. Read more
sourcefn is_infinite(self) -> bool
fn is_infinite(self) -> bool
Returns
true
if this value is positive infinity or negative infinity and
false otherwise. Read moresourcefn classify(self) -> FpCategory
fn classify(self) -> FpCategory
Returns the floating point category of the number. If only one property
is going to be tested, it is generally faster to use the specific
predicate instead. Read more
sourcefn floor(self) -> OrderedFloat<T>
fn floor(self) -> OrderedFloat<T>
Returns the largest integer less than or equal to a number. Read more
sourcefn ceil(self) -> OrderedFloat<T>
fn ceil(self) -> OrderedFloat<T>
Returns the smallest integer greater than or equal to a number. Read more
sourcefn round(self) -> OrderedFloat<T>
fn round(self) -> OrderedFloat<T>
Returns the nearest integer to a number. Round half-way cases away from
0.0
. Read moresourcefn trunc(self) -> OrderedFloat<T>
fn trunc(self) -> OrderedFloat<T>
Return the integer part of a number. Read more
sourcefn fract(self) -> OrderedFloat<T>
fn fract(self) -> OrderedFloat<T>
Returns the fractional part of a number. Read more
sourcefn abs(self) -> OrderedFloat<T>
fn abs(self) -> OrderedFloat<T>
sourcefn signum(self) -> OrderedFloat<T>
fn signum(self) -> OrderedFloat<T>
Returns a number that represents the sign of
self
. Read moresourcefn is_sign_positive(self) -> bool
fn is_sign_positive(self) -> bool
Returns
true
if self
is positive, including +0.0
,
Float::infinity()
, and since Rust 1.20 also Float::nan()
. Read moresourcefn is_sign_negative(self) -> bool
fn is_sign_negative(self) -> bool
Returns
true
if self
is negative, including -0.0
,
Float::neg_infinity()
, and since Rust 1.20 also -Float::nan()
. Read moresourcefn mul_add(self, a: OrderedFloat<T>, b: OrderedFloat<T>) -> OrderedFloat<T>
fn mul_add(self, a: OrderedFloat<T>, b: OrderedFloat<T>) -> OrderedFloat<T>
Fused multiply-add. Computes
(self * a) + b
with only one rounding
error, yielding a more accurate result than an unfused multiply-add. Read moresourcefn recip(self) -> OrderedFloat<T>
fn recip(self) -> OrderedFloat<T>
Take the reciprocal (inverse) of a number,
1/x
. Read moresourcefn powi(self, n: i32) -> OrderedFloat<T>
fn powi(self, n: i32) -> OrderedFloat<T>
Raise a number to an integer power. Read more
sourcefn powf(self, n: OrderedFloat<T>) -> OrderedFloat<T>
fn powf(self, n: OrderedFloat<T>) -> OrderedFloat<T>
Raise a number to a floating point power. Read more
sourcefn sqrt(self) -> OrderedFloat<T>
fn sqrt(self) -> OrderedFloat<T>
Take the square root of a number. Read more
sourcefn exp(self) -> OrderedFloat<T>
fn exp(self) -> OrderedFloat<T>
Returns
e^(self)
, (the exponential function). Read moresourcefn exp2(self) -> OrderedFloat<T>
fn exp2(self) -> OrderedFloat<T>
Returns
2^(self)
. Read moresourcefn ln(self) -> OrderedFloat<T>
fn ln(self) -> OrderedFloat<T>
Returns the natural logarithm of the number. Read more
sourcefn log(self, base: OrderedFloat<T>) -> OrderedFloat<T>
fn log(self, base: OrderedFloat<T>) -> OrderedFloat<T>
Returns the logarithm of the number with respect to an arbitrary base. Read more
sourcefn log2(self) -> OrderedFloat<T>
fn log2(self) -> OrderedFloat<T>
Returns the base 2 logarithm of the number. Read more
sourcefn log10(self) -> OrderedFloat<T>
fn log10(self) -> OrderedFloat<T>
Returns the base 10 logarithm of the number. Read more
sourcefn max(self, other: OrderedFloat<T>) -> OrderedFloat<T>
fn max(self, other: OrderedFloat<T>) -> OrderedFloat<T>
Returns the maximum of the two numbers. Read more
sourcefn min(self, other: OrderedFloat<T>) -> OrderedFloat<T>
fn min(self, other: OrderedFloat<T>) -> OrderedFloat<T>
Returns the minimum of the two numbers. Read more
sourcefn abs_sub(self, other: OrderedFloat<T>) -> OrderedFloat<T>
fn abs_sub(self, other: OrderedFloat<T>) -> OrderedFloat<T>
The positive difference of two numbers. Read more
sourcefn cbrt(self) -> OrderedFloat<T>
fn cbrt(self) -> OrderedFloat<T>
Take the cubic root of a number. Read more
sourcefn hypot(self, other: OrderedFloat<T>) -> OrderedFloat<T>
fn hypot(self, other: OrderedFloat<T>) -> OrderedFloat<T>
Calculate the length of the hypotenuse of a right-angle triangle given
legs of length
x
and y
. Read moresourcefn sin(self) -> OrderedFloat<T>
fn sin(self) -> OrderedFloat<T>
Computes the sine of a number (in radians). Read more
sourcefn cos(self) -> OrderedFloat<T>
fn cos(self) -> OrderedFloat<T>
Computes the cosine of a number (in radians). Read more
sourcefn tan(self) -> OrderedFloat<T>
fn tan(self) -> OrderedFloat<T>
Computes the tangent of a number (in radians). Read more
sourcefn asin(self) -> OrderedFloat<T>
fn asin(self) -> OrderedFloat<T>
Computes the arcsine of a number. Return value is in radians in
the range [-pi/2, pi/2] or NaN if the number is outside the range
[-1, 1]. Read more
sourcefn acos(self) -> OrderedFloat<T>
fn acos(self) -> OrderedFloat<T>
Computes the arccosine of a number. Return value is in radians in
the range [0, pi] or NaN if the number is outside the range
[-1, 1]. Read more
sourcefn atan(self) -> OrderedFloat<T>
fn atan(self) -> OrderedFloat<T>
Computes the arctangent of a number. Return value is in radians in the
range [-pi/2, pi/2]; Read more
sourcefn atan2(self, other: OrderedFloat<T>) -> OrderedFloat<T>
fn atan2(self, other: OrderedFloat<T>) -> OrderedFloat<T>
sourcefn sin_cos(self) -> (OrderedFloat<T>, OrderedFloat<T>)
fn sin_cos(self) -> (OrderedFloat<T>, OrderedFloat<T>)
sourcefn exp_m1(self) -> OrderedFloat<T>
fn exp_m1(self) -> OrderedFloat<T>
Returns
e^(self) - 1
in a way that is accurate even if the
number is close to zero. Read moresourcefn ln_1p(self) -> OrderedFloat<T>
fn ln_1p(self) -> OrderedFloat<T>
Returns
ln(1+n)
(natural logarithm) more accurately than if
the operations were performed separately. Read moresourcefn sinh(self) -> OrderedFloat<T>
fn sinh(self) -> OrderedFloat<T>
Hyperbolic sine function. Read more
sourcefn cosh(self) -> OrderedFloat<T>
fn cosh(self) -> OrderedFloat<T>
Hyperbolic cosine function. Read more
sourcefn tanh(self) -> OrderedFloat<T>
fn tanh(self) -> OrderedFloat<T>
Hyperbolic tangent function. Read more
sourcefn asinh(self) -> OrderedFloat<T>
fn asinh(self) -> OrderedFloat<T>
Inverse hyperbolic sine function. Read more
sourcefn acosh(self) -> OrderedFloat<T>
fn acosh(self) -> OrderedFloat<T>
Inverse hyperbolic cosine function. Read more
sourcefn atanh(self) -> OrderedFloat<T>
fn atanh(self) -> OrderedFloat<T>
Inverse hyperbolic tangent function. Read more
sourcefn integer_decode(self) -> (u64, i16, i8)
fn integer_decode(self) -> (u64, i16, i8)
Returns the mantissa, base 2 exponent, and sign as integers, respectively.
The original number can be recovered by
sign * mantissa * 2 ^ exponent
. Read moresourcefn epsilon() -> OrderedFloat<T>
fn epsilon() -> OrderedFloat<T>
Returns epsilon, a small positive value. Read more
sourcefn to_degrees(self) -> OrderedFloat<T>
fn to_degrees(self) -> OrderedFloat<T>
Converts radians to degrees. Read more
sourcefn to_radians(self) -> OrderedFloat<T>
fn to_radians(self) -> OrderedFloat<T>
Converts degrees to radians. Read more
sourceimpl<T> FloatCore for OrderedFloat<T>where
T: Float,
impl<T> FloatCore for OrderedFloat<T>where
T: Float,
sourcefn nan() -> OrderedFloat<T>
fn nan() -> OrderedFloat<T>
Returns NaN. Read more
sourcefn infinity() -> OrderedFloat<T>
fn infinity() -> OrderedFloat<T>
Returns positive infinity. Read more
sourcefn neg_infinity() -> OrderedFloat<T>
fn neg_infinity() -> OrderedFloat<T>
Returns negative infinity. Read more
sourcefn neg_zero() -> OrderedFloat<T>
fn neg_zero() -> OrderedFloat<T>
Returns
-0.0
. Read moresourcefn min_value() -> OrderedFloat<T>
fn min_value() -> OrderedFloat<T>
Returns the smallest finite value that this type can represent. Read more
sourcefn min_positive_value() -> OrderedFloat<T>
fn min_positive_value() -> OrderedFloat<T>
Returns the smallest positive, normalized value that this type can represent. Read more
sourcefn max_value() -> OrderedFloat<T>
fn max_value() -> OrderedFloat<T>
Returns the largest finite value that this type can represent. Read more
sourcefn is_infinite(self) -> bool
fn is_infinite(self) -> bool
Returns
true
if the number is infinite. Read moresourcefn is_normal(self) -> bool
fn is_normal(self) -> bool
Returns
true
if the number is neither zero, infinite, subnormal or NaN. Read moresourcefn classify(self) -> FpCategory
fn classify(self) -> FpCategory
Returns the floating point category of the number. If only one property
is going to be tested, it is generally faster to use the specific
predicate instead. Read more
sourcefn floor(self) -> OrderedFloat<T>
fn floor(self) -> OrderedFloat<T>
Returns the largest integer less than or equal to a number. Read more
sourcefn ceil(self) -> OrderedFloat<T>
fn ceil(self) -> OrderedFloat<T>
Returns the smallest integer greater than or equal to a number. Read more
sourcefn round(self) -> OrderedFloat<T>
fn round(self) -> OrderedFloat<T>
Returns the nearest integer to a number. Round half-way cases away from
0.0
. Read moresourcefn trunc(self) -> OrderedFloat<T>
fn trunc(self) -> OrderedFloat<T>
Return the integer part of a number. Read more
sourcefn fract(self) -> OrderedFloat<T>
fn fract(self) -> OrderedFloat<T>
Returns the fractional part of a number. Read more
sourcefn abs(self) -> OrderedFloat<T>
fn abs(self) -> OrderedFloat<T>
Computes the absolute value of
self
. Returns FloatCore::nan()
if the
number is FloatCore::nan()
. Read moresourcefn signum(self) -> OrderedFloat<T>
fn signum(self) -> OrderedFloat<T>
Returns a number that represents the sign of
self
. Read moresourcefn is_sign_positive(self) -> bool
fn is_sign_positive(self) -> bool
Returns
true
if self
is positive, including +0.0
and
FloatCore::infinity()
, and since Rust 1.20 also
FloatCore::nan()
. Read moresourcefn is_sign_negative(self) -> bool
fn is_sign_negative(self) -> bool
Returns
true
if self
is negative, including -0.0
and
FloatCore::neg_infinity()
, and since Rust 1.20 also
-FloatCore::nan()
. Read moresourcefn recip(self) -> OrderedFloat<T>
fn recip(self) -> OrderedFloat<T>
Returns the reciprocal (multiplicative inverse) of the number. Read more
sourcefn powi(self, n: i32) -> OrderedFloat<T>
fn powi(self, n: i32) -> OrderedFloat<T>
Raise a number to an integer power. Read more
sourcefn integer_decode(self) -> (u64, i16, i8)
fn integer_decode(self) -> (u64, i16, i8)
Returns the mantissa, base 2 exponent, and sign as integers, respectively.
The original number can be recovered by
sign * mantissa * 2 ^ exponent
. Read moresourcefn epsilon() -> OrderedFloat<T>
fn epsilon() -> OrderedFloat<T>
Returns epsilon, a small positive value. Read more
sourcefn to_degrees(self) -> OrderedFloat<T>
fn to_degrees(self) -> OrderedFloat<T>
Converts to degrees, assuming the number is in radians. Read more
sourcefn to_radians(self) -> OrderedFloat<T>
fn to_radians(self) -> OrderedFloat<T>
Converts to radians, assuming the number is in degrees. Read more
sourceimpl<'a, T> From<&'a T> for &'a OrderedFloat<T>where
T: Float,
impl<'a, T> From<&'a T> for &'a OrderedFloat<T>where
T: Float,
sourcefn from(t: &'a T) -> &'a OrderedFloat<T>
fn from(t: &'a T) -> &'a OrderedFloat<T>
Converts to this type from the input type.
sourceimpl<'a, T> From<&'a mut T> for &'a mut OrderedFloat<T>where
T: Float,
impl<'a, T> From<&'a mut T> for &'a mut OrderedFloat<T>where
T: Float,
sourcefn from(t: &'a mut T) -> &'a mut OrderedFloat<T>
fn from(t: &'a mut T) -> &'a mut OrderedFloat<T>
Converts to this type from the input type.
sourceimpl<T> From<T> for OrderedFloat<T>where
T: Float,
impl<T> From<T> for OrderedFloat<T>where
T: Float,
sourcefn from(val: T) -> OrderedFloat<T>
fn from(val: T) -> OrderedFloat<T>
Converts to this type from the input type.
sourceimpl<T> FromPrimitive for OrderedFloat<T>where
T: FromPrimitive,
impl<T> FromPrimitive for OrderedFloat<T>where
T: FromPrimitive,
sourcefn from_i64(n: i64) -> Option<OrderedFloat<T>>
fn from_i64(n: i64) -> Option<OrderedFloat<T>>
Converts an
i64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_u64(n: u64) -> Option<OrderedFloat<T>>
fn from_u64(n: u64) -> Option<OrderedFloat<T>>
Converts an
u64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_isize(n: isize) -> Option<OrderedFloat<T>>
fn from_isize(n: isize) -> Option<OrderedFloat<T>>
Converts an
isize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_i8(n: i8) -> Option<OrderedFloat<T>>
fn from_i8(n: i8) -> Option<OrderedFloat<T>>
Converts an
i8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_i16(n: i16) -> Option<OrderedFloat<T>>
fn from_i16(n: i16) -> Option<OrderedFloat<T>>
Converts an
i16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_i32(n: i32) -> Option<OrderedFloat<T>>
fn from_i32(n: i32) -> Option<OrderedFloat<T>>
Converts an
i32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_usize(n: usize) -> Option<OrderedFloat<T>>
fn from_usize(n: usize) -> Option<OrderedFloat<T>>
Converts a
usize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_u8(n: u8) -> Option<OrderedFloat<T>>
fn from_u8(n: u8) -> Option<OrderedFloat<T>>
Converts an
u8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_u16(n: u16) -> Option<OrderedFloat<T>>
fn from_u16(n: u16) -> Option<OrderedFloat<T>>
Converts an
u16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_u32(n: u32) -> Option<OrderedFloat<T>>
fn from_u32(n: u32) -> Option<OrderedFloat<T>>
Converts an
u32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_f32(n: f32) -> Option<OrderedFloat<T>>
fn from_f32(n: f32) -> Option<OrderedFloat<T>>
Converts a
f32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourcefn from_f64(n: f64) -> Option<OrderedFloat<T>>
fn from_f64(n: f64) -> Option<OrderedFloat<T>>
Converts a
f64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresourceimpl<T> FromStr for OrderedFloat<T>where
T: FromStr,
impl<T> FromStr for OrderedFloat<T>where
T: FromStr,
sourcefn from_str(
s: &str
) -> Result<OrderedFloat<T>, <OrderedFloat<T> as FromStr>::Err>
fn from_str(
s: &str
) -> Result<OrderedFloat<T>, <OrderedFloat<T> as FromStr>::Err>
Convert a &str to OrderedFloat
. Returns an error if the string fails to parse.
use ordered_float::OrderedFloat;
assert!("-10".parse::<OrderedFloat<f32>>().is_ok());
assert!("abc".parse::<OrderedFloat<f32>>().is_err());
assert!("NaN".parse::<OrderedFloat<f32>>().is_ok());
sourceimpl<T> Hash for OrderedFloat<T>where
T: Float,
impl<T> Hash for OrderedFloat<T>where
T: Float,
sourceimpl<'a, T> Mul<&'a OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Mul<&'a T>,
impl<'a, T> Mul<&'a OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Mul<&'a T>,
type Output = OrderedFloat<<&'a T as Mul<&'a T>>::Output>
type Output = OrderedFloat<<&'a T as Mul<&'a T>>::Output>
The resulting type after applying the
*
operator.sourcefn mul(
self,
other: &'a OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Mul<&'a OrderedFloat<T>>>::Output
fn mul(
self,
other: &'a OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Mul<&'a OrderedFloat<T>>>::Output
Performs the
*
operation. Read moresourceimpl<'a, T> Mul<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: Mul<&'a T>,
impl<'a, T> Mul<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: Mul<&'a T>,
type Output = OrderedFloat<<T as Mul<&'a T>>::Output>
type Output = OrderedFloat<<T as Mul<&'a T>>::Output>
The resulting type after applying the
*
operator.sourcefn mul(
self,
other: &'a OrderedFloat<T>
) -> <OrderedFloat<T> as Mul<&'a OrderedFloat<T>>>::Output
fn mul(
self,
other: &'a OrderedFloat<T>
) -> <OrderedFloat<T> as Mul<&'a OrderedFloat<T>>>::Output
Performs the
*
operation. Read moresourceimpl<'a, T> Mul<OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Mul<T>,
impl<'a, T> Mul<OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Mul<T>,
type Output = OrderedFloat<<&'a T as Mul<T>>::Output>
type Output = OrderedFloat<<&'a T as Mul<T>>::Output>
The resulting type after applying the
*
operator.sourcefn mul(
self,
other: OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Mul<OrderedFloat<T>>>::Output
fn mul(
self,
other: OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Mul<OrderedFloat<T>>>::Output
Performs the
*
operation. Read moresourceimpl<T> Mul<OrderedFloat<T>> for OrderedFloat<T>where
T: Mul<T>,
impl<T> Mul<OrderedFloat<T>> for OrderedFloat<T>where
T: Mul<T>,
type Output = OrderedFloat<<T as Mul<T>>::Output>
type Output = OrderedFloat<<T as Mul<T>>::Output>
The resulting type after applying the
*
operator.sourcefn mul(
self,
other: OrderedFloat<T>
) -> <OrderedFloat<T> as Mul<OrderedFloat<T>>>::Output
fn mul(
self,
other: OrderedFloat<T>
) -> <OrderedFloat<T> as Mul<OrderedFloat<T>>>::Output
Performs the
*
operation. Read moresourceimpl<'a, T> Mul<T> for &'a OrderedFloat<T>where
&'a T: Mul<T>,
impl<'a, T> Mul<T> for &'a OrderedFloat<T>where
&'a T: Mul<T>,
sourceimpl<T> Mul<T> for OrderedFloat<T>where
T: Mul<T>,
impl<T> Mul<T> for OrderedFloat<T>where
T: Mul<T>,
type Output = OrderedFloat<<T as Mul<T>>::Output>
type Output = OrderedFloat<<T as Mul<T>>::Output>
The resulting type after applying the
*
operator.sourceimpl<'a, T> MulAssign<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: MulAssign<&'a T>,
impl<'a, T> MulAssign<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: MulAssign<&'a T>,
sourcefn mul_assign(&mut self, other: &'a OrderedFloat<T>)
fn mul_assign(&mut self, other: &'a OrderedFloat<T>)
Performs the
*=
operation. Read moresourceimpl<'a, T> MulAssign<&'a T> for OrderedFloat<T>where
T: MulAssign<&'a T>,
impl<'a, T> MulAssign<&'a T> for OrderedFloat<T>where
T: MulAssign<&'a T>,
sourcefn mul_assign(&mut self, other: &'a T)
fn mul_assign(&mut self, other: &'a T)
Performs the
*=
operation. Read moresourceimpl<T> MulAssign<OrderedFloat<T>> for OrderedFloat<T>where
T: MulAssign<T>,
impl<T> MulAssign<OrderedFloat<T>> for OrderedFloat<T>where
T: MulAssign<T>,
sourcefn mul_assign(&mut self, other: OrderedFloat<T>)
fn mul_assign(&mut self, other: OrderedFloat<T>)
Performs the
*=
operation. Read moresourceimpl<T> MulAssign<T> for OrderedFloat<T>where
T: MulAssign<T>,
impl<T> MulAssign<T> for OrderedFloat<T>where
T: MulAssign<T>,
sourcefn mul_assign(&mut self, other: T)
fn mul_assign(&mut self, other: T)
Performs the
*=
operation. Read moresourceimpl<'a, T> Neg for &'a OrderedFloat<T>where
&'a T: Neg,
impl<'a, T> Neg for &'a OrderedFloat<T>where
&'a T: Neg,
sourceimpl<T> Neg for OrderedFloat<T>where
T: Neg,
impl<T> Neg for OrderedFloat<T>where
T: Neg,
type Output = OrderedFloat<<T as Neg>::Output>
type Output = OrderedFloat<<T as Neg>::Output>
The resulting type after applying the
-
operator.sourceimpl<T> Num for OrderedFloat<T>where
T: Float + Num,
impl<T> Num for OrderedFloat<T>where
T: Float + Num,
type FromStrRadixErr = <T as Num>::FromStrRadixErr
sourcefn from_str_radix(
str: &str,
radix: u32
) -> Result<OrderedFloat<T>, <OrderedFloat<T> as Num>::FromStrRadixErr>
fn from_str_radix(
str: &str,
radix: u32
) -> Result<OrderedFloat<T>, <OrderedFloat<T> as Num>::FromStrRadixErr>
Convert from a string and radix (typically
2..=36
). Read moresourceimpl<T> NumCast for OrderedFloat<T>where
T: NumCast,
impl<T> NumCast for OrderedFloat<T>where
T: NumCast,
sourcefn from<F>(n: F) -> Option<OrderedFloat<T>>where
F: ToPrimitive,
fn from<F>(n: F) -> Option<OrderedFloat<T>>where
F: ToPrimitive,
Creates a number from another value that can be converted into
a primitive via the
ToPrimitive
trait. If the source value cannot be
represented by the target type, then None
is returned. Read moresourceimpl<T> One for OrderedFloat<T>where
T: One,
impl<T> One for OrderedFloat<T>where
T: One,
sourceimpl<T> Ord for OrderedFloat<T>where
T: Float,
impl<T> Ord for OrderedFloat<T>where
T: Float,
sourcefn cmp(&self, other: &OrderedFloat<T>) -> Ordering
fn cmp(&self, other: &OrderedFloat<T>) -> Ordering
1.21.0 · sourcefn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl<T> PartialEq<OrderedFloat<T>> for OrderedFloat<T>where
T: Float,
impl<T> PartialEq<OrderedFloat<T>> for OrderedFloat<T>where
T: Float,
sourcefn eq(&self, other: &OrderedFloat<T>) -> bool
fn eq(&self, other: &OrderedFloat<T>) -> bool
sourceimpl<T> PartialOrd<OrderedFloat<T>> for OrderedFloat<T>where
T: Float,
impl<T> PartialOrd<OrderedFloat<T>> for OrderedFloat<T>where
T: Float,
sourcefn partial_cmp(&self, other: &OrderedFloat<T>) -> Option<Ordering>
fn partial_cmp(&self, other: &OrderedFloat<T>) -> Option<Ordering>
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresourceimpl<'a, T> Product<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: 'a + Float + Product<T>,
impl<'a, T> Product<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: 'a + Float + Product<T>,
sourcefn product<I>(iter: I) -> OrderedFloat<T>where
I: Iterator<Item = &'a OrderedFloat<T>>,
fn product<I>(iter: I) -> OrderedFloat<T>where
I: Iterator<Item = &'a OrderedFloat<T>>,
Method which takes an iterator and generates
Self
from the elements by
multiplying the items. Read moresourceimpl<T> Product<OrderedFloat<T>> for OrderedFloat<T>where
T: Float + Product<T>,
impl<T> Product<OrderedFloat<T>> for OrderedFloat<T>where
T: Float + Product<T>,
sourcefn product<I>(iter: I) -> OrderedFloat<T>where
I: Iterator<Item = OrderedFloat<T>>,
fn product<I>(iter: I) -> OrderedFloat<T>where
I: Iterator<Item = OrderedFloat<T>>,
Method which takes an iterator and generates
Self
from the elements by
multiplying the items. Read moresourceimpl<'a, T> Rem<&'a OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Rem<&'a T>,
impl<'a, T> Rem<&'a OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Rem<&'a T>,
type Output = OrderedFloat<<&'a T as Rem<&'a T>>::Output>
type Output = OrderedFloat<<&'a T as Rem<&'a T>>::Output>
The resulting type after applying the
%
operator.sourcefn rem(
self,
other: &'a OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Rem<&'a OrderedFloat<T>>>::Output
fn rem(
self,
other: &'a OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Rem<&'a OrderedFloat<T>>>::Output
Performs the
%
operation. Read moresourceimpl<'a, T> Rem<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: Rem<&'a T>,
impl<'a, T> Rem<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: Rem<&'a T>,
type Output = OrderedFloat<<T as Rem<&'a T>>::Output>
type Output = OrderedFloat<<T as Rem<&'a T>>::Output>
The resulting type after applying the
%
operator.sourcefn rem(
self,
other: &'a OrderedFloat<T>
) -> <OrderedFloat<T> as Rem<&'a OrderedFloat<T>>>::Output
fn rem(
self,
other: &'a OrderedFloat<T>
) -> <OrderedFloat<T> as Rem<&'a OrderedFloat<T>>>::Output
Performs the
%
operation. Read moresourceimpl<'a, T> Rem<OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Rem<T>,
impl<'a, T> Rem<OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Rem<T>,
type Output = OrderedFloat<<&'a T as Rem<T>>::Output>
type Output = OrderedFloat<<&'a T as Rem<T>>::Output>
The resulting type after applying the
%
operator.sourcefn rem(
self,
other: OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Rem<OrderedFloat<T>>>::Output
fn rem(
self,
other: OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Rem<OrderedFloat<T>>>::Output
Performs the
%
operation. Read moresourceimpl<T> Rem<OrderedFloat<T>> for OrderedFloat<T>where
T: Rem<T>,
impl<T> Rem<OrderedFloat<T>> for OrderedFloat<T>where
T: Rem<T>,
type Output = OrderedFloat<<T as Rem<T>>::Output>
type Output = OrderedFloat<<T as Rem<T>>::Output>
The resulting type after applying the
%
operator.sourcefn rem(
self,
other: OrderedFloat<T>
) -> <OrderedFloat<T> as Rem<OrderedFloat<T>>>::Output
fn rem(
self,
other: OrderedFloat<T>
) -> <OrderedFloat<T> as Rem<OrderedFloat<T>>>::Output
Performs the
%
operation. Read moresourceimpl<'a, T> Rem<T> for &'a OrderedFloat<T>where
&'a T: Rem<T>,
impl<'a, T> Rem<T> for &'a OrderedFloat<T>where
&'a T: Rem<T>,
sourceimpl<T> Rem<T> for OrderedFloat<T>where
T: Rem<T>,
impl<T> Rem<T> for OrderedFloat<T>where
T: Rem<T>,
type Output = OrderedFloat<<T as Rem<T>>::Output>
type Output = OrderedFloat<<T as Rem<T>>::Output>
The resulting type after applying the
%
operator.sourceimpl<'a, T> RemAssign<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: RemAssign<&'a T>,
impl<'a, T> RemAssign<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: RemAssign<&'a T>,
sourcefn rem_assign(&mut self, other: &'a OrderedFloat<T>)
fn rem_assign(&mut self, other: &'a OrderedFloat<T>)
Performs the
%=
operation. Read moresourceimpl<'a, T> RemAssign<&'a T> for OrderedFloat<T>where
T: RemAssign<&'a T>,
impl<'a, T> RemAssign<&'a T> for OrderedFloat<T>where
T: RemAssign<&'a T>,
sourcefn rem_assign(&mut self, other: &'a T)
fn rem_assign(&mut self, other: &'a T)
Performs the
%=
operation. Read moresourceimpl<T> RemAssign<OrderedFloat<T>> for OrderedFloat<T>where
T: RemAssign<T>,
impl<T> RemAssign<OrderedFloat<T>> for OrderedFloat<T>where
T: RemAssign<T>,
sourcefn rem_assign(&mut self, other: OrderedFloat<T>)
fn rem_assign(&mut self, other: OrderedFloat<T>)
Performs the
%=
operation. Read moresourceimpl<T> RemAssign<T> for OrderedFloat<T>where
T: RemAssign<T>,
impl<T> RemAssign<T> for OrderedFloat<T>where
T: RemAssign<T>,
sourcefn rem_assign(&mut self, other: T)
fn rem_assign(&mut self, other: T)
Performs the
%=
operation. Read moresourceimpl<T> Signed for OrderedFloat<T>where
T: Float + Signed,
impl<T> Signed for OrderedFloat<T>where
T: Float + Signed,
sourcefn abs(&self) -> OrderedFloat<T>
fn abs(&self) -> OrderedFloat<T>
Computes the absolute value. Read more
sourcefn abs_sub(&self, other: &OrderedFloat<T>) -> OrderedFloat<T>
fn abs_sub(&self, other: &OrderedFloat<T>) -> OrderedFloat<T>
The positive difference of two numbers. Read more
sourcefn signum(&self) -> OrderedFloat<T>
fn signum(&self) -> OrderedFloat<T>
Returns the sign of the number. Read more
sourcefn is_positive(&self) -> bool
fn is_positive(&self) -> bool
Returns true if the number is positive and false if the number is zero or negative.
sourcefn is_negative(&self) -> bool
fn is_negative(&self) -> bool
Returns true if the number is negative and false if the number is zero or positive.
sourceimpl<'a, T> Sub<&'a OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Sub<&'a T>,
impl<'a, T> Sub<&'a OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Sub<&'a T>,
type Output = OrderedFloat<<&'a T as Sub<&'a T>>::Output>
type Output = OrderedFloat<<&'a T as Sub<&'a T>>::Output>
The resulting type after applying the
-
operator.sourcefn sub(
self,
other: &'a OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Sub<&'a OrderedFloat<T>>>::Output
fn sub(
self,
other: &'a OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Sub<&'a OrderedFloat<T>>>::Output
Performs the
-
operation. Read moresourceimpl<'a, T> Sub<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: Sub<&'a T>,
impl<'a, T> Sub<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: Sub<&'a T>,
type Output = OrderedFloat<<T as Sub<&'a T>>::Output>
type Output = OrderedFloat<<T as Sub<&'a T>>::Output>
The resulting type after applying the
-
operator.sourcefn sub(
self,
other: &'a OrderedFloat<T>
) -> <OrderedFloat<T> as Sub<&'a OrderedFloat<T>>>::Output
fn sub(
self,
other: &'a OrderedFloat<T>
) -> <OrderedFloat<T> as Sub<&'a OrderedFloat<T>>>::Output
Performs the
-
operation. Read moresourceimpl<'a, T> Sub<OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Sub<T>,
impl<'a, T> Sub<OrderedFloat<T>> for &'a OrderedFloat<T>where
&'a T: Sub<T>,
type Output = OrderedFloat<<&'a T as Sub<T>>::Output>
type Output = OrderedFloat<<&'a T as Sub<T>>::Output>
The resulting type after applying the
-
operator.sourcefn sub(
self,
other: OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Sub<OrderedFloat<T>>>::Output
fn sub(
self,
other: OrderedFloat<T>
) -> <&'a OrderedFloat<T> as Sub<OrderedFloat<T>>>::Output
Performs the
-
operation. Read moresourceimpl<T> Sub<OrderedFloat<T>> for OrderedFloat<T>where
T: Sub<T>,
impl<T> Sub<OrderedFloat<T>> for OrderedFloat<T>where
T: Sub<T>,
type Output = OrderedFloat<<T as Sub<T>>::Output>
type Output = OrderedFloat<<T as Sub<T>>::Output>
The resulting type after applying the
-
operator.sourcefn sub(
self,
other: OrderedFloat<T>
) -> <OrderedFloat<T> as Sub<OrderedFloat<T>>>::Output
fn sub(
self,
other: OrderedFloat<T>
) -> <OrderedFloat<T> as Sub<OrderedFloat<T>>>::Output
Performs the
-
operation. Read moresourceimpl<'a, T> Sub<T> for &'a OrderedFloat<T>where
&'a T: Sub<T>,
impl<'a, T> Sub<T> for &'a OrderedFloat<T>where
&'a T: Sub<T>,
sourceimpl<T> Sub<T> for OrderedFloat<T>where
T: Sub<T>,
impl<T> Sub<T> for OrderedFloat<T>where
T: Sub<T>,
type Output = OrderedFloat<<T as Sub<T>>::Output>
type Output = OrderedFloat<<T as Sub<T>>::Output>
The resulting type after applying the
-
operator.sourceimpl<'a, T> SubAssign<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: SubAssign<&'a T>,
impl<'a, T> SubAssign<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: SubAssign<&'a T>,
sourcefn sub_assign(&mut self, other: &'a OrderedFloat<T>)
fn sub_assign(&mut self, other: &'a OrderedFloat<T>)
Performs the
-=
operation. Read moresourceimpl<'a, T> SubAssign<&'a T> for OrderedFloat<T>where
T: SubAssign<&'a T>,
impl<'a, T> SubAssign<&'a T> for OrderedFloat<T>where
T: SubAssign<&'a T>,
sourcefn sub_assign(&mut self, other: &'a T)
fn sub_assign(&mut self, other: &'a T)
Performs the
-=
operation. Read moresourceimpl<T> SubAssign<OrderedFloat<T>> for OrderedFloat<T>where
T: SubAssign<T>,
impl<T> SubAssign<OrderedFloat<T>> for OrderedFloat<T>where
T: SubAssign<T>,
sourcefn sub_assign(&mut self, other: OrderedFloat<T>)
fn sub_assign(&mut self, other: OrderedFloat<T>)
Performs the
-=
operation. Read moresourceimpl<T> SubAssign<T> for OrderedFloat<T>where
T: SubAssign<T>,
impl<T> SubAssign<T> for OrderedFloat<T>where
T: SubAssign<T>,
sourcefn sub_assign(&mut self, other: T)
fn sub_assign(&mut self, other: T)
Performs the
-=
operation. Read moresourceimpl<'a, T> Sum<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: 'a + Float + Sum<T>,
impl<'a, T> Sum<&'a OrderedFloat<T>> for OrderedFloat<T>where
T: 'a + Float + Sum<T>,
sourcefn sum<I>(iter: I) -> OrderedFloat<T>where
I: Iterator<Item = &'a OrderedFloat<T>>,
fn sum<I>(iter: I) -> OrderedFloat<T>where
I: Iterator<Item = &'a OrderedFloat<T>>,
Method which takes an iterator and generates
Self
from the elements by
“summing up” the items. Read moresourceimpl<T> Sum<OrderedFloat<T>> for OrderedFloat<T>where
T: Float + Sum<T>,
impl<T> Sum<OrderedFloat<T>> for OrderedFloat<T>where
T: Float + Sum<T>,
Adds a float directly.
sourcefn sum<I>(iter: I) -> OrderedFloat<T>where
I: Iterator<Item = OrderedFloat<T>>,
fn sum<I>(iter: I) -> OrderedFloat<T>where
I: Iterator<Item = OrderedFloat<T>>,
Method which takes an iterator and generates
Self
from the elements by
“summing up” the items. Read moresourceimpl<T> ToPrimitive for OrderedFloat<T>where
T: ToPrimitive,
impl<T> ToPrimitive for OrderedFloat<T>where
T: ToPrimitive,
sourcefn to_i64(&self) -> Option<i64>
fn to_i64(&self) -> Option<i64>
Converts the value of
self
to an i64
. If the value cannot be
represented by an i64
, then None
is returned. Read moresourcefn to_u64(&self) -> Option<u64>
fn to_u64(&self) -> Option<u64>
Converts the value of
self
to a u64
. If the value cannot be
represented by a u64
, then None
is returned. Read moresourcefn to_isize(&self) -> Option<isize>
fn to_isize(&self) -> Option<isize>
Converts the value of
self
to an isize
. If the value cannot be
represented by an isize
, then None
is returned. Read moresourcefn to_i8(&self) -> Option<i8>
fn to_i8(&self) -> Option<i8>
Converts the value of
self
to an i8
. If the value cannot be
represented by an i8
, then None
is returned. Read moresourcefn to_i16(&self) -> Option<i16>
fn to_i16(&self) -> Option<i16>
Converts the value of
self
to an i16
. If the value cannot be
represented by an i16
, then None
is returned. Read moresourcefn to_i32(&self) -> Option<i32>
fn to_i32(&self) -> Option<i32>
Converts the value of
self
to an i32
. If the value cannot be
represented by an i32
, then None
is returned. Read moresourcefn to_usize(&self) -> Option<usize>
fn to_usize(&self) -> Option<usize>
Converts the value of
self
to a usize
. If the value cannot be
represented by a usize
, then None
is returned. Read moresourcefn to_u8(&self) -> Option<u8>
fn to_u8(&self) -> Option<u8>
Converts the value of
self
to a u8
. If the value cannot be
represented by a u8
, then None
is returned. Read moresourcefn to_u16(&self) -> Option<u16>
fn to_u16(&self) -> Option<u16>
Converts the value of
self
to a u16
. If the value cannot be
represented by a u16
, then None
is returned. Read moresourcefn to_u32(&self) -> Option<u32>
fn to_u32(&self) -> Option<u32>
Converts the value of
self
to a u32
. If the value cannot be
represented by a u32
, then None
is returned. Read moresourcefn to_f32(&self) -> Option<f32>
fn to_f32(&self) -> Option<f32>
Converts the value of
self
to an f32
. Overflows may map to positive
or negative inifinity, otherwise None
is returned if the value cannot
be represented by an f32
. Read moresourcefn to_f64(&self) -> Option<f64>
fn to_f64(&self) -> Option<f64>
Converts the value of
self
to an f64
. Overflows may map to positive
or negative inifinity, otherwise None
is returned if the value cannot
be represented by an f64
. Read moresourceimpl<T> Zero for OrderedFloat<T>where
T: Zero,
impl<T> Zero for OrderedFloat<T>where
T: Zero,
impl<T> Copy for OrderedFloat<T>where
T: Copy,
impl<T> Eq for OrderedFloat<T>where
T: Float,
Auto Trait Implementations
impl<T> RefUnwindSafe for OrderedFloat<T>where
T: RefUnwindSafe,
impl<T> Send for OrderedFloat<T>where
T: Send,
impl<T> Sync for OrderedFloat<T>where
T: Sync,
impl<T> Unpin for OrderedFloat<T>where
T: Unpin,
impl<T> UnwindSafe for OrderedFloat<T>where
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> LowerBounded for Twhere
T: Bounded,
impl<T> LowerBounded for Twhere
T: Bounded,
sourceimpl<T> Real for Twhere
T: Float,
impl<T> Real for Twhere
T: Float,
sourcefn min_positive_value() -> T
fn min_positive_value() -> T
Returns the smallest positive, normalized value that this type can represent. Read more
sourcefn round(self) -> T
fn round(self) -> T
Returns the nearest integer to a number. Round half-way cases away from
0.0
. Read moresourcefn is_sign_positive(self) -> bool
fn is_sign_positive(self) -> bool
Returns
true
if self
is positive, including +0.0
,
Float::infinity()
, and with newer versions of Rust f64::NAN
. Read moresourcefn is_sign_negative(self) -> bool
fn is_sign_negative(self) -> bool
Returns
true
if self
is negative, including -0.0
,
Float::neg_infinity()
, and with newer versions of Rust -f64::NAN
. Read moresourcefn mul_add(self, a: T, b: T) -> T
fn mul_add(self, a: T, b: T) -> T
Fused multiply-add. Computes
(self * a) + b
with only one rounding
error, yielding a more accurate result than an unfused multiply-add. Read moresourcefn log(self, base: T) -> T
fn log(self, base: T) -> T
Returns the logarithm of the number with respect to an arbitrary base. Read more
sourcefn to_degrees(self) -> T
fn to_degrees(self) -> T
Converts radians to degrees. Read more
sourcefn to_radians(self) -> T
fn to_radians(self) -> T
Converts degrees to radians. Read more
sourcefn hypot(self, other: T) -> T
fn hypot(self, other: T) -> T
Calculate the length of the hypotenuse of a right-angle triangle given
legs of length
x
and y
. Read moresourcefn asin(self) -> T
fn asin(self) -> T
Computes the arcsine of a number. Return value is in radians in
the range [-pi/2, pi/2] or NaN if the number is outside the range
[-1, 1]. Read more
sourcefn acos(self) -> T
fn acos(self) -> T
Computes the arccosine of a number. Return value is in radians in
the range [0, pi] or NaN if the number is outside the range
[-1, 1]. Read more
sourcefn atan(self) -> T
fn atan(self) -> T
Computes the arctangent of a number. Return value is in radians in the
range [-pi/2, pi/2]; Read more
sourcefn exp_m1(self) -> T
fn exp_m1(self) -> T
Returns
e^(self) - 1
in a way that is accurate even if the
number is close to zero. Read more