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 · 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 (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

1.75.0 (const: unstable) · Source§

impl BitOrAssign for Ipv4Addr

1.75.0 (const: unstable) · Source§

impl BitOrAssign for Ipv6Addr

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>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<i8>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<i16>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<i32>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<i64>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<i128>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<isize>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<u8>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<u16>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<u32>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<u64>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<u128>

1.8.0 (const: unstable) · Source§

impl BitOrAssign for datex_core::without_std::num::Wrapping<usize>

Source§

impl BitOrAssign for mio::interest::Interest

Source§

impl BitOrAssign for AtFlags

Source§

impl BitOrAssign for FallocateFlags

Source§

impl BitOrAssign for FdFlag

Source§

impl BitOrAssign for OFlag

Source§

impl BitOrAssign for RenameFlags

Source§

impl BitOrAssign for SealFlag

Source§

impl BitOrAssign for SpliceFFlags

Source§

impl BitOrAssign for DeleteModuleFlags

Source§

impl BitOrAssign for ModuleInitFlags

Source§

impl BitOrAssign for MntFlags

Source§

impl BitOrAssign for nix::mount::linux::MsFlags

Source§

impl BitOrAssign for MQ_OFlag

Source§

impl BitOrAssign for InterfaceFlags

Source§

impl BitOrAssign for PollFlags

Source§

impl BitOrAssign for CloneFlags

Source§

impl BitOrAssign for EpollCreateFlags

Source§

impl BitOrAssign for EpollFlags

Source§

impl BitOrAssign for EfdFlags

Source§

impl BitOrAssign for AddWatchFlags

Source§

impl BitOrAssign for InitFlags

Source§

impl BitOrAssign for MemFdCreateFlag

Source§

impl BitOrAssign for MRemapFlags

Source§

impl BitOrAssign for MapFlags

Source§

impl BitOrAssign for MlockAllFlags

Source§

impl BitOrAssign for nix::sys::mman::MsFlags

Source§

impl BitOrAssign for ProtFlags

Source§

impl BitOrAssign for Persona

Source§

impl BitOrAssign for Options

Source§

impl BitOrAssign for QuotaValidFlags

Source§

impl BitOrAssign for SaFlags

Source§

impl BitOrAssign for SfdFlags

Source§

impl BitOrAssign for MsgFlags

Source§

impl BitOrAssign for SockFlag

Source§

impl BitOrAssign for TimestampingFlag

Source§

impl BitOrAssign for Mode

Source§

impl BitOrAssign for SFlag

Source§

impl BitOrAssign for FsFlags

Source§

impl BitOrAssign for ControlFlags

Source§

impl BitOrAssign for InputFlags

Source§

impl BitOrAssign for LocalFlags

Source§

impl BitOrAssign for OutputFlags

Source§

impl BitOrAssign for TimerSetTimeFlags

Source§

impl BitOrAssign for TimerFlags

Source§

impl BitOrAssign for WaitPidFlag

Source§

impl BitOrAssign for AccessFlags

Source§

impl BitOrAssign for BigInt

Source§

impl BitOrAssign for BigUint

Source§

impl BitOrAssign for CipherCtxFlags

Source§

impl BitOrAssign for CMSOptions

Source§

impl BitOrAssign for OcspFlag

Source§

impl BitOrAssign for Pkcs7Flags

Source§

impl BitOrAssign for ExtensionContext

Source§

impl BitOrAssign for ShutdownState

Source§

impl BitOrAssign for SslMode

Source§

impl BitOrAssign for SslOptions

Source§

impl BitOrAssign for SslSessionCacheMode

Source§

impl BitOrAssign for SslVerifyMode

Source§

impl BitOrAssign for X509CheckFlags

Source§

impl BitOrAssign for X509VerifyFlags

Source§

impl BitOrAssign for Choice

Source§

impl BitOrAssign for FontStyle

Source§

impl BitOrAssign for tokio::io::interest::Interest

Source§

impl BitOrAssign for Ready

Source§

impl BitOrAssign for LengthHint

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&bool> for bool

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i8> for i8

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i8> for Saturating<i8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i8> for datex_core::without_std::num::Wrapping<i8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i16> for i16

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i16> for Saturating<i16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i16> for datex_core::without_std::num::Wrapping<i16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i32> for i32

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i32> for Saturating<i32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i32> for datex_core::without_std::num::Wrapping<i32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i64> for i64

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i64> for Saturating<i64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i64> for datex_core::without_std::num::Wrapping<i64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i128> for i128

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&i128> for Saturating<i128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&i128> for datex_core::without_std::num::Wrapping<i128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&isize> for isize

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&isize> for Saturating<isize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&isize> for datex_core::without_std::num::Wrapping<isize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u8> for u8

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u8> for Saturating<u8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u8> for datex_core::without_std::num::Wrapping<u8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u16> for u16

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u16> for Saturating<u16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u16> for datex_core::without_std::num::Wrapping<u16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u32> for u32

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u32> for Saturating<u32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u32> for datex_core::without_std::num::Wrapping<u32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u64> for u64

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u64> for Saturating<u64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u64> for datex_core::without_std::num::Wrapping<u64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u128> for u128

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&u128> for Saturating<u128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&u128> for datex_core::without_std::num::Wrapping<u128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&usize> for usize

1.74.0 (const: unstable) · Source§

impl BitOrAssign<&usize> for Saturating<usize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&usize> for datex_core::without_std::num::Wrapping<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 datex_core::without_std::num::Wrapping<i8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<i16>> for datex_core::without_std::num::Wrapping<i16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<i32>> for datex_core::without_std::num::Wrapping<i32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<i64>> for datex_core::without_std::num::Wrapping<i64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<i128>> for datex_core::without_std::num::Wrapping<i128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<isize>> for datex_core::without_std::num::Wrapping<isize>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<u8>> for datex_core::without_std::num::Wrapping<u8>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<u16>> for datex_core::without_std::num::Wrapping<u16>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<u32>> for datex_core::without_std::num::Wrapping<u32>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<u64>> for datex_core::without_std::num::Wrapping<u64>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<u128>> for datex_core::without_std::num::Wrapping<u128>

1.22.0 (const: unstable) · Source§

impl BitOrAssign<&Wrapping<usize>> for datex_core::without_std::num::Wrapping<usize>

Source§

impl BitOrAssign<&BigInt> for BigInt

Source§

impl BitOrAssign<&BigUint> for BigUint

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i8> for Saturating<i8>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i8> for datex_core::without_std::num::Wrapping<i8>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i16> for Saturating<i16>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i16> for datex_core::without_std::num::Wrapping<i16>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i32> for Saturating<i32>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i32> for datex_core::without_std::num::Wrapping<i32>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i64> for Saturating<i64>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i64> for datex_core::without_std::num::Wrapping<i64>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<i128> for Saturating<i128>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<i128> for datex_core::without_std::num::Wrapping<i128>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<isize> for Saturating<isize>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<isize> for datex_core::without_std::num::Wrapping<isize>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u8> for Saturating<u8>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u8> for datex_core::without_std::num::Wrapping<u8>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u16> for Saturating<u16>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u16> for datex_core::without_std::num::Wrapping<u16>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u32> for Saturating<u32>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u32> for datex_core::without_std::num::Wrapping<u32>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u64> for Saturating<u64>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u64> for datex_core::without_std::num::Wrapping<u64>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<u128> for Saturating<u128>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<u128> for datex_core::without_std::num::Wrapping<u128>

1.74.0 (const: unstable) · Source§

impl BitOrAssign<usize> for Saturating<usize>

1.60.0 (const: unstable) · Source§

impl BitOrAssign<usize> for datex_core::without_std::num::Wrapping<usize>

Source§

impl<O> BitOrAssign for I16<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign for I32<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign for I64<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign for I128<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign for Isize<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign for U16<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign for U32<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign for U64<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign for U128<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign for Usize<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<i16> for I16<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<i32> for I32<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<i64> for I64<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<i128> for I128<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<isize> for Isize<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<u16> for U16<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<u32> for U32<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<u64> for U64<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<u128> for U128<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<usize> for Usize<O>
where O: ByteOrder,

Source§

impl<O> BitOrAssign<I16<O>> for i16
where O: ByteOrder,

Source§

impl<O> BitOrAssign<I32<O>> for i32
where O: ByteOrder,

Source§

impl<O> BitOrAssign<I64<O>> for i64
where O: ByteOrder,

Source§

impl<O> BitOrAssign<I128<O>> for i128
where O: ByteOrder,

Source§

impl<O> BitOrAssign<Isize<O>> for isize
where O: ByteOrder,

Source§

impl<O> BitOrAssign<U16<O>> for u16
where O: ByteOrder,

Source§

impl<O> BitOrAssign<U32<O>> for u32
where O: ByteOrder,

Source§

impl<O> BitOrAssign<U64<O>> for u64
where O: ByteOrder,

Source§

impl<O> BitOrAssign<U128<O>> for u128
where O: ByteOrder,

Source§

impl<O> BitOrAssign<Usize<O>> for usize
where O: ByteOrder,

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>>,

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, 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 LIMBS: usize> BitOrAssign for Uint<LIMBS>

Source§

impl<const LIMBS: usize> BitOrAssign for crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

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

Source§

impl<const LIMBS: usize> BitOrAssign<&Wrapping<Uint<LIMBS>>> for crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>