Trait BitOrAssign

1.8.0 · Source
pub trait BitOrAssign<Rhs = Self> {
    // Required method
    fn bitor_assign(&mut self, rhs: Rhs);
}
Expand description

The bitwise OR assignment operator |=.

§Examples

use std::ops::BitOrAssign;

#[derive(Debug, PartialEq)]
struct PersonalPreferences {
    likes_cats: bool,
    likes_dogs: bool,
}

impl BitOrAssign for PersonalPreferences {
    fn bitor_assign(&mut self, rhs: Self) {
        self.likes_cats |= rhs.likes_cats;
        self.likes_dogs |= rhs.likes_dogs;
    }
}

let mut prefs = PersonalPreferences { likes_cats: true, likes_dogs: false };
prefs |= PersonalPreferences { likes_cats: false, likes_dogs: true };
assert_eq!(prefs, PersonalPreferences { likes_cats: true, likes_dogs: true });

Required Methods§

1.8.0 · Source

fn bitor_assign(&mut self, rhs: Rhs)

Performs the |= operation.

§Examples
let mut x = true;
x |= false;
assert_eq!(x, true);

let mut x = false;
x |= false;
assert_eq!(x, false);

let mut x: u8 = 5;
x |= 1;
assert_eq!(x, 5);

let mut x: u8 = 5;
x |= 2;
assert_eq!(x, 7);

Implementors§

1.8.0 · Source§

impl BitOrAssign for bool

1.8.0 · Source§

impl BitOrAssign for i8

1.8.0 · Source§

impl BitOrAssign for i16

1.8.0 · Source§

impl BitOrAssign for i32

1.8.0 · Source§

impl BitOrAssign for i64

1.8.0 · Source§

impl BitOrAssign for i128

1.8.0 · Source§

impl BitOrAssign for isize

1.8.0 · Source§

impl BitOrAssign for u8

1.8.0 · Source§

impl BitOrAssign for u16

1.8.0 · Source§

impl BitOrAssign for u32

1.8.0 · Source§

impl BitOrAssign for u64

1.8.0 · Source§

impl BitOrAssign for u128

1.8.0 · Source§

impl BitOrAssign for usize

Source§

impl BitOrAssign for Mod

1.75.0 · Source§

impl BitOrAssign for Ipv4Addr

1.75.0 · Source§

impl BitOrAssign for Ipv6Addr

1.74.0 · Source§

impl BitOrAssign for Saturating<i8>

1.74.0 · Source§

impl BitOrAssign for Saturating<i16>

1.74.0 · Source§

impl BitOrAssign for Saturating<i32>

1.74.0 · Source§

impl BitOrAssign for Saturating<i64>

1.74.0 · Source§

impl BitOrAssign for Saturating<i128>

1.74.0 · Source§

impl BitOrAssign for Saturating<isize>

1.74.0 · Source§

impl BitOrAssign for Saturating<u8>

1.74.0 · Source§

impl BitOrAssign for Saturating<u16>

1.74.0 · Source§

impl BitOrAssign for Saturating<u32>

1.74.0 · Source§

impl BitOrAssign for Saturating<u64>

1.74.0 · Source§

impl BitOrAssign for Saturating<u128>

1.74.0 · Source§

impl BitOrAssign for Saturating<usize>

1.8.0 · Source§

impl BitOrAssign for Wrapping<i8>

1.8.0 · Source§

impl BitOrAssign for Wrapping<i16>

1.8.0 · Source§

impl BitOrAssign for Wrapping<i32>

1.8.0 · Source§

impl BitOrAssign for Wrapping<i64>

1.8.0 · Source§

impl BitOrAssign for Wrapping<i128>

1.8.0 · Source§

impl BitOrAssign for Wrapping<isize>

1.8.0 · Source§

impl BitOrAssign for Wrapping<u8>

1.8.0 · Source§

impl BitOrAssign for Wrapping<u16>

1.8.0 · Source§

impl BitOrAssign for Wrapping<u32>

1.8.0 · Source§

impl BitOrAssign for Wrapping<u64>

1.8.0 · Source§

impl BitOrAssign for Wrapping<u128>

1.8.0 · Source§

impl BitOrAssign for Wrapping<usize>

Source§

impl BitOrAssign for JoystickHats

Source§

impl BitOrAssign for Modifiers

Source§

impl BitOrAssign for m128

Source§

impl BitOrAssign for m128d

Source§

impl BitOrAssign for m128i

Source§

impl BitOrAssign for f32x4

Source§

impl BitOrAssign for f32x8

Source§

impl BitOrAssign for f64x2

Source§

impl BitOrAssign for f64x4

Source§

impl BitOrAssign for i8x16

Source§

impl BitOrAssign for i8x32

Source§

impl BitOrAssign for i16x8

Source§

impl BitOrAssign for i16x16

