Trait BitAnd

1.0.0 · Source
pub trait BitAnd<Rhs = Self> {
    type Output;

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

The bitwise AND operator &.

Note that Rhs is Self by default, but this is not mandatory.

§Examples

An implementation of BitAnd for a wrapper around bool.

use std::ops::BitAnd;

#[derive(Debug, PartialEq)]
struct Scalar(bool);

impl BitAnd for Scalar {
    type Output = Self;

    // rhs is the "right-hand side" of the expression `a & b`
    fn bitand(self, rhs: Self) -> Self::Output {
        Self(self.0 & rhs.0)
    }
}

assert_eq!(Scalar(true) & Scalar(true), Scalar(true));
assert_eq!(Scalar(true) & Scalar(false), Scalar(false));
assert_eq!(Scalar(false) & Scalar(true), Scalar(false));
assert_eq!(Scalar(false) & Scalar(false), Scalar(false));

An implementation of BitAnd for a wrapper around Vec<bool>.

use std::ops::BitAnd;

#[derive(Debug, PartialEq)]
struct BooleanVector(Vec<bool>);

impl BitAnd for BooleanVector {
    type Output = Self;

    fn bitand(self, Self(rhs): Self) -> Self::Output {
        let Self(lhs) = self;
        assert_eq!(lhs.len(), rhs.len());
        Self(
            lhs.iter()
                .zip(rhs.iter())
                .map(|(x, y)| *x & *y)
                .collect()
        )
    }
}

let bv1 = BooleanVector(vec![true, true, false, false]);
let bv2 = BooleanVector(vec![true, false, true, false]);
let expected = BooleanVector(vec![true, false, false, false]);
assert_eq!(bv1 & bv2, expected);

Required Associated Types§

1.0.0 · Source

type Output

The resulting type after applying the & operator.

Required Methods§

1.0.0 · Source

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

Performs the & operation.

§Examples
assert_eq!(true & false, false);
assert_eq!(true & true, true);
assert_eq!(5u8 & 1u8, 1);
assert_eq!(5u8 & 2u8, 0);

Implementors§

1.0.0 · Source§

impl BitAnd for bool

1.0.0 · Source§

impl BitAnd for i8

1.0.0 · Source§

impl BitAnd for i16

1.0.0 · Source§

impl BitAnd for i32

1.0.0 · Source§

impl BitAnd for i64

1.0.0 · Source§

impl BitAnd for i128

1.0.0 · Source§

impl BitAnd for isize

1.0.0 · Source§

impl BitAnd for u8

1.0.0 · Source§

impl BitAnd for u16

1.0.0 · Source§

impl BitAnd for u32

1.0.0 · Source§

impl BitAnd for u64

1.0.0 · Source§

impl BitAnd for u128

1.0.0 · Source§

impl BitAnd for usize

1.75.0 · Source§

impl BitAnd for Ipv4Addr

1.75.0 · Source§

impl BitAnd for Ipv6Addr

1.74.0 · Source§

impl BitAnd for Saturating<i8>

1.74.0 · Source§

impl BitAnd for Saturating<i16>

1.74.0 · Source§

impl BitAnd for Saturating<i32>

1.74.0 · Source§

impl BitAnd for Saturating<i64>

1.74.0 · Source§

impl BitAnd for Saturating<i128>

1.74.0 · Source§

impl BitAnd for Saturating<isize>

1.74.0 · Source§

impl BitAnd for Saturating<u8>

1.74.0 · Source§

impl BitAnd for Saturating<u16>

1.74.0 · Source§

impl BitAnd for Saturating<u32>

1.74.0 · Source§

impl BitAnd for Saturating<u64>

1.74.0 · Source§

impl BitAnd for Saturating<u128>

1.74.0 · Source§

impl BitAnd for Saturating<usize>

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

1.0.0 · Source§

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

Source§

impl BitAnd for Limb

Source§

impl BitAnd for AtFlags

Source§

impl BitAnd for FallocateFlags

Source§

impl BitAnd for FdFlag

Source§

impl BitAnd for OFlag

Source§

impl BitAnd for RenameFlags

Source§

impl BitAnd for SealFlag

Source§

impl BitAnd for SpliceFFlags

Source§

impl BitAnd for DeleteModuleFlags

Source§

impl BitAnd for ModuleInitFlags

Source§

impl BitAnd for MntFlags

Source§

impl BitAnd for nix::mount::linux::MsFlags

Source§

impl BitAnd for MQ_OFlag

Source§

impl BitAnd for InterfaceFlags

Source§

impl BitAnd for PollFlags

Source§

impl BitAnd for CloneFlags

Source§

impl BitAnd for EpollCreateFlags

Source§

impl BitAnd for EpollFlags

Source§

impl BitAnd for EfdFlags

Source§

impl BitAnd for AddWatchFlags

Source§

impl BitAnd for InitFlags

Source§

impl BitAnd for MemFdCreateFlag

Source§

impl BitAnd for MRemapFlags

Source§

impl BitAnd for MapFlags

Source§

impl BitAnd for MlockAllFlags

Source§

impl BitAnd for nix::sys::mman::MsFlags

Source§

impl BitAnd for ProtFlags

Source§

impl BitAnd for Persona

Source§

impl BitAnd for Options

Source§

impl BitAnd for QuotaValidFlags

Source§

impl BitAnd for SaFlags

Source§

impl BitAnd for SfdFlags

Source§

impl BitAnd for MsgFlags

Source§

impl BitAnd for SockFlag

Source§

impl BitAnd for TimestampingFlag

Source§

impl BitAnd for Mode

Source§

impl BitAnd for SFlag

Source§

impl BitAnd for FsFlags

Source§

impl BitAnd for ControlFlags

Source§

impl BitAnd for InputFlags

Source§

impl BitAnd for LocalFlags

Source§

impl BitAnd for OutputFlags

Source§

impl BitAnd for TimerSetTimeFlags

Source§

impl BitAnd for TimerFlags

Source§

impl BitAnd for WaitPidFlag

Source§

impl BitAnd for AccessFlags

Source§

impl BitAnd for num_bigint_dig::bigint::BigInt

Source§

impl BitAnd for num_bigint_dig::biguint::BigUint

Source§

impl BitAnd for num_bigint::bigint::BigInt

Source§

impl BitAnd for num_bigint::biguint::BigUint

Source§

impl BitAnd for CipherCtxFlags

Source§

impl BitAnd for CMSOptions

Source§

impl BitAnd for OcspFlag

Source§

impl BitAnd for Pkcs7Flags

Source§

impl BitAnd for ExtensionContext

Source§

impl BitAnd for ShutdownState

Source§

impl BitAnd for SslMode

Source§

impl BitAnd for SslOptions

Source§

impl BitAnd for SslSessionCacheMode

Source§

impl BitAnd for SslVerifyMode

Source§

impl BitAnd for X509CheckFlags

Source§

impl BitAnd for X509VerifyFlags

Source§

impl BitAnd for Choice

Source§

impl BitAnd for FontStyle

Source§

impl BitAnd for Ready

Source§

impl BitAnd for B1

And with 1 ( 1 & 1 = 1)

1.0.0 · Source§

impl BitAnd<&bool> for &bool

1.0.0 · Source§

impl BitAnd<&bool> for bool

1.0.0 · Source§

impl BitAnd<&i8> for &i8

1.0.0 · Source§

impl BitAnd<&i8> for i8

1.0.0 · Source§

impl BitAnd<&i16> for &i16

1.0.0 · Source§

impl BitAnd<&i16> for i16

1.0.0 · Source§

impl BitAnd<&i32> for &i32

1.0.0 · Source§

impl BitAnd<&i32> for i32

1.0.0 · Source§

impl BitAnd<&i64> for &i64

1.0.0 · Source§

impl BitAnd<&i64> for i64

1.0.0 · Source§

impl BitAnd<&i128> for &i128

1.0.0 · Source§

impl BitAnd<&i128> for i128

1.0.0 · Source§

impl BitAnd<&isize> for &isize

1.0.0 · Source§

impl BitAnd<&isize> for isize

1.0.0 · Source§

impl BitAnd<&u8> for &u8

1.0.0 · Source§

impl BitAnd<&u8> for u8

1.0.0 · Source§

impl BitAnd<&u16> for &u16

1.0.0 · Source§

impl BitAnd<&u16> for u16

1.0.0 · Source§

impl BitAnd<&u32> for &u32

1.0.0 · Source§

impl BitAnd<&u32> for u32

1.0.0 · Source§

impl BitAnd<&u64> for &u64

1.0.0 · Source§

impl BitAnd<&u64> for u64

1.0.0 · Source§

impl BitAnd<&u128> for &u128

1.0.0 · Source§

impl BitAnd<&u128> for u128

1.0.0 · Source§

impl BitAnd<&usize> for &usize

1.0.0 · Source§

impl BitAnd<&usize> for usize

1.75.0 · Source§

impl BitAnd<&Ipv4Addr> for &Ipv4Addr

1.75.0 · Source§

impl BitAnd<&Ipv4Addr> for Ipv4Addr

1.75.0 · Source§

impl BitAnd<&Ipv6Addr> for &Ipv6Addr

1.75.0 · Source§

impl BitAnd<&Ipv6Addr> for Ipv6Addr

1.74.0 · Source§

impl BitAnd<&Saturating<i8>> for &Saturating<i8>

1.74.0 · Source§

impl BitAnd<&Saturating<i8>> for Saturating<i8>

1.74.0 · Source§

impl BitAnd<&Saturating<i16>> for &Saturating<i16>

1.74.0 · Source§

impl BitAnd<&Saturating<i16>> for Saturating<i16>

1.74.0 · Source§

impl BitAnd<&Saturating<i32>> for &Saturating<i32>

1.74.0 · Source§

impl BitAnd<&Saturating<i32>> for Saturating<i32>

1.74.0 · Source§

impl BitAnd<&Saturating<i64>> for &Saturating<i64>

1.74.0 · Source§

impl BitAnd<&Saturating<i64>> for Saturating<i64>

1.74.0 · Source§

impl BitAnd<&Saturating<i128>> for &Saturating<i128>

1.74.0 · Source§

impl BitAnd<&Saturating<i128>> for Saturating<i128>

1.74.0 · Source§

impl BitAnd<&Saturating<isize>> for &Saturating<isize>

1.74.0 · Source§

impl BitAnd<&Saturating<isize>> for Saturating<isize>

1.74.0 · Source§

impl BitAnd<&Saturating<u8>> for &Saturating<u8>

1.74.0 · Source§

impl BitAnd<&Saturating<u8>> for Saturating<u8>

1.74.0 · Source§

impl BitAnd<&Saturating<u16>> for &Saturating<u16>

1.74.0 · Source§

impl BitAnd<&Saturating<u16>> for Saturating<u16>

1.74.0 · Source§

impl BitAnd<&Saturating<u32>> for &Saturating<u32>

1.74.0 · Source§

impl BitAnd<&Saturating<u32>> for Saturating<u32>

1.74.0 · Source§

impl BitAnd<&Saturating<u64>> for &Saturating<u64>

1.74.0 · Source§

impl BitAnd<&Saturating<u64>> for Saturating<u64>

1.74.0 · Source§

impl BitAnd<&Saturating<u128>> for &Saturating<u128>

1.74.0 · Source§

impl BitAnd<&Saturating<u128>> for Saturating<u128>

1.74.0 · Source§

impl BitAnd<&Saturating<usize>> for &Saturating<usize>

1.74.0 · Source§

impl BitAnd<&Saturating<usize>> for Saturating<usize>

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

1.14.0 · Source§

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

Source§

impl BitAnd<&BigInt> for &num_bigint::bigint::BigInt

Source§

impl BitAnd<&BigInt> for num_bigint::bigint::BigInt

Source§

impl BitAnd<&BigUint> for &num_bigint::biguint::BigUint

Source§

impl BitAnd<&BigUint> for num_bigint::biguint::BigUint

1.75.0 · Source§

impl BitAnd<Ipv4Addr> for &Ipv4Addr

1.75.0 · Source§

impl BitAnd<Ipv6Addr> for &Ipv6Addr

Source§

impl BitAnd<BigInt> for &num_bigint::bigint::BigInt

Source§

impl BitAnd<BigUint> for &num_bigint::biguint::BigUint

Source§

impl BitAnd<B0> for B1

And with 1 ( 1 & 0 = 0)

Source§

impl<'a> BitAnd<&'a BigInt> for num_bigint_dig::bigint::BigInt

Source§

impl<'a> BitAnd<&'a BigUint> for num_bigint_dig::biguint::BigUint

1.0.0 · Source§

impl<'a> BitAnd<bool> for &'a bool

1.0.0 · Source§

impl<'a> BitAnd<i8> for &'a i8

1.0.0 · Source§

impl<'a> BitAnd<i16> for &'a i16

1.0.0 · Source§

impl<'a> BitAnd<i32> for &'a i32

1.0.0 · Source§

impl<'a> BitAnd<i64> for &'a i64

1.0.0 · Source§

impl<'a> BitAnd<i128> for &'a i128

1.0.0 · Source§

impl<'a> BitAnd<isize> for &'a isize

1.0.0 · Source§

impl<'a> BitAnd<u8> for &'a u8

1.0.0 · Source§

impl<'a> BitAnd<u16> for &'a u16

1.0.0 · Source§

impl<'a> BitAnd<u32> for &'a u32

1.0.0 · Source§

impl<'a> BitAnd<u64> for &'a u64

1.0.0 · Source§

impl<'a> BitAnd<u128> for &'a u128

1.0.0 · Source§

impl<'a> BitAnd<usize> for &'a usize

1.74.0 · Source§

impl<'a> BitAnd<Saturating<i8>> for &'a Saturating<i8>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<i16>> for &'a Saturating<i16>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<i32>> for &'a Saturating<i32>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<i64>> for &'a Saturating<i64>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<i128>> for &'a Saturating<i128>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<isize>> for &'a Saturating<isize>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<u8>> for &'a Saturating<u8>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<u16>> for &'a Saturating<u16>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<u32>> for &'a Saturating<u32>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<u64>> for &'a Saturating<u64>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<u128>> for &'a Saturating<u128>

1.74.0 · Source§

impl<'a> BitAnd<Saturating<usize>> for &'a Saturating<usize>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<i8>> for &'a datex_core::without_std::num::Wrapping<i8>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<i16>> for &'a datex_core::without_std::num::Wrapping<i16>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<i32>> for &'a datex_core::without_std::num::Wrapping<i32>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<i64>> for &'a datex_core::without_std::num::Wrapping<i64>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<i128>> for &'a datex_core::without_std::num::Wrapping<i128>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<isize>> for &'a datex_core::without_std::num::Wrapping<isize>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<u8>> for &'a datex_core::without_std::num::Wrapping<u8>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<u16>> for &'a datex_core::without_std::num::Wrapping<u16>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<u32>> for &'a datex_core::without_std::num::Wrapping<u32>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<u64>> for &'a datex_core::without_std::num::Wrapping<u64>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<u128>> for &'a datex_core::without_std::num::Wrapping<u128>

1.14.0 · Source§

impl<'a> BitAnd<Wrapping<usize>> for &'a datex_core::without_std::num::Wrapping<usize>

Source§

impl<'a> BitAnd<BigInt> for &'a num_bigint_dig::bigint::BigInt

Source§

impl<'a> BitAnd<BigUint> for &'a num_bigint_dig::biguint::BigUint

Source§

impl<'a, 'b> BitAnd<&'b BigInt> for &'a num_bigint_dig::bigint::BigInt

Source§

impl<'a, 'b> BitAnd<&'b BigUint> for &'a num_bigint_dig::biguint::BigUint

Source§

impl<'lhs, 'rhs, T, const N: usize> BitAnd<&'rhs Simd<T, N>> for &'lhs Simd<T, N>
where T: SimdElement, Simd<T, N>: BitAnd<Output = Simd<T, N>>, LaneCount<N>: SupportedLaneCount,

Source§

type Output = Simd<T, N>

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<Rhs> BitAnd<Rhs> for B0
where Rhs: Bit,

And with 0 ( 0 & B = 0)

1.0.0 · Source§

impl<T, A> BitAnd<&BTreeSet<T, A>> for &BTreeSet<T, A>
where T: Ord + Clone, A: Allocator + Clone,

Source§

impl<T, S1, S2> BitAnd<&IndexSet<T, S2>> for &IndexSet<T, S1>
where T: Eq + Hash + Clone, S1: BuildHasher + Default, S2: BuildHasher,

Source§

type Output = IndexSet<T, S1>

Source§

impl<T, S1, S2> BitAnd<&RingSet<T, S2>> for &RingSet<T, S1>
where T: Eq + Hash + Clone, S1: BuildHasher + Default, S2: BuildHasher,

Source§

type Output = RingSet<T, S1>

1.0.0 · Source§

impl<T, S> BitAnd<&HashSet<T, S>> for &std::collections::hash::set::HashSet<T, S>
where T: Eq + Hash + Clone, S: BuildHasher + Default,

Source§

type Output = HashSet<T, S>

Source§

impl<T, S, A> BitAnd<&HashSet<T, S, A>> for &hashbrown::set::HashSet<T, S, A>
where T: Eq + Hash + Clone, S: BuildHasher + Default, A: Allocator + Default,

Source§

type Output = HashSet<T, S, A>

Source§

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

Source§

type Output = Mask<T, N>

Source§

impl<T, const N: usize> BitAnd<&Simd<T, N>> for Simd<T, N>
where T: SimdElement, Simd<T, N>: BitAnd<Output = Simd<T, N>>, LaneCount<N>: SupportedLaneCount,

Source§

type Output = Simd<T, N>

Source§

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

Source§

type Output = Mask<T, N>

Source§

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

Source§

type Output = Mask<T, N>

Source§

impl<T, const N: usize> BitAnd<Simd<T, N>> for &Simd<T, N>
where T: SimdElement, Simd<T, N>: BitAnd<Output = Simd<T, N>>, LaneCount<N>: SupportedLaneCount,

Source§

type Output = Simd<T, N>

Source§

impl<Ul, Bl, Ur> BitAnd<Ur> for UInt<Ul, Bl>
where Ul: Unsigned, Bl: Bit, Ur: Unsigned, UInt<Ul, Bl>: PrivateAnd<Ur>, <UInt<Ul, Bl> as PrivateAnd<Ur>>::Output: Trim,

Anding unsigned integers. We use our PrivateAnd operator and then Trim the output.

Source§

type Output = <<UInt<Ul, Bl> as PrivateAnd<Ur>>::Output as Trim>::Output

Source§

impl<Ur> BitAnd<Ur> for UTerm
where Ur: Unsigned,

0 & X = 0

Source§

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

Source§

type Output = Uint<LIMBS>

Source§

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

Source§

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

Source§

type Output = Uint<LIMBS>

Source§

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

Source§

type Output = Uint<LIMBS>

Source§

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

Source§

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

Source§

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

Source§

type Output = Uint<LIMBS>

Source§

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

Source§

impl<const N: usize> BitAnd for Simd<i8, N>

Source§

impl<const N: usize> BitAnd for Simd<i16, N>

Source§

impl<const N: usize> BitAnd for Simd<i32, N>

Source§

impl<const N: usize> BitAnd for Simd<i64, N>

Source§

impl<const N: usize> BitAnd for Simd<isize, N>

Source§

impl<const N: usize> BitAnd for Simd<u8, N>

Source§

impl<const N: usize> BitAnd for Simd<u16, N>

Source§

impl<const N: usize> BitAnd for Simd<u32, N>

Source§

impl<const N: usize> BitAnd for Simd<u64, N>

Source§

impl<const N: usize> BitAnd for Simd<usize, N>