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

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>

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>

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, Self: BitOr<Output = Self>,

1.45.0 ยท Sourceยง

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

Sourceยง

impl<T, U, const N: usize> BitOrAssign<U> for Simd<T, N>
where Self: BitOr<U, Output = Self>, 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>