Source§

impl BitOrAssign for i32x4

Source§

impl BitOrAssign for i32x8

Source§

impl BitOrAssign for i64x2

Source§

impl BitOrAssign for u8x16

Source§

impl BitOrAssign for u16x8

Source§

impl BitOrAssign for u16x16

Source§

impl BitOrAssign for u32x4

Source§

impl BitOrAssign for u32x8

Source§

impl BitOrAssign for u64x2

Source§

impl BitOrAssign for u64x4

1.22.0 · Source§

impl BitOrAssign<&bool> for bool

1.22.0 · Source§

impl BitOrAssign<&i8> for i8

1.22.0 · Source§

impl BitOrAssign<&i8> for Saturating<i8>

1.22.0 · Source§

impl BitOrAssign<&i8> for Wrapping<i8>

1.22.0 · Source§

impl BitOrAssign<&i16> for i16

1.22.0 · Source§

impl BitOrAssign<&i16> for Saturating<i16>

1.22.0 · Source§

impl BitOrAssign<&i16> for Wrapping<i16>

1.22.0 · Source§

impl BitOrAssign<&i32> for i32

1.22.0 · Source§

impl BitOrAssign<&i32> for Saturating<i32>

1.22.0 · Source§

impl BitOrAssign<&i32> for Wrapping<i32>

1.22.0 · Source§

impl BitOrAssign<&i64> for i64

1.22.0 · Source§

impl BitOrAssign<&i64> for Saturating<i64>

1.22.0 · Source§

impl BitOrAssign<&i64> for Wrapping<i64>

1.22.0 · Source§

impl BitOrAssign<&i128> for i128

1.22.0 · Source§

impl BitOrAssign<&i128> for Saturating<i128>

1.22.0 · Source§

impl BitOrAssign<&i128> for Wrapping<i128>

1.22.0 · Source§

impl BitOrAssign<&isize> for isize

1.22.0 · Source§

impl BitOrAssign<&isize> for Saturating<isize>

1.22.0 · Source§

impl BitOrAssign<&isize> for Wrapping<isize>

1.22.0 · Source§

impl BitOrAssign<&u8> for u8

1.22.0 · Source§

impl BitOrAssign<&u8> for Saturating<u8>

1.22.0 · Source§

impl BitOrAssign<&u8> for Wrapping<u8>

1.22.0 · Source§

impl BitOrAssign<&u16> for u16

1.22.0 · Source§

impl BitOrAssign<&u16> for Saturating<u16>

1.22.0 · Source§

impl BitOrAssign<&u16> for Wrapping<u16>

1.22.0 · Source§

impl BitOrAssign<&u32> for u32

1.22.0 · Source§

impl BitOrAssign<&u32> for Saturating<u32>

1.22.0 · Source§

impl BitOrAssign<&u32> for Wrapping<u32>

1.22.0 · Source§

impl BitOrAssign<&u64> for u64

1.22.0 · Source§

impl BitOrAssign<&u64> for Saturating<u64>

1.22.0 · Source§

impl BitOrAssign<&u64> for Wrapping<u64>

1.22.0 · Source§

impl BitOrAssign<&u128> for u128

1.22.0 · Source§

impl BitOrAssign<&u128> for Saturating<u128>

1.22.0 · Source§

impl BitOrAssign<&u128> for Wrapping<u128>

1.22.0 · Source§

impl BitOrAssign<&usize> for usize

1.22.0 · Source§

impl BitOrAssign<&usize> for Saturating<usize>

1.22.0 · Source§

impl BitOrAssign<&usize> for Wrapping<usize>

1.75.0 · Source§

impl BitOrAssign<&Ipv4Addr> for Ipv4Addr

1.75.0 · Source§

impl BitOrAssign<&Ipv6Addr> for Ipv6Addr

1.22.0 · Source§

impl BitOrAssign<&Saturating<i8>> for Saturating<i8>

1.22.0 · Source§

impl BitOrAssign<&Saturating<i16>> for Saturating<i16>

1.22.0 · Source§

impl BitOrAssign<&Saturating<i32>> for Saturating<i32>

1.22.0 · Source§

impl BitOrAssign<&Saturating<i64>> for Saturating<i64>

1.22.0 · Source§

impl BitOrAssign<&Saturating<i128>> for Saturating<i128>

1.22.0 · Source§

impl BitOrAssign<&Saturating<isize>> for Saturating<isize>

1.22.0 · Source§

impl BitOrAssign<&Saturating<u8>> for Saturating<u8>

1.22.0 · Source§

impl BitOrAssign<&Saturating<u16>> for Saturating<u16>

1.22.0 · Source§

impl BitOrAssign<&Saturating<u32>> for Saturating<u32>

1.22.0 · Source§

impl BitOrAssign<&Saturating<u64>> for Saturating<u64>

