[][src]Struct cranelift_entity::EntitySet

pub struct EntitySet<K> where
    K: EntityRef
{ /* fields omitted */ }

A set of K for densely indexed entity references.

The EntitySet data structure uses the dense index space to implement a set with a bitvector. Like SecondaryMap, an EntitySet is used to associate secondary information with entities.


impl<K> EntitySet<K> where
    K: EntityRef

Shared EntitySet implementation for all value types.

pub fn new() -> Self[src]

Create a new empty set.

pub fn with_capacity(capacity: usize) -> Self[src]

Creates a new empty set with the specified capacity.

pub fn contains(&self, k: K) -> bool[src]

Get the element at k if it exists.

pub fn is_empty(&self) -> bool[src]

Is this set completely empty?

pub fn cardinality(&self) -> usize[src]

Returns the cardinality of the set. More precisely, it returns the number of calls to insert with different key values, that have happened since the the set was most recently cleared or created with new.

pub fn clear(&mut self)[src]

Remove all entries from this set.

Important traits for Keys<K>
pub fn keys(&self) -> Keys<K>[src]

Iterate over all the keys in this set.

pub fn resize(&mut self, n: usize)[src]

Resize the set to have n entries by adding default entries as needed.

pub fn insert(&mut self, k: K) -> bool[src]

Insert the element at k.

pub fn pop(&mut self) -> Option<K>[src]

Removes and returns the entity from the set if it exists.

Trait Implementations

impl<K: Clone> Clone for EntitySet<K> where
    K: EntityRef

impl<K: Debug> Debug for EntitySet<K> where
    K: EntityRef

Auto Trait Implementations

impl<K> Send for EntitySet<K> where
    K: Send

impl<K> Sync for EntitySet<K> where
    K: Sync

impl<K> Unpin for EntitySet<K> where
    K: Unpin

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized

impl<T> Borrow<T> for T where
    T: ?Sized

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 

impl<T> ToOwned for T where
    T: Clone

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.