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 EnabledModules

Source§

impl BitOrAssign for EventFlags

Source§

impl BitOrAssign for I192

Source§

impl BitOrAssign for I256

Source§

impl BitOrAssign for I320

Source§

impl BitOrAssign for I384

Source§

impl BitOrAssign for I448

Source§

impl BitOrAssign for I512

Source§

impl BitOrAssign for I768

Source§

impl BitOrAssign for LockFlags

Source§

impl BitOrAssign for U192

Source§

impl BitOrAssign for U256

Source§

impl BitOrAssign for U320

Source§

impl BitOrAssign for U384

Source§

impl BitOrAssign for U448

Source§

impl BitOrAssign for U512

Source§

impl BitOrAssign for U768

Source§

impl BitOrAssign for VaultFreezeFlags

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.75.0 · Source§

impl BitOrAssign for Ipv4Addr

1.75.0 · Source§

impl BitOrAssign for Ipv6Addr

Source§

impl BitOrAssign for Effects

§Examples

let mut effects = anstyle::Effects::BOLD;
effects |= anstyle::Effects::UNDERLINE;
assert_eq!(format!("{:?}", effects), "Effects(BOLD | UNDERLINE)");
Source§

impl BitOrAssign for colored::style::Style

Source§

impl BitOrAssign for BigInt

Source§

impl BitOrAssign for BigUint

Source§

impl BitOrAssign for RefTypes

Source§

impl BitOrAssign for CreateFlags

Source§

impl BitOrAssign for ReadFlags

Source§

impl BitOrAssign for WatchFlags

Source§

impl BitOrAssign for Access

Source§

impl BitOrAssign for AtFlags

Source§

impl BitOrAssign for FallocateFlags

Source§

impl BitOrAssign for MemfdFlags

Source§

impl BitOrAssign for Mode

Source§

impl BitOrAssign for OFlags

Source§

impl BitOrAssign for RenameFlags

Source§

impl BitOrAssign for ResolveFlags

Source§

impl BitOrAssign for SealFlags

Source§

impl BitOrAssign for StatVfsMountFlags

Source§

impl BitOrAssign for DupFlags

Source§

impl BitOrAssign for FdFlags

Source§

impl BitOrAssign for ReadWriteFlags

Source§

impl BitOrAssign for IFlags

Source§

impl BitOrAssign for StatxAttributes

Source§

impl BitOrAssign for StatxFlags

Source§

impl BitOrAssign for XattrFlags

Source§

impl BitOrAssign for Choice

Source§

impl BitOrAssign<&Styles> for colored::style::Style

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.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.75.0 · Source§

impl BitOrAssign<&Ipv4Addr> for Ipv4Addr

1.75.0 · Source§

impl BitOrAssign<&Ipv6Addr> for Ipv6Addr

Source§

impl BitOrAssign<&Style> for colored::style::Style

Source§

impl BitOrAssign<&BigInt> for BigInt

Source§

impl BitOrAssign<&BigUint> for BigUint

Source§

impl BitOrAssign<Styles> for colored::style::Style

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>

Source§

impl BitOrAssign<Effects> for anstyle::style::Style

§Examples

let mut style = anstyle::Style::new();
style |= anstyle::Effects::BOLD.into();
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, 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, 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>

Source§

impl<const N: usize> BitOrAssign for BInt<N>

Source§

impl<const N: usize> BitOrAssign for BIntD8<N>

Source§

impl<const N: usize> BitOrAssign for BIntD16<N>

Source§

impl<const N: usize> BitOrAssign for BIntD32<N>

Source§

impl<const N: usize> BitOrAssign for BUint<N>

Source§

impl<const N: usize> BitOrAssign for BUintD8<N>

Source§

impl<const N: usize> BitOrAssign for BUintD16<N>

Source§

impl<const N: usize> BitOrAssign for BUintD32<N>

Source§

impl<const N: usize> BitOrAssign<&BInt<N>> for BInt<N>

Source§

impl<const N: usize> BitOrAssign<&BIntD8<N>> for BIntD8<N>

Source§

impl<const N: usize> BitOrAssign<&BIntD16<N>> for BIntD16<N>

Source§

impl<const N: usize> BitOrAssign<&BIntD32<N>> for BIntD32<N>

Source§

impl<const N: usize> BitOrAssign<&BUint<N>> for BUint<N>

Source§

impl<const N: usize> BitOrAssign<&BUintD8<N>> for BUintD8<N>

Source§

impl<const N: usize> BitOrAssign<&BUintD16<N>> for BUintD16<N>

Source§

impl<const N: usize> BitOrAssign<&BUintD32<N>> for BUintD32<N>