TryFromByAdd

Trait TryFromByAdd 

Source
pub trait TryFromByAdd<T> {
    // Required method
    fn try_from_by_add(n: T) -> Option<Self>
       where Self: Sized;
}
Expand description

Generic trait for converting between integer types within bounds of possible values.

  • For all integer types in the range of possible values.
  • Returns an error if the value is out of range.
  • Converting types with different signs of the same size in bits.
  • A normal conversion of same-signed types to a larger integral type.
  • It is possible to convert types with different signs to a larger integer type.

§Usage

Basic use of the trait.

use num_convert::TryFromByAdd;

assert_eq!(<u8 as TryFromByAdd<i16>>::try_from_by_add(-128_i16).unwrap(), 0_u8);
assert_eq!(<u8>::try_from_by_add(127_i8).unwrap(), 255_u8);

§Examples

Converting without error.

assert_eq!(<u32 as TryFromByAdd<i8>>::try_from_by_add(<i8>::MIN), Some(<u8>::MIN as u32));
assert_eq!(<u64 as TryFromByAdd<i8>>::try_from_by_add(<i8>::MAX), Some(<u8>::MAX as u64));

Converting with error.

assert_eq!(<u32>::try_from_by_add(<u64>::MAX), None);
assert_eq!(<u8>::try_from_by_add(128_i16), None);

Required Methods§

Source

fn try_from_by_add(n: T) -> Option<Self>
where Self: Sized,

Converts the value from T to self.

Implementations on Foreign Types§

Source§

impl TryFromByAdd<i8> for i8

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type i8.

Source§

impl TryFromByAdd<i8> for i16

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to i16 losslessly.

Source§

impl TryFromByAdd<i8> for i32

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to i32 losslessly.

Source§

impl TryFromByAdd<i8> for i64

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to i64 losslessly.

Source§

impl TryFromByAdd<i8> for i128

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to i128 losslessly.

Source§

impl TryFromByAdd<i8> for isize

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to isize losslessly.

Source§

impl TryFromByAdd<i8> for u8

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to equvalent u8.

Source§

impl TryFromByAdd<i8> for u16

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to equvalent u16.

Source§

impl TryFromByAdd<i8> for u32

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to equvalent u32.

Source§

impl TryFromByAdd<i8> for u64

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to equvalent u64.

Source§

impl TryFromByAdd<i8> for u128

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to equvalent u128.

Source§

impl TryFromByAdd<i8> for usize

Source§

fn try_from_by_add(n: i8) -> Option<Self>

Converts i8 to equvalent usize.

Source§

impl TryFromByAdd<i16> for i8

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to i8. Conversion can fail.

Source§

impl TryFromByAdd<i16> for i16

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type i16.

Source§

impl TryFromByAdd<i16> for i32

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to i32 losslessly.

Source§

impl TryFromByAdd<i16> for i64

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to i64 losslessly.

Source§

impl TryFromByAdd<i16> for i128

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to i128 losslessly.

Source§

impl TryFromByAdd<i16> for isize

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to isize losslessly.

Source§

impl TryFromByAdd<i16> for u8

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to equvalent u8. Conversion can fail.

Source§

impl TryFromByAdd<i16> for u16

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to equvalent u16.

Source§

impl TryFromByAdd<i16> for u32

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to equvalent u32.

Source§

impl TryFromByAdd<i16> for u64

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to equvalent u64.

Source§

impl TryFromByAdd<i16> for u128

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to equvalent u128.

Source§

impl TryFromByAdd<i16> for usize

Source§

fn try_from_by_add(n: i16) -> Option<Self>

Converts i16 to equvalent usize.

Source§

impl TryFromByAdd<i32> for i8

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to i8. Conversion can fail.

Source§

impl TryFromByAdd<i32> for i16

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to i16. Conversion can fail.

Source§

impl TryFromByAdd<i32> for i32

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type i32.

Source§

impl TryFromByAdd<i32> for i64

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to i64 losslessly.

Source§

impl TryFromByAdd<i32> for i128

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to i128 losslessly.

Source§

impl TryFromByAdd<i32> for isize

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to isize losslessly.

Source§

impl TryFromByAdd<i32> for u8

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to equvalent u8. Conversion can fail.

Source§

impl TryFromByAdd<i32> for u16

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to equvalent u16. Conversion can fail.

Source§

impl TryFromByAdd<i32> for u32

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to equvalent u32.

Source§

impl TryFromByAdd<i32> for u64

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to equvalent u64.

Source§

impl TryFromByAdd<i32> for u128

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to equvalent u128.

Source§

impl TryFromByAdd<i32> for usize

Source§

fn try_from_by_add(n: i32) -> Option<Self>

Converts i32 to equvalent usize.

Source§

impl TryFromByAdd<i64> for i8

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to i8. Conversion can fail.

Source§

impl TryFromByAdd<i64> for i16

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to i16. Conversion can fail.

Source§

impl TryFromByAdd<i64> for i32

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to i32. Conversion can fail.

