Struct rustc_data_structures::indexed_set::IdxSetBuf
[−]
[src]
pub struct IdxSetBuf<T: Idx> { /* fields omitted */ }
Represents a set (or packed family of sets), of some element type
E, where each E is identified by some unique index type T
.
In other words, T
is the type used to index into the bitvector
this type uses to represent the set of object it holds.
Methods
impl<T: Idx> IdxSetBuf<T>
[src]
pub fn new_filled(universe_size: usize) -> Self
[src]
Creates set holding every element whose index falls in range 0..universe_size.
pub fn new_empty(universe_size: usize) -> Self
[src]
Creates set holding no elements.
Methods from Deref<Target = IdxSet<T>>
pub fn to_owned(&self) -> IdxSetBuf<T>
[src]
pub fn clear(&mut self)
[src]
Removes all elements
pub fn remove(&mut self, elem: &T) -> bool
[src]
Removes elem
from the set self
; returns true iff this changed self
.
pub fn add(&mut self, elem: &T) -> bool
[src]
Adds elem
to the set self
; returns true iff this changed self
.
ⓘImportant traits for &'a mut Wpub fn range(&self, elems: &Range<T>) -> &Self
[src]
ⓘImportant traits for &'a mut Wpub fn range_mut(&mut self, elems: &Range<T>) -> &mut Self
[src]
pub fn contains(&self, elem: &T) -> bool
[src]
Returns true iff set self
contains elem
.
pub fn words(&self) -> &[Word]
[src]
pub fn words_mut(&mut self) -> &mut [Word]
[src]
pub fn clone_from(&mut self, other: &IdxSet<T>)
[src]
pub fn union(&mut self, other: &IdxSet<T>) -> bool
[src]
pub fn subtract(&mut self, other: &IdxSet<T>) -> bool
[src]
pub fn intersect(&mut self, other: &IdxSet<T>) -> bool
[src]
ⓘImportant traits for Iter<'a, T>pub fn iter(&self) -> Iter<T>
[src]
pub fn each_bit<F>(&self, max_bits: usize, f: F) where
F: FnMut(T),
[src]
F: FnMut(T),
Calls f
on each index value held in this set, up to the
bound max_bits
on the size of universe of indexes.
pub fn reset_to_empty(&mut self)
[src]
Removes all elements from this set.
ⓘImportant traits for Elems<'a, T>pub fn elems(&self, universe_size: usize) -> Elems<T>
[src]
Trait Implementations
impl<T: Eq + Idx> Eq for IdxSetBuf<T>
[src]
impl<T: PartialEq + Idx> PartialEq for IdxSetBuf<T>
[src]
fn eq(&self, __arg_0: &IdxSetBuf<T>) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &IdxSetBuf<T>) -> bool
[src]
This method tests for !=
.
impl<T: Idx> Clone for IdxSetBuf<T>
[src]
fn clone(&self) -> Self
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<T: Idx> Encodable for IdxSetBuf<T>
[src]
impl<T: Idx> Decodable for IdxSetBuf<T>
[src]
impl<T: Idx> Borrow<IdxSet<T>> for IdxSetBuf<T>
[src]
impl<T: Idx> BorrowMut<IdxSet<T>> for IdxSetBuf<T>
[src]
fn borrow_mut(&mut self) -> &mut IdxSet<T>
[src]
Mutably borrows from an owned value. Read more
impl<T: Idx> Debug for IdxSetBuf<T>
[src]
fn fmt(&self, w: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl<T: Idx> Deref for IdxSetBuf<T>
[src]
type Target = IdxSet<T>
The resulting type after dereferencing.
fn deref(&self) -> &IdxSet<T>
[src]
Dereferences the value.
impl<T: Idx> DerefMut for IdxSetBuf<T>
[src]
impl<I: Idx, CTX> HashStable<CTX> for IdxSetBuf<I>
[src]
fn hash_stable<W: StableHasherResult>(
&self,
ctx: &mut CTX,
hasher: &mut StableHasher<W>
)
[src]
&self,
ctx: &mut CTX,
hasher: &mut StableHasher<W>
)