BitXorAssign

Trait BitXorAssign 

1.8.0 (const: unstable) · Source
pub trait BitXorAssign<Rhs = Self> {
    // Required method
    fn bitxor_assign(&mut self, rhs: Rhs);
}
Expand description

The bitwise XOR assignment operator ^=.

§Examples

use std::ops::BitXorAssign;

#[derive(Debug, PartialEq)]
struct Personality {
    has_soul: bool,
    likes_knitting: bool,
}

impl BitXorAssign for Personality {
    fn bitxor_assign(&mut self, rhs: Self) {
        self.has_soul ^= rhs.has_soul;
        self.likes_knitting ^= rhs.likes_knitting;
    }
}

let mut personality = Personality { has_soul: false, likes_knitting: true };
personality ^= Personality { has_soul: true, likes_knitting: true };
assert_eq!(personality, Personality { has_soul: true, likes_knitting: false});

Required Methods§

1.8.0 · Source

fn bitxor_assign(&mut self, rhs: Rhs)

Performs the ^= operation.

§Examples
let mut x = true;
x ^= false;
assert_eq!(x, true);

let mut x = true;
x ^= true;
assert_eq!(x, false);

let mut x: u8 = 5;
x ^= 1;
assert_eq!(x, 4);

let mut x: u8 = 5;
x ^= 2;
assert_eq!(x, 7);

Implementors§

1.8.0 (const: unstable) · Source§

impl BitXorAssign for bool

1.8.0 (const: unstable) · Source§

impl BitXorAssign for i8

1.8.0 (const: unstable) · Source§

impl BitXorAssign for i16

1.8.0 (const: unstable) · Source§

impl BitXorAssign for i32

1.8.0 (const: unstable) · Source§

impl BitXorAssign for i64

1.8.0 (const: unstable) · Source§

impl BitXorAssign for i128

1.8.0 (const: unstable) · Source§

impl BitXorAssign for isize

1.8.0 (const: unstable) · Source§

impl BitXorAssign for u8

1.8.0 (const: unstable) · Source§

impl BitXorAssign for u16

1.8.0 (const: unstable) · Source§

impl BitXorAssign for u32

1.8.0 (const: unstable) · Source§

impl BitXorAssign for u64

1.8.0 (const: unstable) · Source§

impl BitXorAssign for u128

1.8.0 (const: unstable) · Source§

impl BitXorAssign for usize

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<i8>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<i16>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<i32>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<i64>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<i128>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<isize>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<u8>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<u16>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<u32>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<u64>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<u128>

1.74.0 (const: unstable) · Source§

impl BitXorAssign for Saturating<usize>

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

1.8.0 (const: unstable) · Source§

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

Source§

impl BitXorAssign for AtFlags

Source§

impl BitXorAssign for FallocateFlags

Source§

impl BitXorAssign for FdFlag

Source§

impl BitXorAssign for OFlag

Source§

impl BitXorAssign for RenameFlags

Source§

impl BitXorAssign for SealFlag

Source§

impl BitXorAssign for SpliceFFlags

Source§

impl BitXorAssign for DeleteModuleFlags

Source§

impl BitXorAssign for ModuleInitFlags

Source§

impl BitXorAssign for MntFlags

Source§

impl BitXorAssign for nix::mount::linux::MsFlags

Source§

impl BitXorAssign for MQ_OFlag

Source§

impl BitXorAssign for InterfaceFlags

Source§

impl BitXorAssign for PollFlags

Source§

impl BitXorAssign for CloneFlags

Source§

impl BitXorAssign for EpollCreateFlags

Source§

impl BitXorAssign for EpollFlags

Source§

impl BitXorAssign for EfdFlags

Source§

impl BitXorAssign for AddWatchFlags

Source§

impl BitXorAssign for InitFlags

Source§

impl BitXorAssign for MemFdCreateFlag

Source§

impl BitXorAssign for MRemapFlags

Source§

impl BitXorAssign for MapFlags

Source§

impl BitXorAssign for MlockAllFlags

Source§

impl BitXorAssign for nix::sys::mman::MsFlags

Source§

impl BitXorAssign for ProtFlags

Source§

impl BitXorAssign for Persona

Source§

impl BitXorAssign for Options

Source§

impl BitXorAssign for QuotaValidFlags

Source§