Source§

impl TryFromByAdd<i64> for i64

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type i64.

Source§

impl TryFromByAdd<i64> for i128

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to i128 losslessly.

Source§

impl TryFromByAdd<i64> for isize

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to isize losslessly.

Source§

impl TryFromByAdd<i64> for u8

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to equvalent u8. Conversion can fail.

Source§

impl TryFromByAdd<i64> for u16

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to equvalent u16. Conversion can fail.

Source§

impl TryFromByAdd<i64> for u32

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to equvalent u32. Conversion can fail.

Source§

impl TryFromByAdd<i64> for u64

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to equvalent u64.

Source§

impl TryFromByAdd<i64> for u128

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to equvalent u128.

Source§

impl TryFromByAdd<i64> for usize

Source§

fn try_from_by_add(n: i64) -> Option<Self>

Converts i64 to equvalent usize.

Source§

impl TryFromByAdd<i128> for i8

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to i8. Conversion can fail.

Source§

impl TryFromByAdd<i128> for i16

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to i16. Conversion can fail.

Source§

impl TryFromByAdd<i128> for i32

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to i32. Conversion can fail.

Source§

impl TryFromByAdd<i128> for i64

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to i64. Conversion can fail.

Source§

impl TryFromByAdd<i128> for i128

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type i128.

Source§

impl TryFromByAdd<i128> for isize

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to isize. Conversion can fail.

Source§

impl TryFromByAdd<i128> for u8

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to equvalent u8. Conversion can fail.

Source§

impl TryFromByAdd<i128> for u16

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to equvalent u16. Conversion can fail.

Source§

impl TryFromByAdd<i128> for u32

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to equvalent u32. Conversion can fail.

Source§

impl TryFromByAdd<i128> for u64

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to equvalent u64. Conversion can fail.

Source§

impl TryFromByAdd<i128> for u128

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to equvalent u128.

Source§

impl TryFromByAdd<i128> for usize

Source§

fn try_from_by_add(n: i128) -> Option<Self>

Converts i128 to equvalent usize. Conversion can fail.

Source§

impl TryFromByAdd<isize> for i8

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to i8. Conversion can fail.

Source§

impl TryFromByAdd<isize> for i16

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to i16. Conversion can fail.

Source§

impl TryFromByAdd<isize> for i32

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to i32. Conversion can fail.

Source§

impl TryFromByAdd<isize> for i64

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to i64 losslessly.

Source§

impl TryFromByAdd<isize> for i128

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to i128 losslessly.

Source§

impl TryFromByAdd<isize> for isize

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type isize.

Source§

impl TryFromByAdd<isize> for u8

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to equvalent u8. Conversion can fail.

Source§

impl TryFromByAdd<isize> for u16

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to equvalent u16. Conversion can fail.

Source§

impl TryFromByAdd<isize> for u32

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to equvalent u32. Conversion can fail.

Source§

impl TryFromByAdd<isize> for u64

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to equvalent u64.

Source§

impl TryFromByAdd<isize> for u128

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to equvalent u128.

Source§

impl TryFromByAdd<isize> for usize

Source§

fn try_from_by_add(n: isize) -> Option<Self>

Converts isize to equvalent usize.

Source§

impl TryFromByAdd<u8> for i8

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to equvalent i8.

Source§

impl TryFromByAdd<u8> for i16

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to equvalent i16.

Source§

impl TryFromByAdd<u8> for i32

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to equvalent i32.

Source§

impl TryFromByAdd<u8> for i64

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to equvalent i64.

Source§

impl TryFromByAdd<u8> for i128

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to equvalent i128.

Source§

impl TryFromByAdd<u8> for isize

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to equvalent isize.

Source§

impl TryFromByAdd<u8> for u8

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type u8.

Source§

impl TryFromByAdd<u8> for u16

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to u16 losslessly.

Source§

impl TryFromByAdd<u8> for u32

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to u32 losslessly.

Source§

impl TryFromByAdd<u8> for u64

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to u64 losslessly.

Source§

impl TryFromByAdd<u8> for u128

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to u128 losslessly.

Source§

impl TryFromByAdd<u8> for usize

Source§

fn try_from_by_add(n: u8) -> Option<Self>

Converts u8 to usize losslessly.

Source§

impl TryFromByAdd<u16> for i8

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to equvalent i8. Conversion can fail.

Source§

impl TryFromByAdd<u16> for i16

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to equvalent i16.

Source§

impl TryFromByAdd<u16> for i32

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to equvalent i32.

Source§

impl TryFromByAdd<u16> for i64

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to equvalent i64.

Source§

impl TryFromByAdd<u16> for i128

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to equvalent i128.

Source§

impl TryFromByAdd<u16> for isize

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to equvalent isize.

Source§

impl TryFromByAdd<u16> for u8

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to u8. Conversion can fail.

Source§

impl TryFromByAdd<u16> for u16

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type u16.

Source§

impl TryFromByAdd<u16> for u32

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to u32 losslessly.

