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

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 BigInt

Source§

impl BitOrAssign for BigUint

Source§

impl BitOrAssign for subtle::Choice

Source§

impl BitOrAssign for ctutils::choice::Choice

1.75.0 (const: unstable) · Source§

impl BitOrAssign for Ipv4Addr

1.75.0 (const: unstable) · Source§

impl BitOrAssign for Ipv6Addr

Source§

impl BitOrAssign for Limb

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 Style

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<i8>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<i16>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<i32>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<i64>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<i128>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<isize>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<u8>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<u16>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<u32>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<u64>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<u128>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for core::num::wrapping::Wrapping<usize>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for bool

1.8.0 (const: unstable) · Source§

impl BitOrAssign for i8

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

1.8.0 (const: unstable) · Source§

impl BitOrAssign for i128

1.8.0 (const: unstable) · Source§

impl BitOrAssign for isize

1.8.0 (const: unstable) · Source§

impl BitOrAssign for u8

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

1.8.0 (const: unstable) · Source§

impl BitOrAssign for u128

1.8.0 (const: unstable) · Source§

impl BitOrAssign for usize

Source§

impl BitOrAssign<&BigInt> for BigInt

Source§

impl BitOrAssign<&BigUint> for BigUint

1.75.0 (const: unstable) · Source§

impl BitOrAssign<&Ipv4Addr> for Ipv4Addr

1.75.0 (const: unstable) · Source§

impl BitOrAssign<&Ipv6Addr> for Ipv6Addr

Source§

impl BitOrAssign<&Limb> for Limb

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>

Source§

impl BitOrAssign<&Style> for Style

Source§

impl BitOrAssign<&Styles> for Style

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<i8>> for core::num::wrapping::Wrapping<i8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<i16>> for core::num::wrapping::Wrapping<i16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<i32>> for core::num::wrapping::Wrapping<i32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<i64>> for core::num::wrapping::Wrapping<i64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<i128>> for core::num::wrapping::Wrapping<i128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<isize>> for core::num::wrapping::Wrapping<isize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<u8>> for core::num::wrapping::Wrapping<u8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<u16>> for core::num::wrapping::Wrapping<u16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<u32>> for core::num::wrapping::Wrapping<u32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<u64>> for core::num::wrapping::Wrapping<u64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<u128>> for core::num::wrapping::Wrapping<u128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<usize>> for core::num::wrapping::Wrapping<usize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&bool> for bool

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i8> for Saturating<i8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i8> for core::num::wrapping::Wrapping<i8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i8> for i8

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i16> for Saturating<i16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i16> for core::num::wrapping::Wrapping<i16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i16> for i16

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i32> for Saturating<i32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i32> for core::num::wrapping::Wrapping<i32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i32> for i32

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i64> for Saturating<i64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i64> for core::num::wrapping::Wrapping<i64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i64> for i64

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i128> for Saturating<i128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i128> for core::num::wrapping::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 core::num::wrapping::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 core::num::wrapping::Wrapping<u8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u8> for u8

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u16> for Saturating<u16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u16> for core::num::wrapping::Wrapping<u16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u16> for u16

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u32> for Saturating<u32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u32> for core::num::wrapping::Wrapping<u32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u32> for u32

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u64> for Saturating<u64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u64> for core::num::wrapping::Wrapping<u64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u64> for u64

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u128> for Saturating<u128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u128> for core::num::wrapping::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 core::num::wrapping::Wrapping<usize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&usize> for usize

Source§

impl BitOrAssign<Styles> for Style

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i8> for Saturating<i8>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i8> for core::num::wrapping::Wrapping<i8>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i16> for Saturating<i16>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i16> for core::num::wrapping::Wrapping<i16>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i32> for Saturating<i32>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i32> for core::num::wrapping::Wrapping<i32>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i64> for Saturating<i64>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i64> for core::num::wrapping::Wrapping<i64>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i128> for Saturating<i128>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i128> for core::num::wrapping::Wrapping<i128>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<isize> for Saturating<isize>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<isize> for core::num::wrapping::Wrapping<isize>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u8> for Saturating<u8>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u8> for core::num::wrapping::Wrapping<u8>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u16> for Saturating<u16>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u16> for core::num::wrapping::Wrapping<u16>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u32> for Saturating<u32>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u32> for core::num::wrapping::Wrapping<u32>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u64> for Saturating<u64>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u64> for core::num::wrapping::Wrapping<u64>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u128> for Saturating<u128>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u128> for core::num::wrapping::Wrapping<u128>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<usize> for Saturating<usize>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<usize> for core::num::wrapping::Wrapping<usize>

Source§

impl<E, I> BitOrAssign for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E> BitOrAssign for Boolean<E>
where E: Environment,

Source§

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

Source§

impl<T, S, A> BitOrAssign<&HashSet<T, S, A>> for hashbrown::set::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 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>>,

Source§

impl<T> BitOrAssign for crypto_bigint::wrapping::Wrapping<T>
where T: Integer,

Source§

impl<T> BitOrAssign<&Wrapping<T>> for crypto_bigint::wrapping::Wrapping<T>
where T: Integer,

1.45.0 (const: unstable) · Source§

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

Source§

impl<const LIMBS: usize> BitOrAssign for Int<LIMBS>

Source§

impl<const LIMBS: usize> BitOrAssign for Uint<LIMBS>

Source§

impl<const LIMBS: usize> BitOrAssign<&Int<LIMBS>> for Int<LIMBS>

Source§

impl<const LIMBS: usize> BitOrAssign<&Uint<LIMBS>> for Uint<LIMBS>