Trait overflower_support::ShlWrap
[−]
[src]
pub trait ShlWrap<RHS = usize> { type Output; fn shl_wrap(self, rhs: RHS) -> Self::Output; }
Shift left, return 0 if the number of bits shifted are higher than the width of the type
This does the same as the std::ops::Shl
trait for most types.
it is specialized for integer types to return zero on over- or underflow.
Associated Types
type Output
the return type of our shift operation
Required Methods
fn shl_wrap(self, rhs: RHS) -> Self::Output
shift left, return 0 if the number of bits shifted are higher than the width of the type
Implementors
impl<T, R> ShlWrap<R> for T where
T: Shl<R>,impl ShlWrap<u8> for u8
impl ShlWrap<u16> for u8
impl ShlWrap<u32> for u8
impl ShlWrap<u64> for u8
impl ShlWrap<usize> for u8
impl ShlWrap<i8> for u8
impl ShlWrap<i16> for u8
impl ShlWrap<i32> for u8
impl ShlWrap<i64> for u8
impl ShlWrap<isize> for u8
impl ShlWrap<u8> for u16
impl ShlWrap<u16> for u16
impl ShlWrap<u32> for u16
impl ShlWrap<u64> for u16
impl ShlWrap<usize> for u16
impl ShlWrap<i8> for u16
impl ShlWrap<i16> for u16
impl ShlWrap<i32> for u16
impl ShlWrap<i64> for u16
impl ShlWrap<isize> for u16
impl ShlWrap<u8> for u32
impl ShlWrap<u16> for u32
impl ShlWrap<u32> for u32
impl ShlWrap<u64> for u32
impl ShlWrap<usize> for u32
impl ShlWrap<i8> for u32
impl ShlWrap<i16> for u32
impl ShlWrap<i32> for u32
impl ShlWrap<i64> for u32
impl ShlWrap<isize> for u32
impl ShlWrap<u8> for u64
impl ShlWrap<u16> for u64
impl ShlWrap<u32> for u64
impl ShlWrap<u64> for u64
impl ShlWrap<usize> for u64
impl ShlWrap<i8> for u64
impl ShlWrap<i16> for u64
impl ShlWrap<i32> for u64
impl ShlWrap<i64> for u64
impl ShlWrap<isize> for u64
impl ShlWrap<u8> for usize
impl ShlWrap<u16> for usize
impl ShlWrap<u32> for usize
impl ShlWrap<u64> for usize
impl ShlWrap<usize> for usize
impl ShlWrap<i8> for usize
impl ShlWrap<i16> for usize
impl ShlWrap<i32> for usize
impl ShlWrap<i64> for usize
impl ShlWrap<isize> for usize
impl ShlWrap<u8> for i8
impl ShlWrap<u16> for i8
impl ShlWrap<u32> for i8
impl ShlWrap<u64> for i8
impl ShlWrap<usize> for i8
impl ShlWrap<i8> for i8
impl ShlWrap<i16> for i8
impl ShlWrap<i32> for i8
impl ShlWrap<i64> for i8
impl ShlWrap<isize> for i8
impl ShlWrap<u8> for i16
impl ShlWrap<u16> for i16
impl ShlWrap<u32> for i16
impl ShlWrap<u64> for i16
impl ShlWrap<usize> for i16
impl ShlWrap<i8> for i16
impl ShlWrap<i16> for i16
impl ShlWrap<i32> for i16
impl ShlWrap<i64> for i16
impl ShlWrap<isize> for i16
impl ShlWrap<u8> for i32
impl ShlWrap<u16> for i32
impl ShlWrap<u32> for i32
impl ShlWrap<u64> for i32
impl ShlWrap<usize> for i32
impl ShlWrap<i8> for i32
impl ShlWrap<i16> for i32
impl ShlWrap<i32> for i32
impl ShlWrap<i64> for i32
impl ShlWrap<isize> for i32
impl ShlWrap<u8> for i64
impl ShlWrap<u16> for i64
impl ShlWrap<u32> for i64
impl ShlWrap<u64> for i64
impl ShlWrap<usize> for i64
impl ShlWrap<i8> for i64
impl ShlWrap<i16> for i64
impl ShlWrap<i32> for i64
impl ShlWrap<i64> for i64
impl ShlWrap<isize> for i64
impl ShlWrap<u8> for isize
impl ShlWrap<u16> for isize
impl ShlWrap<u32> for isize
impl ShlWrap<u64> for isize
impl ShlWrap<usize> for isize
impl ShlWrap<i8> for isize
impl ShlWrap<i16> for isize
impl ShlWrap<i32> for isize
impl ShlWrap<i64> for isize
impl ShlWrap<isize> for isize