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 · Sourcefn bitor_assign(&mut self, rhs: Rhs)
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§
impl BitOrAssign for bool
impl BitOrAssign for i8
impl BitOrAssign for i16
impl BitOrAssign for i32
impl BitOrAssign for i64
impl BitOrAssign for i128
impl BitOrAssign for isize
impl BitOrAssign for u8
impl BitOrAssign for u16
impl BitOrAssign for u32
impl BitOrAssign for u64
impl BitOrAssign for u128
impl BitOrAssign for usize
impl BitOrAssign for Ipv4Addr
impl BitOrAssign for Ipv6Addr
impl BitOrAssign for Saturating<i8>
impl BitOrAssign for Saturating<i16>
impl BitOrAssign for Saturating<i32>
impl BitOrAssign for Saturating<i64>
impl BitOrAssign for Saturating<i128>
impl BitOrAssign for Saturating<isize>
impl BitOrAssign for Saturating<u8>
impl BitOrAssign for Saturating<u16>
impl BitOrAssign for Saturating<u32>
impl BitOrAssign for Saturating<u64>
impl BitOrAssign for Saturating<u128>
impl BitOrAssign for Saturating<usize>
impl BitOrAssign for core::num::wrapping::Wrapping<i8>
impl BitOrAssign for core::num::wrapping::Wrapping<i16>
impl BitOrAssign for core::num::wrapping::Wrapping<i32>
impl BitOrAssign for core::num::wrapping::Wrapping<i64>
impl BitOrAssign for core::num::wrapping::Wrapping<i128>
impl BitOrAssign for core::num::wrapping::Wrapping<isize>
impl BitOrAssign for core::num::wrapping::Wrapping<u8>
impl BitOrAssign for core::num::wrapping::Wrapping<u16>
impl BitOrAssign for core::num::wrapping::Wrapping<u32>
impl BitOrAssign for core::num::wrapping::Wrapping<u64>
impl BitOrAssign for core::num::wrapping::Wrapping<u128>
impl BitOrAssign for core::num::wrapping::Wrapping<usize>
impl BitOrAssign for subtle::Choice
impl BitOrAssign for BoxedUint
Available on crate feature
alloc only.impl BitOrAssign for crypto_bigint::Choice
impl BitOrAssign for Limb
impl BitOrAssign for crypto_bigint::Wrapping<BoxedUint>
Available on crate feature
alloc only.impl BitOrAssign<&bool> for bool
impl BitOrAssign<&i8> for i8
impl BitOrAssign<&i8> for Saturating<i8>
impl BitOrAssign<&i8> for core::num::wrapping::Wrapping<i8>
impl BitOrAssign<&i16> for i16
impl BitOrAssign<&i16> for Saturating<i16>
impl BitOrAssign<&i16> for core::num::wrapping::Wrapping<i16>
impl BitOrAssign<&i32> for i32
impl BitOrAssign<&i32> for Saturating<i32>
impl BitOrAssign<&i32> for core::num::wrapping::Wrapping<i32>
impl BitOrAssign<&i64> for i64
impl BitOrAssign<&i64> for Saturating<i64>
impl BitOrAssign<&i64> for core::num::wrapping::Wrapping<i64>
impl BitOrAssign<&i128> for i128
impl BitOrAssign<&i128> for Saturating<i128>
impl BitOrAssign<&i128> for core::num::wrapping::Wrapping<i128>
impl BitOrAssign<&isize> for isize
impl BitOrAssign<&isize> for Saturating<isize>
impl BitOrAssign<&isize> for core::num::wrapping::Wrapping<isize>
impl BitOrAssign<&u8> for u8
impl BitOrAssign<&u8> for Saturating<u8>
impl BitOrAssign<&u8> for core::num::wrapping::Wrapping<u8>
impl BitOrAssign<&u16> for u16
impl BitOrAssign<&u16> for Saturating<u16>
impl BitOrAssign<&u16> for core::num::wrapping::Wrapping<u16>
impl BitOrAssign<&u32> for u32
impl BitOrAssign<&u32> for Saturating<u32>
impl BitOrAssign<&u32> for core::num::wrapping::Wrapping<u32>
impl BitOrAssign<&u64> for u64
impl BitOrAssign<&u64> for Saturating<u64>
impl BitOrAssign<&u64> for core::num::wrapping::Wrapping<u64>
impl BitOrAssign<&u128> for u128
impl BitOrAssign<&u128> for Saturating<u128>
impl BitOrAssign<&u128> for core::num::wrapping::Wrapping<u128>
impl BitOrAssign<&usize> for usize
impl BitOrAssign<&usize> for Saturating<usize>
impl BitOrAssign<&usize> for core::num::wrapping::Wrapping<usize>
impl BitOrAssign<&Ipv4Addr> for Ipv4Addr
impl BitOrAssign<&Ipv6Addr> for Ipv6Addr
impl BitOrAssign<&Saturating<i8>> for Saturating<i8>
impl BitOrAssign<&Saturating<i16>> for Saturating<i16>
impl BitOrAssign<&Saturating<i32>> for Saturating<i32>
impl BitOrAssign<&Saturating<i64>> for Saturating<i64>
impl BitOrAssign<&Saturating<i128>> for Saturating<i128>
impl BitOrAssign<&Saturating<isize>> for Saturating<isize>
impl BitOrAssign<&Saturating<u8>> for Saturating<u8>
impl BitOrAssign<&Saturating<u16>> for Saturating<u16>
impl BitOrAssign<&Saturating<u32>> for Saturating<u32>
impl BitOrAssign<&Saturating<u64>> for Saturating<u64>
impl BitOrAssign<&Saturating<u128>> for Saturating<u128>
impl BitOrAssign<&Saturating<usize>> for Saturating<usize>
impl BitOrAssign<&Wrapping<i8>> for core::num::wrapping::Wrapping<i8>
impl BitOrAssign<&Wrapping<i16>> for core::num::wrapping::Wrapping<i16>
impl BitOrAssign<&Wrapping<i32>> for core::num::wrapping::Wrapping<i32>
impl BitOrAssign<&Wrapping<i64>> for core::num::wrapping::Wrapping<i64>
impl BitOrAssign<&Wrapping<i128>> for core::num::wrapping::Wrapping<i128>
impl BitOrAssign<&Wrapping<isize>> for core::num::wrapping::Wrapping<isize>
impl BitOrAssign<&Wrapping<u8>> for core::num::wrapping::Wrapping<u8>
impl BitOrAssign<&Wrapping<u16>> for core::num::wrapping::Wrapping<u16>
impl BitOrAssign<&Wrapping<u32>> for core::num::wrapping::Wrapping<u32>
impl BitOrAssign<&Wrapping<u64>> for core::num::wrapping::Wrapping<u64>
impl BitOrAssign<&Wrapping<u128>> for core::num::wrapping::Wrapping<u128>
impl BitOrAssign<&Wrapping<usize>> for core::num::wrapping::Wrapping<usize>
impl BitOrAssign<&BoxedUint> for BoxedUint
Available on crate feature
alloc only.impl BitOrAssign<&Limb> for Limb
impl BitOrAssign<&Wrapping<BoxedUint>> for crypto_bigint::Wrapping<BoxedUint>
Available on crate feature
alloc only.