Struct cranelift_entity::PrimaryMap[][src]

pub struct PrimaryMap<K, V> where
    K: EntityRef
{ /* fields omitted */ }

A primary mapping K -> V allocating dense entity references.

The PrimaryMap data structure uses the dense index space to implement a map with a vector.

A primary map contains the main definition of an entity, and it can be used to allocate new entity references with the push method.

There should only be a single PrimaryMap instance for a given EntityRef type, otherwise conflicting references will be created. Using unknown keys for indexing will cause a panic.

Methods

impl<K, V> PrimaryMap<K, V> where
    K: EntityRef
[src]

Create a new empty map.

Check if k is a valid key in the map.

Get the element at k if it exists.

Is this map completely empty?

Get the total number of entity references created.

Important traits for Keys<K>

Iterate over all the keys in this map.

Iterate over all the values in this map.

Iterate over all the values in this map, mutable edition.

Important traits for Iter<'a, K, V>

Iterate over all the keys and values in this map.

Important traits for IterMut<'a, K, V>

Iterate over all the keys and values in this map, mutable edition.

Remove all entries from this map.

Get the key that will be assigned to the next pushed value.

Append v to the mapping, assigning a new key which is returned.

Trait Implementations

impl<K: Debug, V: Debug> Debug for PrimaryMap<K, V> where
    K: EntityRef
[src]

Formats the value using the given formatter. Read more

impl<K: Clone, V: Clone> Clone for PrimaryMap<K, V> where
    K: EntityRef
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<K, V> Index<K> for PrimaryMap<K, V> where
    K: EntityRef
[src]

Immutable indexing into an PrimaryMap. The indexed value must be in the map.

The returned type after indexing.

Performs the indexing (container[index]) operation.

impl<K, V> IndexMut<K> for PrimaryMap<K, V> where
    K: EntityRef
[src]

Mutable indexing into an PrimaryMap.

Performs the mutable indexing (container[index]) operation.

impl<'a, K, V> IntoIterator for &'a PrimaryMap<K, V> where
    K: EntityRef
[src]

The type of the elements being iterated over.

Which kind of iterator are we turning this into?

Creates an iterator from a value. Read more

impl<'a, K, V> IntoIterator for &'a mut PrimaryMap<K, V> where
    K: EntityRef
[src]

The type of the elements being iterated over.

Which kind of iterator are we turning this into?

Creates an iterator from a value. Read more

Auto Trait Implementations

impl<K, V> Send for PrimaryMap<K, V> where
    K: Send,
    V: Send

impl<K, V> Sync for PrimaryMap<K, V> where
    K: Sync,
    V: Sync