Trait BitDifference

Source
pub trait BitDifference<Rhs = Self> {
    type Output;

    // Required method
    fn difference(self, rhs: Rhs) -> Self::Output;
}
Expand description

Difference between two subsets.

Required Associated Types§

Required Methods§

Source

fn difference(self, rhs: Rhs) -> Self::Output

Returns bit-set has bits set for each index that has bit set in exactly one of two arguments.

Implementations on Foreign Types§

Source§

impl BitDifference for bool

Source§

type Output = bool

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl BitDifference for u8

Source§

type Output = u8

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl BitDifference for u16

Source§

type Output = u16

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl BitDifference for u32

Source§

type Output = u32

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl BitDifference for u64

Source§

type Output = u64

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl BitDifference for u128

Source§

type Output = u128

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl BitDifference<Complement<bool>> for bool

Source§

type Output = bool

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Source§

impl BitDifference<Complement<u8>> for u8

Source§

type Output = u8

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Source§

impl BitDifference<Complement<u16>> for u16

Source§

type Output = u16

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Source§

impl BitDifference<Complement<u32>> for u32

Source§

type Output = u32

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Source§

impl BitDifference<Complement<u64>> for u64

Source§

type Output = u64

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Source§

impl BitDifference<Complement<u128>> for u128

Source§

type Output = u128

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Source§

impl<T, U> BitDifference<U> for Option<T>
where T: BitDifference<U>,

Source§

type Output = Option<<T as BitDifference<U>>::Output>

Source§

fn difference(self, rhs: U) -> Option<T::Output>

Source§

impl<T, U> BitDifference<U> for &T

Source§

type Output = Difference<&T, U>

Source§

fn difference(self, rhs: U) -> Difference<Self, U>

Source§

impl<T, U> BitDifference<U> for &mut T

Source§

type Output = Difference<&mut T, U>

Source§

fn difference(self, rhs: U) -> Difference<Self, U>

Source§

impl<T, U> BitDifference<U> for Box<T>

Source§

type Output = Difference<Box<T>, U>

Source§

fn difference(self, rhs: U) -> Difference<Self, U>

Source§

impl<const N: usize> BitDifference for [u8; N]

Source§

type Output = [u8; N]

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl<const N: usize> BitDifference for [u16; N]

Source§

type Output = [u16; N]

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl<const N: usize> BitDifference for [u32; N]

Source§

type Output = [u32; N]

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl<const N: usize> BitDifference for [u64; N]

Source§

type Output = [u64; N]

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl<const N: usize> BitDifference for [u128; N]

Source§

type Output = [u128; N]

Source§

fn difference(self, rhs: Self) -> Self

Source§

impl<const N: usize> BitDifference<Complement<[u8; N]>> for [u8; N]

Source§

type Output = [u8; N]

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Source§

impl<const N: usize> BitDifference<Complement<[u16; N]>> for [u16; N]

Source§

type Output = [u16; N]

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Source§

impl<const N: usize> BitDifference<Complement<[u32; N]>> for [u32; N]

Source§

type Output = [u32; N]

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Source§

impl<const N: usize> BitDifference<Complement<[u64; N]>> for [u64; N]

Source§

type Output = [u64; N]

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Source§

impl<const N: usize> BitDifference<Complement<[u128; N]>> for [u128; N]

Source§

type Output = [u128; N]

Source§

fn difference(self, rhs: Complement<Self>) -> Self

Implementors§

Source§

impl<T, B, U, const N: usize> BitDifference<U> for Layered<T, B, N>

Source§

type Output = Difference<Layered<T, B, N>, U>

Source§

impl<T, U> BitDifference<U> for Complement<T>
where T: BitUnion<U>,

Source§

impl<T, U, Y> BitDifference<Y> for Difference<T, U>
where T: BitDifference<Y>,

Source§

impl<T, U, Y> BitDifference<Y> for Intersection<T, U>
where T: BitDifference<Y>,

Source§

impl<T, U, Y> BitDifference<Y> for Union<T, U>
where T: BitDifference<Y>, U: BitDifference<Y>, Y: Copy,