1.0.0[][src]Trait verified::Shr

#[lang = "shr"]pub trait Shr<Rhs = Self> {
    type Output;
#[must_use]    fn shr(self, rhs: Rhs) -> Self::Output;
}

The right shift operator >>. Note that because this trait is implemented for all integer types with multiple right-hand-side types, Rust's type checker has special handling for _ >> _, setting the result type for integer operations to the type of the left-hand-side operand. This means that though a >> b and a.shr(b) are one and the same from an evaluation standpoint, they are different when it comes to type inference.

Examples

An implementation of Shr that lifts the >> operation on integers to a wrapper around usize.

use std::ops::Shr;

#[derive(PartialEq, Debug)]
struct Scalar(usize);

impl Shr<Scalar> for Scalar {
    type Output = Self;

    fn shr(self, Scalar(rhs): Self) -> Scalar {
        let Scalar(lhs) = self;
        Scalar(lhs >> rhs)
    }
}

assert_eq!(Scalar(16) >> Scalar(2), Scalar(4));

An implementation of Shr that spins a vector rightward by a given amount.

use std::ops::Shr;

#[derive(PartialEq, Debug)]
struct SpinVector<T: Clone> {
    vec: Vec<T>,
}

impl<T: Clone> Shr<usize> for SpinVector<T> {
    type Output = Self;

    fn shr(self, rhs: usize) -> Self::Output {
        // Rotate the vector by `rhs` places.
        let (a, b) = self.vec.split_at(self.vec.len() - rhs);
        let mut spun_vector: Vec<T> = vec![];
        spun_vector.extend_from_slice(b);
        spun_vector.extend_from_slice(a);
        SpinVector { vec: spun_vector }
    }
}

assert_eq!(SpinVector { vec: vec![0, 1, 2, 3, 4] } >> 2,
           SpinVector { vec: vec![3, 4, 0, 1, 2] });

Associated Types

type Output

The resulting type after applying the >> operator.

Loading content...

Required methods

#[must_use]fn shr(self, rhs: Rhs) -> Self::Output

Performs the >> operation.

Loading content...

Implementations on Foreign Types

impl<'_, '_> Shr<&'_ i16> for &'_ i32[src]

type Output = <i32 as Shr<i16>>::Output

impl Shr<i32> for i128[src]

type Output = i128

impl<'a> Shr<i128> for &'a u16[src]

type Output = <u16 as Shr<i128>>::Output

impl<'_> Shr<&'_ usize> for Wrapping<isize>[src]

type Output = <Wrapping<isize> as Shr<usize>>::Output

impl<'a> Shr<i8> for &'a i8[src]

type Output = <i8 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ u16[src]

type Output = <u16 as Shr<usize>>::Output

impl Shr<i64> for i8[src]

type Output = i8

impl<'_> Shr<&'_ i32> for i16[src]

type Output = <i16 as Shr<i32>>::Output

impl<'a> Shr<usize> for &'a Wrapping<u64>[src]

type Output = <Wrapping<u64> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ isize> for &'_ u32[src]

type Output = <u32 as Shr<isize>>::Output

impl<'_> Shr<&'_ i32> for i32[src]

type Output = <i32 as Shr<i32>>::Output

impl Shr<usize> for Wrapping<i16>[src]

type Output = Wrapping<i16>

impl<'_> Shr<&'_ isize> for i16[src]

type Output = <i16 as Shr<isize>>::Output

impl<'a> Shr<u64> for &'a i64[src]

type Output = <i64 as Shr<u64>>::Output

impl Shr<u16> for u128[src]

type Output = u128

impl<'_, '_> Shr<&'_ i8> for &'_ u128[src]

type Output = <u128 as Shr<i8>>::Output

impl<'a> Shr<i16> for &'a i64[src]

type Output = <i64 as Shr<i16>>::Output

impl<'_> Shr<&'_ u16> for u8[src]

type Output = <u8 as Shr<u16>>::Output

impl Shr<isize> for i64[src]

type Output = i64

impl Shr<i8> for u128[src]

type Output = u128

impl<'_> Shr<&'_ u64> for i32[src]

type Output = <i32 as Shr<u64>>::Output

impl<'_> Shr<&'_ i64> for u64[src]

type Output = <u64 as Shr<i64>>::Output

impl Shr<i32> for u128[src]

type Output = u128

impl<'_> Shr<&'_ u128> for usize[src]

type Output = <usize as Shr<u128>>::Output

impl<'_> Shr<&'_ u64> for u32[src]

type Output = <u32 as Shr<u64>>::Output

impl Shr<i8> for i64[src]

type Output = i64

impl<'_, '_> Shr<&'_ u128> for &'_ u16[src]

type Output = <u16 as Shr<u128>>::Output

impl<'_, '_> Shr<&'_ u128> for &'_ usize[src]

type Output = <usize as Shr<u128>>::Output

impl<'_> Shr<&'_ u32> for u32[src]

type Output = <u32 as Shr<u32>>::Output

impl Shr<i128> for usize[src]

type Output = usize

impl<'_, '_> Shr<&'_ i32> for &'_ u8[src]

type Output = <u8 as Shr<i32>>::Output

impl Shr<u32> for u128[src]

type Output = u128

impl<'_> Shr<&'_ u64> for u8[src]

type Output = <u8 as Shr<u64>>::Output

impl<'_, '_> Shr<&'_ u8> for &'_ isize[src]

type Output = <isize as Shr<u8>>::Output

impl<'a> Shr<isize> for &'a u64[src]

type Output = <u64 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ u8> for &'_ i64[src]

type Output = <i64 as Shr<u8>>::Output

impl Shr<usize> for Wrapping<u32>[src]

type Output = Wrapping<u32>

impl<'a> Shr<u32> for &'a i8[src]

type Output = <i8 as Shr<u32>>::Output

impl<'_, '_> Shr<&'_ u8> for &'_ i16[src]

type Output = <i16 as Shr<u8>>::Output

impl<'_> Shr<&'_ usize> for Wrapping<u32>[src]

type Output = <Wrapping<u32> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ u16> for &'_ i16[src]

type Output = <i16 as Shr<u16>>::Output

impl Shr<usize> for Wrapping<i128>[src]

type Output = Wrapping<i128>

impl<'_> Shr<&'_ i8> for i16[src]

type Output = <i16 as Shr<i8>>::Output

impl Shr<u16> for u8[src]

type Output = u8

impl<'_, '_> Shr<&'_ i8> for &'_ isize[src]

type Output = <isize as Shr<i8>>::Output

impl<'_> Shr<&'_ i16> for i8[src]

type Output = <i8 as Shr<i16>>::Output

impl<'a> Shr<i8> for &'a usize[src]

type Output = <usize as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ u16> for &'_ u32[src]

type Output = <u32 as Shr<u16>>::Output

impl<'_> Shr<&'_ i8> for u128[src]

type Output = <u128 as Shr<i8>>::Output

impl<'a> Shr<u32> for &'a usize[src]

type Output = <usize as Shr<u32>>::Output

impl<'a> Shr<u8> for &'a u16[src]

type Output = <u16 as Shr<u8>>::Output

impl Shr<i64> for usize[src]

type Output = usize

impl<'a> Shr<u16> for &'a isize[src]

type Output = <isize as Shr<u16>>::Output

impl<'_, '_> Shr<&'_ u64> for &'_ usize[src]

type Output = <usize as Shr<u64>>::Output

impl<'a> Shr<i8> for &'a u16[src]

type Output = <u16 as Shr<i8>>::Output

impl<'a> Shr<isize> for &'a i64[src]

type Output = <i64 as Shr<isize>>::Output

impl<'a> Shr<u32> for &'a u32[src]

type Output = <u32 as Shr<u32>>::Output

impl<'a> Shr<u64> for &'a i128[src]

type Output = <i128 as Shr<u64>>::Output

impl<'_, '_> Shr<&'_ i16> for &'_ u16[src]

type Output = <u16 as Shr<i16>>::Output

