Skip to main content

BitOrAssign

Trait BitOrAssign 

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

core The bitwise OR assignment operator |=.


📍code/ops re-exported from core::ops



📜
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 (const: unstable) · 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);

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl BitOrAssign for AppControlSet

Source§

impl BitOrAssign for AsciiSet

Source§

impl BitOrAssign for EnumSetExample

Available on doc or test only.
Source§

impl BitOrAssign for EventButtons

Available on crate feature event only.
Source§

impl BitOrAssign for EventTagSet

Available on crate feature event only.
1.75.0 (const: unstable) · Source§

impl BitOrAssign for Ipv4Addr

1.75.0 (const: unstable) · Source§

impl BitOrAssign for Ipv6Addr

Source§

impl BitOrAssign for KeyMods

Available on crate feature event only.
Source§

impl BitOrAssign for LinuxSigactionFlags

Available on crate feature linux only.
Source§

impl BitOrAssign for LinuxSignalSet

Available on crate feature linux only.
Source§

impl BitOrAssign for LinuxTermiosControlFlags

Available on crate feature linux only.
Source§

impl BitOrAssign for LinuxTermiosInputFlags

Available on crate feature linux only.
Source§

impl BitOrAssign for LinuxTermiosLocalFlags

Available on crate feature linux only.
Source§

impl BitOrAssign for LinuxTermiosOutputFlags

Available on crate feature linux only.
Source§

impl BitOrAssign for RandQualities

Source§

impl BitOrAssign for RunCapInput

Source§

impl BitOrAssign for RunCapSystem

Source§

impl BitOrAssign for RunCapText

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<i8>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<i16>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<i32>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<i64>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<i128>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<isize>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<u8>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<u16>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<u32>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<u64>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<u128>

1.74.0 (const: unstable) · Source§

impl BitOrAssign for Saturating<usize>

Source§

impl BitOrAssign for TermMode

Available on crate feature term only.
Source§

impl BitOrAssign for TermStyle

Available on crate feature term only.
Source§

impl BitOrAssign for TermStyleExt

Available on crate feature term only.
1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<i8>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<i16>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<i32>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<i64>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<i128>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<isize>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<u8>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<u16>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<u32>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<u64>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<u128>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for Wrapping<usize>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for bool

§

impl BitOrAssign for f32x4

§

impl BitOrAssign for f32x8

§

impl BitOrAssign for f32x16

§

impl BitOrAssign for f64x2

§

impl BitOrAssign for f64x4

§

impl BitOrAssign for f64x8

1.8.0 (const: unstable) · Source§

impl BitOrAssign for i8

§

impl BitOrAssign for i8x16

§

impl BitOrAssign for i8x32

1.8.0 (const: unstable) · Source§

impl BitOrAssign for i16

1.8.0 (const: unstable) · Source§

impl BitOrAssign for i32

1.8.0 (const: unstable) · Source§

impl BitOrAssign for i64

§

impl BitOrAssign for i16x8

§

impl BitOrAssign for i16x16

§

impl BitOrAssign for i16x32

§

impl BitOrAssign for i32x4

§

impl BitOrAssign for i32x8

§

impl BitOrAssign for i32x16

§

impl BitOrAssign for i64x2

§

impl BitOrAssign for i64x4

§

impl BitOrAssign for i64x8

1.8.0 (const: unstable) · Source§

impl BitOrAssign for i128

1.8.0 (const: unstable) · Source§

impl BitOrAssign for isize

§

impl BitOrAssign for m128

§

impl BitOrAssign for m256

§

impl BitOrAssign for m128d

§

impl BitOrAssign for m128i

§

impl BitOrAssign for m256d

§

impl BitOrAssign for m256i

1.8.0 (const: unstable) · Source§

impl BitOrAssign for u8

§

impl BitOrAssign for u8x16

§

impl BitOrAssign for u8x32

1.8.0 (const: unstable) · Source§

impl BitOrAssign for u16

1.8.0 (const: unstable) · Source§

impl BitOrAssign for u32

1.8.0 (const: unstable) · Source§

impl BitOrAssign for u64

§

impl BitOrAssign for u16x8

§

impl BitOrAssign for u16x16

§

impl BitOrAssign for u16x32

§

impl BitOrAssign for u32x4

§

impl BitOrAssign for u32x8

§

impl BitOrAssign for u32x16

§

impl BitOrAssign for u64x2

§

impl BitOrAssign for u64x4

§

impl BitOrAssign for u64x8