impl BitXorAssign for SaFlags

Source§

impl BitXorAssign for SfdFlags

Source§

impl BitXorAssign for MsgFlags

Source§

impl BitXorAssign for SockFlag

Source§

impl BitXorAssign for TimestampingFlag

Source§

impl BitXorAssign for Mode

Source§

impl BitXorAssign for SFlag

Source§

impl BitXorAssign for FsFlags

Source§

impl BitXorAssign for ControlFlags

Source§

impl BitXorAssign for InputFlags

Source§

impl BitXorAssign for LocalFlags

Source§

impl BitXorAssign for OutputFlags

Source§

impl BitXorAssign for TimerSetTimeFlags

Source§

impl BitXorAssign for TimerFlags

Source§

impl BitXorAssign for WaitPidFlag

Source§

impl BitXorAssign for AccessFlags

Source§

impl BitXorAssign for BigInt

Source§

impl BitXorAssign for BigUint

Source§

impl BitXorAssign for CipherCtxFlags

Source§

impl BitXorAssign for CMSOptions

Source§

impl BitXorAssign for OcspFlag

Source§

impl BitXorAssign for Pkcs7Flags

Source§

impl BitXorAssign for ExtensionContext

Source§

impl BitXorAssign for ShutdownState

Source§

impl BitXorAssign for SslMode

Source§

impl BitXorAssign for SslOptions

Source§

impl BitXorAssign for SslSessionCacheMode

Source§

impl BitXorAssign for SslVerifyMode

Source§

impl BitXorAssign for X509CheckFlags

Source§

impl BitXorAssign for X509VerifyFlags

Source§

impl BitXorAssign for Choice

Source§

impl BitXorAssign for FontStyle

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&bool> for bool

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&i8> for i8

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&i8> for Saturating<i8>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&i16> for i16

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&i16> for Saturating<i16>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&i32> for i32

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&i32> for Saturating<i32>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&i64> for i64

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&i64> for Saturating<i64>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&i128> for i128

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&i128> for Saturating<i128>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&isize> for isize

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&isize> for Saturating<isize>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&u8> for u8

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&u8> for Saturating<u8>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&u16> for u16

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&u16> for Saturating<u16>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&u32> for u32

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&u32> for Saturating<u32>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&u64> for u64

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&u64> for Saturating<u64>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&u128> for u128

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&u128> for Saturating<u128>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&usize> for usize

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&usize> for Saturating<usize>

1.22.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<i8>> for Saturating<i8>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<i16>> for Saturating<i16>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<i32>> for Saturating<i32>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<i64>> for Saturating<i64>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<i128>> for Saturating<i128>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<isize>> for Saturating<isize>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<u8>> for Saturating<u8>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<u16>> for Saturating<u16>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<u32>> for Saturating<u32>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<u64>> for Saturating<u64>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<u128>> for Saturating<u128>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<&Saturating<usize>> for Saturating<usize>

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

1.22.0 (const: unstable) · Source§

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

Source§

impl BitXorAssign<&BigInt> for BigInt

Source§

impl BitXorAssign<&BigUint> for BigUint

1.74.0 (const: unstable) · Source§

impl BitXorAssign<i8> for Saturating<i8>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<i16> for Saturating<i16>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<i32> for Saturating<i32>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<i64> for Saturating<i64>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<i128> for Saturating<i128>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<isize> for Saturating<isize>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<u8> for Saturating<u8>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<u16> for Saturating<u16>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<u32> for Saturating<u32>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<u64> for Saturating<u64>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<u128> for Saturating<u128>

1.60.0 (const: unstable) · Source§

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

1.74.0 (const: unstable) · Source§

impl BitXorAssign<usize> for Saturating<usize>

1.60.0 (const: unstable) · Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<T, S, A> BitXorAssign<&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> BitXorAssign<&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> BitXorAssign<U> for Simd<T, N>
where Simd<T, N>: BitXor<U, Output = Simd<T, N>>, T: SimdElement, LaneCount<N>: SupportedLaneCount,

Source§

impl<T, const N: usize> BitXorAssign for Mask<T, N>

Source§

impl<T, const N: usize> BitXorAssign<bool> for Mask<T, N>

Source§

impl<const LIMBS: usize> BitXorAssign for Uint<LIMBS>

Source§

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

Source§

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

Source§

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