impl<'_, '_> Shr<&'_ u16> for &'_ u8[src]

type Output = <u8 as Shr<u16>>::Output

impl<'a> Shr<u64> for &'a i8[src]

type Output = <i8 as Shr<u64>>::Output

impl<'_> Shr<&'_ u64> for isize[src]

type Output = <isize as Shr<u64>>::Output

impl Shr<u128> for i64[src]

type Output = i64

impl<'_, '_> Shr<&'_ u32> for &'_ u16[src]

type Output = <u16 as Shr<u32>>::Output

impl<'_> Shr<&'_ u32> for u128[src]

type Output = <u128 as Shr<u32>>::Output

impl Shr<usize> for Wrapping<u8>[src]

type Output = Wrapping<u8>

impl<'_> Shr<&'_ i8> for u64[src]

type Output = <u64 as Shr<i8>>::Output

impl<'_> Shr<&'_ u16> for i8[src]

type Output = <i8 as Shr<u16>>::Output

impl<'a> Shr<u8> for &'a u32[src]

type Output = <u32 as Shr<u8>>::Output

impl<'_, '_> Shr<&'_ u32> for &'_ i32[src]

type Output = <i32 as Shr<u32>>::Output

impl<'a> Shr<u16> for &'a i16[src]

type Output = <i16 as Shr<u16>>::Output

impl<'_> Shr<&'_ u16> for isize[src]

type Output = <isize as Shr<u16>>::Output

impl<'a> Shr<i128> for &'a u8[src]

type Output = <u8 as Shr<i128>>::Output

impl<'a> Shr<u128> for &'a u8[src]

type Output = <u8 as Shr<u128>>::Output

impl Shr<u64> for u8[src]

type Output = u8

impl Shr<i16> for u64[src]

type Output = u64

impl<'a> Shr<i128> for &'a u128[src]

type Output = <u128 as Shr<i128>>::Output

impl<'_, '_> Shr<&'_ u128> for &'_ i8[src]

type Output = <i8 as Shr<u128>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<i32>[src]

type Output = <Wrapping<i32> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i64> for &'_ i16[src]

type Output = <i16 as Shr<i64>>::Output

impl<'_> Shr<&'_ u32> for i128[src]

type Output = <i128 as Shr<u32>>::Output

impl<'_, '_> Shr<&'_ i32> for &'_ i32[src]

type Output = <i32 as Shr<i32>>::Output

impl<'a> Shr<u16> for &'a u16[src]

type Output = <u16 as Shr<u16>>::Output

impl Shr<i64> for isize[src]

type Output = isize

impl<'_> Shr<&'_ usize> for i8[src]

type Output = <i8 as Shr<usize>>::Output

impl<'a> Shr<i16> for &'a isize[src]

type Output = <isize as Shr<i16>>::Output

impl Shr<u128> for isize[src]

type Output = isize

impl Shr<i32> for u16[src]

type Output = u16

impl<'_, '_> Shr<&'_ i8> for &'_ i32[src]

type Output = <i32 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ u8> for &'_ usize[src]

type Output = <usize as Shr<u8>>::Output

impl<'_, '_> Shr<&'_ isize> for &'_ i16[src]

type Output = <i16 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ u32> for &'_ isize[src]

type Output = <isize as Shr<u32>>::Output

impl<'a> Shr<i16> for &'a i32[src]

type Output = <i32 as Shr<i16>>::Output

impl Shr<i64> for u16[src]

type Output = u16

impl<'_, '_> Shr<&'_ u16> for &'_ u64[src]

type Output = <u64 as Shr<u16>>::Output

impl<'a> Shr<u16> for &'a i8[src]

type Output = <i8 as Shr<u16>>::Output

impl<'a> Shr<i16> for &'a u128[src]

type Output = <u128 as Shr<i16>>::Output

impl<'a> Shr<usize> for &'a Wrapping<u128>[src]

type Output = <Wrapping<u128> as Shr<usize>>::Output

impl<'_> Shr<&'_ i8> for u8[src]

type Output = <u8 as Shr<i8>>::Output

impl<'a> Shr<usize> for &'a i16[src]

type Output = <i16 as Shr<usize>>::Output

impl Shr<usize> for Wrapping<u128>[src]

type Output = Wrapping<u128>

impl<'a> Shr<u32> for &'a i16[src]

type Output = <i16 as Shr<u32>>::Output

impl<'_> Shr<&'_ u16> for u16[src]

type Output = <u16 as Shr<u16>>::Output

impl<'a> Shr<usize> for &'a i8[src]

type Output = <i8 as Shr<usize>>::Output

impl<'a> Shr<u16> for &'a u32[src]

type Output = <u32 as Shr<u16>>::Output

impl<'a> Shr<u32> for &'a i32[src]

type Output = <i32 as Shr<u32>>::Output

impl<'a> Shr<isize> for &'a isize[src]

type Output = <isize as Shr<isize>>::Output

impl<'_> Shr<&'_ u8> for u128[src]

type Output = <u128 as Shr<u8>>::Output

impl Shr<i16> for u32[src]

type Output = u32

impl<'_, '_> Shr<&'_ i32> for &'_ isize[src]

type Output = <isize as Shr<i32>>::Output

impl Shr<u32> for i16[src]

type Output = i16

impl<'_> Shr<&'_ i32> for i8[src]

type Output = <i8 as Shr<i32>>::Output

impl<'_, '_> Shr<&'_ i64> for &'_ isize[src]

type Output = <isize as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<usize>[src]

type Output = <Wrapping<usize> as Shr<usize>>::Output

impl<'a> Shr<i8> for &'a i128[src]

type Output = <i128 as Shr<i8>>::Output

impl<'a> Shr<i16> for &'a u64[src]

type Output = <u64 as Shr<i16>>::Output

impl<'a> Shr<i8> for &'a u8[src]

type Output = <u8 as Shr<i8>>::Output

impl Shr<u16> for u64[src]

type Output = u64

impl Shr<u64> for usize[src]

type Output = usize

impl Shr<u8> for usize[src]

type Output = usize

impl<'_, '_> Shr<&'_ usize> for &'_ u8[src]

type Output = <u8 as Shr<usize>>::Output

impl<'a> Shr<u64> for &'a usize[src]

type Output = <usize as Shr<u64>>::Output

impl Shr<u64> for i8[src]

type Output = i8

impl<'_> Shr<&'_ i64> for i16[src]

type Output = <i16 as Shr<i64>>::Output

impl<'a> Shr<i32> for &'a i64[src]

type Output = <i64 as Shr<i32>>::Output

impl<'_> Shr<&'_ i128> for usize[src]

type Output = <usize as Shr<i128>>::Output

impl<'a> Shr<u64> for &'a isize[src]

type Output = <isize as Shr<u64>>::Output

impl<'_> Shr<&'_ u128> for i16[src]

type Output = <i16 as Shr<u128>>::Output

impl<'_, '_> Shr<&'_ i8> for &'_ i128[src]

type Output = <i128 as Shr<i8>>::Output

impl Shr<u128> for i16[src]

type Output = i16

impl Shr<i16> for usize[src]

type Output = usize

impl<'_> Shr<&'_ u32> for u64[src]

type Output = <u64 as Shr<u32>>::Output

impl<'_> Shr<&'_ i128> for i32[src]

type Output = <i32 as Shr<i128>>::Output

impl<'_> Shr<&'_ u128> for i128[src]

type Output = <i128 as Shr<u128>>::Output

impl<'_, '_> Shr<&'_ isize> for &'_ i32[src]

type Output = <i32 as Shr<isize>>::Output

impl<'_> Shr<&'_ u32> for usize[src]

type Output = <usize as Shr<u32>>::Output

impl<'a> Shr<i8> for &'a u128[src]

type Output = <u128 as Shr<i8>>::Output

impl<'_> Shr<&'_ u16> for i128[src]

type Output = <i128 as Shr<u16>>::Output

impl Shr<usize> for Wrapping<isize>[src]

