Struct rustc_data_structures::indexed_set::IdxSetBuf [−][src]
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
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.
Fields
_pd: PhantomData<fn(_: &T)>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
bits: Vec<Word>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Methods
impl<T: Idx> IdxSetBuf<T>[src]
impl<T: Idx> IdxSetBuf<T>fn new(init: Word, universe_size: usize) -> Self[src]
fn new(init: Word, universe_size: usize) -> Self🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
pub fn new_filled(universe_size: usize) -> Self[src]
pub fn new_filled(universe_size: usize) -> Self🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Creates set holding every element whose index falls in range 0..universe_size.
pub fn new_empty(universe_size: usize) -> Self[src]
pub fn new_empty(universe_size: usize) -> Self🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Creates set holding no elements.
Methods from Deref<Target = IdxSet<T>>
pub fn to_owned(&self) -> IdxSetBuf<T>[src]
pub fn to_owned(&self) -> IdxSetBuf<T>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
pub fn clear(&mut self)[src]
pub fn clear(&mut self)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Removes all elements
pub fn set_up_to(&mut self, universe_size: usize)[src]
pub fn set_up_to(&mut self, universe_size: usize)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Sets all elements up to universe_size
fn trim_to(&mut self, universe_size: usize)[src]
fn trim_to(&mut self, universe_size: usize)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Clear all elements above universe_size.
pub fn remove(&mut self, elem: &T) -> bool[src]
pub fn remove(&mut self, elem: &T) -> bool🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Removes elem from the set self; returns true iff this changed self.
pub fn add(&mut self, elem: &T) -> bool[src]
pub fn add(&mut self, elem: &T) -> bool🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
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]
pub fn range(&self, elems: &Range<T>) -> &Self🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
ⓘImportant traits for &'a mut Wpub fn range_mut(&mut self, elems: &Range<T>) -> &mut Self[src]
pub fn range_mut(&mut self, elems: &Range<T>) -> &mut Self🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
pub fn contains(&self, elem: &T) -> bool[src]
pub fn contains(&self, elem: &T) -> bool🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Returns true iff set self contains elem.
pub fn words(&self) -> &[Word][src]
pub fn words(&self) -> &[Word]🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
pub fn words_mut(&mut self) -> &mut [Word][src]
pub fn words_mut(&mut self) -> &mut [Word]🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
pub fn overwrite(&mut self, other: &IdxSet<T>)[src]
pub fn overwrite(&mut self, other: &IdxSet<T>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Efficiently overwrite self with other. Panics if self and other
don't have the same length.
pub fn union(&mut self, other: &IdxSet<T>) -> bool[src]
pub fn union(&mut self, other: &IdxSet<T>) -> bool🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Set self = self | other and return true if self changed
(i.e., if new bits were added).
pub fn subtract(&mut self, other: &IdxSet<T>) -> bool[src]
pub fn subtract(&mut self, other: &IdxSet<T>) -> bool🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Set self = self - other and return true if self changed.
(i.e., if any bits were removed).
pub fn intersect(&mut self, other: &IdxSet<T>) -> bool[src]
pub fn intersect(&mut self, other: &IdxSet<T>) -> bool🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Set self = self & other and return true if self changed.
(i.e., if any bits were removed).
ⓘImportant traits for Iter<'a, T>pub fn iter(&self) -> Iter<T>[src]
pub fn iter(&self) -> Iter<T>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Trait Implementations
impl<T: Eq + Idx> Eq for IdxSetBuf<T>[src]
impl<T: Eq + Idx> Eq for IdxSetBuf<T>fn assert_receiver_is_total_eq(&self)[src]
fn assert_receiver_is_total_eq(&self)impl<T: PartialEq + Idx> PartialEq for IdxSetBuf<T>[src]
impl<T: PartialEq + Idx> PartialEq for IdxSetBuf<T>fn eq(&self, other: &IdxSetBuf<T>) -> bool[src]
fn eq(&self, other: &IdxSetBuf<T>) -> boolThis method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, other: &IdxSetBuf<T>) -> bool[src]
fn ne(&self, other: &IdxSetBuf<T>) -> boolThis method tests for !=.
impl<T: Idx> Clone for IdxSetBuf<T>[src]
impl<T: Idx> Clone for IdxSetBuf<T>fn clone(&self) -> Self[src]
fn clone(&self) -> SelfReturns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
fn clone_from(&mut self, source: &Self)Performs copy-assignment from source. Read more
impl<T: Idx> Encodable for IdxSetBuf<T>[src]
impl<T: Idx> Encodable for IdxSetBuf<T>fn encode<E: Encoder>(&self, encoder: &mut E) -> Result<(), E::Error>[src]
fn encode<E: Encoder>(&self, encoder: &mut E) -> Result<(), E::Error>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
impl<T: Idx> Decodable for IdxSetBuf<T>[src]
impl<T: Idx> Decodable for IdxSetBuf<T>fn decode<D: Decoder>(d: &mut D) -> Result<IdxSetBuf<T>, D::Error>[src]
fn decode<D: Decoder>(d: &mut D) -> Result<IdxSetBuf<T>, D::Error>🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
impl<T: Idx> Borrow<IdxSet<T>> for IdxSetBuf<T>[src]
impl<T: Idx> Borrow<IdxSet<T>> for IdxSetBuf<T>impl<T: Idx> BorrowMut<IdxSet<T>> for IdxSetBuf<T>[src]
impl<T: Idx> BorrowMut<IdxSet<T>> for IdxSetBuf<T>fn borrow_mut(&mut self) -> &mut IdxSet<T>[src]
fn borrow_mut(&mut self) -> &mut IdxSet<T>Mutably borrows from an owned value. Read more
impl<T: Idx> Debug for IdxSetBuf<T>[src]
impl<T: Idx> Debug for IdxSetBuf<T>fn fmt(&self, w: &mut Formatter) -> Result[src]
fn fmt(&self, w: &mut Formatter) -> ResultFormats the value using the given formatter. Read more
impl<T: Idx> Deref for IdxSetBuf<T>[src]
impl<T: Idx> Deref for IdxSetBuf<T>type Target = IdxSet<T>
The resulting type after dereferencing.
fn deref(&self) -> &IdxSet<T>[src]
fn deref(&self) -> &IdxSet<T>Dereferences the value.
impl<T: Idx> DerefMut for IdxSetBuf<T>[src]
impl<T: Idx> DerefMut for IdxSetBuf<T>impl<I: Idx, CTX> HashStable<CTX> for IdxSetBuf<I>[src]
impl<I: Idx, CTX> HashStable<CTX> for IdxSetBuf<I>fn hash_stable<W: StableHasherResult>(
&self,
ctx: &mut CTX,
hasher: &mut StableHasher<W>
)[src]
fn hash_stable<W: StableHasherResult>(
&self,
ctx: &mut CTX,
hasher: &mut StableHasher<W>
)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?