-
Notifications
You must be signed in to change notification settings - Fork 13.6k
Closed
Labels
C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-libs-apiRelevant to the library API team, which will review and decide on the PR/issue.Relevant to the library API team, which will review and decide on the PR/issue.disposition-mergeThis issue / PR is in PFCP or FCP with a disposition to merge it.This issue / PR is in PFCP or FCP with a disposition to merge it.finished-final-comment-periodThe final comment period is finished for this PR / Issue.The final comment period is finished for this PR / Issue.
Description
Feature gate: #![feature(get_many_mut)]
This is a tracking issue for get_disjoint_mut
and get_disjoint_unchecked_mut
, which provide &mut T
access to multiple distinct slice elements.
Public API
impl [T] {
pub unsafe fn get_disjoint_unchecked_mut<const N: usize>(&mut self, indices: [usize; N]) -> [&mut T; N];
pub fn get_disjoint_mut<const N: usize>(&mut self, indices: [usize; N]) -> Result<[&mut T; N], GetDisjointMutError<N>>;
}
pub struct GetDisjointMutError<const N: usize> { /* private */ }
Steps / History
- Add slice methods for indexing via an array of indices. #83608
- Stabilize
get_many_mut
asget_disjoint_mut
#134633
Unresolved Questions
- What should the error type / return type look like?
- See Add slice methods for indexing via an array of indices. #83608 (comment), Add slice methods for indexing via an array of indices. #83608 (comment), and other comments on that PR
- Should the interface support non-usize indices (e.g.,
get_many_mut([0..3, 4..6])
)? - What are the requirements for the interface? Do we sort the passed array, and then check distinctness, or check in
O(n^2)
time?
stepancheg, adriandelgado, orzogc, zacgeis, JonasBurger and 6 moreshepmaster, tguichaoua, mejrs, anna-hope, Dryvnt and 29 moreCBenoit, marthadev, deadsoul44, adriandelgado, wmstack and 1 more
Metadata
Metadata
Assignees
Labels
C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCT-libs-apiRelevant to the library API team, which will review and decide on the PR/issue.Relevant to the library API team, which will review and decide on the PR/issue.disposition-mergeThis issue / PR is in PFCP or FCP with a disposition to merge it.This issue / PR is in PFCP or FCP with a disposition to merge it.finished-final-comment-periodThe final comment period is finished for this PR / Issue.The final comment period is finished for this PR / Issue.