type Output = Wrapping<isize>

impl<'_, '_> Shr<&'_ isize> for &'_ i8[src]

type Output = <i8 as Shr<isize>>::Output

impl Shr<u32> for i128[src]

type Output = i128

impl<'_> Shr<&'_ u8> for u8[src]

type Output = <u8 as Shr<u8>>::Output

impl<'a> Shr<u8> for &'a i32[src]

type Output = <i32 as Shr<u8>>::Output

impl Shr<u128> for i128[src]

type Output = i128

impl<'_, '_> Shr<&'_ u32> for &'_ u32[src]

type Output = <u32 as Shr<u32>>::Output

impl<'_> Shr<&'_ u64> for u16[src]

type Output = <u16 as Shr<u64>>::Output

impl Shr<i32> for u8[src]

type Output = u8

impl Shr<u16> for i16[src]

type Output = i16

impl<'a> Shr<usize> for &'a Wrapping<i16>[src]

type Output = <Wrapping<i16> as Shr<usize>>::Output

impl<'_> Shr<&'_ u8> for i64[src]

type Output = <i64 as Shr<u8>>::Output

impl Shr<usize> for Wrapping<i8>[src]

type Output = Wrapping<i8>

impl<'_> Shr<&'_ usize> for u64[src]

type Output = <u64 as Shr<usize>>::Output

impl<'_> Shr<&'_ i128> for isize[src]

type Output = <isize as Shr<i128>>::Output

impl<'a> Shr<u16> for &'a u64[src]

type Output = <u64 as Shr<u16>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ i128[src]

type Output = <i128 as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i32> for &'_ i64[src]

type Output = <i64 as Shr<i32>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ i16[src]

type Output = <i16 as Shr<usize>>::Output

impl<'a> Shr<u128> for &'a isize[src]

type Output = <isize as Shr<u128>>::Output

impl Shr<u8> for i16[src]

type Output = i16

impl<'_> Shr<&'_ u16> for usize[src]

type Output = <usize as Shr<u16>>::Output

impl<'_, '_> Shr<&'_ i16> for &'_ u32[src]

type Output = <u32 as Shr<i16>>::Output

impl<'a> Shr<usize> for &'a usize[src]

type Output = <usize as Shr<usize>>::Output

impl Shr<u16> for i128[src]

type Output = i128

impl<'a> Shr<u64> for &'a u8[src]

type Output = <u8 as Shr<u64>>::Output

impl<'_, '_> Shr<&'_ i64> for &'_ i128[src]

type Output = <i128 as Shr<i64>>::Output

impl Shr<i8> for i32[src]

type Output = i32

impl<'a> Shr<i128> for &'a u64[src]

type Output = <u64 as Shr<i128>>::Output

impl Shr<i64> for i16[src]

type Output = i16

impl<'a> Shr<i32> for &'a i32[src]

type Output = <i32 as Shr<i32>>::Output

impl Shr<i128> for isize[src]

type Output = isize

impl Shr<i8> for i128[src]

type Output = i128

impl<'_, '_> Shr<&'_ i64> for &'_ usize[src]

type Output = <usize as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ u16> for &'_ i32[src]

type Output = <i32 as Shr<u16>>::Output

impl<'a> Shr<u8> for &'a u8[src]

type Output = <u8 as Shr<u8>>::Output

impl<'_> Shr<&'_ isize> for isize[src]

type Output = <isize as Shr<isize>>::Output

impl<'a> Shr<u32> for &'a u8[src]

type Output = <u8 as Shr<u32>>::Output

impl<'_> Shr<&'_ u128> for i8[src]

type Output = <i8 as Shr<u128>>::Output

impl<'_, '_> Shr<&'_ i64> for &'_ i64[src]

type Output = <i64 as Shr<i64>>::Output

impl Shr<u128> for i32[src]

type Output = i32

impl<'a> Shr<i8> for &'a u64[src]

type Output = <u64 as Shr<i8>>::Output

impl Shr<i128> for i8[src]

type Output = i8

impl<'_, '_> Shr<&'_ u128> for &'_ isize[src]

type Output = <isize as Shr<u128>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<i16>[src]

type Output = <Wrapping<i16> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ u16> for &'_ i128[src]

type Output = <i128 as Shr<u16>>::Output

impl Shr<i8> for i16[src]

type Output = i16

impl Shr<u128> for u32[src]

type Output = u32

impl<'a> Shr<u8> for &'a isize[src]

type Output = <isize as Shr<u8>>::Output

impl<'_, '_> Shr<&'_ u128> for &'_ u8[src]

type Output = <u8 as Shr<u128>>::Output

impl Shr<isize> for i8[src]

type Output = i8

impl Shr<isize> for u64[src]

type Output = u64

impl Shr<i64> for u128[src]

type Output = u128

impl Shr<u64> for i128[src]

type Output = i128

impl Shr<i32> for u32[src]

type Output = u32

impl Shr<u16> for i64[src]

type Output = i64

impl<'a> Shr<i64> for &'a u32[src]

type Output = <u32 as Shr<i64>>::Output

impl Shr<usize> for Wrapping<u64>[src]

type Output = Wrapping<u64>

impl<'_> Shr<&'_ usize> for isize[src]

type Output = <isize as Shr<usize>>::Output

impl<'a> Shr<i64> for &'a u16[src]

type Output = <u16 as Shr<i64>>::Output

impl<'a> Shr<i64> for &'a usize[src]

type Output = <usize as Shr<i64>>::Output

impl<'_> Shr<&'_ i16> for i32[src]

type Output = <i32 as Shr<i16>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ u64[src]

type Output = <u64 as Shr<usize>>::Output

impl<'a> Shr<i128> for &'a i16[src]

type Output = <i16 as Shr<i128>>::Output

impl<'_> Shr<&'_ usize> for Wrapping<i64>[src]

type Output = <Wrapping<i64> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i64> for &'_ u64[src]

type Output = <u64 as Shr<i64>>::Output

impl<'a> Shr<u64> for &'a u16[src]

type Output = <u16 as Shr<u64>>::Output

impl Shr<u32> for u8[src]

type Output = u8

impl<'_> Shr<&'_ u32> for i8[src]

type Output = <i8 as Shr<u32>>::Output

impl<'a> Shr<i128> for &'a i32[src]

type Output = <i32 as Shr<i128>>::Output

impl Shr<i16> for u128[src]

type Output = u128

impl<'a> Shr<u64> for &'a u32[src]

type Output = <u32 as Shr<u64>>::Output

impl Shr<u64> for i16[src]

type Output = i16

impl Shr<usize> for u8[src]

type Output = u8

impl<'_> Shr<&'_ i32> for u16[src]

type Output = <u16 as Shr<i32>>::Output

impl<'a> Shr<isize> for &'a i16[src]

type Output = <i16 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ isize> for &'_ usize[src]

type Output = <usize as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ isize> for &'_ u64[src]

type Output = <u64 as Shr<isize>>::Output

impl Shr<u8> for u128[src]

type Output = u128

impl<'_, '_> Shr<&'_ u64> for &'_ u32[src]

type Output = <u32 as Shr<u64>>::Output

impl<'_, '_> Shr<&'_ i16> for &'_ u8[src]

type Output = <u8 as Shr<i16>>::Output

impl<'_> Shr<&'_ u8> for isize[src]

type Output = <isize as Shr<u8>>::Output

impl<'a> Shr<i64> for &'a i8[src]

type Output = <i8 as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ i128> for &'_ u32[src]

type Output = <u32 as Shr<i128>>::Output

impl Shr<u32> for u32[src]

type Output = u32

impl<'_> Shr<&'_ i16> for u32[src]

type Output = <u32 as Shr<i16>>::Output

impl<'_> Shr<&'_ isize> for i8[src]

type Output = <i8 as Shr<isize>>::Output

impl Shr<u16> for u32[src]

type Output = u32

impl<'_, '_> Shr<&'_ u16> for &'_ isize[src]

