Struct wasmtime_environ::SecondaryMap [−][src]
Expand description
A mapping K -> V
for densely indexed entity references.
The SecondaryMap
data structure uses the dense index space to implement a map with a vector.
Unlike PrimaryMap
, an SecondaryMap
can’t be used to allocate entity references. It is used
to associate secondary information with entities.
The map does not track if an entry for a key has been inserted or not. Instead it behaves as if all keys have a default entry from the beginning.
Implementations
Shared SecondaryMap
implementation for all value types.
Create a new empty map.
Create a new, empty map with the specified capacity.
The map will be able to hold exactly capacity
elements without reallocating.
Create a new empty map with a specified default value.
This constructor does not require V to implement Default.
Returns the number of elements the map can hold without reallocating.
Iterate over all the keys and values in this map.
Iterate over all the keys and values in this map, mutable edition.
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.
Trait Implementations
Returns the “default value” for a type. Read more
impl<'de, K, V> Deserialize<'de> for SecondaryMap<K, V> where
K: EntityRef,
V: Clone + Deserialize<'de>,
impl<'de, K, V> Deserialize<'de> for SecondaryMap<K, V> where
K: EntityRef,
V: Clone + Deserialize<'de>,
pub fn deserialize<D>(
deserializer: D
) -> Result<SecondaryMap<K, V>, <D as Deserializer<'de>>::Error> where
D: Deserializer<'de>,
pub fn deserialize<D>(
deserializer: D
) -> Result<SecondaryMap<K, V>, <D as Deserializer<'de>>::Error> where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Immutable indexing into an SecondaryMap
.
All keys are permitted. Untouched entries have the default value.
Mutable indexing into an SecondaryMap
.
The map grows as needed to accommodate new keys.
impl<K, V> PartialEq<SecondaryMap<K, V>> for SecondaryMap<K, V> where
K: EntityRef,
V: Clone + PartialEq<V>,
impl<K, V> PartialEq<SecondaryMap<K, V>> for SecondaryMap<K, V> where
K: EntityRef,
V: Clone + PartialEq<V>,
pub fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error> where
S: Serializer,
pub fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error> where
S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations
impl<K, V> RefUnwindSafe for SecondaryMap<K, V> where
K: RefUnwindSafe,
V: RefUnwindSafe,
impl<K, V> Send for SecondaryMap<K, V> where
K: Send,
V: Send,
impl<K, V> Sync for SecondaryMap<K, V> where
K: Sync,
V: Sync,
impl<K, V> Unpin for SecondaryMap<K, V> where
K: Unpin,
V: Unpin,
impl<K, V> UnwindSafe for SecondaryMap<K, V> where
K: UnwindSafe,
V: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
Compare self to key
and return true
if they are equal.