Closed
Description
Feature gate: #![feature(map_many_mut)]
This is a tracking issue for the HashMap::get_disjoint{,_unchecked}_mut
functions (previously get_many_mut
and get_many_unchecked_mut
).
Attempts to get mutable references to N
values in the map at once.
Public API
// in HashMap
pub fn get_disjoint_mut<Q: ?Sized, const N: usize>(
&mut self,
ks: [&Q; N]
) -> [Option<&'_ mut V>; N]
where
K: Borrow<Q>,
Q: Hash + Eq;
pub unsafe fn get_disjoint_unchecked_mut<Q: ?Sized, const N: usize>(
&mut self,
ks: [&Q; N],
) -> [Option<&'_ mut V>; N]
where
K: Borrow<Q>,
Q: Hash + Eq;
Steps / History
- Implementation: Expose
get_many_mut
andget_many_unchecked_mut
to HashMap #94647 and Change signature ofget_many_mut
APIs hashbrown#562 - Final comment period (FCP) Tracking Issue for map_many_mut #97601 (comment)
- Rename to
get_disjoint_mut
Stabilizemap_many_mut
feature #136152 - Stabilization PR Stabilize
map_many_mut
feature #136152
Unresolved Questions
Should the return type be insteadResult<[Option<&mut V>; N], DuplicateKeys>
? Tracking Issue for map_many_mut #97601 (comment) and Tracking Issue for map_many_mut #97601 (comment)
Tracking Issue for map_many_mut #97601 (comment)Having instead a entry-like API? Tracking Issue for map_many_mut #97601 (comment)
Tracking Issue for map_many_mut #97601 (comment)Namingmap_disjoint_mut
, see Tracking Issue for map_many_mut #97601 (comment)