Struct SubTrieMut
pub struct SubTrieMut<'a, K: 'a, V: 'a> { /* private fields */ }
Mutable view of a sub-tree of a larger trie.
Implementations
impl<'a, K, V> SubTrieMut<'a, K, V>
where
K: TrieKey,
fn value_mut(&mut self) -> Option<&mut V>Mutable reference to the node's value.
fn get<Q>(&self, key: &Q) -> SubTrieResult<&V> where K: Borrow<Q>, Q: TrieKey + ?Sized,Look up the value for the given key, which should be an extension of this subtrie's key.
The key may be any borrowed form of the trie's key type, but TrieKey on the borrowed form must match those for the key type
fn insert(&mut self, key: K, value: V) -> SubTrieResult<V>Insert a value in this subtrie. The key should be an extension of this subtrie's key.
fn remove<Q>(&mut self, key: &Q) -> SubTrieResult<V> where K: Borrow<Q>, Q: TrieKey + ?Sized,Remove a value from this subtrie. The key should be an extension of this subtrie's key.
The key may be any borrowed form of the trie's key type, but TrieKey on the borrowed form must match those for the key type
Trait Implementations
impl<'a, K, V: 'a> TrieCommon<'a, K, V> for SubTrieMut<'a, K, V>
where
K: TrieKey + 'a,
fn len(self) -> usizeComputes from scratch.
fn children(self) -> Children<'a, K, V>
impl<'a, K: Debug + 'a, V: Debug + 'a> Debug for SubTrieMut<'a, K, V>
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Auto Trait Implementations
impl<'a, K, V> !UnwindSafe for SubTrieMut<'a, K, V>
impl<'a, K, V> Freeze for SubTrieMut<'a, K, V>
where
&'a mut TrieNode<K, V>: Freeze,
impl<'a, K, V> RefUnwindSafe for SubTrieMut<'a, K, V>
where
&'a mut TrieNode<K, V>: RefUnwindSafe,
impl<'a, K, V> Send for SubTrieMut<'a, K, V>
where
&'a mut TrieNode<K, V>: Send,
impl<'a, K, V> Sync for SubTrieMut<'a, K, V>
where
&'a mut TrieNode<K, V>: Sync,
impl<'a, K, V> Unpin for SubTrieMut<'a, K, V>
where
&'a mut TrieNode<K, V>: Unpin,
impl<'a, K, V> UnsafeUnpin for SubTrieMut<'a, K, V>
where
&'a mut TrieNode<K, V>: UnsafeUnpin,
Blanket Implementations
impl<T> Any for SubTrieMut<'a, K, V>
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for SubTrieMut<'a, K, V>
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for SubTrieMut<'a, K, V>
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> From<T> for SubTrieMut<'a, K, V>
fn from(t: T) -> TReturns the argument unchanged.
impl<T, U> Into<U> for SubTrieMut<'a, K, V>
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for SubTrieMut<'a, K, V>
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for SubTrieMut<'a, K, V>
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>