Trait std::ops::ShrAssign1.8.0[][src]

#[lang = "shr_assign"]
pub trait ShrAssign<Rhs = Self> { fn shr_assign(&mut self, rhs: Rhs); }

The right shift assignment operator >>=.


An implementation of ShrAssign for a wrapper around usize.

use std::ops::ShrAssign;

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

impl ShrAssign<usize> for Scalar {
    fn shr_assign(&mut self, rhs: usize) {
        self.0 >>= rhs;

let mut scalar = Scalar(16);
scalar >>= 2;
assert_eq!(scalar, Scalar(4));Run

Required Methods

Performs the >>= operation.