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 CanDerive
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 FileType
impl BitOrAssign for mio::interest::Interest
impl BitOrAssign for nix::fcntl::AtFlags
impl BitOrAssign for nix::fcntl::AtFlags
impl BitOrAssign for nix::fcntl::FallocateFlags
impl BitOrAssign for nix::fcntl::FallocateFlags
impl BitOrAssign for nix::fcntl::FdFlag
impl BitOrAssign for nix::fcntl::FdFlag
impl BitOrAssign for nix::fcntl::OFlag
impl BitOrAssign for nix::fcntl::OFlag
impl BitOrAssign for nix::fcntl::RenameFlags
impl BitOrAssign for nix::fcntl::RenameFlags
impl BitOrAssign for nix::fcntl::ResolveFlag
impl BitOrAssign for nix::fcntl::ResolveFlag
impl BitOrAssign for nix::fcntl::SealFlag
impl BitOrAssign for nix::fcntl::SealFlag
impl BitOrAssign for PollFlags
impl BitOrAssign for PosixSpawnFlags
impl BitOrAssign for MFdFlags
impl BitOrAssign for MemFdCreateFlag
impl BitOrAssign for nix::sys::signal::SaFlags
impl BitOrAssign for nix::sys::signal::SaFlags
impl BitOrAssign for nix::sys::signalfd::SfdFlags
impl BitOrAssign for nix::sys::signalfd::SfdFlags
impl BitOrAssign for nix::sys::stat::Mode
impl BitOrAssign for nix::sys::stat::Mode
impl BitOrAssign for nix::sys::stat::SFlag
impl BitOrAssign for nix::sys::stat::SFlag
impl BitOrAssign for nix::sys::statvfs::FsFlags
impl BitOrAssign for nix::sys::statvfs::FsFlags
impl BitOrAssign for ControlFlags
impl BitOrAssign for InputFlags
impl BitOrAssign for LocalFlags
impl BitOrAssign for OutputFlags
impl BitOrAssign for nix::sys::wait::WaitPidFlag
impl BitOrAssign for nix::sys::wait::WaitPidFlag
impl BitOrAssign for nix::unistd::AccessFlags
impl BitOrAssign for nix::unistd::AccessFlags
impl BitOrAssign for CipherCtxFlags
impl BitOrAssign for CMSOptions
impl BitOrAssign for OcspFlag
impl BitOrAssign for Pkcs7Flags
impl BitOrAssign for ExtensionContext
impl BitOrAssign for ShutdownState
impl BitOrAssign for SslMode
impl BitOrAssign for SslOptions
impl BitOrAssign for SslSessionCacheMode
impl BitOrAssign for SslVerifyMode
impl BitOrAssign for X509CheckFlags
impl BitOrAssign for X509VerifyFlags
impl BitOrAssign for rustix::backend::fs::inotify::CreateFlags
impl BitOrAssign for rustix::backend::fs::inotify::CreateFlags
impl BitOrAssign for rustix::backend::fs::inotify::ReadFlags
impl BitOrAssign for rustix::backend::fs::inotify::ReadFlags
impl BitOrAssign for rustix::backend::fs::inotify::WatchFlags
impl BitOrAssign for rustix::backend::fs::inotify::WatchFlags
impl BitOrAssign for rustix::backend::fs::types::Access
impl BitOrAssign for rustix::backend::fs::types::Access
impl BitOrAssign for rustix::backend::fs::types::AtFlags
impl BitOrAssign for rustix::backend::fs::types::AtFlags
impl BitOrAssign for rustix::backend::fs::types::FallocateFlags
impl BitOrAssign for rustix::backend::fs::types::FallocateFlags
impl BitOrAssign for rustix::backend::fs::types::MemfdFlags
impl BitOrAssign for rustix::backend::fs::types::MemfdFlags
impl BitOrAssign for rustix::backend::fs::types::Mode
impl BitOrAssign for rustix::backend::fs::types::Mode
impl BitOrAssign for rustix::backend::fs::types::OFlags
impl BitOrAssign for rustix::backend::fs::types::OFlags
impl BitOrAssign for rustix::backend::fs::types::RenameFlags
impl BitOrAssign for rustix::backend::fs::types::RenameFlags
impl BitOrAssign for rustix::backend::fs::types::ResolveFlags
impl BitOrAssign for rustix::backend::fs::types::ResolveFlags
impl BitOrAssign for rustix::backend::fs::types::SealFlags
impl BitOrAssign for rustix::backend::fs::types::SealFlags
impl BitOrAssign for rustix::backend::fs::types::StatVfsMountFlags
impl BitOrAssign for rustix::backend::fs::types::StatVfsMountFlags
impl BitOrAssign for rustix::backend::fs::types::StatxFlags
impl BitOrAssign for rustix::backend::io::types::DupFlags
impl BitOrAssign for rustix::backend::io::types::DupFlags
impl BitOrAssign for rustix::backend::io::types::FdFlags
impl BitOrAssign for rustix::backend::io::types::FdFlags
impl BitOrAssign for rustix::backend::io::types::ReadWriteFlags
impl BitOrAssign for rustix::backend::io::types::ReadWriteFlags
impl BitOrAssign for MountFlags
impl BitOrAssign for MountPropagationFlags
impl BitOrAssign for UnmountFlags
impl BitOrAssign for rustix::fs::ioctl::IFlags
impl BitOrAssign for rustix::fs::ioctl::IFlags
impl BitOrAssign for StatxAttributes
impl BitOrAssign for rustix::fs::statx::StatxFlags
impl BitOrAssign for rustix::fs::xattr::XattrFlags
impl BitOrAssign for rustix::fs::xattr::XattrFlags
impl BitOrAssign for LengthHint
impl BitOrAssign for CodegenConfig
impl BitOrAssign for Effects
§Examples
let mut effects = anstyle::Effects::BOLD;
effects |= anstyle::Effects::UNDERLINE;
assert_eq!(format!("{:?}", effects), "Effects(BOLD | UNDERLINE)");
impl BitOrAssign for BigInt
impl BitOrAssign for BigUint
impl BitOrAssign for rustmax::proptest::num::f32::Any
impl BitOrAssign for rustmax::proptest::num::f64::Any
impl BitOrAssign for Modifiers
impl BitOrAssign for rustmax::tokio::io::Interest
impl BitOrAssign for Ready
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 Wrapping<i8>
impl BitOrAssign for Wrapping<i16>
impl BitOrAssign for Wrapping<i32>
impl BitOrAssign for Wrapping<i64>
impl BitOrAssign for Wrapping<i128>
impl BitOrAssign for Wrapping<isize>
impl BitOrAssign for Wrapping<u8>
impl BitOrAssign for Wrapping<u16>
impl BitOrAssign for Wrapping<u32>
impl BitOrAssign for Wrapping<u64>
impl BitOrAssign for Wrapping<u128>
impl BitOrAssign for Wrapping<usize>
impl BitOrAssign<&bool> for bool
impl BitOrAssign<&i8> for i8
impl BitOrAssign<&i8> for Saturating<i8>
impl BitOrAssign<&i8> for Wrapping<i8>
impl BitOrAssign<&i16> for i16
impl BitOrAssign<&i16> for Saturating<i16>
impl BitOrAssign<&i16> for Wrapping<i16>
impl BitOrAssign<&i32> for i32
impl BitOrAssign<&i32> for Saturating<i32>
impl BitOrAssign<&i32> for Wrapping<i32>
impl BitOrAssign<&i64> for i64
impl BitOrAssign<&i64> for Saturating<i64>
impl BitOrAssign<&i64> for Wrapping<i64>
impl BitOrAssign<&i128> for i128
impl BitOrAssign<&i128> for Saturating<i128>
impl BitOrAssign<&i128> for Wrapping<i128>
impl BitOrAssign<&isize> for isize
impl BitOrAssign<&isize> for Saturating<isize>
impl BitOrAssign<&isize> for Wrapping<isize>
impl BitOrAssign<&u8> for u8
impl BitOrAssign<&u8> for Saturating<u8>
impl BitOrAssign<&u8> for Wrapping<u8>
impl BitOrAssign<&u16> for u16
impl BitOrAssign<&u16> for Saturating<u16>
impl BitOrAssign<&u16> for Wrapping<u16>
impl BitOrAssign<&u32> for u32
impl BitOrAssign<&u32> for Saturating<u32>
impl BitOrAssign<&u32> for Wrapping<u32>
impl BitOrAssign<&u64> for u64
impl BitOrAssign<&u64> for Saturating<u64>
impl BitOrAssign<&u64> for Wrapping<u64>
impl BitOrAssign<&u128> for u128
impl BitOrAssign<&u128> for Saturating<u128>
impl BitOrAssign<&u128> for Wrapping<u128>
impl BitOrAssign<&usize> for usize
impl BitOrAssign<&usize> for Saturating<usize>
impl BitOrAssign<&usize> for Wrapping<usize>
impl BitOrAssign<&BigInt> for BigInt
impl BitOrAssign<&BigUint> for BigUint
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 Wrapping<i8>
impl BitOrAssign<&Wrapping<i16>> for Wrapping<i16>
impl BitOrAssign<&Wrapping<i32>> for Wrapping<i32>
impl BitOrAssign<&Wrapping<i64>> for Wrapping<i64>
impl BitOrAssign<&Wrapping<i128>> for Wrapping<i128>
impl BitOrAssign<&Wrapping<isize>> for Wrapping<isize>
impl BitOrAssign<&Wrapping<u8>> for Wrapping<u8>
impl BitOrAssign<&Wrapping<u16>> for Wrapping<u16>
impl BitOrAssign<&Wrapping<u32>> for Wrapping<u32>
impl BitOrAssign<&Wrapping<u64>> for Wrapping<u64>
impl BitOrAssign<&Wrapping<u128>> for Wrapping<u128>
impl BitOrAssign<&Wrapping<usize>> for Wrapping<usize>
impl BitOrAssign<i8> for Saturating<i8>
impl BitOrAssign<i8> for Wrapping<i8>
impl BitOrAssign<i16> for Saturating<i16>
impl BitOrAssign<i16> for Wrapping<i16>
impl BitOrAssign<i32> for Saturating<i32>
impl BitOrAssign<i32> for Wrapping<i32>
impl BitOrAssign<i64> for Saturating<i64>
impl BitOrAssign<i64> for Wrapping<i64>
impl BitOrAssign<i128> for Saturating<i128>
impl BitOrAssign<i128> for Wrapping<i128>
impl BitOrAssign<isize> for Saturating<isize>
impl BitOrAssign<isize> for Wrapping<isize>
impl BitOrAssign<u8> for Saturating<u8>
impl BitOrAssign<u8> for Wrapping<u8>
impl BitOrAssign<u16> for Saturating<u16>
impl BitOrAssign<u16> for Wrapping<u16>
impl BitOrAssign<u32> for Saturating<u32>
impl BitOrAssign<u32> for Wrapping<u32>
impl BitOrAssign<u64> for Saturating<u64>
impl BitOrAssign<u64> for Wrapping<u64>
impl BitOrAssign<u128> for Saturating<u128>
impl BitOrAssign<u128> for Wrapping<u128>
impl BitOrAssign<usize> for Saturating<usize>
impl BitOrAssign<usize> for Wrapping<usize>
impl BitOrAssign<Effects> for Style
§Examples
let mut style = anstyle::Style::new();
style |= anstyle::Effects::BOLD.into();