Struct indexical::impls::bit_set::ChunkedBitSet
pub struct ChunkedBitSet<T> { /* private fields */ }
Expand description
A fixed-size bitset type with a partially dense, partially sparse representation. The bitset is broken into chunks, and chunks that are all zeros or all ones are represented and handled very efficiently.
This type is especially efficient for sets that typically have a large
domain_size
with significant stretches of all zeros or all ones, and also
some stretches with lots of 0s and 1s mixed in a way that causes trouble
for IntervalSet
.
T
is an index type, typically a newtyped usize
wrapper, but it can also
just be usize
.
All operations that involve an element will panic if the element is equal to or greater than the domain size. All operations that involve two bitsets will panic if the bitsets have differing domain sizes.
Auto Trait Implementations§
impl<T> RefUnwindSafe for ChunkedBitSet<T>where
T: RefUnwindSafe,
impl<T> !Send for ChunkedBitSet<T>
impl<T> !Sync for ChunkedBitSet<T>
impl<T> Unpin for ChunkedBitSet<T>where
T: Unpin,
impl<T> UnwindSafe for ChunkedBitSet<T>where
T: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more