Trait std::ops::ShlAssign
[−]
[src]
pub trait ShlAssign<Rhs> { fn shl_assign(&mut self, Rhs); }
The ShlAssign
trait is used to specify the functionality of <<=
.
Examples
A trivial implementation of ShlAssign
. When Foo <<= Foo
happens, it ends up
calling shl_assign
, and therefore, main
prints Shifting left!
.
#![feature(augmented_assignments)] #![feature(op_assign_traits)] use std::ops::ShlAssign; #[derive(Copy, Clone)] struct Foo; impl ShlAssign<Foo> for Foo { fn shl_assign(&mut self, _rhs: Foo) { println!("Shifting left!"); } } fn main() { let mut foo = Foo; foo <<= Foo; }
Required Methods
fn shl_assign(&mut self, Rhs)
The method for the <<=
operator
Implementors
impl ShlAssign<u8> for u8
impl ShlAssign<u16> for u8
impl ShlAssign<u32> for u8
impl ShlAssign<u64> for u8
impl ShlAssign<usize> for u8
impl ShlAssign<i8> for u8
impl ShlAssign<i16> for u8
impl ShlAssign<i32> for u8
impl ShlAssign<i64> for u8
impl ShlAssign<isize> for u8
impl ShlAssign<u8> for u16
impl ShlAssign<u16> for u16
impl ShlAssign<u32> for u16
impl ShlAssign<u64> for u16
impl ShlAssign<usize> for u16
impl ShlAssign<i8> for u16
impl ShlAssign<i16> for u16
impl ShlAssign<i32> for u16
impl ShlAssign<i64> for u16
impl ShlAssign<isize> for u16
impl ShlAssign<u8> for u32
impl ShlAssign<u16> for u32
impl ShlAssign<u32> for u32
impl ShlAssign<u64> for u32
impl ShlAssign<usize> for u32
impl ShlAssign<i8> for u32
impl ShlAssign<i16> for u32
impl ShlAssign<i32> for u32
impl ShlAssign<i64> for u32
impl ShlAssign<isize> for u32
impl ShlAssign<u8> for u64
impl ShlAssign<u16> for u64
impl ShlAssign<u32> for u64
impl ShlAssign<u64> for u64
impl ShlAssign<usize> for u64
impl ShlAssign<i8> for u64
impl ShlAssign<i16> for u64
impl ShlAssign<i32> for u64
impl ShlAssign<i64> for u64
impl ShlAssign<isize> for u64
impl ShlAssign<u8> for usize
impl ShlAssign<u16> for usize
impl ShlAssign<u32> for usize
impl ShlAssign<u64> for usize
impl ShlAssign<usize> for usize
impl ShlAssign<i8> for usize
impl ShlAssign<i16> for usize
impl ShlAssign<i32> for usize
impl ShlAssign<i64> for usize
impl ShlAssign<isize> for usize
impl ShlAssign<u8> for i8
impl ShlAssign<u16> for i8
impl ShlAssign<u32> for i8
impl ShlAssign<u64> for i8
impl ShlAssign<usize> for i8
impl ShlAssign<i8> for i8
impl ShlAssign<i16> for i8
impl ShlAssign<i32> for i8
impl ShlAssign<i64> for i8
impl ShlAssign<isize> for i8
impl ShlAssign<u8> for i16
impl ShlAssign<u16> for i16
impl ShlAssign<u32> for i16
impl ShlAssign<u64> for i16
impl ShlAssign<usize> for i16
impl ShlAssign<i8> for i16
impl ShlAssign<i16> for i16
impl ShlAssign<i32> for i16
impl ShlAssign<i64> for i16
impl ShlAssign<isize> for i16
impl ShlAssign<u8> for i32
impl ShlAssign<u16> for i32
impl ShlAssign<u32> for i32
impl ShlAssign<u64> for i32
impl ShlAssign<usize> for i32
impl ShlAssign<i8> for i32
impl ShlAssign<i16> for i32
impl ShlAssign<i32> for i32
impl ShlAssign<i64> for i32
impl ShlAssign<isize> for i32
impl ShlAssign<u8> for i64
impl ShlAssign<u16> for i64
impl ShlAssign<u32> for i64
impl ShlAssign<u64> for i64
impl ShlAssign<usize> for i64
impl ShlAssign<i8> for i64
impl ShlAssign<i16> for i64
impl ShlAssign<i32> for i64
impl ShlAssign<i64> for i64
impl ShlAssign<isize> for i64
impl ShlAssign<u8> for isize
impl ShlAssign<u16> for isize
impl ShlAssign<u32> for isize
impl ShlAssign<u64> for isize
impl ShlAssign<usize> for isize
impl ShlAssign<i8> for isize
impl ShlAssign<i16> for isize
impl ShlAssign<i32> for isize
impl ShlAssign<i64> for isize
impl ShlAssign<isize> for isize