Struct VacantEntry
pub struct VacantEntry<'a, K, V, A: Allocator + Clone = Global> { pub(in ::collections::btree::map) key: K, pub(in ::collections::btree::map) handle: Option<Handle<NodeRef<Mut<'a>, K, V, Leaf>, Edge>>, pub(in ::collections::btree::map) dormant_map: DormantMutRef<'a, BTreeMap<K, V, A>>, pub(in ::collections::btree::map) alloc: A, pub(in ::collections::btree::map) _marker: PhantomData<&'a mut (K, V)> }
A view into a vacant entry in a BTreeMap.
It is part of the Entry enum.
Fields
key: Khandle: Option<Handle<NodeRef<Mut<'a>, K, V, Leaf>, Edge>>Nonefor a (empty) map without rootdormant_map: DormantMutRef<'a, BTreeMap<K, V, A>>alloc: AThe BTreeMap will outlive this IntoIter so we don't care about drop order for
alloc._marker: PhantomData<&'a mut (K, V)>
Implementations
impl<'a, K: Ord, V, A: Allocator + Clone> VacantEntry<'a, K, V, A>
fn key(&self) -> &KGets a reference to the key that would be used when inserting a value through the VacantEntry.
Examples
use BTreeMap; let mut map: = new; assert_eq!;fn into_key(self) -> KTake ownership of the key.
Examples
use BTreeMap; use Entry; let mut map: = new; if let Vacant = map.entryfn insert(self, value: V) -> &'a mut VSets the value of the entry with the
VacantEntry's key, and returns a mutable reference to it.Examples
use BTreeMap; use Entry; let mut map: = new; if let Vacant = map.entry assert_eq!;fn insert_entry(self, value: V) -> OccupiedEntry<'a, K, V, A>Sets the value of the entry with the
VacantEntry's key, and returns anOccupiedEntry.Examples
use BTreeMap; use Entry; let mut map: = new; if let Vacant = map.entry assert_eq!;
Trait Implementations
impl<K: Debug + Ord, V, A: Allocator + Clone> Debug for VacantEntry<'_, K, V, A>
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Auto Trait Implementations
impl<'a, K, V, A = Global> !UnwindSafe for VacantEntry<'a, K, V, A>
impl<'a, K, V, A> Freeze for VacantEntry<'a, K, V, A>
where
K: Freeze,
Option<Handle<NodeRef<Mut<'a>, K, V, Leaf>, Edge>>: Freeze,
DormantMutRef<'a, BTreeMap<K, V, A>>: Freeze,
A: Freeze,
PhantomData<&'a mut (K, V)>: Freeze,
impl<'a, K, V, A> RefUnwindSafe for VacantEntry<'a, K, V, A>
where
K: RefUnwindSafe,
Option<Handle<NodeRef<Mut<'a>, K, V, Leaf>, Edge>>: RefUnwindSafe,
DormantMutRef<'a, BTreeMap<K, V, A>>: RefUnwindSafe,
A: RefUnwindSafe,
PhantomData<&'a mut (K, V)>: RefUnwindSafe,
impl<'a, K, V, A> Send for VacantEntry<'a, K, V, A>
where
K: Send,
Option<Handle<NodeRef<Mut<'a>, K, V, Leaf>, Edge>>: Send,
DormantMutRef<'a, BTreeMap<K, V, A>>: Send,
A: Send,
PhantomData<&'a mut (K, V)>: Send,
impl<'a, K, V, A> Sync for VacantEntry<'a, K, V, A>
where
K: Sync,
Option<Handle<NodeRef<Mut<'a>, K, V, Leaf>, Edge>>: Sync,
DormantMutRef<'a, BTreeMap<K, V, A>>: Sync,
A: Sync,
PhantomData<&'a mut (K, V)>: Sync,
impl<'a, K, V, A> Unpin for VacantEntry<'a, K, V, A>
where
K: Unpin,
Option<Handle<NodeRef<Mut<'a>, K, V, Leaf>, Edge>>: Unpin,
DormantMutRef<'a, BTreeMap<K, V, A>>: Unpin,
A: Unpin,
PhantomData<&'a mut (K, V)>: Unpin,
impl<'a, K, V, A> UnsafeUnpin for VacantEntry<'a, K, V, A>
where
K: UnsafeUnpin,
Option<Handle<NodeRef<Mut<'a>, K, V, Leaf>, Edge>>: UnsafeUnpin,
DormantMutRef<'a, BTreeMap<K, V, A>>: UnsafeUnpin,
A: UnsafeUnpin,
PhantomData<&'a mut (K, V)>: UnsafeUnpin,
Blanket Implementations
impl<T> Any for VacantEntry<'a, K, V, A>
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for VacantEntry<'a, K, V, A>
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for VacantEntry<'a, K, V, A>
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> From<T> for VacantEntry<'a, K, V, A>
fn from(t: T) -> TReturns the argument unchanged.
impl<T> SizeHint for VacantEntry<'a, K, V, A>
where
T: ?Sized,
fn lower_bound(&self) -> usizefn upper_bound(&self) -> Option<usize>
impl<T> SizedTypeProperties for VacantEntry<'a, K, V, A>
impl<T, U> Into<U> for VacantEntry<'a, K, V, A>
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 VacantEntry<'a, K, V, A>
where
U: Into<T>,
type Error = Infallible;fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T, U> TryInto<U> for VacantEntry<'a, K, V, A>
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>