On this page
Trait std::ops::Shr
pub trait Shr<Rhs = Self> {
type Output;
// Required method
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, Self(rhs): Self) -> Self::Output {
let Self(lhs) = self;
Self(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![];
spun_vector.extend_from_slice(b);
spun_vector.extend_from_slice(a);
Self { vec: spun_vector }
}
}
assert_eq!(SpinVector { vec: vec![0, 1, 2, 3, 4] } >> 2,
SpinVector { vec: vec![3, 4, 0, 1, 2] });
Required Associated Types
type Output
The resulting type after applying the >>
operator.
Required Methods
fn shr(self, rhs: Rhs) -> Self::Output
Performs the >>
operation.
Examples
assert_eq!(5u8 >> 1, 2);
assert_eq!(2u8 >> 1, 1);
Implementors
impl Shr for i8
type Output = i8
impl Shr for i16
type Output = i16
impl Shr for i32
type Output = i32
impl Shr for i64
type Output = i64
impl Shr for i128
type Output = i128
impl Shr for isize
type Output = isize
impl Shr for u8
type Output = u8
impl Shr for u16
type Output = u16
impl Shr for u32
type Output = u32
impl Shr for u64
type Output = u64
impl Shr for u128
type Output = u128
impl Shr for usize
type Output = usize
impl Shr<&i8> for &i8
type Output = <i8 as Shr>::Output
impl Shr<&i8> for &i16
type Output = <i16 as Shr<i8>>::Output
impl Shr<&i8> for &i32
type Output = <i32 as Shr<i8>>::Output
impl Shr<&i8> for &i64
type Output = <i64 as Shr<i8>>::Output
impl Shr<&i8> for &i128
type Output = <i128 as Shr<i8>>::Output
impl Shr<&i8> for &isize
type Output = <isize as Shr<i8>>::Output
impl Shr<&i8> for &u8
type Output = <u8 as Shr<i8>>::Output
impl Shr<&i8> for &u16
type Output = <u16 as Shr<i8>>::Output
impl Shr<&i8> for &u32
type Output = <u32 as Shr<i8>>::Output
impl Shr<&i8> for &u64
type Output = <u64 as Shr<i8>>::Output
impl Shr<&i8> for &u128
type Output = <u128 as Shr<i8>>::Output
impl Shr<&i8> for &usize
type Output = <usize as Shr<i8>>::Output
impl Shr<&i8> for i8
type Output = <i8 as Shr>::Output
impl Shr<&i8> for i16
type Output = <i16 as Shr<i8>>::Output
impl Shr<&i8> for i32
type Output = <i32 as Shr<i8>>::Output
impl Shr<&i8> for i64
type Output = <i64 as Shr<i8>>::Output
impl Shr<&i8> for i128
type Output = <i128 as Shr<i8>>::Output
impl Shr<&i8> for isize
type Output = <isize as Shr<i8>>::Output
impl Shr<&i8> for u8
type Output = <u8 as Shr<i8>>::Output
impl Shr<&i8> for u16
type Output = <u16 as Shr<i8>>::Output
impl Shr<&i8> for u32
type Output = <u32 as Shr<i8>>::Output
impl Shr<&i8> for u64
type Output = <u64 as Shr<i8>>::Output
impl Shr<&i8> for u128
type Output = <u128 as Shr<i8>>::Output
impl Shr<&i8> for usize
type Output = <usize as Shr<i8>>::Output
impl Shr<&i16> for &i8
type Output = <i8 as Shr<i16>>::Output
impl Shr<&i16> for &i16
type Output = <i16 as Shr>::Output
impl Shr<&i16> for &i32
type Output = <i32 as Shr<i16>>::Output
impl Shr<&i16> for &i64
type Output = <i64 as Shr<i16>>::Output
impl Shr<&i16> for &i128
type Output = <i128 as Shr<i16>>::Output
impl Shr<&i16> for &isize
type Output = <isize as Shr<i16>>::Output
impl Shr<&i16> for &u8
type Output = <u8 as Shr<i16>>::Output
impl Shr<&i16> for &u16
type Output = <u16 as Shr<i16>>::Output
impl Shr<&i16> for &u32
type Output = <u32 as Shr<i16>>::Output
impl Shr<&i16> for &u64
type Output = <u64 as Shr<i16>>::Output
impl Shr<&i16> for &u128
type Output = <u128 as Shr<i16>>::Output
impl Shr<&i16> for &usize
type Output = <usize as Shr<i16>>::Output
impl Shr<&i16> for i8
type Output = <i8 as Shr<i16>>::Output
impl Shr<&i16> for i16
type Output = <i16 as Shr>::Output
impl Shr<&i16> for i32
type Output = <i32 as Shr<i16>>::Output
impl Shr<&i16> for i64
type Output = <i64 as Shr<i16>>::Output
impl Shr<&i16> for i128
type Output = <i128 as Shr<i16>>::Output
impl Shr<&i16> for isize
type Output = <isize as Shr<i16>>::Output
impl Shr<&i16> for u8
type Output = <u8 as Shr<i16>>::Output
impl Shr<&i16> for u16
type Output = <u16 as Shr<i16>>::Output
impl Shr<&i16> for u32
type Output = <u32 as Shr<i16>>::Output
impl Shr<&i16> for u64
type Output = <u64 as Shr<i16>>::Output
impl Shr<&i16> for u128
type Output = <u128 as Shr<i16>>::Output
impl Shr<&i16> for usize
type Output = <usize as Shr<i16>>::Output
impl Shr<&i32> for &i8
type Output = <i8 as Shr<i32>>::Output
impl Shr<&i32> for &i16
type Output = <i16 as Shr<i32>>::Output
impl Shr<&i32> for &i32
type Output = <i32 as Shr>::Output
impl Shr<&i32> for &i64
type Output = <i64 as Shr<i32>>::Output
impl Shr<&i32> for &i128
type Output = <i128 as Shr<i32>>::Output
impl Shr<&i32> for &isize
type Output = <isize as Shr<i32>>::Output
impl Shr<&i32> for &u8
type Output = <u8 as Shr<i32>>::Output
impl Shr<&i32> for &u16
type Output = <u16 as Shr<i32>>::Output
impl Shr<&i32> for &u32
type Output = <u32 as Shr<i32>>::Output
impl Shr<&i32> for &u64
type Output = <u64 as Shr<i32>>::Output
impl Shr<&i32> for &u128
type Output = <u128 as Shr<i32>>::Output
impl Shr<&i32> for &usize
type Output = <usize as Shr<i32>>::Output
impl Shr<&i32> for i8
type Output = <i8 as Shr<i32>>::Output
impl Shr<&i32> for i16
type Output = <i16 as Shr<i32>>::Output
impl Shr<&i32> for i32
type Output = <i32 as Shr>::Output
impl Shr<&i32> for i64
type Output = <i64 as Shr<i32>>::Output
impl Shr<&i32> for i128
type Output = <i128 as Shr<i32>>::Output
impl Shr<&i32> for isize
type Output = <isize as Shr<i32>>::Output
impl Shr<&i32> for u8
type Output = <u8 as Shr<i32>>::Output
impl Shr<&i32> for u16
type Output = <u16 as Shr<i32>>::Output
impl Shr<&i32> for u32
type Output = <u32 as Shr<i32>>::Output
impl Shr<&i32> for u64
type Output = <u64 as Shr<i32>>::Output
impl Shr<&i32> for u128
type Output = <u128 as Shr<i32>>::Output
impl Shr<&i32> for usize
type Output = <usize as Shr<i32>>::Output
impl Shr<&i64> for &i8
type Output = <i8 as Shr<i64>>::Output
impl Shr<&i64> for &i16
type Output = <i16 as Shr<i64>>::Output
impl Shr<&i64> for &i32
type Output = <i32 as Shr<i64>>::Output
impl Shr<&i64> for &i64
type Output = <i64 as Shr>::Output
impl Shr<&i64> for &i128
type Output = <i128 as Shr<i64>>::Output
impl Shr<&i64> for &isize
type Output = <isize as Shr<i64>>::Output
impl Shr<&i64> for &u8
type Output = <u8 as Shr<i64>>::Output
impl Shr<&i64> for &u16
type Output = <u16 as Shr<i64>>::Output
impl Shr<&i64> for &u32
type Output = <u32 as Shr<i64>>::Output
impl Shr<&i64> for &u64
type Output = <u64 as Shr<i64>>::Output
impl Shr<&i64> for &u128
type Output = <u128 as Shr<i64>>::Output
impl Shr<&i64> for &usize
type Output = <usize as Shr<i64>>::Output
impl Shr<&i64> for i8
type Output = <i8 as Shr<i64>>::Output
impl Shr<&i64> for i16
type Output = <i16 as Shr<i64>>::Output
impl Shr<&i64> for i32
type Output = <i32 as Shr<i64>>::Output
impl Shr<&i64> for i64
type Output = <i64 as Shr>::Output
impl Shr<&i64> for i128
type Output = <i128 as Shr<i64>>::Output
impl Shr<&i64> for isize
type Output = <isize as Shr<i64>>::Output
impl Shr<&i64> for u8
type Output = <u8 as Shr<i64>>::Output
impl Shr<&i64> for u16
type Output = <u16 as Shr<i64>>::Output
impl Shr<&i64> for u32
type Output = <u32 as Shr<i64>>::Output
impl Shr<&i64> for u64
type Output = <u64 as Shr<i64>>::Output
impl Shr<&i64> for u128
type Output = <u128 as Shr<i64>>::Output
impl Shr<&i64> for usize
type Output = <usize as Shr<i64>>::Output
impl Shr<&i128> for &i8
type Output = <i8 as Shr<i128>>::Output
impl Shr<&i128> for &i16
type Output = <i16 as Shr<i128>>::Output
impl Shr<&i128> for &i32
type Output = <i32 as Shr<i128>>::Output
impl Shr<&i128> for &i64
type Output = <i64 as Shr<i128>>::Output
impl Shr<&i128> for &i128
type Output = <i128 as Shr>::Output
impl Shr<&i128> for &isize
type Output = <isize as Shr<i128>>::Output
impl Shr<&i128> for &u8
type Output = <u8 as Shr<i128>>::Output
impl Shr<&i128> for &u16
type Output = <u16 as Shr<i128>>::Output
impl Shr<&i128> for &u32
type Output = <u32 as Shr<i128>>::Output
impl Shr<&i128> for &u64
type Output = <u64 as Shr<i128>>::Output
impl Shr<&i128> for &u128
type Output = <u128 as Shr<i128>>::Output
impl Shr<&i128> for &usize
type Output = <usize as Shr<i128>>::Output
impl Shr<&i128> for i8
type Output = <i8 as Shr<i128>>::Output
impl Shr<&i128> for i16
type Output = <i16 as Shr<i128>>::Output
impl Shr<&i128> for i32
type Output = <i32 as Shr<i128>>::Output
impl Shr<&i128> for i64
type Output = <i64 as Shr<i128>>::Output
impl Shr<&i128> for i128
type Output = <i128 as Shr>::Output
impl Shr<&i128> for isize
type Output = <isize as Shr<i128>>::Output
impl Shr<&i128> for u8
type Output = <u8 as Shr<i128>>::Output
impl Shr<&i128> for u16
type Output = <u16 as Shr<i128>>::Output
impl Shr<&i128> for u32
type Output = <u32 as Shr<i128>>::Output
impl Shr<&i128> for u64
type Output = <u64 as Shr<i128>>::Output
impl Shr<&i128> for u128
type Output = <u128 as Shr<i128>>::Output
impl Shr<&i128> for usize
type Output = <usize as Shr<i128>>::Output
impl Shr<&isize> for &i8
type Output = <i8 as Shr<isize>>::Output
impl Shr<&isize> for &i16
type Output = <i16 as Shr<isize>>::Output
impl Shr<&isize> for &i32
type Output = <i32 as Shr<isize>>::Output
impl Shr<&isize> for &i64
type Output = <i64 as Shr<isize>>::Output
impl Shr<&isize> for &i128
type Output = <i128 as Shr<isize>>::Output
impl Shr<&isize> for &isize
type Output = <isize as Shr>::Output
impl Shr<&isize> for &u8
type Output = <u8 as Shr<isize>>::Output
impl Shr<&isize> for &u16
type Output = <u16 as Shr<isize>>::Output
impl Shr<&isize> for &u32
type Output = <u32 as Shr<isize>>::Output
impl Shr<&isize> for &u64
type Output = <u64 as Shr<isize>>::Output
impl Shr<&isize> for &u128
type Output = <u128 as Shr<isize>>::Output
impl Shr<&isize> for &usize
type Output = <usize as Shr<isize>>::Output
impl Shr<&isize> for i8
type Output = <i8 as Shr<isize>>::Output
impl Shr<&isize> for i16
type Output = <i16 as Shr<isize>>::Output
impl Shr<&isize> for i32
type Output = <i32 as Shr<isize>>::Output
impl Shr<&isize> for i64
type Output = <i64 as Shr<isize>>::Output
impl Shr<&isize> for i128
type Output = <i128 as Shr<isize>>::Output
impl Shr<&isize> for isize
type Output = <isize as Shr>::Output
impl Shr<&isize> for u8
type Output = <u8 as Shr<isize>>::Output
impl Shr<&isize> for u16
type Output = <u16 as Shr<isize>>::Output
impl Shr<&isize> for u32
type Output = <u32 as Shr<isize>>::Output
impl Shr<&isize> for u64
type Output = <u64 as Shr<isize>>::Output
impl Shr<&isize> for u128
type Output = <u128 as Shr<isize>>::Output
impl Shr<&isize> for usize
type Output = <usize as Shr<isize>>::Output
impl Shr<&u8> for &i8
type Output = <i8 as Shr<u8>>::Output
impl Shr<&u8> for &i16
type Output = <i16 as Shr<u8>>::Output
impl Shr<&u8> for &i32
type Output = <i32 as Shr<u8>>::Output
impl Shr<&u8> for &i64
type Output = <i64 as Shr<u8>>::Output
impl Shr<&u8> for &i128
type Output = <i128 as Shr<u8>>::Output
impl Shr<&u8> for &isize
type Output = <isize as Shr<u8>>::Output
impl Shr<&u8> for &u8
type Output = <u8 as Shr>::Output
impl Shr<&u8> for &u16
type Output = <u16 as Shr<u8>>::Output
impl Shr<&u8> for &u32
type Output = <u32 as Shr<u8>>::Output
impl Shr<&u8> for &u64
type Output = <u64 as Shr<u8>>::Output
impl Shr<&u8> for &u128
type Output = <u128 as Shr<u8>>::Output
impl Shr<&u8> for &usize
type Output = <usize as Shr<u8>>::Output
impl Shr<&u8> for i8
type Output = <i8 as Shr<u8>>::Output
impl Shr<&u8> for i16
type Output = <i16 as Shr<u8>>::Output
impl Shr<&u8> for i32
type Output = <i32 as Shr<u8>>::Output
impl Shr<&u8> for i64
type Output = <i64 as Shr<u8>>::Output
impl Shr<&u8> for i128
type Output = <i128 as Shr<u8>>::Output
impl Shr<&u8> for isize
type Output = <isize as Shr<u8>>::Output
impl Shr<&u8> for u8
type Output = <u8 as Shr>::Output
impl Shr<&u8> for u16
type Output = <u16 as Shr<u8>>::Output
impl Shr<&u8> for u32
type Output = <u32 as Shr<u8>>::Output
impl Shr<&u8> for u64
type Output = <u64 as Shr<u8>>::Output
impl Shr<&u8> for u128
type Output = <u128 as Shr<u8>>::Output
impl Shr<&u8> for usize
type Output = <usize as Shr<u8>>::Output
impl Shr<&u16> for &i8
type Output = <i8 as Shr<u16>>::Output
impl Shr<&u16> for &i16
type Output = <i16 as Shr<u16>>::Output
impl Shr<&u16> for &i32
type Output = <i32 as Shr<u16>>::Output
impl Shr<&u16> for &i64
type Output = <i64 as Shr<u16>>::Output
impl Shr<&u16> for &i128
type Output = <i128 as Shr<u16>>::Output
impl Shr<&u16> for &isize
type Output = <isize as Shr<u16>>::Output
impl Shr<&u16> for &u8
type Output = <u8 as Shr<u16>>::Output
impl Shr<&u16> for &u16
type Output = <u16 as Shr>::Output
impl Shr<&u16> for &u32
type Output = <u32 as Shr<u16>>::Output
impl Shr<&u16> for &u64
type Output = <u64 as Shr<u16>>::Output
impl Shr<&u16> for &u128
type Output = <u128 as Shr<u16>>::Output
impl Shr<&u16> for &usize
type Output = <usize as Shr<u16>>::Output
impl Shr<&u16> for i8
type Output = <i8 as Shr<u16>>::Output
impl Shr<&u16> for i16
type Output = <i16 as Shr<u16>>::Output
impl Shr<&u16> for i32
type Output = <i32 as Shr<u16>>::Output
impl Shr<&u16> for i64
type Output = <i64 as Shr<u16>>::Output
impl Shr<&u16> for i128
type Output = <i128 as Shr<u16>>::Output
impl Shr<&u16> for isize
type Output = <isize as Shr<u16>>::Output
impl Shr<&u16> for u8
type Output = <u8 as Shr<u16>>::Output
impl Shr<&u16> for u16
type Output = <u16 as Shr>::Output
impl Shr<&u16> for u32
type Output = <u32 as Shr<u16>>::Output
impl Shr<&u16> for u64
type Output = <u64 as Shr<u16>>::Output
impl Shr<&u16> for u128
type Output = <u128 as Shr<u16>>::Output
impl Shr<&u16> for usize
type Output = <usize as Shr<u16>>::Output
impl Shr<&u32> for &i8
type Output = <i8 as Shr<u32>>::Output
impl Shr<&u32> for &i16
type Output = <i16 as Shr<u32>>::Output
impl Shr<&u32> for &i32
type Output = <i32 as Shr<u32>>::Output
impl Shr<&u32> for &i64
type Output = <i64 as Shr<u32>>::Output
impl Shr<&u32> for &i128
type Output = <i128 as Shr<u32>>::Output
impl Shr<&u32> for &isize
type Output = <isize as Shr<u32>>::Output
impl Shr<&u32> for &u8
type Output = <u8 as Shr<u32>>::Output
impl Shr<&u32> for &u16
type Output = <u16 as Shr<u32>>::Output
impl Shr<&u32> for &u32
type Output = <u32 as Shr>::Output
impl Shr<&u32> for &u64
type Output = <u64 as Shr<u32>>::Output
impl Shr<&u32> for &u128
type Output = <u128 as Shr<u32>>::Output
impl Shr<&u32> for &usize
type Output = <usize as Shr<u32>>::Output
impl Shr<&u32> for i8
type Output = <i8 as Shr<u32>>::Output
impl Shr<&u32> for i16
type Output = <i16 as Shr<u32>>::Output
impl Shr<&u32> for i32
type Output = <i32 as Shr<u32>>::Output
impl Shr<&u32> for i64
type Output = <i64 as Shr<u32>>::Output
impl Shr<&u32> for i128
type Output = <i128 as Shr<u32>>::Output
impl Shr<&u32> for isize
type Output = <isize as Shr<u32>>::Output
impl Shr<&u32> for u8
type Output = <u8 as Shr<u32>>::Output
impl Shr<&u32> for u16
type Output = <u16 as Shr<u32>>::Output
impl Shr<&u32> for u32
type Output = <u32 as Shr>::Output
impl Shr<&u32> for u64
type Output = <u64 as Shr<u32>>::Output
impl Shr<&u32> for u128
type Output = <u128 as Shr<u32>>::Output
impl Shr<&u32> for usize
type Output = <usize as Shr<u32>>::Output
impl Shr<&u64> for &i8
type Output = <i8 as Shr<u64>>::Output
impl Shr<&u64> for &i16
type Output = <i16 as Shr<u64>>::Output
impl Shr<&u64> for &i32
type Output = <i32 as Shr<u64>>::Output
impl Shr<&u64> for &i64
type Output = <i64 as Shr<u64>>::Output
impl Shr<&u64> for &i128
type Output = <i128 as Shr<u64>>::Output
impl Shr<&u64> for &isize
type Output = <isize as Shr<u64>>::Output
impl Shr<&u64> for &u8
type Output = <u8 as Shr<u64>>::Output
impl Shr<&u64> for &u16
type Output = <u16 as Shr<u64>>::Output
impl Shr<&u64> for &u32
type Output = <u32 as Shr<u64>>::Output
impl Shr<&u64> for &u64
type Output = <u64 as Shr>::Output
impl Shr<&u64> for &u128
type Output = <u128 as Shr<u64>>::Output
impl Shr<&u64> for &usize
type Output = <usize as Shr<u64>>::Output
impl Shr<&u64> for i8
type Output = <i8 as Shr<u64>>::Output
impl Shr<&u64> for i16
type Output = <i16 as Shr<u64>>::Output
impl Shr<&u64> for i32
type Output = <i32 as Shr<u64>>::Output
impl Shr<&u64> for i64
type Output = <i64 as Shr<u64>>::Output
impl Shr<&u64> for i128
type Output = <i128 as Shr<u64>>::Output
impl Shr<&u64> for isize
type Output = <isize as Shr<u64>>::Output
impl Shr<&u64> for u8
type Output = <u8 as Shr<u64>>::Output
impl Shr<&u64> for u16
type Output = <u16 as Shr<u64>>::Output
impl Shr<&u64> for u32
type Output = <u32 as Shr<u64>>::Output
impl Shr<&u64> for u64
type Output = <u64 as Shr>::Output
impl Shr<&u64> for u128
type Output = <u128 as Shr<u64>>::Output
impl Shr<&u64> for usize
type Output = <usize as Shr<u64>>::Output
impl Shr<&u128> for &i8
type Output = <i8 as Shr<u128>>::Output
impl Shr<&u128> for &i16
type Output = <i16 as Shr<u128>>::Output
impl Shr<&u128> for &i32
type Output = <i32 as Shr<u128>>::Output
impl Shr<&u128> for &i64
type Output = <i64 as Shr<u128>>::Output
impl Shr<&u128> for &i128
type Output = <i128 as Shr<u128>>::Output
impl Shr<&u128> for &isize
type Output = <isize as Shr<u128>>::Output
impl Shr<&u128> for &u8
type Output = <u8 as Shr<u128>>::Output
impl Shr<&u128> for &u16
type Output = <u16 as Shr<u128>>::Output
impl Shr<&u128> for &u32
type Output = <u32 as Shr<u128>>::Output
impl Shr<&u128> for &u64
type Output = <u64 as Shr<u128>>::Output
impl Shr<&u128> for &u128
type Output = <u128 as Shr>::Output
impl Shr<&u128> for &usize
type Output = <usize as Shr<u128>>::Output
impl Shr<&u128> for i8
type Output = <i8 as Shr<u128>>::Output
impl Shr<&u128> for i16
type Output = <i16 as Shr<u128>>::Output
impl Shr<&u128> for i32
type Output = <i32 as Shr<u128>>::Output
impl Shr<&u128> for i64
type Output = <i64 as Shr<u128>>::Output
impl Shr<&u128> for i128
type Output = <i128 as Shr<u128>>::Output
impl Shr<&u128> for isize
type Output = <isize as Shr<u128>>::Output
impl Shr<&u128> for u8
type Output = <u8 as Shr<u128>>::Output
impl Shr<&u128> for u16
type Output = <u16 as Shr<u128>>::Output
impl Shr<&u128> for u32
type Output = <u32 as Shr<u128>>::Output
impl Shr<&u128> for u64
type Output = <u64 as Shr<u128>>::Output
impl Shr<&u128> for u128
type Output = <u128 as Shr>::Output
impl Shr<&u128> for usize
type Output = <usize as Shr<u128>>::Output
impl Shr<&usize> for &i8
type Output = <i8 as Shr<usize>>::Output
impl Shr<&usize> for &i16
type Output = <i16 as Shr<usize>>::Output
impl Shr<&usize> for &i32
type Output = <i32 as Shr<usize>>::Output
impl Shr<&usize> for &i64
type Output = <i64 as Shr<usize>>::Output
impl Shr<&usize> for &i128
type Output = <i128 as Shr<usize>>::Output
impl Shr<&usize> for &isize
type Output = <isize as Shr<usize>>::Output
impl Shr<&usize> for &u8
type Output = <u8 as Shr<usize>>::Output
impl Shr<&usize> for &u16
type Output = <u16 as Shr<usize>>::Output
impl Shr<&usize> for &u32
type Output = <u32 as Shr<usize>>::Output
impl Shr<&usize> for &u64
type Output = <u64 as Shr<usize>>::Output
impl Shr<&usize> for &u128
type Output = <u128 as Shr<usize>>::Output
impl Shr<&usize> for &usize
type Output = <usize as Shr>::Output
impl Shr<&usize> for &Wrapping<i8>
type Output = <Wrapping<i8> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<i16>
type Output = <Wrapping<i16> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<i32>
type Output = <Wrapping<i32> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<i64>
type Output = <Wrapping<i64> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<i128>
type Output = <Wrapping<i128> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<isize>
type Output = <Wrapping<isize> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<u8>
type Output = <Wrapping<u8> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<u16>
type Output = <Wrapping<u16> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<u32>
type Output = <Wrapping<u32> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<u64>
type Output = <Wrapping<u64> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<u128>
type Output = <Wrapping<u128> as Shr<usize>>::Output
impl Shr<&usize> for &Wrapping<usize>
type Output = <Wrapping<usize> as Shr<usize>>::Output
impl Shr<&usize> for i8
type Output = <i8 as Shr<usize>>::Output
impl Shr<&usize> for i16
type Output = <i16 as Shr<usize>>::Output
impl Shr<&usize> for i32
type Output = <i32 as Shr<usize>>::Output
impl Shr<&usize> for i64
type Output = <i64 as Shr<usize>>::Output
impl Shr<&usize> for i128
type Output = <i128 as Shr<usize>>::Output
impl Shr<&usize> for isize
type Output = <isize as Shr<usize>>::Output
impl Shr<&usize> for u8
type Output = <u8 as Shr<usize>>::Output
impl Shr<&usize> for u16
type Output = <u16 as Shr<usize>>::Output
impl Shr<&usize> for u32
type Output = <u32 as Shr<usize>>::Output
impl Shr<&usize> for u64
type Output = <u64 as Shr<usize>>::Output
impl Shr<&usize> for u128
type Output = <u128 as Shr<usize>>::Output
impl Shr<&usize> for usize
type Output = <usize as Shr>::Output
impl Shr<&usize> for Wrapping<i8>
type Output = <Wrapping<i8> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<i16>
type Output = <Wrapping<i16> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<i32>
type Output = <Wrapping<i32> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<i64>
type Output = <Wrapping<i64> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<i128>
type Output = <Wrapping<i128> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<isize>
type Output = <Wrapping<isize> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<u8>
type Output = <Wrapping<u8> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<u16>
type Output = <Wrapping<u16> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<u32>
type Output = <Wrapping<u32> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<u64>
type Output = <Wrapping<u64> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<u128>
type Output = <Wrapping<u128> as Shr<usize>>::Output
impl Shr<&usize> for Wrapping<usize>
type Output = <Wrapping<usize> as Shr<usize>>::Output
impl Shr<i8> for i16
type Output = i16
impl Shr<i8> for i32
type Output = i32
impl Shr<i8> for i64
type Output = i64
impl Shr<i8> for i128
type Output = i128
impl Shr<i8> for isize
type Output = isize
impl Shr<i8> for u8
type Output = u8
impl Shr<i8> for u16
type Output = u16
impl Shr<i8> for u32
type Output = u32
impl Shr<i8> for u64
type Output = u64
impl Shr<i8> for u128
type Output = u128
impl Shr<i8> for usize
type Output = usize
impl Shr<i16> for i8
type Output = i8
impl Shr<i16> for i32
type Output = i32
impl Shr<i16> for i64
type Output = i64
impl Shr<i16> for i128
type Output = i128
impl Shr<i16> for isize
type Output = isize
impl Shr<i16> for u8
type Output = u8
impl Shr<i16> for u16
type Output = u16
impl Shr<i16> for u32
type Output = u32
impl Shr<i16> for u64
type Output = u64
impl Shr<i16> for u128
type Output = u128
impl Shr<i16> for usize
type Output = usize
impl Shr<i32> for i8
type Output = i8
impl Shr<i32> for i16
type Output = i16
impl Shr<i32> for i64
type Output = i64
impl Shr<i32> for i128
type Output = i128
impl Shr<i32> for isize
type Output = isize
impl Shr<i32> for u8
type Output = u8
impl Shr<i32> for u16
type Output = u16
impl Shr<i32> for u32
type Output = u32
impl Shr<i32> for u64
type Output = u64
impl Shr<i32> for u128
type Output = u128
impl Shr<i32> for usize
type Output = usize
impl Shr<i64> for i8
type Output = i8
impl Shr<i64> for i16
type Output = i16
impl Shr<i64> for i32
type Output = i32
impl Shr<i64> for i128
type Output = i128
impl Shr<i64> for isize
type Output = isize
impl Shr<i64> for u8
type Output = u8
impl Shr<i64> for u16
type Output = u16
impl Shr<i64> for u32
type Output = u32
impl Shr<i64> for u64
type Output = u64
impl Shr<i64> for u128
type Output = u128
impl Shr<i64> for usize
type Output = usize
impl Shr<i128> for i8
type Output = i8
impl Shr<i128> for i16
type Output = i16
impl Shr<i128> for i32
type Output = i32
impl Shr<i128> for i64
type Output = i64
impl Shr<i128> for isize
type Output = isize
impl Shr<i128> for u8
type Output = u8
impl Shr<i128> for u16
type Output = u16
impl Shr<i128> for u32
type Output = u32
impl Shr<i128> for u64
type Output = u64
impl Shr<i128> for u128
type Output = u128
impl Shr<i128> for usize
type Output = usize
impl Shr<isize> for i8
type Output = i8
impl Shr<isize> for i16
type Output = i16
impl Shr<isize> for i32
type Output = i32
impl Shr<isize> for i64
type Output = i64
impl Shr<isize> for i128
type Output = i128
impl Shr<isize> for u8
type Output = u8
impl Shr<isize> for u16
type Output = u16
impl Shr<isize> for u32
type Output = u32
impl Shr<isize> for u64
type Output = u64
impl Shr<isize> for u128
type Output = u128
impl Shr<isize> for usize
type Output = usize
impl Shr<u8> for i8
type Output = i8
impl Shr<u8> for i16
type Output = i16
impl Shr<u8> for i32
type Output = i32
impl Shr<u8> for i64
type Output = i64
impl Shr<u8> for i128
type Output = i128
impl Shr<u8> for isize
type Output = isize
impl Shr<u8> for u16
type Output = u16
impl Shr<u8> for u32
type Output = u32
impl Shr<u8> for u64
type Output = u64
impl Shr<u8> for u128
type Output = u128
impl Shr<u8> for usize
type Output = usize
impl Shr<u16> for i8
type Output = i8
impl Shr<u16> for i16
type Output = i16
impl Shr<u16> for i32
type Output = i32
impl Shr<u16> for i64
type Output = i64
impl Shr<u16> for i128
type Output = i128
impl Shr<u16> for isize
type Output = isize
impl Shr<u16> for u8
type Output = u8
impl Shr<u16> for u32
type Output = u32
impl Shr<u16> for u64
type Output = u64
impl Shr<u16> for u128
type Output = u128
impl Shr<u16> for usize
type Output = usize
impl Shr<u32> for i8
type Output = i8
impl Shr<u32> for i16
type Output = i16
impl Shr<u32> for i32
type Output = i32
impl Shr<u32> for i64
type Output = i64
impl Shr<u32> for i128
type Output = i128
impl Shr<u32> for isize
type Output = isize
impl Shr<u32> for u8
type Output = u8
impl Shr<u32> for u16
type Output = u16
impl Shr<u32> for u64
type Output = u64
impl Shr<u32> for u128
type Output = u128
impl Shr<u32> for usize
type Output = usize
impl Shr<u64> for i8
type Output = i8
impl Shr<u64> for i16
type Output = i16
impl Shr<u64> for i32
type Output = i32
impl Shr<u64> for i64
type Output = i64
impl Shr<u64> for i128
type Output = i128
impl Shr<u64> for isize
type Output = isize
impl Shr<u64> for u8
type Output = u8
impl Shr<u64> for u16
type Output = u16
impl Shr<u64> for u32
type Output = u32
impl Shr<u64> for u128
type Output = u128
impl Shr<u64> for usize
type Output = usize
impl Shr<u128> for i8
type Output = i8
impl Shr<u128> for i16
type Output = i16
impl Shr<u128> for i32
type Output = i32
impl Shr<u128> for i64
type Output = i64
impl Shr<u128> for i128
type Output = i128
impl Shr<u128> for isize
type Output = isize
impl Shr<u128> for u8
type Output = u8
impl Shr<u128> for u16
type Output = u16
impl Shr<u128> for u32
type Output = u32
impl Shr<u128> for u64
type Output = u64
impl Shr<u128> for usize
type Output = usize
impl Shr<usize> for i8
type Output = i8
impl Shr<usize> for i16
type Output = i16
impl Shr<usize> for i32
type Output = i32
impl Shr<usize> for i64
type Output = i64
impl Shr<usize> for i128
type Output = i128
impl Shr<usize> for isize
type Output = isize
impl Shr<usize> for u8
type Output = u8
impl Shr<usize> for u16
type Output = u16
impl Shr<usize> for u32
type Output = u32
impl Shr<usize> for u64
type Output = u64
impl Shr<usize> for u128
type Output = u128
impl Shr<usize> for Wrapping<i8>
type Output = Wrapping<i8>
impl Shr<usize> for Wrapping<i16>
type Output = Wrapping<i16>
impl Shr<usize> for Wrapping<i32>
type Output = Wrapping<i32>
impl Shr<usize> for Wrapping<i64>
type Output = Wrapping<i64>
impl Shr<usize> for Wrapping<i128>
type Output = Wrapping<i128>
impl Shr<usize> for Wrapping<isize>
type Output = Wrapping<isize>
impl Shr<usize> for Wrapping<u8>
type Output = Wrapping<u8>
impl Shr<usize> for Wrapping<u16>
type Output = Wrapping<u16>
impl Shr<usize> for Wrapping<u32>
type Output = Wrapping<u32>
impl Shr<usize> for Wrapping<u64>
type Output = Wrapping<u64>
impl Shr<usize> for Wrapping<u128>
type Output = Wrapping<u128>
impl Shr<usize> for Wrapping<usize>
type Output = Wrapping<usize>
impl<'a> Shr<i8> for &'a i8
type Output = <i8 as Shr>::Output
impl<'a> Shr<i8> for &'a i16
type Output = <i16 as Shr<i8>>::Output
impl<'a> Shr<i8> for &'a i32
type Output = <i32 as Shr<i8>>::Output
impl<'a> Shr<i8> for &'a i64
type Output = <i64 as Shr<i8>>::Output
impl<'a> Shr<i8> for &'a i128
type Output = <i128 as Shr<i8>>::Output
impl<'a> Shr<i8> for &'a isize
type Output = <isize as Shr<i8>>::Output
impl<'a> Shr<i8> for &'a u8
type Output = <u8 as Shr<i8>>::Output
impl<'a> Shr<i8> for &'a u16
type Output = <u16 as Shr<i8>>::Output
impl<'a> Shr<i8> for &'a u32
type Output = <u32 as Shr<i8>>::Output
impl<'a> Shr<i8> for &'a u64
type Output = <u64 as Shr<i8>>::Output
impl<'a> Shr<i8> for &'a u128
type Output = <u128 as Shr<i8>>::Output
impl<'a> Shr<i8> for &'a usize
type Output = <usize as Shr<i8>>::Output
impl<'a> Shr<i16> for &'a i8
type Output = <i8 as Shr<i16>>::Output
impl<'a> Shr<i16> for &'a i16
type Output = <i16 as Shr>::Output
impl<'a> Shr<i16> for &'a i32
type Output = <i32 as Shr<i16>>::Output
impl<'a> Shr<i16> for &'a i64
type Output = <i64 as Shr<i16>>::Output
impl<'a> Shr<i16> for &'a i128
type Output = <i128 as Shr<i16>>::Output
impl<'a> Shr<i16> for &'a isize
type Output = <isize as Shr<i16>>::Output
impl<'a> Shr<i16> for &'a u8
type Output = <u8 as Shr<i16>>::Output
impl<'a> Shr<i16> for &'a u16
type Output = <u16 as Shr<i16>>::Output
impl<'a> Shr<i16> for &'a u32
type Output = <u32 as Shr<i16>>::Output
impl<'a> Shr<i16> for &'a u64
type Output = <u64 as Shr<i16>>::Output
impl<'a> Shr<i16> for &'a u128
type Output = <u128 as Shr<i16>>::Output
impl<'a> Shr<i16> for &'a usize
type Output = <usize as Shr<i16>>::Output
impl<'a> Shr<i32> for &'a i8
type Output = <i8 as Shr<i32>>::Output
impl<'a> Shr<i32> for &'a i16
type Output = <i16 as Shr<i32>>::Output
impl<'a> Shr<i32> for &'a i32
type Output = <i32 as Shr>::Output
impl<'a> Shr<i32> for &'a i64
type Output = <i64 as Shr<i32>>::Output
impl<'a> Shr<i32> for &'a i128
type Output = <i128 as Shr<i32>>::Output
impl<'a> Shr<i32> for &'a isize
type Output = <isize as Shr<i32>>::Output
impl<'a> Shr<i32> for &'a u8
type Output = <u8 as Shr<i32>>::Output
impl<'a> Shr<i32> for &'a u16
type Output = <u16 as Shr<i32>>::Output
impl<'a> Shr<i32> for &'a u32
type Output = <u32 as Shr<i32>>::Output
impl<'a> Shr<i32> for &'a u64
type Output = <u64 as Shr<i32>>::Output
impl<'a> Shr<i32> for &'a u128
type Output = <u128 as Shr<i32>>::Output
impl<'a> Shr<i32> for &'a usize
type Output = <usize as Shr<i32>>::Output
impl<'a> Shr<i64> for &'a i8
type Output = <i8 as Shr<i64>>::Output
impl<'a> Shr<i64> for &'a i16
type Output = <i16 as Shr<i64>>::Output
impl<'a> Shr<i64> for &'a i32
type Output = <i32 as Shr<i64>>::Output
impl<'a> Shr<i64> for &'a i64
type Output = <i64 as Shr>::Output
impl<'a> Shr<i64> for &'a i128
type Output = <i128 as Shr<i64>>::Output
impl<'a> Shr<i64> for &'a isize
type Output = <isize as Shr<i64>>::Output
impl<'a> Shr<i64> for &'a u8
type Output = <u8 as Shr<i64>>::Output
impl<'a> Shr<i64> for &'a u16
type Output = <u16 as Shr<i64>>::Output
impl<'a> Shr<i64> for &'a u32
type Output = <u32 as Shr<i64>>::Output
impl<'a> Shr<i64> for &'a u64
type Output = <u64 as Shr<i64>>::Output
impl<'a> Shr<i64> for &'a u128
type Output = <u128 as Shr<i64>>::Output
impl<'a> Shr<i64> for &'a usize
type Output = <usize as Shr<i64>>::Output
impl<'a> Shr<i128> for &'a i8
type Output = <i8 as Shr<i128>>::Output
impl<'a> Shr<i128> for &'a i16
type Output = <i16 as Shr<i128>>::Output
impl<'a> Shr<i128> for &'a i32
type Output = <i32 as Shr<i128>>::Output
impl<'a> Shr<i128> for &'a i64
type Output = <i64 as Shr<i128>>::Output
impl<'a> Shr<i128> for &'a i128
type Output = <i128 as Shr>::Output
impl<'a> Shr<i128> for &'a isize
type Output = <isize as Shr<i128>>::Output
impl<'a> Shr<i128> for &'a u8
type Output = <u8 as Shr<i128>>::Output
impl<'a> Shr<i128> for &'a u16
type Output = <u16 as Shr<i128>>::Output
impl<'a> Shr<i128> for &'a u32
type Output = <u32 as Shr<i128>>::Output
impl<'a> Shr<i128> for &'a u64
type Output = <u64 as Shr<i128>>::Output
impl<'a> Shr<i128> for &'a u128
type Output = <u128 as Shr<i128>>::Output
impl<'a> Shr<i128> for &'a usize
type Output = <usize as Shr<i128>>::Output
impl<'a> Shr<isize> for &'a i8
type Output = <i8 as Shr<isize>>::Output
impl<'a> Shr<isize> for &'a i16
type Output = <i16 as Shr<isize>>::Output
impl<'a> Shr<isize> for &'a i32
type Output = <i32 as Shr<isize>>::Output
impl<'a> Shr<isize> for &'a i64
type Output = <i64 as Shr<isize>>::Output
impl<'a> Shr<isize> for &'a i128
type Output = <i128 as Shr<isize>>::Output
impl<'a> Shr<isize> for &'a isize
type Output = <isize as Shr>::Output
impl<'a> Shr<isize> for &'a u8
type Output = <u8 as Shr<isize>>::Output
impl<'a> Shr<isize> for &'a u16
type Output = <u16 as Shr<isize>>::Output
impl<'a> Shr<isize> for &'a u32
type Output = <u32 as Shr<isize>>::Output
impl<'a> Shr<isize> for &'a u64
type Output = <u64 as Shr<isize>>::Output
impl<'a> Shr<isize> for &'a u128
type Output = <u128 as Shr<isize>>::Output
impl<'a> Shr<isize> for &'a usize
type Output = <usize as Shr<isize>>::Output
impl<'a> Shr<u8> for &'a i8
type Output = <i8 as Shr<u8>>::Output
impl<'a> Shr<u8> for &'a i16
type Output = <i16 as Shr<u8>>::Output
impl<'a> Shr<u8> for &'a i32
type Output = <i32 as Shr<u8>>::Output
impl<'a> Shr<u8> for &'a i64
type Output = <i64 as Shr<u8>>::Output
impl<'a> Shr<u8> for &'a i128
type Output = <i128 as Shr<u8>>::Output
impl<'a> Shr<u8> for &'a isize
type Output = <isize as Shr<u8>>::Output
impl<'a> Shr<u8> for &'a u8
type Output = <u8 as Shr>::Output
impl<'a> Shr<u8> for &'a u16
type Output = <u16 as Shr<u8>>::Output
impl<'a> Shr<u8> for &'a u32
type Output = <u32 as Shr<u8>>::Output
impl<'a> Shr<u8> for &'a u64
type Output = <u64 as Shr<u8>>::Output
impl<'a> Shr<u8> for &'a u128
type Output = <u128 as Shr<u8>>::Output
impl<'a> Shr<u8> for &'a usize
type Output = <usize as Shr<u8>>::Output
impl<'a> Shr<u16> for &'a i8
type Output = <i8 as Shr<u16>>::Output
impl<'a> Shr<u16> for &'a i16
type Output = <i16 as Shr<u16>>::Output
impl<'a> Shr<u16> for &'a i32
type Output = <i32 as Shr<u16>>::Output
impl<'a> Shr<u16> for &'a i64
type Output = <i64 as Shr<u16>>::Output
impl<'a> Shr<u16> for &'a i128
type Output = <i128 as Shr<u16>>::Output
impl<'a> Shr<u16> for &'a isize
type Output = <isize as Shr<u16>>::Output
impl<'a> Shr<u16> for &'a u8
type Output = <u8 as Shr<u16>>::Output
impl<'a> Shr<u16> for &'a u16
type Output = <u16 as Shr>::Output
impl<'a> Shr<u16> for &'a u32
type Output = <u32 as Shr<u16>>::Output
impl<'a> Shr<u16> for &'a u64
type Output = <u64 as Shr<u16>>::Output
impl<'a> Shr<u16> for &'a u128
type Output = <u128 as Shr<u16>>::Output
impl<'a> Shr<u16> for &'a usize
type Output = <usize as Shr<u16>>::Output
impl<'a> Shr<u32> for &'a i8
type Output = <i8 as Shr<u32>>::Output
impl<'a> Shr<u32> for &'a i16
type Output = <i16 as Shr<u32>>::Output
impl<'a> Shr<u32> for &'a i32
type Output = <i32 as Shr<u32>>::Output
impl<'a> Shr<u32> for &'a i64
type Output = <i64 as Shr<u32>>::Output
impl<'a> Shr<u32> for &'a i128
type Output = <i128 as Shr<u32>>::Output
impl<'a> Shr<u32> for &'a isize
type Output = <isize as Shr<u32>>::Output
impl<'a> Shr<u32> for &'a u8
type Output = <u8 as Shr<u32>>::Output
impl<'a> Shr<u32> for &'a u16
type Output = <u16 as Shr<u32>>::Output
impl<'a> Shr<u32> for &'a u32
type Output = <u32 as Shr>::Output
impl<'a> Shr<u32> for &'a u64
type Output = <u64 as Shr<u32>>::Output
impl<'a> Shr<u32> for &'a u128
type Output = <u128 as Shr<u32>>::Output
impl<'a> Shr<u32> for &'a usize
type Output = <usize as Shr<u32>>::Output
impl<'a> Shr<u64> for &'a i8
type Output = <i8 as Shr<u64>>::Output
impl<'a> Shr<u64> for &'a i16
type Output = <i16 as Shr<u64>>::Output
impl<'a> Shr<u64> for &'a i32
type Output = <i32 as Shr<u64>>::Output
impl<'a> Shr<u64> for &'a i64
type Output = <i64 as Shr<u64>>::Output
impl<'a> Shr<u64> for &'a i128
type Output = <i128 as Shr<u64>>::Output
impl<'a> Shr<u64> for &'a isize
type Output = <isize as Shr<u64>>::Output
impl<'a> Shr<u64> for &'a u8
type Output = <u8 as Shr<u64>>::Output
impl<'a> Shr<u64> for &'a u16
type Output = <u16 as Shr<u64>>::Output
impl<'a> Shr<u64> for &'a u32
type Output = <u32 as Shr<u64>>::Output
impl<'a> Shr<u64> for &'a u64
type Output = <u64 as Shr>::Output
impl<'a> Shr<u64> for &'a u128
type Output = <u128 as Shr<u64>>::Output
impl<'a> Shr<u64> for &'a usize
type Output = <usize as Shr<u64>>::Output
impl<'a> Shr<u128> for &'a i8
type Output = <i8 as Shr<u128>>::Output
impl<'a> Shr<u128> for &'a i16
type Output = <i16 as Shr<u128>>::Output
impl<'a> Shr<u128> for &'a i32
type Output = <i32 as Shr<u128>>::Output
impl<'a> Shr<u128> for &'a i64
type Output = <i64 as Shr<u128>>::Output
impl<'a> Shr<u128> for &'a i128
type Output = <i128 as Shr<u128>>::Output
impl<'a> Shr<u128> for &'a isize
type Output = <isize as Shr<u128>>::Output
impl<'a> Shr<u128> for &'a u8
type Output = <u8 as Shr<u128>>::Output
impl<'a> Shr<u128> for &'a u16
type Output = <u16 as Shr<u128>>::Output
impl<'a> Shr<u128> for &'a u32
type Output = <u32 as Shr<u128>>::Output
impl<'a> Shr<u128> for &'a u64
type Output = <u64 as Shr<u128>>::Output
impl<'a> Shr<u128> for &'a u128
type Output = <u128 as Shr>::Output
impl<'a> Shr<u128> for &'a usize
type Output = <usize as Shr<u128>>::Output
impl<'a> Shr<usize> for &'a i8
type Output = <i8 as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a i16
type Output = <i16 as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a i32
type Output = <i32 as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a i64
type Output = <i64 as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a i128
type Output = <i128 as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a isize
type Output = <isize as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a u8
type Output = <u8 as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a u16
type Output = <u16 as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a u32
type Output = <u32 as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a u64
type Output = <u64 as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a u128
type Output = <u128 as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a usize
type Output = <usize as Shr>::Output
impl<'a> Shr<usize> for &'a Wrapping<i8>
type Output = <Wrapping<i8> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<i16>
type Output = <Wrapping<i16> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<i32>
type Output = <Wrapping<i32> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<i64>
type Output = <Wrapping<i64> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<i128>
type Output = <Wrapping<i128> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<isize>
type Output = <Wrapping<isize> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<u8>
type Output = <Wrapping<u8> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<u16>
type Output = <Wrapping<u16> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<u32>
type Output = <Wrapping<u32> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<u64>
type Output = <Wrapping<u64> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<u128>
type Output = <Wrapping<u128> as Shr<usize>>::Output
impl<'a> Shr<usize> for &'a Wrapping<usize>
type Output = <Wrapping<usize> as Shr<usize>>::Output
impl<'lhs, 'rhs, T, const LANES: usize> Shr<&'rhs Simd<T, LANES>> for &'lhs Simd<T, LANES>
where
T: SimdElement,
Simd<T, LANES>: Shr<Output = Simd<T, LANES>>,
LaneCount<LANES>: SupportedLaneCount,
type Output = Simd<T, LANES>
impl<T, const LANES: usize> Shr<&Simd<T, LANES>> for Simd<T, LANES>
where
T: SimdElement,
Simd<T, LANES>: Shr<Output = Simd<T, LANES>>,
LaneCount<LANES>: SupportedLaneCount,
type Output = Simd<T, LANES>
impl<T, const LANES: usize> Shr<Simd<T, LANES>> for &Simd<T, LANES>
where
T: SimdElement,
Simd<T, LANES>: Shr<Output = Simd<T, LANES>>,
LaneCount<LANES>: SupportedLaneCount,
type Output = Simd<T, LANES>
impl<const N: usize> Shr for Simd<i8, N>
where
i8: SimdElement,
LaneCount<N>: SupportedLaneCount,
type Output = Simd<i8, N>
impl<const N: usize> Shr for Simd<i16, N>
where
i16: SimdElement,
LaneCount<N>: SupportedLaneCount,
type Output = Simd<i16, N>
impl<const N: usize> Shr for Simd<i32, N>
where
i32: SimdElement,
LaneCount<N>: SupportedLaneCount,
type Output = Simd<i32, N>
impl<const N: usize> Shr for Simd<i64, N>
where
i64: SimdElement,
LaneCount<N>: SupportedLaneCount,
type Output = Simd<i64, N>
impl<const N: usize> Shr for Simd<isize, N>
where
isize: SimdElement,
LaneCount<N>: SupportedLaneCount,
type Output = Simd<isize, N>
impl<const N: usize> Shr for Simd<u8, N>
where
u8: SimdElement,
LaneCount<N>: SupportedLaneCount,
type Output = Simd<u8, N>
impl<const N: usize> Shr for Simd<u16, N>
where
u16: SimdElement,
LaneCount<N>: SupportedLaneCount,
type Output = Simd<u16, N>
impl<const N: usize> Shr for Simd<u32, N>
where
u32: SimdElement,
LaneCount<N>: SupportedLaneCount,
type Output = Simd<u32, N>
impl<const N: usize> Shr for Simd<u64, N>
where
u64: SimdElement,
LaneCount<N>: SupportedLaneCount,
type Output = Simd<u64, N>
impl<const N: usize> Shr for Simd<usize, N>
where
usize: SimdElement,
LaneCount<N>: SupportedLaneCount,
type Output = Simd<usize, N>
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/ops/trait.Shr.html