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 Wrapping<i8>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<i16>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<i32>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<i64>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<i128>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<isize>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<u8>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<u16>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<u32>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<u64>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<u128>

1.8.0 (const: unstable) · Source§

impl BitXorAssign for Wrapping<usize>

Source§

impl BitXorAssign for H160

Source§

impl BitXorAssign for H256

Source§

impl BitXorAssign for U256

Source§

impl BitXorAssign for H128

Source§

impl BitXorAssign for H384

Source§

impl BitXorAssign for H512

Source§

impl BitXorAssign for H768

Source§

impl BitXorAssign for primitive_types::U128

Source§

impl BitXorAssign for U512

Source§

impl BitXorAssign for Choice

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 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 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 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 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 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 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 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 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 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 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 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 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 Wrapping<i8>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<i16>> for Wrapping<i16>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<i32>> for Wrapping<i32>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<i64>> for Wrapping<i64>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<i128>> for Wrapping<i128>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<isize>> for Wrapping<isize>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<u8>> for Wrapping<u8>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<u16>> for Wrapping<u16>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<u32>> for Wrapping<u32>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<u64>> for Wrapping<u64>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<u128>> for Wrapping<u128>

1.22.0 (const: unstable) · Source§

impl BitXorAssign<&Wrapping<usize>> for Wrapping<usize>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<i8> for Saturating<i8>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<i8> for Wrapping<i8>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<i16> for Saturating<i16>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<i16> for Wrapping<i16>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<i32> for Saturating<i32>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<i32> for Wrapping<i32>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<i64> for Saturating<i64>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<i64> for Wrapping<i64>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<i128> for Saturating<i128>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<i128> for Wrapping<i128>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<isize> for Saturating<isize>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<isize> for Wrapping<isize>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<u8> for Saturating<u8>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<u8> for Wrapping<u8>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<u16> for Saturating<u16>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<u16> for Wrapping<u16>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<u32> for Saturating<u32>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<u32> for Wrapping<u32>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<u64> for Saturating<u64>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<u64> for Wrapping<u64>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<u128> for Saturating<u128>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<u128> for Wrapping<u128>

1.74.0 (const: unstable) · Source§

impl BitXorAssign<usize> for Saturating<usize>

1.60.0 (const: unstable) · Source§

impl BitXorAssign<usize> for Wrapping<usize>

Source§

impl<'r> BitXorAssign<&'r H160> for H160

Source§

impl<'r> BitXorAssign<&'r H256> for H256

Source§

impl<'r> BitXorAssign<&'r H128> for H128

Source§

impl<'r> BitXorAssign<&'r H384> for H384

Source§

impl<'r> BitXorAssign<&'r H512> for H512

Source§

impl<'r> BitXorAssign<&'r H768> for H768

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 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 zerocopy::byteorder::U128<O>
where O: ByteOrder,

Source§

impl<T, S, A> BitXorAssign<&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> 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>