Trait BitXorAssign

1.8.0 · 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 · Source§

impl BitXorAssign for bool

1.8.0 · Source§

impl BitXorAssign for i8

1.8.0 · Source§

impl BitXorAssign for i16

1.8.0 · Source§

impl BitXorAssign for i32

1.8.0 · Source§

impl BitXorAssign for i64

1.8.0 · Source§

impl BitXorAssign for i128

1.8.0 · Source§

impl BitXorAssign for isize

1.8.0 · Source§

impl BitXorAssign for u8

1.8.0 · Source§

impl BitXorAssign for u16

1.8.0 · Source§

impl BitXorAssign for u32

1.8.0 · Source§

impl BitXorAssign for u64

1.8.0 · Source§

impl BitXorAssign for u128

1.8.0 · Source§

impl BitXorAssign for usize

Source§

impl BitXorAssign for Mod

1.74.0 · Source§

impl BitXorAssign for Saturating<i8>

1.74.0 · Source§

impl BitXorAssign for Saturating<i16>

1.74.0 · Source§

impl BitXorAssign for Saturating<i32>

1.74.0 · Source§

impl BitXorAssign for Saturating<i64>

1.74.0 · Source§

impl BitXorAssign for Saturating<i128>

1.74.0 · Source§

impl BitXorAssign for Saturating<isize>

1.74.0 · Source§

impl BitXorAssign for Saturating<u8>

1.74.0 · Source§

impl BitXorAssign for Saturating<u16>

1.74.0 · Source§

impl BitXorAssign for Saturating<u32>

1.74.0 · Source§

impl BitXorAssign for Saturating<u64>

1.74.0 · Source§

impl BitXorAssign for Saturating<u128>

1.74.0 · Source§

impl BitXorAssign for Saturating<usize>

1.8.0 · Source§

impl BitXorAssign for Wrapping<i8>

1.8.0 · Source§

impl BitXorAssign for Wrapping<i16>

1.8.0 · Source§

impl BitXorAssign for Wrapping<i32>

1.8.0 · Source§

impl BitXorAssign for Wrapping<i64>

1.8.0 · Source§

impl BitXorAssign for Wrapping<i128>

1.8.0 · Source§

impl BitXorAssign for Wrapping<isize>

1.8.0 · Source§

impl BitXorAssign for Wrapping<u8>

1.8.0 · Source§

impl BitXorAssign for Wrapping<u16>

1.8.0 · Source§

impl BitXorAssign for Wrapping<u32>

1.8.0 · Source§

impl BitXorAssign for Wrapping<u64>

1.8.0 · Source§

impl BitXorAssign for Wrapping<u128>

1.8.0 · Source§

impl BitXorAssign for Wrapping<usize>

Source§

impl BitXorAssign for JoystickHats

Source§

impl BitXorAssign for Modifiers

Source§

impl BitXorAssign for m128

Source§

impl BitXorAssign for m128d

Source§

impl BitXorAssign for m128i

Source§

impl BitXorAssign for f32x4

Source§

impl BitXorAssign for f32x8

Source§

impl BitXorAssign for f64x2

Source§

impl BitXorAssign for f64x4

Source§

impl BitXorAssign for i8x16

Source§

impl BitXorAssign for i8x32

Source§

impl BitXorAssign for i16x8

Source§

impl BitXorAssign for i16x16

Source§

impl BitXorAssign for i32x4

Source§

impl BitXorAssign for i32x8

Source§

impl BitXorAssign for i64x2

Source§

impl BitXorAssign for u8x16

Source§

impl BitXorAssign for u16x8

Source§

impl BitXorAssign for u16x16

Source§

impl BitXorAssign for u32x4

Source§

impl BitXorAssign for u32x8

Source§

impl BitXorAssign for u64x2

Source§

impl BitXorAssign for u64x4

1.22.0 · Source§

impl BitXorAssign<&bool> for bool

1.22.0 · Source§

impl BitXorAssign<&i8> for i8

1.22.0 · Source§

impl BitXorAssign<&i8> for Saturating<i8>

1.22.0 · Source§

impl BitXorAssign<&i8> for Wrapping<i8>

1.22.0 · Source§

impl BitXorAssign<&i16> for i16

1.22.0 · Source§

impl BitXorAssign<&i16> for Saturating<i16>

1.22.0 · Source§

impl BitXorAssign<&i16> for Wrapping<i16>

1.22.0 · Source§

impl BitXorAssign<&i32> for i32

1.22.0 · Source§

impl BitXorAssign<&i32> for Saturating<i32>

1.22.0 · Source§

impl BitXorAssign<&i32> for Wrapping<i32>

1.22.0 · Source§

impl BitXorAssign<&i64> for i64

1.22.0 · Source§

impl BitXorAssign<&i64> for Saturating<i64>

1.22.0 · Source§

impl BitXorAssign<&i64> for Wrapping<i64>

1.22.0 · Source§

impl BitXorAssign<&i128> for i128

1.22.0 · Source§

impl BitXorAssign<&i128> for Saturating<i128>

1.22.0 · Source§

impl BitXorAssign<&i128> for Wrapping<i128>

