pub trait TryIntoByAdd<T> {
    // Required method
    fn try_into_by_add(self) -> Option<T>;
}
Expand description

A generic trait for converting into possible types.

Examples

Usage:

fn convert_try_into_u8<T: TryIntoByAdd<u8>>(min: T, max: T) -> (u8, u8) {
    (min.try_into_by_add().unwrap(), max.try_into_by_add().unwrap())
}
assert_eq!(convert_try_into_u8(i8::MIN, i8::MAX), (u8::MIN, u8::MAX));

assert_eq!(TryIntoByAdd::<u8>::try_into_by_add(127_i16), Some(255u8));
assert_eq!(TryIntoByAdd::<u8>::try_into_by_add(128_i16), None);
assert_eq!(TryIntoByAdd::<u8>::try_into_by_add(-128_i16), Some(0_u8));
assert_eq!(TryIntoByAdd::<u8>::try_into_by_add(-129_i16), None);

Required Methods§

source

fn try_into_by_add(self) -> Option<T>

Converts the value of self to an T.

Implementations on Foreign Types§

source§

impl TryIntoByAdd<i8> for isize

source§

impl TryIntoByAdd<i8> for u8

source§

impl TryIntoByAdd<i128> for isize

source§

impl TryIntoByAdd<i32> for i64

source§

impl TryIntoByAdd<i8> for u16

source§

impl TryIntoByAdd<i32> for usize

source§

impl TryIntoByAdd<isize> for u32

source§

impl TryIntoByAdd<u128> for usize

source§

impl TryIntoByAdd<u128> for u128

source§

impl TryIntoByAdd<u16> for u32

source§

impl TryIntoByAdd<i64> for i32

source§

impl TryIntoByAdd<i32> for isize

source§

impl TryIntoByAdd<usize> for i16

source§

impl TryIntoByAdd<u8> for u16

source§

impl TryIntoByAdd<u64> for u8

source§

impl TryIntoByAdd<u16> for usize

source§

impl TryIntoByAdd<i8> for u128

source§

impl TryIntoByAdd<u16> for isize

source§

impl TryIntoByAdd<i128> for u8

source§

impl TryIntoByAdd<u16> for u8

source§

impl TryIntoByAdd<u32> for i128

source§

impl TryIntoByAdd<isize> for isize

source§

impl TryIntoByAdd<i128> for usize

source§

impl TryIntoByAdd<u16> for i128

source§

impl TryIntoByAdd<i32> for i16

source§

impl TryIntoByAdd<u32> for u32

source§

impl TryIntoByAdd<u64> for u16

source§

impl TryIntoByAdd<u128> for i32

source§

impl TryIntoByAdd<i64> for u32

source§

impl TryIntoByAdd<i64> for i16

source§

impl TryIntoByAdd<u64> for u128

source§

impl TryIntoByAdd<u128> for i16

source§

impl TryIntoByAdd<u64> for usize

source§

impl TryIntoByAdd<i8> for i8

source§

impl TryIntoByAdd<usize> for i8

source§

impl TryIntoByAdd<u32> for u16

source§

impl TryIntoByAdd<i8> for u64

source§

impl TryIntoByAdd<i16> for u8

source§

impl TryIntoByAdd<isize> for u8

source§

impl TryIntoByAdd<usize> for i128

source§

impl TryIntoByAdd<i32> for u16

source§

impl TryIntoByAdd<i8> for i64

source§

impl TryIntoByAdd<i16> for i64

source§

impl TryIntoByAdd<i16> for i128

source§

impl TryIntoByAdd<u128> for u16

source§

impl TryIntoByAdd<usize> for i64

source§

impl TryIntoByAdd<i128> for i16

source§

impl TryIntoByAdd<isize> for i64

source§

impl TryIntoByAdd<usize> for u8

source§

impl TryIntoByAdd<u64> for isize

source§

impl TryIntoByAdd<u16> for i8

source§

impl TryIntoByAdd<i128> for u32

source§

impl TryIntoByAdd<i8> for u32

source§

impl TryIntoByAdd<u8> for usize

source§

impl TryIntoByAdd<isize> for u64

source§

impl TryIntoByAdd<i64> for i128

source§

impl TryIntoByAdd<i8> for usize

source§

impl TryIntoByAdd<isize> for usize

source§

impl TryIntoByAdd<i16> for isize

source§

impl TryIntoByAdd<i128> for i32

source§

impl TryIntoByAdd<i64> for u8

source§

impl TryIntoByAdd<u16> for i16

source§

