pub trait NumCast: Sized + ToPrimitive {
// Required method
fn from<T: ToPrimitive>(n: T) -> Option<Self>;
}Expand description
An interface for casting between machine scalars.
Required Methods§
Sourcefn from<T: ToPrimitive>(n: T) -> Option<Self>
fn from<T: ToPrimitive>(n: T) -> Option<Self>
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.
A value can be represented by the target type when it lies within
the range of scalars supported by the target type.
For example, a negative integer cannot be represented by an unsigned
integer type, and an i64 with a very high magnitude might not be
convertible to an i32.
On the other hand, conversions with possible precision loss or truncation
are admitted, like an f32 with a decimal part to an integer type, or
even a large f64 saturating to f32 infinity.
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.