type Output = <isize as Shr<u16>>::Output

impl<'_> Shr<&'_ i8> for usize[src]

type Output = <usize as Shr<i8>>::Output

impl Shr<u32> for usize[src]

type Output = usize

impl<'_> Shr<&'_ i128> for u64[src]

type Output = <u64 as Shr<i128>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<u128>[src]

type Output = <Wrapping<u128> as Shr<usize>>::Output

impl Shr<i16> for i64[src]

type Output = i64

impl Shr<i8> for u64[src]

type Output = u64

impl<'_> Shr<&'_ i32> for u64[src]

type Output = <u64 as Shr<i32>>::Output

impl Shr<i64> for u8[src]

type Output = u8

impl Shr<i16> for i16[src]

type Output = i16

impl<'_, '_> Shr<&'_ i128> for &'_ i128[src]

type Output = <i128 as Shr<i128>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<u64>[src]

type Output = <Wrapping<u64> as Shr<usize>>::Output

impl Shr<i64> for i32[src]

type Output = i32

impl<'a> Shr<u128> for &'a i128[src]

type Output = <i128 as Shr<u128>>::Output

impl Shr<i16> for i8[src]

type Output = i8

impl<'a> Shr<i8> for &'a i16[src]

type Output = <i16 as Shr<i8>>::Output

impl Shr<isize> for i32[src]

type Output = i32

impl<'_> Shr<&'_ u8> for i8[src]

type Output = <i8 as Shr<u8>>::Output

impl<'_> Shr<&'_ usize> for Wrapping<u64>[src]

type Output = <Wrapping<u64> as Shr<usize>>::Output

impl Shr<usize> for u128[src]

type Output = u128

impl Shr<u8> for i8[src]

type Output = i8

impl<'_> Shr<&'_ u8> for i32[src]

type Output = <i32 as Shr<u8>>::Output

impl<'a> Shr<i32> for &'a i16[src]

type Output = <i16 as Shr<i32>>::Output

impl Shr<usize> for u32[src]

type Output = u32

impl<'_> Shr<&'_ usize> for Wrapping<u16>[src]

type Output = <Wrapping<u16> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i8> for &'_ u16[src]

type Output = <u16 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ i16> for &'_ i8[src]

type Output = <i8 as Shr<i16>>::Output

impl<'_> Shr<&'_ usize> for Wrapping<usize>[src]

type Output = <Wrapping<usize> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i32> for &'_ i16[src]

type Output = <i16 as Shr<i32>>::Output

impl<'_, '_> Shr<&'_ u16> for &'_ i8[src]

type Output = <i8 as Shr<u16>>::Output

impl<'_> Shr<&'_ u128> for u64[src]

type Output = <u64 as Shr<u128>>::Output

impl Shr<i128> for u128[src]

type Output = u128

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<i8>[src]

type Output = <Wrapping<i8> as Shr<usize>>::Output

impl<'_> Shr<&'_ i128> for u8[src]

type Output = <u8 as Shr<i128>>::Output

impl<'_> Shr<&'_ usize> for u128[src]

type Output = <u128 as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i128> for &'_ u8[src]

type Output = <u8 as Shr<i128>>::Output

impl<'_, '_> Shr<&'_ i64> for &'_ u32[src]

type Output = <u32 as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ i16> for &'_ u64[src]

type Output = <u64 as Shr<i16>>::Output

impl<'_, '_> Shr<&'_ u32> for &'_ i128[src]

type Output = <i128 as Shr<u32>>::Output

impl<'a> Shr<isize> for &'a i32[src]

type Output = <i32 as Shr<isize>>::Output

impl<'_> Shr<&'_ i32> for usize[src]

type Output = <usize as Shr<i32>>::Output

impl<'_, '_> Shr<&'_ i32> for &'_ u128[src]

type Output = <u128 as Shr<i32>>::Output

impl<'a> Shr<usize> for &'a i32[src]

type Output = <i32 as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ u8> for &'_ u8[src]

type Output = <u8 as Shr<u8>>::Output

impl<'a> Shr<usize> for &'a u128[src]

type Output = <u128 as Shr<usize>>::Output

impl Shr<u128> for u8[src]

type Output = u8

impl<'_> Shr<&'_ u32> for isize[src]

type Output = <isize as Shr<u32>>::Output

impl Shr<i16> for i32[src]

type Output = i32

impl<'_, '_> Shr<&'_ i128> for &'_ i64[src]

type Output = <i64 as Shr<i128>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ usize[src]

type Output = <usize as Shr<usize>>::Output

impl<'_> Shr<&'_ u16> for u64[src]

type Output = <u64 as Shr<u16>>::Output

impl<'a> Shr<u128> for &'a i64[src]

type Output = <i64 as Shr<u128>>::Output

impl<'_> Shr<&'_ i8> for i64[src]

type Output = <i64 as Shr<i8>>::Output

impl<'a> Shr<u128> for &'a u64[src]

type Output = <u64 as Shr<u128>>::Output

impl<'_, '_> Shr<&'_ i128> for &'_ usize[src]

type Output = <usize as Shr<i128>>::Output

impl<'_, '_> Shr<&'_ i128> for &'_ i32[src]

type Output = <i32 as Shr<i128>>::Output

impl<'a> Shr<u16> for &'a usize[src]

type Output = <usize as Shr<u16>>::Output

impl<'_> Shr<&'_ i128> for u16[src]

type Output = <u16 as Shr<i128>>::Output

impl Shr<i64> for u64[src]

type Output = u64

impl<'_, '_> Shr<&'_ u32> for &'_ i16[src]

type Output = <i16 as Shr<u32>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ u32[src]

type Output = <u32 as Shr<usize>>::Output

impl<'_> Shr<&'_ i8> for i128[src]

type Output = <i128 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ i16> for &'_ isize[src]

type Output = <isize as Shr<i16>>::Output

impl<'_> Shr<&'_ u8> for u32[src]

type Output = <u32 as Shr<u8>>::Output

impl<'_> Shr<&'_ u128> for isize[src]

type Output = <isize as Shr<u128>>::Output

impl<'a> Shr<u8> for &'a u128[src]

type Output = <u128 as Shr<u8>>::Output

impl<'a> Shr<u8> for &'a i128[src]

type Output = <i128 as Shr<u8>>::Output

impl<'a> Shr<isize> for &'a i128[src]

type Output = <i128 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ isize> for &'_ i128[src]

type Output = <i128 as Shr<isize>>::Output

impl<'_> Shr<&'_ i64> for i64[src]

type Output = <i64 as Shr<i64>>::Output

impl Shr<i16> for u8[src]

type Output = u8

impl<'a> Shr<i8> for &'a u32[src]

type Output = <u32 as Shr<i8>>::Output

impl Shr<isize> for i128[src]

type Output = i128

impl<'a> Shr<i64> for &'a u8[src]

type Output = <u8 as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ i8> for &'_ u8[src]

type Output = <u8 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ i16> for &'_ i128[src]

type Output = <i128 as Shr<i16>>::Output

impl<'a> Shr<u8> for &'a i8[src]

type Output = <i8 as Shr<u8>>::Output

impl<'_, '_> Shr<&'_ u128> for &'_ i64[src]

type Output = <i64 as Shr<u128>>::Output

impl Shr<u32> for u64[src]

type Output = u64

impl<'a> Shr<isize> for &'a i8[src]

type Output = <i8 as Shr<isize>>::Output

impl Shr<i8> for u8[src]

type Output = u8

impl<'a> Shr<i16> for &'a i16[src]

type Output = <i16 as Shr<i16>>::Output

impl Shr<u8> for u16[src]

type Output = u16

impl<'_> Shr<&'_ i128> for i64[src]

type Output = <i64 as Shr<i128>>::Output

impl<'_> Shr<&'_ i64> for u8[src]

type Output = <u8 as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ i32> for &'_ i8[src]

type Output = <i8 as Shr<i32>>::Output

impl<'_> Shr<&'_ u128> for i64[src]

