pub trait GetEntryFromKey<K, V> {
type Occupied<'c>: KeyedOccupiedEntry<'c, Key = K, Value = V>
where
Self: 'c;
type Vacant<'c>: KeyedVacantEntry<'c, Key = K, Value = V, Occupied = Self::Occupied<'c>>
where
Self: 'c;
fn get_entry_with_key<'c>(
&'c mut self,
key: K
) -> EntryWithSearchKey<Self::Occupied<'c>, Self::Vacant<'c>, K>;
fn get_entry_from_key<'c>(
&'c mut self,
key: K
) -> Entry<Self::Occupied<'c>, Self::Vacant<'c>> { ... }
fn insert_into_entry<'c>(
&'c mut self,
key: K,
value: V
) -> (Entry<Self::Occupied<'c>, Self::Vacant<'c>>, Option<V>) { ... }
fn occupy<'c>(
&'c mut self,
key: K,
value: V
) -> (Self::Occupied<'c>, Option<V>) { ... }
}