Source§

impl TryFromByAdd<u16> for u64

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to u64 losslessly.

Source§

impl TryFromByAdd<u16> for u128

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to u128 losslessly.

Source§

impl TryFromByAdd<u16> for usize

Source§

fn try_from_by_add(n: u16) -> Option<Self>

Converts u16 to usize losslessly.

Source§

impl TryFromByAdd<u32> for i8

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to equvalent i8. Conversion can fail.

Source§

impl TryFromByAdd<u32> for i16

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to equvalent i16. Conversion can fail.

Source§

impl TryFromByAdd<u32> for i32

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to equvalent i32.

Source§

impl TryFromByAdd<u32> for i64

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to equvalent i64.

Source§

impl TryFromByAdd<u32> for i128

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to equvalent i128.

Source§

impl TryFromByAdd<u32> for isize

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to equvalent isize.

Source§

impl TryFromByAdd<u32> for u8

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to u8. Conversion can fail.

Source§

impl TryFromByAdd<u32> for u16

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to u16. Conversion can fail.

Source§

impl TryFromByAdd<u32> for u32

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type u32.

Source§

impl TryFromByAdd<u32> for u64

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to u64 losslessly.

Source§

impl TryFromByAdd<u32> for u128

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to u128 losslessly.

Source§

impl TryFromByAdd<u32> for usize

Source§

fn try_from_by_add(n: u32) -> Option<Self>

Converts u32 to usize losslessly.

Source§

impl TryFromByAdd<u64> for i8

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to equvalent i8. Conversion can fail.

Source§

impl TryFromByAdd<u64> for i16

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to equvalent i16. Conversion can fail.

Source§

impl TryFromByAdd<u64> for i32

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to equvalent i32. Conversion can fail.

Source§

impl TryFromByAdd<u64> for i64

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to equvalent i64.

Source§

impl TryFromByAdd<u64> for i128

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to equvalent i128.

Source§

impl TryFromByAdd<u64> for isize

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to equvalent isize.

Source§

impl TryFromByAdd<u64> for u8

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to u8. Conversion can fail.

Source§

impl TryFromByAdd<u64> for u16

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to u16. Conversion can fail.

Source§

impl TryFromByAdd<u64> for u32

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to u32. Conversion can fail.

Source§

impl TryFromByAdd<u64> for u64

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type u64.

Source§

impl TryFromByAdd<u64> for u128

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to u128 losslessly.

Source§

impl TryFromByAdd<u64> for usize

Source§

fn try_from_by_add(n: u64) -> Option<Self>

Converts u64 to usize losslessly.

Source§

impl TryFromByAdd<u128> for i8

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to equvalent i8. Conversion can fail.

Source§

impl TryFromByAdd<u128> for i16

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to equvalent i16. Conversion can fail.

Source§

impl TryFromByAdd<u128> for i32

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to equvalent i32. Conversion can fail.

Source§

impl TryFromByAdd<u128> for i64

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to equvalent i64. Conversion can fail.

Source§

impl TryFromByAdd<u128> for i128

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to equvalent i128.

Source§

impl TryFromByAdd<u128> for isize

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to equvalent isize. Conversion can fail.

Source§

impl TryFromByAdd<u128> for u8

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to u8. Conversion can fail.

Source§

impl TryFromByAdd<u128> for u16

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to u16. Conversion can fail.

Source§

impl TryFromByAdd<u128> for u32

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to u32. Conversion can fail.

Source§

impl TryFromByAdd<u128> for u64

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to u64. Conversion can fail.

Source§

impl TryFromByAdd<u128> for u128

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type u128.

Source§

impl TryFromByAdd<u128> for usize

Source§

fn try_from_by_add(n: u128) -> Option<Self>

Converts u128 to usize. Conversion can fail.

Source§

impl TryFromByAdd<usize> for i8

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to equvalent i8. Conversion can fail.

Source§

impl TryFromByAdd<usize> for i16

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to equvalent i16. Conversion can fail.

Source§

impl TryFromByAdd<usize> for i32

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to equvalent i32. Conversion can fail.

Source§

impl TryFromByAdd<usize> for i64

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to equvalent i64.

Source§

impl TryFromByAdd<usize> for i128

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to equvalent i128.

Source§

impl TryFromByAdd<usize> for isize

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to equvalent isize.

Source§

impl TryFromByAdd<usize> for u8

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to u8. Conversion can fail.

Source§

impl TryFromByAdd<usize> for u16

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to u16. Conversion can fail.

Source§

impl TryFromByAdd<usize> for u32

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to u32. Conversion can fail.

Source§

impl TryFromByAdd<usize> for u64

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to u64 losslessly.

Source§

impl TryFromByAdd<usize> for u128

Source§

fn try_from_by_add(n: usize) -> Option<Self>

Converts usize to u128 losslessly.

Source§

impl TryFromByAdd<usize> for usize

Source§

fn try_from_by_add(n: Self) -> Option<Self>

Returns the same type usize.

Implementors§