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

1.75.0 · Source§

impl BitOrAssign for Ipv4Addr

1.75.0 · Source§

impl BitOrAssign for Ipv6Addr

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>

Source§

impl BitOrAssign for Style

Source§

impl BitOrAssign for BigInt

Source§

impl BitOrAssign for BigUint

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

impl BitOrAssign<&Ipv4Addr> for Ipv4Addr

1.75.0 · Source§

impl BitOrAssign<&Ipv6Addr> for Ipv6Addr

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>

Source§

impl BitOrAssign<&Style> for Style

Source§

impl BitOrAssign<&BigInt> for BigInt

Source§

impl BitOrAssign<&BigUint> for BigUint

Source§

impl BitOrAssign<Styles> for 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<E> BitOrAssign for snarkvm_circuit::modules::Boolean<E>
where E: Environment,

Source§

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

Source§

impl<E> BitOrAssign<&Boolean<E>> for snarkvm_circuit::modules::Boolean<E>
where E: Environment,

Source§

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

Source§

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

Source§

impl<E, I> BitOrAssign<&Integer<E, I>> for snarkvm_circuit::modules::modules::integers::Integer<E, I>
where E: Environment, I: IntegerType,

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