Struct vector_config::indexmap::map::raw_entry_v1::RawOccupiedEntryMut
pub struct RawOccupiedEntryMut<'a, K, V, S> { /* private fields */ }
Expand description
A raw view into an occupied entry in an IndexMap
.
It is part of the RawEntryMut
enum.
Implementations§
§impl<'a, K, V, S> RawOccupiedEntryMut<'a, K, V, S>
impl<'a, K, V, S> RawOccupiedEntryMut<'a, K, V, S>
pub fn key(&self) -> &K
pub fn key(&self) -> &K
Gets a reference to the entry’s key in the map.
Note that this is not the key that was used to find the entry. There may be an observable
difference if the key type has any distinguishing features outside of Hash
and Eq
, like
extra fields or the memory address of an allocation.
pub fn key_mut(&mut self) -> &mut K
pub fn key_mut(&mut self) -> &mut K
Gets a mutable reference to the entry’s key in the map.
Note that this is not the key that was used to find the entry. There may be an observable
difference if the key type has any distinguishing features outside of Hash
and Eq
, like
extra fields or the memory address of an allocation.
pub fn into_key(self) -> &'a mut K
pub fn into_key(self) -> &'a mut K
Converts into a mutable reference to the entry’s key in the map, with a lifetime bound to the map itself.
Note that this is not the key that was used to find the entry. There may be an observable
difference if the key type has any distinguishing features outside of Hash
and Eq
, like
extra fields or the memory address of an allocation.
pub fn get_mut(&mut self) -> &mut V
pub fn get_mut(&mut self) -> &mut V
Gets a mutable reference to the entry’s value in the map.
If you need a reference which may outlive the destruction of the
RawEntryMut
value, see into_mut
.
pub fn into_mut(self) -> &'a mut V
pub fn into_mut(self) -> &'a mut V
Converts into a mutable reference to the entry’s value in the map, with a lifetime bound to the map itself.
pub fn get_key_value(&self) -> (&K, &V)
pub fn get_key_value(&self) -> (&K, &V)
Gets a reference to the entry’s key and value in the map.
pub fn get_key_value_mut(&mut self) -> (&mut K, &mut V)
pub fn get_key_value_mut(&mut self) -> (&mut K, &mut V)
Gets a reference to the entry’s key and value in the map.
pub fn into_key_value_mut(self) -> (&'a mut K, &'a mut V)
pub fn into_key_value_mut(self) -> (&'a mut K, &'a mut V)
Converts into a mutable reference to the entry’s key and value in the map, with a lifetime bound to the map itself.
pub fn insert(&mut self, value: V) -> V
pub fn insert(&mut self, value: V) -> V
Sets the value of the entry, and returns the entry’s old value.
pub fn insert_key(&mut self, key: K) -> K
pub fn insert_key(&mut self, key: K) -> K
Sets the key of the entry, and returns the entry’s old key.
pub fn remove(self) -> V
👎Deprecated: remove
disrupts the map order – use swap_remove
or shift_remove
for explicit behavior.
pub fn remove(self) -> V
remove
disrupts the map order – use swap_remove
or shift_remove
for explicit behavior.Remove the key, value pair stored in the map for this entry, and return the value.
NOTE: This is equivalent to .swap_remove()
, replacing this
entry’s position with the last element, and it is deprecated in favor of calling that
explicitly. If you need to preserve the relative order of the keys in the map, use
.shift_remove()
instead.
pub fn swap_remove(self) -> V
pub fn swap_remove(self) -> V
Remove the key, value pair stored in the map for this entry, and return the value.
Like Vec::swap_remove
, the pair is removed by swapping it with
the last element of the map and popping it off.
This perturbs the position of what used to be the last element!
Computes in O(1) time (average).
pub fn shift_remove(self) -> V
pub fn shift_remove(self) -> V
Remove the key, value pair stored in the map for this entry, and return the value.
Like Vec::remove
, the pair is removed by shifting all of the
elements that follow it, preserving their relative order.
This perturbs the index of all of those elements!
Computes in O(n) time (average).
pub fn remove_entry(self) -> (K, V)
👎Deprecated: remove_entry
disrupts the map order – use swap_remove_entry
or shift_remove_entry
for explicit behavior.
pub fn remove_entry(self) -> (K, V)
remove_entry
disrupts the map order – use swap_remove_entry
or shift_remove_entry
for explicit behavior.Remove and return the key, value pair stored in the map for this entry
NOTE: This is equivalent to .swap_remove_entry()
,
replacing this entry’s position with the last element, and it is deprecated in favor of
calling that explicitly. If you need to preserve the relative order of the keys in the map,
use .shift_remove_entry()
instead.
pub fn swap_remove_entry(self) -> (K, V)
pub fn swap_remove_entry(self) -> (K, V)
Remove and return the key, value pair stored in the map for this entry
Like Vec::swap_remove
, the pair is removed by swapping it with
the last element of the map and popping it off.
This perturbs the position of what used to be the last element!
Computes in O(1) time (average).
pub fn shift_remove_entry(self) -> (K, V)
pub fn shift_remove_entry(self) -> (K, V)
Remove and return the key, value pair stored in the map for this entry
Like Vec::remove
, the pair is removed by shifting all of the
elements that follow it, preserving their relative order.
This perturbs the index of all of those elements!
Computes in O(n) time (average).
pub fn move_index(self, to: usize)
pub fn move_index(self, to: usize)
Moves the position of the entry to a new index by shifting all other entries in-between.
This is equivalent to IndexMap::move_index
coming from
the current .index()
.
- If
self.index() < to
, the other pairs will shift down while the targeted pair moves up. - If
self.index() > to
, the other pairs will shift up while the targeted pair moves down.
Panics if to
is out of bounds.
Computes in O(n) time (average).
pub fn swap_indices(self, other: usize)
pub fn swap_indices(self, other: usize)
Swaps the position of entry with another.
This is equivalent to IndexMap::swap_indices
with the current .index()
as one of the two being swapped.
Panics if the other
index is out of bounds.
Computes in O(1) time (average).
Trait Implementations§
Auto Trait Implementations§
impl<'a, K, V, S> Freeze for RawOccupiedEntryMut<'a, K, V, S>
impl<'a, K, V, S> RefUnwindSafe for RawOccupiedEntryMut<'a, K, V, S>
impl<'a, K, V, S> Send for RawOccupiedEntryMut<'a, K, V, S>
impl<'a, K, V, S> Sync for RawOccupiedEntryMut<'a, K, V, S>
impl<'a, K, V, S> Unpin for RawOccupiedEntryMut<'a, K, V, S>
impl<'a, K, V, S> !UnwindSafe for RawOccupiedEntryMut<'a, K, V, S>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<Source, Target> OctetsInto<Target> for Sourcewhere
Target: OctetsFrom<Source>,
impl<Source, Target> OctetsInto<Target> for Sourcewhere
Target: OctetsFrom<Source>,
type Error = <Target as OctetsFrom<Source>>::Error
§fn try_octets_into(
self,
) -> Result<Target, <Source as OctetsInto<Target>>::Error>
fn try_octets_into( self, ) -> Result<Target, <Source as OctetsInto<Target>>::Error>
§fn octets_into(self) -> Targetwhere
Self::Error: Into<Infallible>,
fn octets_into(self) -> Targetwhere
Self::Error: Into<Infallible>,
§impl<D> OwoColorize for D
impl<D> OwoColorize for D
§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg
] or
a color-specific method, such as [OwoColorize::green
], Read more§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg
] or
a color-specific method, such as [OwoColorize::on_yellow
], Read more