ZeroExtend

Trait ZeroExtend 

Source
pub trait ZeroExtend<T>: Sized {
    // Required method
    fn zero_extend(self) -> T;
}
Expand description

Zero extend

This trait serves to extend integers with 0s, including signed ones.

Required Methods§

Source

fn zero_extend(self) -> T

Zero extends this type

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl ZeroExtend<i16> for i8

Source§

impl ZeroExtend<i32> for i8

Source§

impl ZeroExtend<i32> for i16

Source§

impl ZeroExtend<i64> for i8

Source§

impl ZeroExtend<i64> for i16

Source§

impl ZeroExtend<i64> for i32

Source§

impl ZeroExtend<i128> for i8

Source§

impl ZeroExtend<i128> for i16

Source§

impl ZeroExtend<i128> for i32

Source§

impl ZeroExtend<i128> for i64

Source§

impl ZeroExtend<u16> for u8

Source§

impl ZeroExtend<u32> for u8

Source§

impl ZeroExtend<u32> for u16

Source§

impl ZeroExtend<u64> for u8

Source§

impl ZeroExtend<u64> for u16

Source§

impl ZeroExtend<u64> for u32

Source§

impl ZeroExtend<u128> for u8

Source§

impl ZeroExtend<u128> for u16

Source§

impl ZeroExtend<u128> for u32

Source§

impl ZeroExtend<u128> for u64

Source§

impl<'a> ZeroExtend<i16> for &'a i8
where i8: ZeroExtend<i16>,

Source§

impl<'a> ZeroExtend<i32> for &'a i8
where i8: ZeroExtend<i32>,

Source§

impl<'a> ZeroExtend<i32> for &'a i16
where i16: ZeroExtend<i32>,

Source§

impl<'a> ZeroExtend<i64> for &'a i8
where i8: ZeroExtend<i64>,

Source§

impl<'a> ZeroExtend<i64> for &'a i16
where i16: ZeroExtend<i64>,

Source§

impl<'a> ZeroExtend<i64> for &'a i32
where i32: ZeroExtend<i64>,

Source§

impl<'a> ZeroExtend<i128> for &'a i8
where i8: ZeroExtend<i128>,

Source§

impl<'a> ZeroExtend<i128> for &'a i16

Source§

impl<'a> ZeroExtend<i128> for &'a i32

Source§

impl<'a> ZeroExtend<i128> for &'a i64

Source§

impl<'a> ZeroExtend<u16> for &'a u8
where u8: ZeroExtend<u16>,

Source§

impl<'a> ZeroExtend<u32> for &'a u8
where u8: ZeroExtend<u32>,

Source§

impl<'a> ZeroExtend<u32> for &'a u16
where u16: ZeroExtend<u32>,

Source§

impl<'a> ZeroExtend<u64> for &'a u8
where u8: ZeroExtend<u64>,

Source§

impl<'a> ZeroExtend<u64> for &'a u16
where u16: ZeroExtend<u64>,

Source§

impl<'a> ZeroExtend<u64> for &'a u32
where u32: ZeroExtend<u64>,

Source§

impl<'a> ZeroExtend<u128> for &'a u8
where u8: ZeroExtend<u128>,

Source§

impl<'a> ZeroExtend<u128> for &'a u16

Source§

impl<'a> ZeroExtend<u128> for &'a u32

Source§

impl<'a> ZeroExtend<u128> for &'a u64

Implementors§

Source§

impl<T> ZeroExtend<T> for T

Zero extending to the same type simply returns it