logo

Trait rocket::mtls::oid::asn1_rs::nom::lib::std::ops::ShrAssign

1.8.0 · source · []
pub trait ShrAssign<Rhs = Self> {
    fn shr_assign(&mut self, rhs: Rhs);
}
Available on crate feature mtls only.
Expand description

The right shift assignment operator >>=.

Examples

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));

Required Methods

Performs the >>= operation.

Examples
let mut x: u8 = 5;
x >>= 1;
assert_eq!(x, 2);

let mut x: u8 = 2;
x >>= 1;
assert_eq!(x, 1);

Implementations on Foreign Types

Implementors