Struct rustc_pattern_analysis::index::IdxSet
source · pub struct IdxSet<T> {
domain_size: usize,
words: SmallVec<[u64; 2]>,
marker: PhantomData<T>,
}Expand description
A fixed-size bitset type with a dense representation.
NOTE: Use GrowableBitSet if you need support for resizing after creation.
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.
Fields§
§domain_size: usize§words: SmallVec<[u64; 2]>§marker: PhantomData<T>Auto Trait Implementations§
impl<T> RefUnwindSafe for BitSet<T>where
T: RefUnwindSafe,
impl<T> Send for BitSet<T>where
T: Send,
impl<T> Sync for BitSet<T>where
T: Sync,
impl<T> Unpin for BitSet<T>where
T: Unpin,
impl<T> UnwindSafe for BitSet<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
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 32 bytes