impl TryIntoByAdd<u32> for i32

source§

impl TryIntoByAdd<i64> for u128

source§

impl TryIntoByAdd<u64> for u32

source§

impl TryIntoByAdd<i32> for i32

source§

impl TryIntoByAdd<i64> for u64

source§

impl TryIntoByAdd<i64> for usize

source§

impl TryIntoByAdd<i128> for u16

source§

impl TryIntoByAdd<isize> for i8

source§

impl TryIntoByAdd<u64> for i16

source§

impl TryIntoByAdd<u32> for usize

source§

impl TryIntoByAdd<u16> for i32

source§

impl TryIntoByAdd<u8> for u32

source§

impl TryIntoByAdd<u16> for u128

source§

impl TryIntoByAdd<i8> for i16

source§

impl TryIntoByAdd<u128> for isize

source§

impl TryIntoByAdd<u8> for u64

source§

impl TryIntoByAdd<i32> for i8

source§

impl TryIntoByAdd<i8> for i128

source§

impl TryIntoByAdd<isize> for i16

source§

impl TryIntoByAdd<u32> for isize

source§

impl TryIntoByAdd<i16> for i8

source§

impl TryIntoByAdd<i64> for u16

source§

impl TryIntoByAdd<i32> for u64

source§

impl TryIntoByAdd<u8> for i8

source§

impl TryIntoByAdd<i16> for i16

source§

impl TryIntoByAdd<usize> for isize

source§

impl TryIntoByAdd<i64> for isize

source§

impl TryIntoByAdd<u64> for i8

source§

impl TryIntoByAdd<u8> for i64

source§

impl TryIntoByAdd<i64> for i64

source§

impl TryIntoByAdd<u32> for u128

source§

impl TryIntoByAdd<i128> for i64

source§

impl TryIntoByAdd<u32> for i8

source§

impl TryIntoByAdd<i128> for i128

source§

impl TryIntoByAdd<i32> for u8

source§

impl TryIntoByAdd<i16> for u16

source§

impl TryIntoByAdd<i128> for u128

source§

impl TryIntoByAdd<i64> for i8

source§

impl TryIntoByAdd<u8> for i128

source§

impl TryIntoByAdd<u32> for u8

source§

impl TryIntoByAdd<u64> for i64

source§

impl TryIntoByAdd<u8> for i32

source§

impl TryIntoByAdd<i16> for u64

source§

impl TryIntoByAdd<usize> for usize

source§

impl TryIntoByAdd<i32> for u32

source§

impl TryIntoByAdd<u64> for u64

source§

impl TryIntoByAdd<usize> for i32

source§

impl TryIntoByAdd<u128> for i8

source§

impl TryIntoByAdd<usize> for u32

source§

impl TryIntoByAdd<isize> for i32

source§

impl TryIntoByAdd<i16> for u32

source§

impl TryIntoByAdd<isize> for i128

source§

impl TryIntoByAdd<i128> for i8

source§

impl TryIntoByAdd<usize> for u128

source§

impl TryIntoByAdd<u32> for i64

source§

impl TryIntoByAdd<usize> for u64

source§

impl TryIntoByAdd<i8> for i32

source§

impl TryIntoByAdd<u8> for u128

source§

impl TryIntoByAdd<i32> for u128

source§

impl TryIntoByAdd<u128> for i128

source§

impl TryIntoByAdd<u128> for u64

source§

impl TryIntoByAdd<u8> for isize

source§

impl TryIntoByAdd<u128> for u8

source§

impl TryIntoByAdd<i16> for u128

source§

impl TryIntoByAdd<u8> for i16

source§

impl TryIntoByAdd<u128> for u32

source§

impl TryIntoByAdd<u64> for i128

source§

impl TryIntoByAdd<isize> for u128

source§

impl TryIntoByAdd<u16> for u16

source§

impl TryIntoByAdd<u128> for i64

source§

impl TryIntoByAdd<u8> for u8

source§

impl TryIntoByAdd<i128> for u64

source§

impl TryIntoByAdd<u32> for u64

source§

impl TryIntoByAdd<u32> for i16

source§

impl TryIntoByAdd<usize> for u16

source§

impl TryIntoByAdd<u16> for i64

source§

impl TryIntoByAdd<u64> for i32

source§

impl TryIntoByAdd<i16> for usize

source§

impl TryIntoByAdd<i16> for i32

source§

impl TryIntoByAdd<u16> for u64

source§

impl TryIntoByAdd<i32> for i128

source§

impl TryIntoByAdd<isize> for u16

Implementors§