pub trait Real:
Copy
+ Neg<Output = Self>
+ Num
+ PartialOrd
+ Signed {
Show 16 associated constants and 34 methods
const E: Self;
const PI: Self;
const FRAC_1_PI: Self;
const FRAC_2_PI: Self;
const FRAC_2_SQRT_PI: Self;
const FRAC_PI_2: Self;
const FRAC_PI_3: Self;
const FRAC_PI_4: Self;
const FRAC_PI_6: Self;
const FRAC_PI_8: Self;
const SQRT_2: Self;
const FRAC_1_SQRT_2: Self;
const LN_2: Self;
const LN_10: Self;
const LOG2_E: Self;
const LOG10_E: Self;
// Required methods
fn floor(self) -> Self;
fn ceil(self) -> Self;
fn round(self) -> Self;
fn trunc(self) -> Self;
fn fract(self) -> Self;
fn recip(self) -> Self;
fn mul_add(self, a: Self, b: Self) -> Self;
fn powi(self, n: i32) -> Self;
fn powf(self, n: Self) -> Self;
fn sqrt(self) -> Self;
fn cbrt(self) -> Self;
fn exp(self) -> Self;
fn exp2(self) -> Self;
fn exp_m1(self) -> Self;
fn log(self, base: Self) -> Self;
fn ln(self) -> Self;
fn log2(self) -> Self;
fn log10(self) -> Self;
fn ln_1p(self) -> Self;
fn hypot(self, other: Self) -> Self;
fn sin(self) -> Self;
fn cos(self) -> Self;
fn tan(self) -> Self;
fn asin(self) -> Self;
fn acos(self) -> Self;
fn atan(self) -> Self;
fn atan2(self, other: Self) -> Self;
fn sin_cos(self) -> (Self, Self);
fn sinh(self) -> Self;
fn cosh(self) -> Self;
fn tanh(self) -> Self;
fn asinh(self) -> Self;
fn acosh(self) -> Self;
fn atanh(self) -> Self;
}Expand description
Types that can represent real numbers.
Provides values and operations that generally apply to real numbers. As such, this trait is implemented by types using floating-point representations, but this trait is a general numeric trait and can be implemented by other numeric types as well.
Some members of this trait depend on the standard library and the std
feature.
Required Associated Constants§
const E: Self
const PI: Self
const FRAC_1_PI: Self
const FRAC_2_PI: Self
const FRAC_2_SQRT_PI: Self
const FRAC_PI_2: Self
const FRAC_PI_3: Self
const FRAC_PI_4: Self
const FRAC_PI_6: Self
const FRAC_PI_8: Self
const SQRT_2: Self
const FRAC_1_SQRT_2: Self
const LN_2: Self
const LN_10: Self
const LOG2_E: Self
const LOG10_E: Self
Required Methods§
fn floor(self) -> Self
fn ceil(self) -> Self
fn round(self) -> Self
fn trunc(self) -> Self
fn fract(self) -> Self
fn recip(self) -> Self
fn mul_add(self, a: Self, b: Self) -> Self
fn powi(self, n: i32) -> Self
fn powf(self, n: Self) -> Self
fn sqrt(self) -> Self
fn cbrt(self) -> Self
fn exp(self) -> Self
fn exp2(self) -> Self
fn exp_m1(self) -> Self
fn log(self, base: Self) -> Self
fn ln(self) -> Self
fn log2(self) -> Self
fn log10(self) -> Self
fn ln_1p(self) -> Self
fn hypot(self, other: Self) -> Self
fn sin(self) -> Self
fn cos(self) -> Self
fn tan(self) -> Self
fn asin(self) -> Self
fn acos(self) -> Self
fn atan(self) -> Self
fn atan2(self, other: Self) -> Self
fn sin_cos(self) -> (Self, Self)
fn sinh(self) -> Self
fn cosh(self) -> Self
fn tanh(self) -> Self
fn asinh(self) -> Self
fn acosh(self) -> Self
fn atanh(self) -> Self
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.