type Output = <i64 as Shr<u128>>::Output

impl<'_, '_> Shr<&'_ u64> for &'_ u8[src]

type Output = <u8 as Shr<u64>>::Output

impl<'_> Shr<&'_ u32> for i64[src]

type Output = <i64 as Shr<u32>>::Output

impl<'_> Shr<&'_ usize> for Wrapping<i16>[src]

type Output = <Wrapping<i16> as Shr<usize>>::Output

impl<'_> Shr<&'_ i64> for usize[src]

type Output = <usize as Shr<i64>>::Output

impl<'_> Shr<&'_ usize> for i32[src]

type Output = <i32 as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<u16>[src]

type Output = <Wrapping<u16> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i8> for &'_ u32[src]

type Output = <u32 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ u64> for &'_ i16[src]

type Output = <i16 as Shr<u64>>::Output

impl<'_> Shr<&'_ i128> for i128[src]

type Output = <i128 as Shr<i128>>::Output

impl<'_, '_> Shr<&'_ isize> for &'_ i64[src]

type Output = <i64 as Shr<isize>>::Output

impl<'a> Shr<i16> for &'a i8[src]

type Output = <i8 as Shr<i16>>::Output

impl<'_> Shr<&'_ i8> for i32[src]

type Output = <i32 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ u32> for &'_ usize[src]

type Output = <usize as Shr<u32>>::Output

impl Shr<i8> for u32[src]

type Output = u32

impl<'_, '_> Shr<&'_ i128> for &'_ u64[src]

type Output = <u64 as Shr<i128>>::Output

impl<'a> Shr<usize> for &'a Wrapping<u8>[src]

type Output = <Wrapping<u8> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i8> for &'_ i16[src]

type Output = <i16 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ u128> for &'_ i128[src]

type Output = <i128 as Shr<u128>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<i64>[src]

type Output = <Wrapping<i64> as Shr<usize>>::Output

impl Shr<u32> for i64[src]

type Output = i64

impl Shr<i64> for i64[src]

type Output = i64

impl<'a> Shr<i8> for &'a i32[src]

type Output = <i32 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ i64> for &'_ u16[src]

type Output = <u16 as Shr<i64>>::Output

impl<'_> Shr<&'_ usize> for u8[src]

type Output = <u8 as Shr<usize>>::Output

impl<'a> Shr<i32> for &'a isize[src]

type Output = <isize as Shr<i32>>::Output

impl<'a> Shr<i128> for &'a usize[src]

type Output = <usize as Shr<i128>>::Output

impl<'a> Shr<i128> for &'a i64[src]

type Output = <i64 as Shr<i128>>::Output

impl Shr<isize> for u128[src]

type Output = u128

impl<'a> Shr<u32> for &'a isize[src]

type Output = <isize as Shr<u32>>::Output

impl<'_> Shr<&'_ i32> for u8[src]

type Output = <u8 as Shr<i32>>::Output

impl<'a> Shr<usize> for &'a u16[src]

type Output = <u16 as Shr<usize>>::Output

impl<'_> Shr<&'_ u64> for i64[src]

type Output = <i64 as Shr<u64>>::Output

impl<'_, '_> Shr<&'_ i8> for &'_ usize[src]

type Output = <usize as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<u8>[src]

type Output = <Wrapping<u8> as Shr<usize>>::Output

impl<'a> Shr<usize> for &'a i64[src]

type Output = <i64 as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ u32> for &'_ i8[src]

type Output = <i8 as Shr<u32>>::Output

impl<'_, '_> Shr<&'_ isize> for &'_ u16[src]

type Output = <u16 as Shr<isize>>::Output

impl<'_> Shr<&'_ i8> for u16[src]

type Output = <u16 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ isize> for &'_ u8[src]

type Output = <u8 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ u8> for &'_ i128[src]

type Output = <i128 as Shr<u8>>::Output

impl<'a> Shr<i32> for &'a u8[src]

type Output = <u8 as Shr<i32>>::Output

impl<'_, '_> Shr<&'_ u32> for &'_ i64[src]

type Output = <i64 as Shr<u32>>::Output

impl<'a> Shr<u16> for &'a i64[src]

type Output = <i64 as Shr<u16>>::Output

impl<'_> Shr<&'_ usize> for i64[src]

type Output = <i64 as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i32> for &'_ i128[src]

type Output = <i128 as Shr<i32>>::Output

impl<'_> Shr<&'_ u8> for u64[src]

type Output = <u64 as Shr<u8>>::Output

impl<'_, '_> Shr<&'_ u32> for &'_ u8[src]

type Output = <u8 as Shr<u32>>::Output

impl<'a> Shr<u128> for &'a usize[src]

type Output = <usize as Shr<u128>>::Output

impl<'a> Shr<i64> for &'a u64[src]

type Output = <u64 as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ i128> for &'_ u16[src]

type Output = <u16 as Shr<i128>>::Output

impl<'_> Shr<&'_ i128> for i8[src]

type Output = <i8 as Shr<i128>>::Output

impl Shr<i32> for i32[src]

type Output = i32

impl<'_, '_> Shr<&'_ u64> for &'_ i64[src]

type Output = <i64 as Shr<u64>>::Output

impl<'a> Shr<isize> for &'a u16[src]

type Output = <u16 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ u8> for &'_ u128[src]

type Output = <u128 as Shr<u8>>::Output

impl<'_, '_> Shr<&'_ u16> for &'_ i64[src]

type Output = <i64 as Shr<u16>>::Output

impl<'a> Shr<i32> for &'a usize[src]

type Output = <usize as Shr<i32>>::Output

impl<'a> Shr<i32> for &'a i128[src]

type Output = <i128 as Shr<i32>>::Output

impl Shr<u32> for i32[src]

type Output = i32

impl<'_> Shr<&'_ i32> for u128[src]

type Output = <u128 as Shr<i32>>::Output

impl Shr<u16> for usize[src]

type Output = usize

impl<'_> Shr<&'_ i16> for i64[src]

type Output = <i64 as Shr<i16>>::Output

impl<'_> Shr<&'_ u128> for u16[src]

type Output = <u16 as Shr<u128>>::Output

impl Shr<u128> for usize[src]

type Output = usize

impl<'a> Shr<u8> for &'a usize[src]

type Output = <usize as Shr<u8>>::Output

impl<'_, '_> Shr<&'_ u16> for &'_ usize[src]

type Output = <usize as Shr<u16>>::Output

impl<'_, '_> Shr<&'_ u128> for &'_ u32[src]

type Output = <u32 as Shr<u128>>::Output

impl Shr<u16> for i32[src]

type Output = i32

impl<'a> Shr<u16> for &'a i32[src]

type Output = <i32 as Shr<u16>>::Output

impl<'a> Shr<i128> for &'a isize[src]

type Output = <isize as Shr<i128>>::Output

impl Shr<usize> for u64[src]

type Output = u64

impl Shr<i16> for isize[src]

type Output = isize

impl Shr<u128> for i8[src]

type Output = i8

impl<'a> Shr<u128> for &'a u16[src]

type Output = <u16 as Shr<u128>>::Output

impl Shr<i8> for isize[src]

type Output = isize

impl Shr<isize> for u8[src]

type Output = u8

impl<'_> Shr<&'_ usize> for Wrapping<i32>[src]

type Output = <Wrapping<i32> as Shr<usize>>::Output

impl<'_> Shr<&'_ usize> for Wrapping<u8>[src]

type Output = <Wrapping<u8> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ u128> for &'_ i16[src]

type Output = <i16 as Shr<u128>>::Output

impl<'_, '_> Shr<&'_ u64> for &'_ i8[src]

type Output = <i8 as Shr<u64>>::Output

impl<'a> Shr<u32> for &'a u64[src]

type Output = <u64 as Shr<u32>>::Output

impl<'_> Shr<&'_ i32> for u32[src]

type Output = <u32 as Shr<i32>>::Output

impl Shr<usize> for Wrapping<i64>[src]

