[−][src]Struct noisy_float::NoisyFloat
A floating point number with a restricted set of legal values.
Typical users will not need to access this struct directly, but
can instead use the type aliases found in the module noisy_float::types.
However, this struct together with a FloatChecker implementation can be used
to define custom behavior.
The underlying float type is F, usually f32 or f64.
Valid values for the float are determined by the float checker C.
If an invalid value would ever be returned from a method on this type,
the method will panic instead, using either assert! or debug_assert!
as defined by the float checker.
The exception to this rule is for methods that return an Option containing
a NoisyFloat, in which case the result would be None if the value is invalid.
Implementations
impl<F: Float, C: FloatChecker<F>> NoisyFloat<F, C>[src]
pub fn new(value: F) -> Self[src]
Constructs a NoisyFloat with the given value.
Uses the FloatChecker to assert that the value is valid.
pub fn try_new(value: F) -> Option<Self>[src]
Tries to construct a NoisyFloat with the given value.
Returns None if the value is invalid.
pub fn borrowed(value: &F) -> &Self[src]
Converts the value in-place to a reference to a NoisyFloat.
Uses the FloatChecker to assert that the value is valid.
pub fn try_borrowed(value: &F) -> Option<&Self>[src]
Tries to convert the value in-place to a reference to a NoisyFloat.
Returns None if the value is invalid.
pub fn borrowed_mut(value: &mut F) -> &mut Self[src]
Converts the value in-place to a mutable reference to a NoisyFloat.
Uses the FloatChecker to assert that the value is valid.
pub fn try_borrowed_mut(value: &mut F) -> Option<&mut Self>[src]
Tries to convert the value in-place to a mutable reference to a NoisyFloat.
Returns None if the value is invalid.
pub fn from_f32(value: f32) -> Self[src]
Constructs a NoisyFloat with the given f32 value.
May panic not only by the FloatChecker but also
by unwrapping the result of a NumCast invocation for type F,
although the later should not occur in normal situations.
pub fn from_f64(value: f64) -> Self[src]
Constructs a NoisyFloat with the given f64 value.
May panic not only by the FloatChecker but also
by unwrapping the result of a NumCast invocation for type F,
although the later should not occur in normal situations.
pub fn raw(self) -> F[src]
Returns the underlying float value.
pub fn min(self, other: Self) -> Self[src]
Compares and returns the minimum of two values.
This method exists to disambiguate between num_traits::Float.min and std::cmp::Ord.min.
pub fn max(self, other: Self) -> Self[src]
Compares and returns the maximum of two values.
This method exists to disambiguate between num_traits::Float.max and std::cmp::Ord.max.
Trait Implementations
impl<'a, F: Float, C: FloatChecker<F>> Add<&'a F> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the + operator.
fn add(self, rhs: &'a F) -> Self[src]
impl<'a, F: Float, C: FloatChecker<F>> Add<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the + operator.
fn add(self, rhs: &'a Self) -> Self[src]
impl<F: Float, C: FloatChecker<F>> Add<F> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the + operator.
fn add(self, rhs: F) -> Self[src]
impl<F: Float, C: FloatChecker<F>> Add<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the + operator.
fn add(self, rhs: Self) -> Self[src]
impl<'a, F: Float + AddAssign, C: FloatChecker<F>> AddAssign<&'a F> for NoisyFloat<F, C>[src]
fn add_assign(&mut self, rhs: &'a F)[src]
impl<'a, F: Float + AddAssign, C: FloatChecker<F>> AddAssign<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn add_assign(&mut self, rhs: &'a Self)[src]
impl<F: Float + AddAssign, C: FloatChecker<F>> AddAssign<F> for NoisyFloat<F, C>[src]
fn add_assign(&mut self, rhs: F)[src]
impl<F: Float + AddAssign, C: FloatChecker<F>> AddAssign<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn add_assign(&mut self, rhs: Self)[src]
impl<F: Float, C: FloatChecker<F>> AsRef<F> for NoisyFloat<F, C>[src]
impl<F: Float + Bounded, C: FloatChecker<F>> Bounded for NoisyFloat<F, C>[src]
impl<F: Float, C: FloatChecker<F>> Clone for NoisyFloat<F, C>[src]
fn clone(&self) -> Self[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]
impl<F: Float, C: FloatChecker<F>> Copy for NoisyFloat<F, C>[src]
impl<F: Float + Debug, C: FloatChecker<F>> Debug for NoisyFloat<F, C>[src]
impl<F: Float + Default, C: FloatChecker<F>> Default for NoisyFloat<F, C>[src]
impl<F: Float + Display, C: FloatChecker<F>> Display for NoisyFloat<F, C>[src]
impl<'a, F: Float, C: FloatChecker<F>> Div<&'a F> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the / operator.
fn div(self, rhs: &'a F) -> Self[src]
impl<'a, F: Float, C: FloatChecker<F>> Div<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the / operator.
fn div(self, rhs: &'a Self) -> Self[src]
impl<F: Float, C: FloatChecker<F>> Div<F> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the / operator.
fn div(self, rhs: F) -> Self[src]
impl<F: Float, C: FloatChecker<F>> Div<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the / operator.
fn div(self, rhs: Self) -> Self[src]
impl<'a, F: Float + DivAssign, C: FloatChecker<F>> DivAssign<&'a F> for NoisyFloat<F, C>[src]
fn div_assign(&mut self, rhs: &'a F)[src]
impl<'a, F: Float + DivAssign, C: FloatChecker<F>> DivAssign<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn div_assign(&mut self, rhs: &'a Self)[src]
impl<F: Float + DivAssign, C: FloatChecker<F>> DivAssign<F> for NoisyFloat<F, C>[src]
fn div_assign(&mut self, rhs: F)[src]
impl<F: Float + DivAssign, C: FloatChecker<F>> DivAssign<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn div_assign(&mut self, rhs: Self)[src]
impl<F: Float, C: FloatChecker<F>> Eq for NoisyFloat<F, C>[src]
impl<F: Float, C: FloatChecker<F>> Float for NoisyFloat<F, C>[src]
fn nan() -> Self[src]
fn infinity() -> Self[src]
fn neg_infinity() -> Self[src]
fn neg_zero() -> Self[src]
fn min_value() -> Self[src]
fn min_positive_value() -> Self[src]
fn max_value() -> Self[src]
fn is_nan(self) -> bool[src]
fn is_infinite(self) -> bool[src]
fn is_finite(self) -> bool[src]
fn is_normal(self) -> bool[src]
fn classify(self) -> FpCategory[src]
fn floor(self) -> Self[src]
fn ceil(self) -> Self[src]
fn round(self) -> Self[src]
fn trunc(self) -> Self[src]
fn fract(self) -> Self[src]
fn abs(self) -> Self[src]
fn signum(self) -> Self[src]
fn is_sign_positive(self) -> bool[src]
fn is_sign_negative(self) -> bool[src]
fn mul_add(self, a: Self, b: Self) -> Self[src]
fn recip(self) -> Self[src]
fn powi(self, n: i32) -> Self[src]
fn powf(self, n: Self) -> Self[src]
fn sqrt(self) -> Self[src]
fn exp(self) -> Self[src]
fn exp2(self) -> Self[src]
fn ln(self) -> Self[src]
fn log(self, base: Self) -> Self[src]
fn log2(self) -> Self[src]
fn log10(self) -> Self[src]
fn max(self, other: Self) -> Self[src]
fn min(self, other: Self) -> Self[src]
fn abs_sub(self, other: Self) -> Self[src]
fn cbrt(self) -> Self[src]
fn hypot(self, other: Self) -> Self[src]
fn sin(self) -> Self[src]
fn cos(self) -> Self[src]
fn tan(self) -> Self[src]
fn asin(self) -> Self[src]
fn acos(self) -> Self[src]
fn atan(self) -> Self[src]
fn atan2(self, other: Self) -> Self[src]
fn sin_cos(self) -> (Self, Self)[src]
fn exp_m1(self) -> Self[src]
fn ln_1p(self) -> Self[src]
fn sinh(self) -> Self[src]
fn cosh(self) -> Self[src]
fn tanh(self) -> Self[src]
fn asinh(self) -> Self[src]
fn acosh(self) -> Self[src]
fn atanh(self) -> Self[src]
fn integer_decode(self) -> (u64, i16, i8)[src]
fn epsilon() -> Self[src]
fn to_degrees(self) -> Self[src]
fn to_radians(self) -> Self[src]
impl<F: Float + FloatConst, C: FloatChecker<F>> FloatConst for NoisyFloat<F, C>[src]
fn E() -> Self[src]
fn FRAC_1_PI() -> Self[src]
fn FRAC_1_SQRT_2() -> Self[src]
fn FRAC_2_PI() -> Self[src]
fn FRAC_2_SQRT_PI() -> Self[src]
fn FRAC_PI_2() -> Self[src]
fn FRAC_PI_3() -> Self[src]
fn FRAC_PI_4() -> Self[src]
fn FRAC_PI_6() -> Self[src]
fn FRAC_PI_8() -> Self[src]
fn LN_10() -> Self[src]
fn LN_2() -> Self[src]
fn LOG10_E() -> Self[src]
fn LOG2_E() -> Self[src]
fn PI() -> Self[src]
fn SQRT_2() -> Self[src]
fn TAU() -> Self where
Self: Add<Self, Output = Self>, [src]
Self: Add<Self, Output = Self>,
fn LOG10_2() -> Self where
Self: Div<Self, Output = Self>, [src]
Self: Div<Self, Output = Self>,
fn LOG2_10() -> Self where
Self: Div<Self, Output = Self>, [src]
Self: Div<Self, Output = Self>,
impl<F: Float> From<NoisyFloat<F, FiniteChecker>> for NoisyFloat<F, NumChecker>[src]
fn from(value: NoisyFloat<F, FiniteChecker>) -> Self[src]
impl<C: FloatChecker<f32>> From<NoisyFloat<f32, C>> for f32[src]
fn from(n: NoisyFloat<f32, C>) -> Self[src]
impl<C: FloatChecker<f32>> From<NoisyFloat<f32, C>> for f64[src]
fn from(n: NoisyFloat<f32, C>) -> Self[src]
impl<C: FloatChecker<f64>> From<NoisyFloat<f64, C>> for f64[src]
fn from(n: NoisyFloat<f64, C>) -> Self[src]
impl<F: Float + FromPrimitive, C: FloatChecker<F>> FromPrimitive for NoisyFloat<F, C>[src]
fn from_isize(n: isize) -> Option<Self>[src]
fn from_i8(n: i8) -> Option<Self>[src]
fn from_i16(n: i16) -> Option<Self>[src]
fn from_i32(n: i32) -> Option<Self>[src]
fn from_i64(n: i64) -> Option<Self>[src]
fn from_i128(n: i128) -> Option<Self>[src]
fn from_usize(n: usize) -> Option<Self>[src]
fn from_u8(n: u8) -> Option<Self>[src]
fn from_u16(n: u16) -> Option<Self>[src]
fn from_u32(n: u32) -> Option<Self>[src]
fn from_u64(n: u64) -> Option<Self>[src]
fn from_u128(n: u128) -> Option<Self>[src]
fn from_f32(n: f32) -> Option<Self>[src]
fn from_f64(n: f64) -> Option<Self>[src]
impl<C: FloatChecker<f32>> Hash for NoisyFloat<f32, C>[src]
fn hash<H: Hasher>(&self, state: &mut H)[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher, 1.3.0[src]
H: Hasher,
impl<C: FloatChecker<f64>> Hash for NoisyFloat<f64, C>[src]
fn hash<H: Hasher>(&self, state: &mut H)[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher, 1.3.0[src]
H: Hasher,
impl<F: Float + LowerExp, C: FloatChecker<F>> LowerExp for NoisyFloat<F, C>[src]
impl<'a, F: Float, C: FloatChecker<F>> Mul<&'a F> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the * operator.
fn mul(self, rhs: &'a F) -> Self[src]
impl<'a, F: Float, C: FloatChecker<F>> Mul<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the * operator.
fn mul(self, rhs: &'a Self) -> Self[src]
impl<F: Float, C: FloatChecker<F>> Mul<F> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the * operator.
fn mul(self, rhs: F) -> Self[src]
impl<F: Float, C: FloatChecker<F>> Mul<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the * operator.
fn mul(self, rhs: Self) -> Self[src]
impl<'a, F: Float + MulAssign, C: FloatChecker<F>> MulAssign<&'a F> for NoisyFloat<F, C>[src]
fn mul_assign(&mut self, rhs: &'a F)[src]
impl<'a, F: Float + MulAssign, C: FloatChecker<F>> MulAssign<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn mul_assign(&mut self, rhs: &'a Self)[src]
impl<F: Float + MulAssign, C: FloatChecker<F>> MulAssign<F> for NoisyFloat<F, C>[src]
fn mul_assign(&mut self, rhs: F)[src]
impl<F: Float + MulAssign, C: FloatChecker<F>> MulAssign<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn mul_assign(&mut self, rhs: Self)[src]
impl<F: Float, C: FloatChecker<F>> Neg for NoisyFloat<F, C>[src]
impl<'a, F: Float, C: FloatChecker<F>> Neg for &'a NoisyFloat<F, C>[src]
type Output = NoisyFloat<F, C>
The resulting type after applying the - operator.
fn neg(self) -> Self::Output[src]
impl<F: Float, C: FloatChecker<F>> Num for NoisyFloat<F, C>[src]
type FromStrRadixErr = F::FromStrRadixErr
fn from_str_radix(str: &str, radix: u32) -> Result<Self, Self::FromStrRadixErr>[src]
impl<F: Float, C: FloatChecker<F>> NumCast for NoisyFloat<F, C>[src]
fn from<T: ToPrimitive>(n: T) -> Option<Self>[src]
impl<F: Float, C: FloatChecker<F>> One for NoisyFloat<F, C>[src]
fn one() -> Self[src]
fn set_one(&mut self)[src]
fn is_one(&self) -> bool where
Self: PartialEq<Self>, [src]
Self: PartialEq<Self>,
impl<F: Float, C: FloatChecker<F>> Ord for NoisyFloat<F, C>[src]
fn cmp(&self, other: &Self) -> Ordering[src]
#[must_use]fn max(self, other: Self) -> Self1.21.0[src]
#[must_use]fn min(self, other: Self) -> Self1.21.0[src]
#[must_use]fn clamp(self, min: Self, max: Self) -> Self[src]
impl<F: Float, C: FloatChecker<F>> PartialEq<F> for NoisyFloat<F, C>[src]
impl<F: Float, C: FloatChecker<F>> PartialEq<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
impl<F: Float, C: FloatChecker<F>> PartialOrd<F> for NoisyFloat<F, C>[src]
fn partial_cmp(&self, other: &F) -> Option<Ordering>[src]
fn lt(&self, other: &F) -> bool[src]
fn le(&self, other: &F) -> bool[src]
fn gt(&self, other: &F) -> bool[src]
fn ge(&self, other: &F) -> bool[src]
impl<F: Float, C: FloatChecker<F>> PartialOrd<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn partial_cmp(&self, other: &Self) -> Option<Ordering>[src]
fn lt(&self, other: &Self) -> bool[src]
fn le(&self, other: &Self) -> bool[src]
fn gt(&self, other: &Self) -> bool[src]
fn ge(&self, other: &Self) -> bool[src]
impl<'a, F: Float, C: FloatChecker<F>> Product<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
impl<F: Float, C: FloatChecker<F>> Product<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
impl<'a, F: Float, C: FloatChecker<F>> Rem<&'a F> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the % operator.
fn rem(self, rhs: &'a F) -> Self[src]
impl<'a, F: Float, C: FloatChecker<F>> Rem<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the % operator.
fn rem(self, rhs: &'a Self) -> Self[src]
impl<F: Float, C: FloatChecker<F>> Rem<F> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the % operator.
fn rem(self, rhs: F) -> Self[src]
impl<F: Float, C: FloatChecker<F>> Rem<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the % operator.
fn rem(self, rhs: Self) -> Self[src]
impl<'a, F: Float + RemAssign, C: FloatChecker<F>> RemAssign<&'a F> for NoisyFloat<F, C>[src]
fn rem_assign(&mut self, rhs: &'a F)[src]
impl<'a, F: Float + RemAssign, C: FloatChecker<F>> RemAssign<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn rem_assign(&mut self, rhs: &'a Self)[src]
impl<F: Float + RemAssign, C: FloatChecker<F>> RemAssign<F> for NoisyFloat<F, C>[src]
fn rem_assign(&mut self, rhs: F)[src]
impl<F: Float + RemAssign, C: FloatChecker<F>> RemAssign<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn rem_assign(&mut self, rhs: Self)[src]
impl<F: Float + Signed, C: FloatChecker<F>> Signed for NoisyFloat<F, C>[src]
fn abs(&self) -> Self[src]
fn abs_sub(&self, other: &Self) -> Self[src]
fn signum(&self) -> Self[src]
fn is_positive(&self) -> bool[src]
fn is_negative(&self) -> bool[src]
impl<'a, F: Float, C: FloatChecker<F>> Sub<&'a F> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the - operator.
fn sub(self, rhs: &'a F) -> Self[src]
impl<'a, F: Float, C: FloatChecker<F>> Sub<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the - operator.
fn sub(self, rhs: &'a Self) -> Self[src]
impl<F: Float, C: FloatChecker<F>> Sub<F> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the - operator.
fn sub(self, rhs: F) -> Self[src]
impl<F: Float, C: FloatChecker<F>> Sub<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
type Output = Self
The resulting type after applying the - operator.
fn sub(self, rhs: Self) -> Self[src]
impl<'a, F: Float + SubAssign, C: FloatChecker<F>> SubAssign<&'a F> for NoisyFloat<F, C>[src]
fn sub_assign(&mut self, rhs: &'a F)[src]
impl<'a, F: Float + SubAssign, C: FloatChecker<F>> SubAssign<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn sub_assign(&mut self, rhs: &'a Self)[src]
impl<F: Float + SubAssign, C: FloatChecker<F>> SubAssign<F> for NoisyFloat<F, C>[src]
fn sub_assign(&mut self, rhs: F)[src]
impl<F: Float + SubAssign, C: FloatChecker<F>> SubAssign<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
fn sub_assign(&mut self, rhs: Self)[src]
impl<'a, F: Float, C: FloatChecker<F>> Sum<&'a NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
impl<F: Float, C: FloatChecker<F>> Sum<NoisyFloat<F, C>> for NoisyFloat<F, C>[src]
impl<F: Float, C: FloatChecker<F>> ToPrimitive for NoisyFloat<F, C>[src]
fn to_i64(&self) -> Option<i64>[src]
fn to_u64(&self) -> Option<u64>[src]
fn to_isize(&self) -> Option<isize>[src]
fn to_i8(&self) -> Option<i8>[src]
fn to_i16(&self) -> Option<i16>[src]
fn to_i32(&self) -> Option<i32>[src]
fn to_usize(&self) -> Option<usize>[src]
fn to_u8(&self) -> Option<u8>[src]
fn to_u16(&self) -> Option<u16>[src]
fn to_u32(&self) -> Option<u32>[src]
fn to_f32(&self) -> Option<f32>[src]
fn to_f64(&self) -> Option<f64>[src]
fn to_i128(&self) -> Option<i128>[src]
fn to_u128(&self) -> Option<u128>[src]
impl<C: FloatChecker<f32>> TryFrom<f32> for NoisyFloat<f32, C>[src]
type Error = &'static str
The type returned in the event of a conversion error.
fn try_from(f: f32) -> Result<Self, Self::Error>[src]
impl<C: FloatChecker<f64>> TryFrom<f64> for NoisyFloat<f64, C>[src]
type Error = &'static str
The type returned in the event of a conversion error.
fn try_from(f: f64) -> Result<Self, Self::Error>[src]
impl<F: Float + UpperExp, C: FloatChecker<F>> UpperExp for NoisyFloat<F, C>[src]
impl<F: Float, C: FloatChecker<F>> Zero for NoisyFloat<F, C>[src]
Auto Trait Implementations
impl<F, C> RefUnwindSafe for NoisyFloat<F, C> where
C: RefUnwindSafe,
F: RefUnwindSafe,
C: RefUnwindSafe,
F: RefUnwindSafe,
impl<F, C> Send for NoisyFloat<F, C> where
C: Send,
F: Send,
C: Send,
F: Send,
impl<F, C> Sync for NoisyFloat<F, C> where
C: Sync,
F: Sync,
C: Sync,
F: Sync,
impl<F, C> Unpin for NoisyFloat<F, C> where
C: Unpin,
F: Unpin,
C: Unpin,
F: Unpin,
impl<F, C> UnwindSafe for NoisyFloat<F, C> where
C: UnwindSafe,
F: UnwindSafe,
C: UnwindSafe,
F: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> NumAssign for T where
T: Num + NumAssignOps<T>, [src]
T: Num + NumAssignOps<T>,
impl<T, Rhs> NumAssignOps<Rhs> for T where
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>, [src]
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,
impl<T> NumAssignRef for T where
T: NumAssign + for<'r> NumAssignOps<&'r T>, [src]
T: NumAssign + for<'r> NumAssignOps<&'r T>,
impl<T, Rhs, Output> NumOps<Rhs, Output> for T where
T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>, [src]
T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,
impl<T> NumRef for T where
T: Num + for<'r> NumOps<&'r T, T>, [src]
T: Num + for<'r> NumOps<&'r T, T>,
impl<T> Real for T where
T: Float, [src]
T: Float,
fn min_value() -> T[src]
fn min_positive_value() -> T[src]
fn epsilon() -> T[src]
fn max_value() -> T[src]
fn floor(self) -> T[src]
fn ceil(self) -> T[src]
fn round(self) -> T[src]
fn trunc(self) -> T[src]
fn fract(self) -> T[src]
fn abs(self) -> T[src]
fn signum(self) -> T[src]
fn is_sign_positive(self) -> bool[src]
fn is_sign_negative(self) -> bool[src]
fn mul_add(self, a: T, b: T) -> T[src]
fn recip(self) -> T[src]
fn powi(self, n: i32) -> T[src]
fn powf(self, n: T) -> T[src]
fn sqrt(self) -> T[src]
fn exp(self) -> T[src]
fn exp2(self) -> T[src]
fn ln(self) -> T[src]
fn log(self, base: T) -> T[src]
fn log2(self) -> T[src]
fn log10(self) -> T[src]
fn to_degrees(self) -> T[src]
fn to_radians(self) -> T[src]
fn max(self, other: T) -> T[src]
fn min(self, other: T) -> T[src]
fn abs_sub(self, other: T) -> T[src]
fn cbrt(self) -> T[src]
fn hypot(self, other: T) -> T[src]
fn sin(self) -> T[src]
fn cos(self) -> T[src]
fn tan(self) -> T[src]
fn asin(self) -> T[src]
fn acos(self) -> T[src]
fn atan(self) -> T[src]
fn atan2(self, other: T) -> T[src]
fn sin_cos(self) -> (T, T)[src]
fn exp_m1(self) -> T[src]
fn ln_1p(self) -> T[src]
fn sinh(self) -> T[src]
fn cosh(self) -> T[src]
fn tanh(self) -> T[src]
fn asinh(self) -> T[src]
fn acosh(self) -> T[src]
fn atanh(self) -> T[src]
impl<T, Base> RefNum<Base> for T where
T: NumOps<Base, Base> + for<'r> NumOps<&'r Base, Base>, [src]
T: NumOps<Base, Base> + for<'r> NumOps<&'r Base, Base>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T[src]
fn clone_into(&self, target: &mut T)[src]
impl<T> ToString for T where
T: Display + ?Sized, [src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,