diff options
| author | Emilio Cobos Álvarez <emilio@crisal.io> | 2021-03-04 18:57:07 +0100 |
|---|---|---|
| committer | Emilio Cobos Álvarez <emilio@crisal.io> | 2021-03-04 19:36:54 +0100 |
| commit | 5176f677f588740549185eb877513282512cde3f (patch) | |
| tree | bd20d59272b68117371678c1e0e27bda5fc1d556 | |
| parent | ec7f258d543e1ac7d0b94435972331e85da8c509 (diff) | |
| download | rust-5176f677f588740549185eb877513282512cde3f.tar.gz rust-5176f677f588740549185eb877513282512cde3f.zip | |
slice: Stabilize IterMut::as_slice.
Much like #72584. As per #58957 there's no blocker for this, and I wanted to use this today :-)
| -rw-r--r-- | library/core/src/slice/iter.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/library/core/src/slice/iter.rs b/library/core/src/slice/iter.rs index 796301c76b6..8f404d71530 100644 --- a/library/core/src/slice/iter.rs +++ b/library/core/src/slice/iter.rs @@ -286,7 +286,6 @@ impl<'a, T> IterMut<'a, T> { /// Basic usage: /// /// ``` - /// # #![feature(slice_iter_mut_as_slice)] /// let mut slice: &mut [usize] = &mut [1, 2, 3]; /// /// // First, we get the iterator: @@ -299,12 +298,19 @@ impl<'a, T> IterMut<'a, T> { /// // Now `as_slice` returns "[2, 3]": /// assert_eq!(iter.as_slice(), &[2, 3]); /// ``` - #[unstable(feature = "slice_iter_mut_as_slice", reason = "recently added", issue = "58957")] + #[stable(feature = "slice_iter_mut_as_slice", since = "1.52.0")] pub fn as_slice(&self) -> &[T] { self.make_slice() } } +#[stable(feature = "slice_iter_mut_as_slice", since = "1.52.0")] +impl<T> AsRef<[T]> for IterMut<'_, T> { + fn as_ref(&self) -> &[T] { + self.as_slice() + } +} + iterator! {struct IterMut -> *mut T, &'a mut T, mut, {mut}, {}} /// An internal abstraction over the splitting iterators, so that |
