pub trait Float:
Copy
+ Sized
+ PartialOrd
+ Neg<Output = Self>
+ Add<Output = Self>
+ Sub<Output = Self>
+ Mul<Output = Self>
+ Div<Output = Self>
+ AddAssign
+ SubAssign
+ MulAssign
+ DivAssign {
// Required methods
fn pi() -> Self;
fn from(x: f64) -> Self;
fn to_u64(self) -> Option<u64>;
fn abs(self) -> Self;
fn floor(self) -> Self;
fn exp(self) -> Self;
fn ln(self) -> Self;
fn sqrt(self) -> Self;
fn powf(self, power: Self) -> Self;
fn tan(self) -> Self;
fn log_gamma(self) -> Self;
}
Expand description
Trait for floating-point scalar types
This allows many distributions to work with f32
or f64
parameters and is
potentially extensible. Note however that the Exp1
and StandardNormal
distributions are implemented exclusively for f32
and f64
.
The bounds and methods are based purely on internal requirements, and will change as needed.
Required Methods§
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.