Trait num::traits::NumCast

source ·
pub trait NumCast: Sized + ToPrimitive {
    // Required method
    fn from<T>(n: T) -> Option<Self>
       where T: ToPrimitive;
}
Expand description

An interface for casting between machine scalars.

Required Methods§

source

fn from<T>(n: T) -> Option<Self>
where T: 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.

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.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl NumCast for f32

source§

fn from<N>(n: N) -> Option<f32>
where N: ToPrimitive,

source§

impl NumCast for f64

source§

fn from<N>(n: N) -> Option<f64>
where N: ToPrimitive,

source§

impl NumCast for i8

source§

fn from<N>(n: N) -> Option<i8>
where N: ToPrimitive,

source§

impl NumCast for i16

source§

fn from<N>(n: N) -> Option<i16>
where N: ToPrimitive,

source§

impl NumCast for i32

source§

fn from<N>(n: N) -> Option<i32>
where N: ToPrimitive,

source§

impl NumCast for i64

source§

fn from<N>(n: N) -> Option<i64>
where N: ToPrimitive,

source§

impl NumCast for i128

source§

fn from<N>(n: N) -> Option<i128>
where N: ToPrimitive,

source§

impl NumCast for isize

source§

fn from<N>(n: N) -> Option<isize>
where N: ToPrimitive,

source§

impl NumCast for u8

source§

fn from<N>(n: N) -> Option<u8>
where N: ToPrimitive,

source§

impl NumCast for u16

source§

fn from<N>(n: N) -> Option<u16>
where N: ToPrimitive,

source§

impl NumCast for u32

source§

fn from<N>(n: N) -> Option<u32>
where N: ToPrimitive,

source§

impl NumCast for u64

source§

fn from<N>(n: N) -> Option<u64>
where N: ToPrimitive,

source§

impl NumCast for u128

source§

fn from<N>(n: N) -> Option<u128>
where N: ToPrimitive,

source§

impl NumCast for usize

source§

fn from<N>(n: N) -> Option<usize>
where N: ToPrimitive,

source§

impl<T> NumCast for Wrapping<T>
where T: NumCast,

source§

fn from<U>(n: U) -> Option<Wrapping<T>>
where U: ToPrimitive,

Implementors§

source§

impl<T> NumCast for Complex<T>
where T: NumCast + Num,