type Output = Wrapping<i64>

impl Shr<i128> for u8[src]

type Output = u8

impl<'_> Shr<&'_ u64> for i128[src]

type Output = <i128 as Shr<u64>>::Output

impl<'_> Shr<&'_ u128> for i32[src]

type Output = <i32 as Shr<u128>>::Output

impl<'_> Shr<&'_ usize> for Wrapping<i128>[src]

type Output = <Wrapping<i128> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i64> for &'_ i8[src]

type Output = <i8 as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ u64> for &'_ isize[src]

type Output = <isize as Shr<u64>>::Output

impl<'a> Shr<i64> for &'a i16[src]

type Output = <i16 as Shr<i64>>::Output

impl<'a> Shr<i128> for &'a i128[src]

type Output = <i128 as Shr<i128>>::Output

impl<'_, '_> Shr<&'_ i64> for &'_ u128[src]

type Output = <u128 as Shr<i64>>::Output

impl<'_> Shr<&'_ i16> for isize[src]

type Output = <isize as Shr<i16>>::Output

impl Shr<u128> for u64[src]

type Output = u64

impl<'_> Shr<&'_ i64> for i32[src]

type Output = <i32 as Shr<i64>>::Output

impl<'a> Shr<u16> for &'a i128[src]

type Output = <i128 as Shr<u16>>::Output

impl Shr<i128> for i32[src]

type Output = i32

impl Shr<i16> for i128[src]

type Output = i128

impl<'a> Shr<u128> for &'a i8[src]

type Output = <i8 as Shr<u128>>::Output

impl<'_> Shr<&'_ u16> for u32[src]

type Output = <u32 as Shr<u16>>::Output

impl Shr<i16> for u16[src]

type Output = u16

impl<'a> Shr<i64> for &'a isize[src]

type Output = <isize as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ i8> for &'_ i8[src]

type Output = <i8 as Shr<i8>>::Output

impl Shr<u16> for u16[src]

type Output = u16

impl<'a> Shr<u128> for &'a u128[src]

type Output = <u128 as Shr<u128>>::Output

impl<'_> Shr<&'_ usize> for u32[src]

type Output = <u32 as Shr<usize>>::Output

impl<'_> Shr<&'_ i8> for isize[src]

type Output = <isize as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ i16> for &'_ u128[src]

type Output = <u128 as Shr<i16>>::Output

impl<'_> Shr<&'_ u16> for i64[src]

type Output = <i64 as Shr<u16>>::Output

impl Shr<i64> for u32[src]

type Output = u32

impl<'_, '_> Shr<&'_ u128> for &'_ u128[src]

type Output = <u128 as Shr<u128>>::Output

impl<'a> Shr<u64> for &'a i32[src]

type Output = <i32 as Shr<u64>>::Output

impl Shr<isize> for i16[src]

type Output = i16

impl<'_> Shr<&'_ isize> for u64[src]

type Output = <u64 as Shr<isize>>::Output

impl<'a> Shr<i8> for &'a i64[src]

type Output = <i64 as Shr<i8>>::Output

impl Shr<i32> for i8[src]

type Output = i8

impl<'a> Shr<isize> for &'a usize[src]

type Output = <usize as Shr<isize>>::Output

impl<'_> Shr<&'_ i64> for i128[src]

type Output = <i128 as Shr<i64>>::Output

impl<'a> Shr<usize> for &'a isize[src]

type Output = <isize as Shr<usize>>::Output

impl<'_> Shr<&'_ i16> for u64[src]

type Output = <u64 as Shr<i16>>::Output

impl<'_, '_> Shr<&'_ u8> for &'_ u32[src]

type Output = <u32 as Shr<u8>>::Output

impl<'a> Shr<i64> for &'a i64[src]

type Output = <i64 as Shr<i64>>::Output

impl<'_> Shr<&'_ i8> for u32[src]

type Output = <u32 as Shr<i8>>::Output

impl<'_> Shr<&'_ isize> for i128[src]

type Output = <i128 as Shr<isize>>::Output

impl<'a> Shr<usize> for &'a Wrapping<usize>[src]

type Output = <Wrapping<usize> as Shr<usize>>::Output

impl<'_> Shr<&'_ i64> for i8[src]

type Output = <i8 as Shr<i64>>::Output

impl Shr<u8> for i128[src]

type Output = i128

impl<'_, '_> Shr<&'_ isize> for &'_ u128[src]

type Output = <u128 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ u16> for &'_ u16[src]

type Output = <u16 as Shr<u16>>::Output

impl<'a> Shr<i32> for &'a u16[src]

type Output = <u16 as Shr<i32>>::Output

impl Shr<u8> for u64[src]

type Output = u64

impl Shr<i64> for i128[src]

type Output = i128

impl<'_> Shr<&'_ u128> for u32[src]

type Output = <u32 as Shr<u128>>::Output

impl<'a> Shr<u64> for &'a u64[src]

type Output = <u64 as Shr<u64>>::Output

impl<'a> Shr<i16> for &'a i128[src]

type Output = <i128 as Shr<i16>>::Output

impl<'_> Shr<&'_ isize> for u128[src]

type Output = <u128 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ i16> for &'_ usize[src]

type Output = <usize as Shr<i16>>::Output

impl<'_> Shr<&'_ isize> for i64[src]

type Output = <i64 as Shr<isize>>::Output

impl<'_> Shr<&'_ i32> for i128[src]

type Output = <i128 as Shr<i32>>::Output

impl<'_> Shr<&'_ u8> for i16[src]

type Output = <i16 as Shr<u8>>::Output

impl<'a> Shr<u32> for &'a u128[src]

type Output = <u128 as Shr<u32>>::Output

impl Shr<isize> for u16[src]

type Output = u16

impl<'a> Shr<i128> for &'a i8[src]

type Output = <i8 as Shr<i128>>::Output

impl<'a> Shr<u16> for &'a u8[src]

type Output = <u8 as Shr<u16>>::Output

impl Shr<usize> for Wrapping<usize>[src]

type Output = Wrapping<usize>

impl<'_, '_> Shr<&'_ i128> for &'_ i16[src]

type Output = <i16 as Shr<i128>>::Output

impl<'_> Shr<&'_ usize> for i128[src]

type Output = <i128 as Shr<usize>>::Output

impl<'a> Shr<i32> for &'a u32[src]

type Output = <u32 as Shr<i32>>::Output

impl<'_> Shr<&'_ usize> for i16[src]

type Output = <i16 as Shr<usize>>::Output

impl<'a> Shr<usize> for &'a Wrapping<i32>[src]

type Output = <Wrapping<i32> as Shr<usize>>::Output

impl Shr<i8> for usize[src]

type Output = usize

impl<'_> Shr<&'_ u32> for u16[src]

type Output = <u16 as Shr<u32>>::Output

impl<'_> Shr<&'_ u64> for u64[src]

type Output = <u64 as Shr<u64>>::Output

impl Shr<usize> for i64[src]

type Output = i64

impl<'_> Shr<&'_ usize> for usize[src]

type Output = <usize as Shr<usize>>::Output

impl<'a> Shr<u32> for &'a u16[src]

type Output = <u16 as Shr<u32>>::Output

impl<'a> Shr<u128> for &'a i16[src]

type Output = <i16 as Shr<u128>>::Output

impl Shr<i128> for u32[src]

type Output = u32

impl<'a> Shr<u128> for &'a u32[src]

type Output = <u32 as Shr<u128>>::Output

impl Shr<u64> for i64[src]

type Output = i64

impl<'_> Shr<&'_ u64> for i8[src]

type Output = <i8 as Shr<u64>>::Output

impl<'_, '_> Shr<&'_ u64> for &'_ u64[src]

type Output = <u64 as Shr<u64>>::Output

impl<'a> Shr<isize> for &'a u32[src]

type Output = <u32 as Shr<isize>>::Output

impl Shr<u8> for isize[src]

type Output = isize

impl Shr<u64> for u128[src]

