pub struct BitSetAnd<A: BitSetLike, B: BitSetLike>(pub A, pub B);
Expand description
BitSetAnd
takes two BitSetLike
items, and merges the masks
returning a new virtual set, which represents an intersection of the
two original sets.
Tuple Fields
0: A
1: B
Trait Implementations
sourceimpl<'a, A, B, T> BitAnd<T> for &'a BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
impl<'a, A, B, T> BitAnd<T> for &'a BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
sourceimpl<A, B, T> BitAnd<T> for BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
impl<A, B, T> BitAnd<T> for BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
sourceimpl<'a, A, B, T> BitOr<T> for &'a BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
impl<'a, A, B, T> BitOr<T> for &'a BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
sourceimpl<A, B, T> BitOr<T> for BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
impl<A, B, T> BitOr<T> for BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
sourceimpl<A: BitSetLike, B: BitSetLike> BitSetLike for BitSetAnd<A, B>
impl<A: BitSetLike, B: BitSetLike> BitSetLike for BitSetAnd<A, B>
sourcefn layer3(&self) -> usize
fn layer3(&self) -> usize
Return a usize
where each bit represents if any word in layer2
has been set. Read more
sourcefn layer2(&self, i: usize) -> usize
fn layer2(&self, i: usize) -> usize
Return the usize
from the array of usizes that indicates if any
bit has been set in layer1 Read more
sourcefn layer1(&self, i: usize) -> usize
fn layer1(&self, i: usize) -> usize
Return the usize
from the array of usizes that indicates if any
bit has been set in layer0 Read more
sourcefn layer0(&self, i: usize) -> usize
fn layer0(&self, i: usize) -> usize
Return a usize
that maps to the direct 1:1 association with
each index of the set Read more
sourcefn get_from_layer(&self, layer: usize, idx: usize) -> usize
fn get_from_layer(&self, layer: usize, idx: usize) -> usize
Gets the usize
corresponding to layer and index. Read more
sourcefn is_empty(&self) -> bool
fn is_empty(&self) -> bool
Returns true if this BitSetLike
contains nothing, and false otherwise.
sourcefn iter(self) -> BitIter<Self>ⓘNotable traits for BitIter<T>impl<T> Iterator for BitIter<T> where
T: BitSetLike, type Item = u32;
where
Self: Sized,
fn iter(self) -> BitIter<Self>ⓘNotable traits for BitIter<T>impl<T> Iterator for BitIter<T> where
T: BitSetLike, type Item = u32;
where
Self: Sized,
T: BitSetLike, type Item = u32;
Create an iterator that will scan over the keyspace
sourcefn par_iter(self) -> BitParIter<Self> where
Self: Sized,
fn par_iter(self) -> BitParIter<Self> where
Self: Sized,
Create a parallel iterator that will scan over the keyspace
sourceimpl<'a, A, B, T> BitXor<T> for &'a BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
impl<'a, A, B, T> BitXor<T> for &'a BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
sourceimpl<A, B, T> BitXor<T> for BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
impl<A, B, T> BitXor<T> for BitSetAnd<A, B> where
T: BitSetLike,
A: BitSetLike,
B: BitSetLike,
sourceimpl<A: Clone + BitSetLike, B: Clone + BitSetLike> Clone for BitSetAnd<A, B>
impl<A: Clone + BitSetLike, B: Clone + BitSetLike> Clone for BitSetAnd<A, B>
sourceimpl<A: Debug + BitSetLike, B: Debug + BitSetLike> Debug for BitSetAnd<A, B>
impl<A: Debug + BitSetLike, B: Debug + BitSetLike> Debug for BitSetAnd<A, B>
sourceimpl<A: DrainableBitSet, B: DrainableBitSet> DrainableBitSet for BitSetAnd<A, B>
impl<A: DrainableBitSet, B: DrainableBitSet> DrainableBitSet for BitSetAnd<A, B>
sourcefn drain<'a>(&'a mut self) -> DrainBitIter<'a, Self>ⓘNotable traits for DrainBitIter<'a, T>impl<'a, T> Iterator for DrainBitIter<'a, T> where
T: DrainableBitSet, type Item = u32;
where
Self: Sized,
fn drain<'a>(&'a mut self) -> DrainBitIter<'a, Self>ⓘNotable traits for DrainBitIter<'a, T>impl<'a, T> Iterator for DrainBitIter<'a, T> where
T: DrainableBitSet, type Item = u32;
where
Self: Sized,
T: DrainableBitSet, type Item = u32;
Create a draining iterator that will scan over the keyspace and clears it while doing so.
sourceimpl<'a, A, B> IntoIterator for &'a BitSetAnd<A, B> where
A: BitSetLike,
B: BitSetLike,
impl<'a, A, B> IntoIterator for &'a BitSetAnd<A, B> where
A: BitSetLike,
B: BitSetLike,
sourceimpl<A, B> IntoIterator for BitSetAnd<A, B> where
A: BitSetLike,
B: BitSetLike,
impl<A, B> IntoIterator for BitSetAnd<A, B> where
A: BitSetLike,
B: BitSetLike,
sourceimpl<'a, A, B> Not for &'a BitSetAnd<A, B> where
A: BitSetLike,
B: BitSetLike,
impl<'a, A, B> Not for &'a BitSetAnd<A, B> where
A: BitSetLike,
B: BitSetLike,
Auto Trait Implementations
impl<A, B> RefUnwindSafe for BitSetAnd<A, B> where
A: RefUnwindSafe,
B: RefUnwindSafe,
impl<A, B> Send for BitSetAnd<A, B> where
A: Send,
B: Send,
impl<A, B> Sync for BitSetAnd<A, B> where
A: Sync,
B: Sync,
impl<A, B> Unpin for BitSetAnd<A, B> where
A: Unpin,
B: Unpin,
impl<A, B> UnwindSafe for BitSetAnd<A, B> where
A: UnwindSafe,
B: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more