1.8.0 (const: unstable) · Source§

impl BitOrAssign for u128

1.8.0 (const: unstable) · Source§

impl BitOrAssign for usize

1.75.0 (const: unstable) · Source§

impl BitOrAssign<&Ipv4Addr> for Ipv4Addr

1.75.0 (const: unstable) · Source§

impl BitOrAssign<&Ipv6Addr> for Ipv6Addr

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&bool> for bool

§

impl BitOrAssign<&f32x4> for f32x4

§

impl BitOrAssign<&f32x8> for f32x8

§

impl BitOrAssign<&f32x16> for f32x16

§

impl BitOrAssign<&f64x2> for f64x2

§

impl BitOrAssign<&f64x4> for f64x4

§

impl BitOrAssign<&f64x8> for f64x8

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i8> for Saturating<i8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i8> for Wrapping<i8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i8> for i8

§

impl BitOrAssign<&i8x16> for i8x16

§

impl BitOrAssign<&i8x32> for i8x32

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i16> for Saturating<i16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i16> for Wrapping<i16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i16> for i16

§

impl BitOrAssign<&i16x8> for i16x8

§

impl BitOrAssign<&i16x16> for i16x16

§

impl BitOrAssign<&i16x32> for i16x32

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i32> for Saturating<i32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i32> for Wrapping<i32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i32> for i32

§

impl BitOrAssign<&i32x4> for i32x4

§

impl BitOrAssign<&i32x8> for i32x8

§

impl BitOrAssign<&i32x16> for i32x16

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i64> for Saturating<i64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i64> for Wrapping<i64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i64> for i64

§

impl BitOrAssign<&i64x2> for i64x2

§

impl BitOrAssign<&i64x4> for i64x4

§

impl BitOrAssign<&i64x8> for i64x8

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i128> for Saturating<i128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i128> for Wrapping<i128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i128> for i128

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&isize> for Saturating<isize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&isize> for Wrapping<isize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&isize> for isize

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u8> for Saturating<u8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u8> for Wrapping<u8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u8> for u8

§

impl BitOrAssign<&u8x16> for u8x16

§

impl BitOrAssign<&u8x32> for u8x32

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u16> for Saturating<u16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u16> for Wrapping<u16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u16> for u16

§

impl BitOrAssign<&u16x8> for u16x8

§

impl BitOrAssign<&u16x16> for u16x16

§

impl BitOrAssign<&u16x32> for u16x32

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u32> for Saturating<u32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u32> for Wrapping<u32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u32> for u32

§

impl BitOrAssign<&u32x4> for u32x4

§

impl BitOrAssign<&u32x8> for u32x8

§

impl BitOrAssign<&u32x16> for u32x16

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u64> for Saturating<u64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u64> for Wrapping<u64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u64> for u64

§

impl BitOrAssign<&u64x2> for u64x2

§

impl BitOrAssign<&u64x4> for u64x4

§

impl BitOrAssign<&u64x8> for u64x8

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u128> for Saturating<u128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u128> for Wrapping<u128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u128> for u128

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&usize> for Saturating<usize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&usize> for Wrapping<usize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&usize> for usize

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i8> for Saturating<i8>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i8> for Wrapping<i8>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i16> for Saturating<i16>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i16> for Wrapping<i16>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i32> for Saturating<i32>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i32> for Wrapping<i32>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i64> for Saturating<i64>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i64> for Wrapping<i64>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i128> for Saturating<i128>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i128> for Wrapping<i128>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<isize> for Saturating<isize>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<isize> for Wrapping<isize>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u8> for Saturating<u8>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u8> for Wrapping<u8>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u16> for Saturating<u16>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u16> for Wrapping<u16>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u32> for Saturating<u32>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u32> for Wrapping<u32>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u64> for Saturating<u64>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u64> for Wrapping<u64>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u128> for Saturating<u128>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u128> for Wrapping<u128>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<usize> for Saturating<usize>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<usize> for Wrapping<usize>

§

impl<T, S, A> BitOrAssign<&HashSet<T, S, A>> for HashSet<T, S, A>
where T: Eq + Hash + Clone, S: BuildHasher, A: Allocator,

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,

Source§

impl<T, const CAP: usize, S: Storage> BitOrAssign for Array<T, CAP, S>
where S::Stored<[T; CAP]>: Copy, T: BitOrAssign + Copy,

Source§

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

Source§

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

1.45.0 (const: unstable) · Source§

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

1.45.0 (const: unstable) · Source§

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