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 DrawFlags

Source§

impl BitOrAssign for DrawListFlags

Source§

impl BitOrAssign for BVec2

Source§

impl BitOrAssign for BVec3

Source§

impl BitOrAssign for BVec3A

Source§

impl BitOrAssign for BVec4

Source§

impl BitOrAssign for BVec4A

Source§

impl BitOrAssign for BackendFlags

Source§

impl BitOrAssign for ButtonFlags

Source§

impl BitOrAssign for ColorEditFlags

Source§

impl BitOrAssign for ComboBoxFlags

Source§

impl BitOrAssign for ConfigFlags

Source§

impl BitOrAssign for DragDropFlags

Source§

impl BitOrAssign for FontAtlasFlags

Source§

impl BitOrAssign for InputTextCallback

Source§

impl BitOrAssign for InputTextFlags

Source§

impl BitOrAssign for InputTextMultilineCallback

Source§

impl BitOrAssign for ItemHoveredFlags

Source§

impl BitOrAssign for JoystickHats

Source§

impl BitOrAssign for Modifiers

Source§

impl BitOrAssign for SelectableFlags

Source§

impl BitOrAssign for SliderFlags

Source§

impl BitOrAssign for TabBarFlags

Source§

impl BitOrAssign for TabItemFlags

Source§

impl BitOrAssign for TreeNodeFlags

Source§

impl BitOrAssign for WindowFlags

Source§

impl BitOrAssign for WindowFocusedFlags

Source§

impl BitOrAssign for WindowHoveredFlags

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 BigInt

Source§

impl BitOrAssign for BigUint

Source§

impl BitOrAssign for Transformations

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<&BigInt> for BigInt

Source§

impl BitOrAssign<&BigUint> for BigUint

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