pub trait ToPrimitive {
Show 14 methods // Required methods fn to_i64(&self) -> Option<i64>; fn to_u64(&self) -> Option<u64>; // Provided methods fn to_isize(&self) -> Option<isize> { ... } fn to_i8(&self) -> Option<i8> { ... } fn to_i16(&self) -> Option<i16> { ... } fn to_i32(&self) -> Option<i32> { ... } fn to_i128(&self) -> Option<i128> { ... } fn to_usize(&self) -> Option<usize> { ... } fn to_u8(&self) -> Option<u8> { ... } fn to_u16(&self) -> Option<u16> { ... } fn to_u32(&self) -> Option<u32> { ... } fn to_u128(&self) -> Option<u128> { ... } fn to_f32(&self) -> Option<f32> { ... } fn to_f64(&self) -> Option<f64> { ... }
}
Expand description

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§

source

fn to_i64(&self) -> Option<i64>

Converts the value of self to an i64. If the value cannot be represented by an i64, then None is returned.

source

fn to_u64(&self) -> Option<u64>

Converts the value of self to a u64. If the value cannot be represented by a u64, then None is returned.

Provided Methods§

source

fn to_isize(&self) -> Option<isize>

Converts the value of self to an isize. If the value cannot be represented by an isize, then None is returned.

source

fn to_i8(&self) -> Option<i8>

Converts the value of self to an i8. If the value cannot be represented by an i8, then None is returned.

source

fn to_i16(&self) -> Option<i16>

Converts the value of self to an i16. If the value cannot be represented by an i16, then None is returned.

source

fn to_i32(&self) -> Option<i32>

Converts the value of self to an i32. If the value cannot be represented by an i32, then None is returned.

source

fn to_i128(&self) -> Option<i128>

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.

source

fn to_usize(&self) -> Option<usize>

Converts the value of self to a usize. If the value cannot be represented by a usize, then None is returned.

source

fn to_u8(&self) -> Option<u8>

Converts the value of self to a u8. If the value cannot be represented by a u8, then None is returned.

source

fn to_u16(&self) -> Option<u16>

Converts the value of self to a u16. If the value cannot be represented by a u16, then None is returned.

source

fn to_u32(&self) -> Option<u32>

Converts the value of self to a u32. If the value cannot be represented by a u32, then None is returned.

source

fn to_u128(&self) -> Option<u128>

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.

source

fn to_f32(&self) -> Option<f32>

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.

source

fn to_f64(&self) -> Option<f64>

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§

source§

impl<T: ToPrimitive> ToPrimitive for Wrapping<T>

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for u128

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for u64

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for i16

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for usize

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for i64

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for f64

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for u8

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for f32

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for u32

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for isize

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for i8

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for i32

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for u16

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

source§

impl ToPrimitive for i128

source§

fn to_isize(&self) -> Option<isize>

source§

fn to_i8(&self) -> Option<i8>

source§

fn to_i16(&self) -> Option<i16>

source§

fn to_i32(&self) -> Option<i32>

source§

fn to_i64(&self) -> Option<i64>

source§

fn to_i128(&self) -> Option<i128>

source§

fn to_usize(&self) -> Option<usize>

source§

fn to_u8(&self) -> Option<u8>

source§

fn to_u16(&self) -> Option<u16>

source§

fn to_u32(&self) -> Option<u32>

source§

fn to_u64(&self) -> Option<u64>

source§

fn to_u128(&self) -> Option<u128>

source§

fn to_f32(&self) -> Option<f32>

source§

fn to_f64(&self) -> Option<f64>

Implementors§