Enum im_rc::hashmap::Entry [−][src]
A handle for a key and its associated value.
Performance Note
When using an Entry, the key is only ever hashed once, when you
create the Entry. Operations on an Entry will never trigger a
rehash, where eg. a contains_key(key) followed by an
insert(key, default_value) (the equivalent of
Entry::or_insert()) would need to hash the key once for the
contains_key and again for the insert. The operations
generally perform similarly otherwise.
Variants
Occupied(OccupiedEntry<'a, K, V, S>)An entry which exists in the map.
Vacant(VacantEntry<'a, K, V, S>)An entry which doesn’t exist in the map.
Implementations
impl<'a, K, V, S> Entry<'a, K, V, S> where
K: 'a + Hash + Eq + Clone,
V: 'a + Clone,
S: 'a + BuildHasher, [src]
K: 'a + Hash + Eq + Clone,
V: 'a + Clone,
S: 'a + BuildHasher,
pub fn or_insert(self, default: V) -> &'a mut V[src]
Insert the default value provided if there was no value already, and return a mutable reference to the value.
pub fn or_insert_with<F>(self, default: F) -> &'a mut V where
F: FnOnce() -> V, [src]
F: FnOnce() -> V,
Insert the default value from the provided function if there was no value already, and return a mutable reference to the value.
pub fn or_default(self) -> &'a mut V where
V: Default, [src]
V: Default,
Insert a default value if there was no value already, and return a mutable reference to the value.
#[must_use]pub fn key(&self) -> &K[src]
Get the key for this entry.
pub fn and_modify<F>(self, f: F) -> Self where
F: FnOnce(&mut V), [src]
F: FnOnce(&mut V),
Call the provided function to modify the value if the value exists.
Auto Trait Implementations
impl<'a, K, V, S> !RefUnwindSafe for Entry<'a, K, V, S>
impl<'a, K, V, S> !Send for Entry<'a, K, V, S>
impl<'a, K, V, S> !Sync for Entry<'a, K, V, S>
impl<'a, K, V, S> Unpin for Entry<'a, K, V, S> where
K: Unpin,
K: Unpin,
impl<'a, K, V, S> !UnwindSafe for Entry<'a, K, V, S>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> Same<T> for T[src]
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,