ToPrimitive in num_traits::cast - Rust
Description: A generic trait for converting a value to a number.
Keywords: rust, rustlang, rust-lang, ToPrimitive

# Trait num_traits::cast::ToPrimitive

source ·

    pub trait ToPrimitive {
    Show 14 methods    fn to_i64(&self) -> Option<i64>;
        fn to_u64(&self) -> Option<u64>;

        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 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 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 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 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 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>

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 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 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 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 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 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 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 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<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>

## Implementors§