Struct indexmap::map::VacantEntry
source · pub struct VacantEntry<'a, K, V> {
map: RefMut<'a, K, V>,
hash: HashValue,
key: K,
}
Fields§
§map: RefMut<'a, K, V>
§hash: HashValue
§key: K
Implementations§
source§impl<'a, K, V> VacantEntry<'a, K, V>
impl<'a, K, V> VacantEntry<'a, K, V>
pub(crate) fn key_mut(&mut self) -> &mut K
sourcepub fn insert(self, value: V) -> &'a mut V
pub fn insert(self, value: V) -> &'a mut V
Inserts the entry’s key and the given value into the map, and returns a mutable reference to the value.
Computes in O(1) time (amortized average).
sourcepub fn insert_entry(self, value: V) -> OccupiedEntry<'a, K, V>
pub fn insert_entry(self, value: V) -> OccupiedEntry<'a, K, V>
Inserts the entry’s key and the given value into the map, and returns an OccupiedEntry
.
Computes in O(1) time (amortized average).
sourcepub fn insert_sorted(self, value: V) -> (usize, &'a mut V)where
K: Ord,
pub fn insert_sorted(self, value: V) -> (usize, &'a mut V)where
K: Ord,
Inserts the entry’s key and the given value into the map at its ordered position among sorted keys, and returns the new index and a mutable reference to the value.
If the existing keys are not already sorted, then the insertion
index is unspecified (like slice::binary_search
), but the key-value
pair is inserted at that position regardless.
Computes in O(n) time (average).
sourcepub fn shift_insert(self, index: usize, value: V) -> &'a mut V
pub fn shift_insert(self, index: usize, value: V) -> &'a mut V
Inserts the entry’s key and the given value into the map at the given index, shifting others to the right, and returns a mutable reference to the value.
Panics if index
is out of bounds.
Computes in O(n) time (average).
Trait Implementations§
source§impl<K: Debug, V> Debug for VacantEntry<'_, K, V>
impl<K: Debug, V> Debug for VacantEntry<'_, K, V>
source§impl<K, V> MutableEntryKey for VacantEntry<'_, K, V>
impl<K, V> MutableEntryKey for VacantEntry<'_, K, V>
Opt-in mutable access to VacantEntry
keys.
See MutableEntryKey
for more information.