1.22.0 · Source§

impl BitXorAssign<&isize> for isize

1.22.0 · Source§

impl BitXorAssign<&isize> for Saturating<isize>

1.22.0 · Source§

impl BitXorAssign<&isize> for Wrapping<isize>

1.22.0 · Source§

impl BitXorAssign<&u8> for u8

1.22.0 · Source§

impl BitXorAssign<&u8> for Saturating<u8>

1.22.0 · Source§

impl BitXorAssign<&u8> for Wrapping<u8>

1.22.0 · Source§

impl BitXorAssign<&u16> for u16

1.22.0 · Source§

impl BitXorAssign<&u16> for Saturating<u16>

1.22.0 · Source§

impl BitXorAssign<&u16> for Wrapping<u16>

1.22.0 · Source§

impl BitXorAssign<&u32> for u32

1.22.0 · Source§

impl BitXorAssign<&u32> for Saturating<u32>

1.22.0 · Source§

impl BitXorAssign<&u32> for Wrapping<u32>

1.22.0 · Source§

impl BitXorAssign<&u64> for u64

1.22.0 · Source§

impl BitXorAssign<&u64> for Saturating<u64>

1.22.0 · Source§

impl BitXorAssign<&u64> for Wrapping<u64>

1.22.0 · Source§

impl BitXorAssign<&u128> for u128

1.22.0 · Source§

impl BitXorAssign<&u128> for Saturating<u128>

1.22.0 · Source§

impl BitXorAssign<&u128> for Wrapping<u128>

1.22.0 · Source§

impl BitXorAssign<&usize> for usize

1.22.0 · Source§

impl BitXorAssign<&usize> for Saturating<usize>

1.22.0 · Source§

impl BitXorAssign<&usize> for Wrapping<usize>

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

impl BitXorAssign<&Wrapping<i8>> for Wrapping<i8>

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

1.22.0 · Source§

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

Source§

impl BitXorAssign<&f32x4> for f32x4

Source§

impl BitXorAssign<&f32x8> for f32x8

Source§

impl BitXorAssign<&f64x2> for f64x2

Source§

impl BitXorAssign<&f64x4> for f64x4

Source§

impl BitXorAssign<&i8x16> for i8x16

Source§

impl BitXorAssign<&i8x32> for i8x32

Source§

impl BitXorAssign<&i16x8> for i16x8

Source§

impl BitXorAssign<&i16x16> for i16x16

Source§

impl BitXorAssign<&i32x4> for i32x4

Source§

impl BitXorAssign<&i32x8> for i32x8

Source§

impl BitXorAssign<&i64x2> for i64x2

Source§

impl BitXorAssign<&u8x16> for u8x16

Source§

impl BitXorAssign<&u16x8> for u16x8

Source§

impl BitXorAssign<&u16x16> for u16x16

Source§

impl BitXorAssign<&u32x4> for u32x4

Source§

impl BitXorAssign<&u32x8> for u32x8

Source§

impl BitXorAssign<&u64x2> for u64x2

Source§

impl BitXorAssign<&u64x4> for u64x4

1.74.0 · Source§

impl BitXorAssign<i8> for Saturating<i8>

1.60.0 · Source§

impl BitXorAssign<i8> for Wrapping<i8>

1.74.0 · Source§

impl BitXorAssign<i16> for Saturating<i16>

1.60.0 · Source§

impl BitXorAssign<i16> for Wrapping<i16>

1.74.0 · Source§

impl BitXorAssign<i32> for Saturating<i32>

1.60.0 · Source§

impl BitXorAssign<i32> for Wrapping<i32>

1.74.0 · Source§

impl BitXorAssign<i64> for Saturating<i64>

1.60.0 · Source§

impl BitXorAssign<i64> for Wrapping<i64>

1.74.0 · Source§

impl BitXorAssign<i128> for Saturating<i128>

1.60.0 · Source§

impl BitXorAssign<i128> for Wrapping<i128>

1.74.0 · Source§

impl BitXorAssign<isize> for Saturating<isize>

1.60.0 · Source§

impl BitXorAssign<isize> for Wrapping<isize>

1.74.0 · Source§

impl BitXorAssign<u8> for Saturating<u8>

1.60.0 · Source§

impl BitXorAssign<u8> for Wrapping<u8>

1.74.0 · Source§

impl BitXorAssign<u16> for Saturating<u16>

1.60.0 · Source§

impl BitXorAssign<u16> for Wrapping<u16>

1.74.0 · Source§

impl BitXorAssign<u32> for Saturating<u32>

1.60.0 · Source§

impl BitXorAssign<u32> for Wrapping<u32>

1.74.0 · Source§

impl BitXorAssign<u64> for Saturating<u64>

1.60.0 · Source§

impl BitXorAssign<u64> for Wrapping<u64>

1.74.0 · Source§

impl BitXorAssign<u128> for Saturating<u128>

1.60.0 · Source§

impl BitXorAssign<u128> for Wrapping<u128>

1.74.0 · Source§

impl BitXorAssign<usize> for Saturating<usize>

1.60.0 · Source§

impl BitXorAssign<usize> for Wrapping<usize>

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>