1.22.0 · Source§

impl BitOrAssign<&Saturating<u128>> for Saturating<u128>

1.22.0 · Source§

impl BitOrAssign<&Saturating<usize>> for Saturating<usize>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<i8>> for Wrapping<i8>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<i16>> for Wrapping<i16>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<i32>> for Wrapping<i32>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<i64>> for Wrapping<i64>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<i128>> for Wrapping<i128>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<isize>> for Wrapping<isize>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<u8>> for Wrapping<u8>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<u16>> for Wrapping<u16>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<u32>> for Wrapping<u32>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<u64>> for Wrapping<u64>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<u128>> for Wrapping<u128>

1.22.0 · Source§

impl BitOrAssign<&Wrapping<usize>> for Wrapping<usize>

Source§

impl BitOrAssign<&f32x4> for f32x4

Source§

impl BitOrAssign<&f32x8> for f32x8

Source§

impl BitOrAssign<&f64x2> for f64x2

Source§

impl BitOrAssign<&f64x4> for f64x4

Source§

impl BitOrAssign<&i8x16> for i8x16

Source§

impl BitOrAssign<&i8x32> for i8x32

Source§

impl BitOrAssign<&i16x8> for i16x8

Source§

impl BitOrAssign<&i16x16> for i16x16

Source§

impl BitOrAssign<&i32x4> for i32x4

Source§

impl BitOrAssign<&i32x8> for i32x8

Source§

impl BitOrAssign<&i64x2> for i64x2

Source§

impl BitOrAssign<&u8x16> for u8x16

Source§

impl BitOrAssign<&u16x8> for u16x8

Source§

impl BitOrAssign<&u16x16> for u16x16

Source§

impl BitOrAssign<&u32x4> for u32x4

Source§

impl BitOrAssign<&u32x8> for u32x8

Source§

impl BitOrAssign<&u64x2> for u64x2

Source§

impl BitOrAssign<&u64x4> for u64x4

1.74.0 · Source§

impl BitOrAssign<i8> for Saturating<i8>

1.60.0 · Source§

impl BitOrAssign<i8> for Wrapping<i8>

1.74.0 · Source§

impl BitOrAssign<i16> for Saturating<i16>

1.60.0 · Source§

impl BitOrAssign<i16> for Wrapping<i16>

1.74.0 · Source§

impl BitOrAssign<i32> for Saturating<i32>

1.60.0 · Source§

impl BitOrAssign<i32> for Wrapping<i32>

1.74.0 · Source§

impl BitOrAssign<i64> for Saturating<i64>

1.60.0 · Source§

impl BitOrAssign<i64> for Wrapping<i64>

1.74.0 · Source§

impl BitOrAssign<i128> for Saturating<i128>

1.60.0 · Source§

impl BitOrAssign<i128> for Wrapping<i128>

1.74.0 · Source§

impl BitOrAssign<isize> for Saturating<isize>

1.60.0 · Source§

impl BitOrAssign<isize> for Wrapping<isize>

1.74.0 · Source§

impl BitOrAssign<u8> for Saturating<u8>

1.60.0 · Source§

impl BitOrAssign<u8> for Wrapping<u8>

1.74.0 · Source§

impl BitOrAssign<u16> for Saturating<u16>

1.60.0 · Source§

impl BitOrAssign<u16> for Wrapping<u16>

1.74.0 · Source§

impl BitOrAssign<u32> for Saturating<u32>

1.60.0 · Source§

impl BitOrAssign<u32> for Wrapping<u32>

1.74.0 · Source§

impl BitOrAssign<u64> for Saturating<u64>

1.60.0 · Source§

impl BitOrAssign<u64> for Wrapping<u64>

1.74.0 · Source§

impl BitOrAssign<u128> for Saturating<u128>

1.60.0 · Source§

impl BitOrAssign<u128> for Wrapping<u128>

1.74.0 · Source§

impl BitOrAssign<usize> for Saturating<usize>

1.60.0 · Source§

impl BitOrAssign<usize> for Wrapping<usize>

1.45.0 · Source§

impl<T> BitOrAssign for NonZero<T>
where T: ZeroablePrimitive, NonZero<T>: BitOr<Output = NonZero<T>>,

1.45.0 · Source§

impl<T> BitOrAssign<T> for NonZero<T>
where T: ZeroablePrimitive, NonZero<T>: BitOr<T, Output = NonZero<T>>,

Source§

impl<T, U, const N: usize> BitOrAssign<U> for Simd<T, N>
where Simd<T, N>: BitOr<U, Output = Simd<T, N>>, T: SimdElement, LaneCount<N>: SupportedLaneCount,

Source§

impl<T, const N: usize> BitOrAssign for Mask<T, N>

Source§

impl<T, const N: usize> BitOrAssign<bool> for Mask<T, N>