type Output = u128

impl<'_> Shr<&'_ u16> for i32[src]

type Output = <i32 as Shr<u16>>::Output

impl Shr<i128> for u16[src]

type Output = u16

impl<'_, '_> Shr<&'_ i16> for &'_ i16[src]

type Output = <i16 as Shr<i16>>::Output

impl<'_> Shr<&'_ isize> for u16[src]

type Output = <u16 as Shr<isize>>::Output

impl Shr<u64> for u64[src]

type Output = u64

impl<'_> Shr<&'_ i128> for u32[src]

type Output = <u32 as Shr<i128>>::Output

impl Shr<u32> for u16[src]

type Output = u16

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<u32>[src]

type Output = <Wrapping<u32> as Shr<usize>>::Output

impl Shr<isize> for usize[src]

type Output = usize

impl<'_, '_> Shr<&'_ i128> for &'_ i8[src]

type Output = <i8 as Shr<i128>>::Output

impl<'a> Shr<u8> for &'a u64[src]

type Output = <u64 as Shr<u8>>::Output

impl Shr<usize> for i128[src]

type Output = i128

impl Shr<u16> for isize[src]

type Output = isize

impl<'a> Shr<usize> for &'a Wrapping<i64>[src]

type Output = <Wrapping<i64> as Shr<usize>>::Output

impl<'a> Shr<i64> for &'a i32[src]

type Output = <i32 as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ i8[src]

type Output = <i8 as Shr<usize>>::Output

impl<'_> Shr<&'_ i32> for isize[src]

type Output = <isize as Shr<i32>>::Output

impl<'_> Shr<&'_ i16> for u16[src]

type Output = <u16 as Shr<i16>>::Output

impl<'_> Shr<&'_ i64> for u128[src]

type Output = <u128 as Shr<i64>>::Output

impl<'a> Shr<i32> for &'a i8[src]

type Output = <i8 as Shr<i32>>::Output

impl<'a> Shr<usize> for &'a u8[src]

type Output = <u8 as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i64> for &'_ i32[src]

type Output = <i32 as Shr<i64>>::Output

impl Shr<usize> for i32[src]

type Output = i32

impl<'_> Shr<&'_ isize> for i32[src]

type Output = <i32 as Shr<isize>>::Output

impl Shr<usize> for i16[src]

type Output = i16

impl<'a> Shr<u64> for &'a u128[src]

type Output = <u128 as Shr<u64>>::Output

impl<'_, '_> Shr<&'_ i128> for &'_ isize[src]

type Output = <isize as Shr<i128>>::Output

impl Shr<u8> for u8[src]

type Output = u8

impl<'_, '_> Shr<&'_ i8> for &'_ i64[src]

type Output = <i64 as Shr<i8>>::Output

impl Shr<i8> for i8[src]

type Output = i8

impl<'_, '_> Shr<&'_ usize> for &'_ i32[src]

type Output = <i32 as Shr<usize>>::Output

impl<'_> Shr<&'_ u32> for i32[src]

type Output = <i32 as Shr<u32>>::Output

impl<'_, '_> Shr<&'_ u128> for &'_ i32[src]

type Output = <i32 as Shr<u128>>::Output

impl<'a> Shr<i64> for &'a i128[src]

type Output = <i128 as Shr<i64>>::Output

impl<'a> Shr<i8> for &'a isize[src]

type Output = <isize as Shr<i8>>::Output

impl<'a> Shr<u8> for &'a i16[src]

type Output = <i16 as Shr<u8>>::Output

impl<'a> Shr<u8> for &'a i64[src]

type Output = <i64 as Shr<u8>>::Output

impl<'_> Shr<&'_ i16> for i128[src]

type Output = <i128 as Shr<i16>>::Output

impl<'_> Shr<&'_ i128> for i16[src]

type Output = <i16 as Shr<i128>>::Output

impl Shr<usize> for u16[src]

type Output = u16

impl Shr<i128> for u64[src]

type Output = u64

impl Shr<i32> for i64[src]

type Output = i64

impl Shr<u8> for u32[src]

type Output = u32

impl<'_> Shr<&'_ u8> for i128[src]

type Output = <i128 as Shr<u8>>::Output

impl<'_> Shr<&'_ usize> for u16[src]

type Output = <u16 as Shr<usize>>::Output

impl<'_> Shr<&'_ u16> for u128[src]

type Output = <u128 as Shr<u16>>::Output

impl Shr<u32> for isize[src]

type Output = isize

impl<'a> Shr<u128> for &'a i32[src]

type Output = <i32 as Shr<u128>>::Output

impl<'a> Shr<isize> for &'a u8[src]

type Output = <u8 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<i128>[src]

type Output = <Wrapping<i128> as Shr<usize>>::Output

impl<'_> Shr<&'_ i64> for u32[src]

type Output = <u32 as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ i128> for &'_ u128[src]

type Output = <u128 as Shr<i128>>::Output

impl Shr<i128> for i128[src]

type Output = i128

impl<'_, '_> Shr<&'_ u8> for &'_ i8[src]

type Output = <i8 as Shr<u8>>::Output

impl Shr<usize> for Wrapping<i32>[src]

type Output = Wrapping<i32>

impl<'a> Shr<i16> for &'a u32[src]

type Output = <u32 as Shr<i16>>::Output

impl Shr<i128> for i16[src]

type Output = i16

impl<'_, '_> Shr<&'_ u64> for &'_ i128[src]

type Output = <i128 as Shr<u64>>::Output

impl<'a> Shr<u32> for &'a i64[src]

type Output = <i64 as Shr<u32>>::Output

impl Shr<u8> for i64[src]

type Output = i64

impl<'a> Shr<i16> for &'a u16[src]

type Output = <u16 as Shr<i16>>::Output

impl Shr<u16> for i8[src]

type Output = i8

impl<'_, '_> Shr<&'_ u8> for &'_ i32[src]

type Output = <i32 as Shr<u8>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ i64[src]

type Output = <i64 as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i8> for &'_ u64[src]

type Output = <u64 as Shr<i8>>::Output

impl<'a> Shr<i32> for &'a u64[src]

type Output = <u64 as Shr<i32>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ u128[src]

type Output = <u128 as Shr<usize>>::Output

impl<'_> Shr<&'_ i8> for i8[src]

type Output = <i8 as Shr<i8>>::Output

impl<'_, '_> Shr<&'_ u8> for &'_ u64[src]

type Output = <u64 as Shr<u8>>::Output

impl<'a> Shr<usize> for &'a Wrapping<u16>[src]

type Output = <Wrapping<u16> as Shr<usize>>::Output

impl Shr<usize> for Wrapping<u16>[src]

type Output = Wrapping<u16>

impl<'_> Shr<&'_ i16> for usize[src]

type Output = <usize as Shr<i16>>::Output

impl Shr<i128> for i64[src]

type Output = i64

impl<'a> Shr<i16> for &'a u8[src]

type Output = <u8 as Shr<i16>>::Output

impl<'_> Shr<&'_ u32> for u8[src]

type Output = <u8 as Shr<u32>>::Output

impl<'_> Shr<&'_ i16> for u8[src]

type Output = <u8 as Shr<i16>>::Output

impl<'_> Shr<&'_ u128> for u128[src]

type Output = <u128 as Shr<u128>>::Output

impl Shr<u8> for i32[src]

type Output = i32

impl<'_> Shr<&'_ u8> for u16[src]

type Output = <u16 as Shr<u8>>::Output

impl<'_, '_> Shr<&'_ i32> for &'_ usize[src]

type Output = <usize as Shr<i32>>::Output

impl<'_> Shr<&'_ i32> for i64[src]

type Output = <i64 as Shr<i32>>::Output

impl<'_, '_> Shr<&'_ u128> for &'_ u64[src]

type Output = <u64 as Shr<u128>>::Output

impl Shr<usize> for isize[src]

type Output = isize

impl<'_, '_> Shr<&'_ u64> for &'_ i32[src]

