Trait num::cast::ToPrimitive [−][src]
A generic trait for converting a value to a number.
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.
Required methods
pub fn to_i64(&self) -> Option<i64>
[src]
Converts the value of self
to an i64
. If the value cannot be
represented by an i64
, then None
is returned.
pub fn to_u64(&self) -> Option<u64>
[src]
Converts the value of self
to a u64
. If the value cannot be
represented by a u64
, then None
is returned.
Provided methods
pub fn to_isize(&self) -> Option<isize>
[src]
Converts the value of self
to an isize
. If the value cannot be
represented by an isize
, then None
is returned.
pub fn to_i8(&self) -> Option<i8>
[src]
Converts the value of self
to an i8
. If the value cannot be
represented by an i8
, then None
is returned.
pub fn to_i16(&self) -> Option<i16>
[src]
Converts the value of self
to an i16
. If the value cannot be
represented by an i16
, then None
is returned.
pub fn to_i32(&self) -> Option<i32>
[src]
Converts the value of self
to an i32
. If the value cannot be
represented by an i32
, then None
is returned.
pub fn to_i128(&self) -> Option<i128>
[src]
Converts the value of self
to an i128
. If the value cannot be
represented by an i128
(i64
under the default implementation), then
None
is returned.
This method is only available with feature i128
enabled on Rust >= 1.26.
The default implementation converts through to_i64()
. Types implementing
this trait should override this method if they can represent a greater range.
pub fn to_usize(&self) -> Option<usize>
[src]
Converts the value of self
to a usize
. If the value cannot be
represented by a usize
, then None
is returned.
pub fn to_u8(&self) -> Option<u8>
[src]
Converts the value of self
to a u8
. If the value cannot be
represented by a u8
, then None
is returned.
pub fn to_u16(&self) -> Option<u16>
[src]
Converts the value of self
to a u16
. If the value cannot be
represented by a u16
, then None
is returned.
pub fn to_u32(&self) -> Option<u32>
[src]
Converts the value of self
to a u32
. If the value cannot be
represented by a u32
, then None
is returned.
pub fn to_u128(&self) -> Option<u128>
[src]
Converts the value of self
to a u128
. If the value cannot be
represented by a u128
(u64
under the default implementation), then
None
is returned.
This method is only available with feature i128
enabled on Rust >= 1.26.
The default implementation converts through to_u64()
. Types implementing
this trait should override this method if they can represent a greater range.
pub fn to_f32(&self) -> Option<f32>
[src]
Converts the value of self
to an f32
. Overflows may map to positive
or negative inifinity, otherwise None
is returned if the value cannot
be represented by an f32
.
pub fn to_f64(&self) -> Option<f64>
[src]
Converts the value of self
to an f64
. Overflows may map to positive
or negative inifinity, otherwise None
is returned if the value cannot
be represented by an f64
.
The default implementation tries to convert through to_i64()
, and
failing that through to_u64()
. Types implementing this trait should
override this method if they can represent a greater range.
Implementations on Foreign Types
impl ToPrimitive for f32
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for u64
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl<T> ToPrimitive for Wrapping<T> where
T: ToPrimitive,
[src]
T: ToPrimitive,
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for u16
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for i64
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for isize
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for u32
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for u128
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for usize
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for f64
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for i32
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for u8
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for i8
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for i16
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for i128
[src]
pub fn to_isize(&self) -> Option<isize>
[src]
pub fn to_i8(&self) -> Option<i8>
[src]
pub fn to_i16(&self) -> Option<i16>
[src]
pub fn to_i32(&self) -> Option<i32>
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_usize(&self) -> Option<usize>
[src]
pub fn to_u8(&self) -> Option<u8>
[src]
pub fn to_u16(&self) -> Option<u16>
[src]
pub fn to_u32(&self) -> Option<u32>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
Implementors
impl ToPrimitive for BigInt
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl ToPrimitive for BigUint
[src]
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f32(&self) -> Option<f32>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl<T> ToPrimitive for Ratio<T> where
T: Clone + ToBigInt + Integer + ToPrimitive,
[src]
T: Clone + ToBigInt + Integer + ToPrimitive,
pub fn to_i64(&self) -> Option<i64>
[src]
pub fn to_i128(&self) -> Option<i128>
[src]
pub fn to_u64(&self) -> Option<u64>
[src]
pub fn to_u128(&self) -> Option<u128>
[src]
pub fn to_f64(&self) -> Option<f64>
[src]
impl<T> ToPrimitive for Complex<T> where
T: ToPrimitive + Num,
[src]
T: ToPrimitive + Num,