diff options
| author | Pietro Albini <pietro@pietroalbini.org> | 2018-09-25 22:34:47 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-09-25 22:34:47 +0200 |
| commit | 6a0f45b3f485279a04884e11fe2a37a205bdcea3 (patch) | |
| tree | 5771883f78bff905ce66890280786fc34585d640 /src/libcore/slice | |
| parent | 49e0049e9f2395983ca3cbc82c9665a750931de6 (diff) | |
| parent | 068c92b2cc0620d18eee1066cd3460f37c9ed9f3 (diff) | |
Rollup merge of #54537 - sdroege:chunks-exact, r=alexcrichton
Rename slice::exact_chunks() to slice::chunks_exact() See https://github.com/rust-lang/rust/issues/47115#issuecomment-403090815 and https://github.com/rust-lang/rust/issues/47115#issuecomment-424053547
Diffstat (limited to 'src/libcore/slice')
| -rw-r--r-- | src/libcore/slice/mod.rs | 104 |
1 files changed, 52 insertions, 52 deletions
diff --git a/src/libcore/slice/mod.rs b/src/libcore/slice/mod.rs index 97aada38555..05027bbe898 100644 --- a/src/libcore/slice/mod.rs +++ b/src/libcore/slice/mod.rs @@ -624,7 +624,7 @@ impl<T> [T] { /// not divide the length of the slice, then the last chunk will /// not have length `chunk_size`. /// - /// See [`exact_chunks`] for a variant of this iterator that returns chunks + /// See [`chunks_exact`] for a variant of this iterator that returns chunks /// of always exactly `chunk_size` elements. /// /// # Panics @@ -642,7 +642,7 @@ impl<T> [T] { /// assert!(iter.next().is_none()); /// ``` /// - /// [`exact_chunks`]: #method.exact_chunks + /// [`chunks_exact`]: #method.chunks_exact #[stable(feature = "rust1", since = "1.0.0")] #[inline] pub fn chunks(&self, chunk_size: usize) -> Chunks<T> { @@ -655,7 +655,7 @@ impl<T> [T] { /// not divide the length of the slice, then the last chunk will not /// have length `chunk_size`. /// - /// See [`exact_chunks_mut`] for a variant of this iterator that returns chunks + /// See [`chunks_exact_mut`] for a variant of this iterator that returns chunks /// of always exactly `chunk_size` elements. /// /// # Panics @@ -677,7 +677,7 @@ impl<T> [T] { /// assert_eq!(v, &[1, 1, 2, 2, 3]); /// ``` /// - /// [`exact_chunks_mut`]: #method.exact_chunks_mut + /// [`chunks_exact_mut`]: #method.chunks_exact_mut #[stable(feature = "rust1", since = "1.0.0")] #[inline] pub fn chunks_mut(&mut self, chunk_size: usize) -> ChunksMut<T> { @@ -702,24 +702,24 @@ impl<T> [T] { /// # Examples /// /// ``` - /// #![feature(exact_chunks)] + /// #![feature(chunks_exact)] /// /// let slice = ['l', 'o', 'r', 'e', 'm']; - /// let mut iter = slice.exact_chunks(2); + /// let mut iter = slice.chunks_exact(2); /// assert_eq!(iter.next().unwrap(), &['l', 'o']); /// assert_eq!(iter.next().unwrap(), &['r', 'e']); /// assert!(iter.next().is_none()); /// ``` /// /// [`chunks`]: #method.chunks - #[unstable(feature = "exact_chunks", issue = "47115")] + #[unstable(feature = "chunks_exact", issue = "47115")] #[inline] - pub fn exact_chunks(&self, chunk_size: usize) -> ExactChunks<T> { + pub fn chunks_exact(&self, chunk_size: usize) -> ChunksExact<T> { assert!(chunk_size != 0); let rem = self.len() % chunk_size; let len = self.len() - rem; let (fst, snd) = self.split_at(len); - ExactChunks { v: fst, rem: snd, chunk_size } + ChunksExact { v: fst, rem: snd, chunk_size } } /// Returns an iterator over `chunk_size` elements of the slice at a time. @@ -739,12 +739,12 @@ impl<T> [T] { /// # Examples /// /// ``` - /// #![feature(exact_chunks)] + /// #![feature(chunks_exact)] /// /// let v = &mut [0, 0, 0, 0, 0]; /// let mut count = 1; /// - /// for chunk in v.exact_chunks_mut(2) { + /// for chunk in v.chunks_exact_mut(2) { /// for elem in chunk.iter_mut() { /// *elem += count; /// } @@ -754,14 +754,14 @@ impl<T> [T] { /// ``` /// /// [`chunks_mut`]: #method.chunks_mut - #[unstable(feature = "exact_chunks", issue = "47115")] + #[unstable(feature = "chunks_exact", issue = "47115")] #[inline] - pub fn exact_chunks_mut(&mut self, chunk_size: usize) -> ExactChunksMut<T> { + pub fn chunks_exact_mut(&mut self, chunk_size: usize) -> ChunksExactMut<T> { assert!(chunk_size != 0); let rem = self.len() % chunk_size; let len = self.len() - rem; let (fst, snd) = self.split_at_mut(len); - ExactChunksMut { v: fst, rem: snd, chunk_size } + ChunksExactMut { v: fst, rem: snd, chunk_size } } /// Divides one slice into two at an index. @@ -3829,21 +3829,21 @@ unsafe impl<'a, T> TrustedRandomAccess for ChunksMut<'a, T> { /// up to `chunk_size-1` elements will be omitted but can be retrieved from /// the [`remainder`] function from the iterator. /// -/// This struct is created by the [`exact_chunks`] method on [slices]. +/// This struct is created by the [`chunks_exact`] method on [slices]. /// -/// [`exact_chunks`]: ../../std/primitive.slice.html#method.exact_chunks -/// [`remainder`]: ../../std/slice/struct.ExactChunks.html#method.remainder +/// [`chunks_exact`]: ../../std/primitive.slice.html#method.chunks_exact +/// [`remainder`]: ../../std/slice/struct.ChunksExact.html#method.remainder /// [slices]: ../../std/primitive.slice.html #[derive(Debug)] -#[unstable(feature = "exact_chunks", issue = "47115")] -pub struct ExactChunks<'a, T:'a> { +#[unstable(feature = "chunks_exact", issue = "47115")] +pub struct ChunksExact<'a, T:'a> { v: &'a [T], rem: &'a [T], chunk_size: usize } -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> ExactChunks<'a, T> { +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> ChunksExact<'a, T> { /// Return the remainder of the original slice that is not going to be /// returned by the iterator. The returned slice has at most `chunk_size-1` /// elements. @@ -3853,10 +3853,10 @@ impl<'a, T> ExactChunks<'a, T> { } // FIXME(#26925) Remove in favor of `#[derive(Clone)]` -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> Clone for ExactChunks<'a, T> { - fn clone(&self) -> ExactChunks<'a, T> { - ExactChunks { +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> Clone for ChunksExact<'a, T> { + fn clone(&self) -> ChunksExact<'a, T> { + ChunksExact { v: self.v, rem: self.rem, chunk_size: self.chunk_size, @@ -3864,8 +3864,8 @@ impl<'a, T> Clone for ExactChunks<'a, T> { } } -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> Iterator for ExactChunks<'a, T> { +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> Iterator for ChunksExact<'a, T> { type Item = &'a [T]; #[inline] @@ -3909,8 +3909,8 @@ impl<'a, T> Iterator for ExactChunks<'a, T> { } } -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> DoubleEndedIterator for ExactChunks<'a, T> { +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> DoubleEndedIterator for ChunksExact<'a, T> { #[inline] fn next_back(&mut self) -> Option<&'a [T]> { if self.v.len() < self.chunk_size { @@ -3923,21 +3923,21 @@ impl<'a, T> DoubleEndedIterator for ExactChunks<'a, T> { } } -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> ExactSizeIterator for ExactChunks<'a, T> { +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> ExactSizeIterator for ChunksExact<'a, T> { fn is_empty(&self) -> bool { self.v.is_empty() } } #[unstable(feature = "trusted_len", issue = "37572")] -unsafe impl<'a, T> TrustedLen for ExactChunks<'a, T> {} +unsafe impl<'a, T> TrustedLen for ChunksExact<'a, T> {} -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> FusedIterator for ExactChunks<'a, T> {} +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> FusedIterator for ChunksExact<'a, T> {} #[doc(hidden)] -unsafe impl<'a, T> TrustedRandomAccess for ExactChunks<'a, T> { +unsafe impl<'a, T> TrustedRandomAccess for ChunksExact<'a, T> { unsafe fn get_unchecked(&mut self, i: usize) -> &'a [T] { let start = i * self.chunk_size; from_raw_parts(self.v.as_ptr().add(start), self.chunk_size) @@ -3952,21 +3952,21 @@ unsafe impl<'a, T> TrustedRandomAccess for ExactChunks<'a, T> { /// `chunk_size-1` elements will be omitted but can be retrieved from the /// [`into_remainder`] function from the iterator. /// -/// This struct is created by the [`exact_chunks_mut`] method on [slices]. +/// This struct is created by the [`chunks_exact_mut`] method on [slices]. /// -/// [`exact_chunks_mut`]: ../../std/primitive.slice.html#method.exact_chunks_mut -/// [`into_remainder`]: ../../std/slice/struct.ExactChunksMut.html#method.into_remainder +/// [`chunks_exact_mut`]: ../../std/primitive.slice.html#method.chunks_exact_mut +/// [`into_remainder`]: ../../std/slice/struct.ChunksExactMut.html#method.into_remainder /// [slices]: ../../std/primitive.slice.html #[derive(Debug)] -#[unstable(feature = "exact_chunks", issue = "47115")] -pub struct ExactChunksMut<'a, T:'a> { +#[unstable(feature = "chunks_exact", issue = "47115")] +pub struct ChunksExactMut<'a, T:'a> { v: &'a mut [T], rem: &'a mut [T], chunk_size: usize } -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> ExactChunksMut<'a, T> { +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> ChunksExactMut<'a, T> { /// Return the remainder of the original slice that is not going to be /// returned by the iterator. The returned slice has at most `chunk_size-1` /// elements. @@ -3975,8 +3975,8 @@ impl<'a, T> ExactChunksMut<'a, T> { } } -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> Iterator for ExactChunksMut<'a, T> { +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> Iterator for ChunksExactMut<'a, T> { type Item = &'a mut [T]; #[inline] @@ -4022,8 +4022,8 @@ impl<'a, T> Iterator for ExactChunksMut<'a, T> { } } -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> DoubleEndedIterator for ExactChunksMut<'a, T> { +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> DoubleEndedIterator for ChunksExactMut<'a, T> { #[inline] fn next_back(&mut self) -> Option<&'a mut [T]> { if self.v.len() < self.chunk_size { @@ -4038,21 +4038,21 @@ impl<'a, T> DoubleEndedIterator for ExactChunksMut<'a, T> { } } -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> ExactSizeIterator for ExactChunksMut<'a, T> { +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> ExactSizeIterator for ChunksExactMut<'a, T> { fn is_empty(&self) -> bool { self.v.is_empty() } } #[unstable(feature = "trusted_len", issue = "37572")] -unsafe impl<'a, T> TrustedLen for ExactChunksMut<'a, T> {} +unsafe impl<'a, T> TrustedLen for ChunksExactMut<'a, T> {} -#[unstable(feature = "exact_chunks", issue = "47115")] -impl<'a, T> FusedIterator for ExactChunksMut<'a, T> {} +#[unstable(feature = "chunks_exact", issue = "47115")] +impl<'a, T> FusedIterator for ChunksExactMut<'a, T> {} #[doc(hidden)] -unsafe impl<'a, T> TrustedRandomAccess for ExactChunksMut<'a, T> { +unsafe impl<'a, T> TrustedRandomAccess for ChunksExactMut<'a, T> { unsafe fn get_unchecked(&mut self, i: usize) -> &'a mut [T] { let start = i * self.chunk_size; from_raw_parts_mut(self.v.as_mut_ptr().add(start), self.chunk_size) |