type Output = <i32 as Shr<u64>>::Output

impl<'a> Shr<usize> for &'a Wrapping<isize>[src]

type Output = <Wrapping<isize> as Shr<usize>>::Output

impl Shr<u32> for i8[src]

type Output = i8

impl<'_, '_> Shr<&'_ u32> for &'_ u128[src]

type Output = <u128 as Shr<u32>>::Output

impl<'_> Shr<&'_ u64> for u128[src]

type Output = <u128 as Shr<u64>>::Output

impl<'_, '_> Shr<&'_ i32> for &'_ u64[src]

type Output = <u64 as Shr<i32>>::Output

impl<'_> Shr<&'_ i128> for u128[src]

type Output = <u128 as Shr<i128>>::Output

impl<'a> Shr<isize> for &'a u128[src]

type Output = <u128 as Shr<isize>>::Output

impl Shr<i8> for u16[src]

type Output = u16

impl Shr<u64> for u32[src]

type Output = u32

impl<'_, '_> Shr<&'_ i64> for &'_ u8[src]

type Output = <u8 as Shr<i64>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ isize[src]

type Output = <isize as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ usize> for &'_ Wrapping<isize>[src]

type Output = <Wrapping<isize> as Shr<usize>>::Output

impl<'_> Shr<&'_ usize> for Wrapping<u128>[src]

type Output = <Wrapping<u128> as Shr<usize>>::Output

impl<'a> Shr<i64> for &'a u128[src]

type Output = <u128 as Shr<i64>>::Output

impl Shr<u64> for u16[src]

type Output = u16

impl Shr<i32> for usize[src]

type Output = usize

impl<'_> Shr<&'_ isize> for usize[src]

type Output = <usize as Shr<isize>>::Output

impl Shr<u128> for u16[src]

type Output = u16

impl Shr<u128> for u128[src]

type Output = u128

impl<'_, '_> Shr<&'_ isize> for &'_ isize[src]

type Output = <isize as Shr<isize>>::Output

impl<'_> Shr<&'_ isize> for u32[src]

type Output = <u32 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ i32> for &'_ u16[src]

type Output = <u16 as Shr<i32>>::Output

impl<'_> Shr<&'_ usize> for Wrapping<i8>[src]

type Output = <Wrapping<i8> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ u16> for &'_ u128[src]

type Output = <u128 as Shr<u16>>::Output

impl Shr<usize> for i8[src]

type Output = i8

impl<'_> Shr<&'_ i64> for u16[src]

type Output = <u16 as Shr<i64>>::Output

impl<'a> Shr<usize> for &'a u64[src]

type Output = <u64 as Shr<usize>>::Output

impl<'a> Shr<u16> for &'a u128[src]

type Output = <u128 as Shr<u16>>::Output

impl<'a> Shr<usize> for &'a Wrapping<u32>[src]

type Output = <Wrapping<u32> as Shr<usize>>::Output

impl<'a> Shr<usize> for &'a Wrapping<i128>[src]

type Output = <Wrapping<i128> as Shr<usize>>::Output

impl<'_, '_> Shr<&'_ i16> for &'_ i64[src]

type Output = <i64 as Shr<i16>>::Output

impl Shr<u64> for i32[src]

type Output = i32

impl Shr<isize> for u32[src]

type Output = u32

impl<'a> Shr<i16> for &'a usize[src]

type Output = <usize as Shr<i16>>::Output

impl<'_, '_> Shr<&'_ i32> for &'_ u32[src]

type Output = <u32 as Shr<i32>>::Output

impl Shr<usize> for usize[src]

type Output = usize

impl Shr<i32> for isize[src]

type Output = isize

impl<'a> Shr<u64> for &'a i16[src]

type Output = <i16 as Shr<u64>>::Output

impl<'_> Shr<&'_ u8> for usize[src]

type Output = <usize as Shr<u8>>::Output

impl<'_> Shr<&'_ i16> for i16[src]

type Output = <i16 as Shr<i16>>::Output

impl<'_, '_> Shr<&'_ u8> for &'_ u16[src]

type Output = <u16 as Shr<u8>>::Output

impl Shr<i32> for i16[src]

type Output = i16

impl<'a> Shr<usize> for &'a u32[src]

type Output = <u32 as Shr<usize>>::Output

impl<'_> Shr<&'_ u32> for i16[src]

type Output = <i16 as Shr<u32>>::Output

impl<'_, '_> Shr<&'_ u64> for &'_ u16[src]

type Output = <u16 as Shr<u64>>::Output

impl<'a> Shr<i128> for &'a u32[src]

type Output = <u32 as Shr<i128>>::Output

impl Shr<u64> for isize[src]

type Output = isize

impl<'a> Shr<u32> for &'a i128[src]

type Output = <i128 as Shr<u32>>::Output

impl<'_, '_> Shr<&'_ u32> for &'_ u64[src]

type Output = <u64 as Shr<u32>>::Output

impl<'_> Shr<&'_ u16> for i16[src]

type Output = <i16 as Shr<u16>>::Output

impl Shr<i32> for u64[src]

type Output = u64

impl<'_> Shr<&'_ u64> for usize[src]

type Output = <usize as Shr<u64>>::Output

impl<'_> Shr<&'_ isize> for u8[src]

type Output = <u8 as Shr<isize>>::Output

impl<'_, '_> Shr<&'_ u64> for &'_ u128[src]

type Output = <u128 as Shr<u64>>::Output

impl Shr<isize> for isize[src]

type Output = isize

impl<'_> Shr<&'_ u128> for u8[src]

type Output = <u8 as Shr<u128>>::Output

impl<'_> Shr<&'_ i64> for isize[src]

type Output = <isize as Shr<i64>>::Output

impl<'_> Shr<&'_ i16> for u128[src]

type Output = <u128 as Shr<i16>>::Output

impl<'a> Shr<usize> for &'a i128[src]

type Output = <i128 as Shr<usize>>::Output

impl<'a> Shr<i32> for &'a u128[src]

type Output = <u128 as Shr<i32>>::Output

impl<'_> Shr<&'_ u64> for i16[src]

type Output = <i16 as Shr<u64>>::Output

impl<'a> Shr<usize> for &'a Wrapping<i8>[src]

type Output = <Wrapping<i8> as Shr<usize>>::Output

Loading content...

Implementors

impl Shr<B0> for UTerm[src]

Shifting right UTerm by a 0 bit: UTerm >> B0 = UTerm

type Output = UTerm

impl Shr<B1> for UTerm[src]

Shifting right UTerm by a 1 bit: UTerm >> B1 = UTerm

type Output = UTerm

impl<U> Shr<U> for UTerm where
    U: Unsigned
[src]

Shifting right a UTerm by an unsigned integer: UTerm >> U = UTerm

type Output = UTerm

impl<U, B> Shr<B0> for UInt<U, B> where
    B: Bit,
    U: Unsigned
[src]

Shifting right any unsigned by a zero bit: U >> B0 = U

type Output = UInt<U, B>

impl<U, B> Shr<B1> for UInt<U, B> where
    B: Bit,
    U: Unsigned
[src]

Shifting right a UInt by a 1 bit: UInt<U, B> >> B1 = U

type Output = U

impl<U, B> Shr<UTerm> for UInt<U, B> where
    B: Bit,
    U: Unsigned
[src]

Shifting right UInt by UTerm: UInt<U, B> >> UTerm = UInt<U, B>

type Output = UInt<U, B>

impl<U, B, Ur, Br> Shr<UInt<Ur, Br>> for UInt<U, B> where
    B: Bit,
    Br: Bit,
    U: Unsigned + Shr<<UInt<Ur, Br> as Sub<B1>>::Output>,
    Ur: Unsigned,
    UInt<Ur, Br>: Sub<B1>, 
[src]

Shifting right UInt by UInt: UInt(U, B) >> Y = U >> (Y - 1)

type Output = <U as Shr<<UInt<Ur, Br> as Sub<B1>>::Output>>::Output

Loading content...