[−][src]Trait competitive_hpp::prelude::traits::ops::wrapping::WrappingShr
Performs a right shift that does not panic.
Required methods
fn wrapping_shr(&self, rhs: u32) -> Self
Panic-free bitwise shift-right; yields self >> mask(rhs),
where mask removes any high order bits of rhs that would
cause the shift to exceed the bitwidth of the type.
use num_traits::WrappingShr; let x: u16 = 0x8000; assert_eq!(WrappingShr::wrapping_shr(&x, 0), 0x8000); assert_eq!(WrappingShr::wrapping_shr(&x, 1), 0x4000); assert_eq!(WrappingShr::wrapping_shr(&x, 15), 0x0001); assert_eq!(WrappingShr::wrapping_shr(&x, 16), 0x8000);
Implementations on Foreign Types
impl WrappingShr for i64[src]
fn wrapping_shr(&self, rhs: u32) -> i64[src]
impl WrappingShr for i16[src]
fn wrapping_shr(&self, rhs: u32) -> i16[src]
impl WrappingShr for usize[src]
fn wrapping_shr(&self, rhs: u32) -> usize[src]
impl WrappingShr for i128[src]
fn wrapping_shr(&self, rhs: u32) -> i128[src]
impl WrappingShr for u64[src]
fn wrapping_shr(&self, rhs: u32) -> u64[src]
impl WrappingShr for u8[src]
fn wrapping_shr(&self, rhs: u32) -> u8[src]
impl WrappingShr for u32[src]
fn wrapping_shr(&self, rhs: u32) -> u32[src]
impl<T> WrappingShr for Wrapping<T> where
T: WrappingShr,
Wrapping<T>: Shr<usize>,
<Wrapping<T> as Shr<usize>>::Output == Wrapping<T>, [src]
T: WrappingShr,
Wrapping<T>: Shr<usize>,
<Wrapping<T> as Shr<usize>>::Output == Wrapping<T>,