diff options
| author | The8472 <git@infinite-source.de> | 2020-07-15 20:53:03 +0200 |
|---|---|---|
| committer | The8472 <git@infinite-source.de> | 2020-09-03 20:59:26 +0200 |
| commit | 9596e5a2f23771bdbf68b2872b26cce715c8011e (patch) | |
| tree | 654cdfd869d1419cc548fe598957f6934a0fde60 | |
| parent | 6ed05fd99573c481e2484edc28f18588e9135d1f (diff) | |
| download | rust-9596e5a2f23771bdbf68b2872b26cce715c8011e.tar.gz rust-9596e5a2f23771bdbf68b2872b26cce715c8011e.zip | |
pacify tidy
| -rw-r--r-- | library/alloc/src/collections/binary_heap.rs | 6 | ||||
| -rw-r--r-- | library/alloc/src/vec.rs | 6 | ||||
| -rw-r--r-- | library/core/src/iter/adapters/fuse.rs | 5 | ||||
| -rw-r--r-- | library/core/src/iter/adapters/mod.rs | 137 | ||||
| -rw-r--r-- | library/core/src/iter/adapters/zip.rs | 4 | ||||
| -rw-r--r-- | library/core/src/iter/mod.rs | 5 | ||||
| -rw-r--r-- | library/core/src/iter/traits/marker.rs | 2 | ||||
| -rw-r--r-- | library/core/src/iter/traits/mod.rs | 2 |
8 files changed, 90 insertions, 77 deletions
diff --git a/library/alloc/src/collections/binary_heap.rs b/library/alloc/src/collections/binary_heap.rs index 49d3213217c..226448b4379 100644 --- a/library/alloc/src/collections/binary_heap.rs +++ b/library/alloc/src/collections/binary_heap.rs @@ -151,7 +151,7 @@ use core::ops::{Deref, DerefMut}; use core::ptr; use crate::slice; -use crate::vec::{self, Vec, AsIntoIter}; +use crate::vec::{self, AsIntoIter, Vec}; use super::SpecExtend; @@ -1173,7 +1173,7 @@ impl<T> ExactSizeIterator for IntoIter<T> { #[stable(feature = "fused", since = "1.26.0")] impl<T> FusedIterator for IntoIter<T> {} -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<T> SourceIter for IntoIter<T> { type Source = IntoIter<T>; @@ -1183,7 +1183,7 @@ unsafe impl<T> SourceIter for IntoIter<T> { } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<I> InPlaceIterable for IntoIter<I> {} impl<I> AsIntoIter<I> for IntoIter<I> { diff --git a/library/alloc/src/vec.rs b/library/alloc/src/vec.rs index 27618f4a388..9b7f2af3ba9 100644 --- a/library/alloc/src/vec.rs +++ b/library/alloc/src/vec.rs @@ -2941,7 +2941,7 @@ impl<T> FusedIterator for IntoIter<T> {} unsafe impl<T> TrustedLen for IntoIter<T> {} #[doc(hidden)] -#[unstable(issue = "0", feature = "std_internals")] +#[unstable(issue = "none", feature = "std_internals")] // T: Copy as approximation for !Drop since get_unchecked does not advance self.ptr // and thus we can't implement drop-handling unsafe impl<T> TrustedRandomAccess for IntoIter<T> @@ -2987,10 +2987,10 @@ unsafe impl<#[may_dangle] T> Drop for IntoIter<T> { } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<T> InPlaceIterable for IntoIter<T> {} -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<T> SourceIter for IntoIter<T> { type Source = IntoIter<T>; diff --git a/library/core/src/iter/adapters/fuse.rs b/library/core/src/iter/adapters/fuse.rs index 1a4b3d379e4..280f1075be6 100644 --- a/library/core/src/iter/adapters/fuse.rs +++ b/library/core/src/iter/adapters/fuse.rs @@ -520,8 +520,7 @@ where } } - -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<S: Iterator, I: FusedIterator> SourceIter for Fuse<I> where I: SourceIter<Source = S>, @@ -539,5 +538,5 @@ unsafe impl<S: Iterator, I: FusedIterator> SourceIter for Fuse<I> } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<I: InPlaceIterable> InPlaceIterable for Fuse<I> {} diff --git a/library/core/src/iter/adapters/mod.rs b/library/core/src/iter/adapters/mod.rs index 2b9d54f7eab..ed5600f1824 100644 --- a/library/core/src/iter/adapters/mod.rs +++ b/library/core/src/iter/adapters/mod.rs @@ -55,7 +55,7 @@ pub use self::zip::Zip; /// /// [`FromIterator`]: crate::iter::FromIterator /// [`as_inner`]: SourceIter::as_inner -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] pub unsafe trait SourceIter { /// A source stage in an iterator pipeline. type Source: Iterator; @@ -1010,7 +1010,7 @@ where } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<S: Iterator, B, I: Iterator, F> SourceIter for Map<I, F> where F: FnMut(I::Item) -> B, @@ -1025,7 +1025,7 @@ where } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<B, I: InPlaceIterable, F> InPlaceIterable for Map<I, F> where F: FnMut(I::Item) -> B {} /// An iterator that filters the elements of `iter` with `predicate`. @@ -1159,10 +1159,11 @@ where #[stable(feature = "fused", since = "1.26.0")] impl<I: FusedIterator, P> FusedIterator for Filter<I, P> where P: FnMut(&I::Item) -> bool {} -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<S: Iterator, P, I: Iterator> SourceIter for Filter<I, P> where +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<S: Iterator, P, I: Iterator> SourceIter for Filter<I, P> +where P: FnMut(&I::Item) -> bool, - I: SourceIter<Source = S> + I: SourceIter<Source = S>, { type Source = S; @@ -1173,9 +1174,8 @@ unsafe impl<S: Iterator, P, I: Iterator> SourceIter for Filter<I, P> where } } -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<I: InPlaceIterable, P> InPlaceIterable for Filter<I, P> - where P: FnMut(&I::Item) -> bool {} +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<I: InPlaceIterable, P> InPlaceIterable for Filter<I, P> where P: FnMut(&I::Item) -> bool {} /// An iterator that uses `f` to both filter and map elements from `iter`. /// @@ -1303,10 +1303,11 @@ where #[stable(feature = "fused", since = "1.26.0")] impl<B, I: FusedIterator, F> FusedIterator for FilterMap<I, F> where F: FnMut(I::Item) -> Option<B> {} -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<S: Iterator, B, I: Iterator, F> SourceIter for FilterMap<I, F> where +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<S: Iterator, B, I: Iterator, F> SourceIter for FilterMap<I, F> +where F: FnMut(I::Item) -> Option<B>, - I: SourceIter<Source = S> + I: SourceIter<Source = S>, { type Source = S; @@ -1317,10 +1318,11 @@ unsafe impl<S: Iterator, B, I: Iterator, F> SourceIter for FilterMap<I, F> where } } -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<B, I: InPlaceIterable, F> InPlaceIterable for FilterMap<I, F> - where F: FnMut(I::Item) -> Option<B> {} - +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<B, I: InPlaceIterable, F> InPlaceIterable for FilterMap<I, F> where + F: FnMut(I::Item) -> Option<B> +{ +} /// An iterator that yields the current count and the element during iteration. /// @@ -1540,7 +1542,7 @@ impl<I> FusedIterator for Enumerate<I> where I: FusedIterator {} #[unstable(feature = "trusted_len", issue = "37572")] unsafe impl<I> TrustedLen for Enumerate<I> where I: TrustedLen {} -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<S: Iterator, I: Iterator> SourceIter for Enumerate<I> where I: SourceIter<Source = S>, @@ -1554,7 +1556,7 @@ where } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<I: InPlaceIterable> InPlaceIterable for Enumerate<I> {} /// An iterator with a `peek()` that returns an optional reference to the next @@ -1838,7 +1840,7 @@ impl<I: Iterator> Peekable<I> { #[unstable(feature = "trusted_len", issue = "37572")] unsafe impl<I> TrustedLen for Peekable<I> where I: TrustedLen {} -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<S: Iterator, I: Iterator> SourceIter for Peekable<I> where I: SourceIter<Source = S>, @@ -1852,7 +1854,7 @@ where } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<I: InPlaceIterable> InPlaceIterable for Peekable<I> {} /// An iterator that rejects elements while `predicate` returns `true`. @@ -1956,10 +1958,11 @@ where { } -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<S: Iterator, P, I: Iterator> SourceIter for SkipWhile<I, P> where +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<S: Iterator, P, I: Iterator> SourceIter for SkipWhile<I, P> +where P: FnMut(&I::Item) -> bool, - I: SourceIter<Source = S> + I: SourceIter<Source = S>, { type Source = S; @@ -1970,9 +1973,11 @@ unsafe impl<S: Iterator, P, I: Iterator> SourceIter for SkipWhile<I, P> where } } -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<I: InPlaceIterable, F> InPlaceIterable for SkipWhile<I, F> - where F: FnMut(&I::Item) -> bool {} +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<I: InPlaceIterable, F> InPlaceIterable for SkipWhile<I, F> where + F: FnMut(&I::Item) -> bool +{ +} /// An iterator that only accepts elements while `predicate` returns `true`. /// @@ -2088,6 +2093,27 @@ where { } +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<S: Iterator, P, I: Iterator> SourceIter for TakeWhile<I, P> + where + P: FnMut(&I::Item) -> bool, + I: SourceIter<Source = S>, +{ + type Source = S; + + #[inline] + unsafe fn as_inner(&mut self) -> &mut S { + // Safety: unsafe function forwarding to unsafe function with the same requirements + unsafe { SourceIter::as_inner(&mut self.iter) } + } +} + +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<I: InPlaceIterable, F> InPlaceIterable for TakeWhile<I, F> where + F: FnMut(&I::Item) -> bool +{ +} + /// An iterator that only accepts elements while `predicate` returns `Some(_)`. /// /// This `struct` is created by the [`map_while`] method on [`Iterator`]. See its @@ -2165,25 +2191,6 @@ where } } -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<S: Iterator, P, I: Iterator> SourceIter for TakeWhile<I, P> where - P: FnMut(&I::Item) -> bool, - I: SourceIter<Source = S> -{ - type Source = S; - - #[inline] - unsafe fn as_inner(&mut self) -> &mut S { - // Safety: unsafe function forwarding to unsafe function with the same requirements - unsafe { SourceIter::as_inner(&mut self.iter) } - } -} - -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<I: InPlaceIterable, F> InPlaceIterable for TakeWhile<I, F> - where F: FnMut(&I::Item) -> bool {} - - /// An iterator that skips over `n` elements of `iter`. /// /// This `struct` is created by the [`skip`] method on [`Iterator`]. See its @@ -2367,7 +2374,7 @@ where #[stable(feature = "fused", since = "1.26.0")] impl<I> FusedIterator for Skip<I> where I: FusedIterator {} -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<S: Iterator, I: Iterator> SourceIter for Skip<I> where I: SourceIter<Source = S>, @@ -2381,7 +2388,7 @@ where } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<I: InPlaceIterable> InPlaceIterable for Skip<I> {} /// An iterator that only iterates over the first `n` iterations of `iter`. @@ -2494,8 +2501,11 @@ where } } -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<S: Iterator, I: Iterator> SourceIter for Take<I> where I: SourceIter<Source = S> { +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<S: Iterator, I: Iterator> SourceIter for Take<I> +where + I: SourceIter<Source = S>, +{ type Source = S; #[inline] @@ -2505,7 +2515,7 @@ unsafe impl<S: Iterator, I: Iterator> SourceIter for Take<I> where I: SourceIter } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<I: InPlaceIterable> InPlaceIterable for Take<I> {} #[stable(feature = "double_ended_take_iterator", since = "1.38.0")] @@ -2672,10 +2682,11 @@ where } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<St, F, B, S: Iterator, I: Iterator> SourceIter for Scan<I, St, F> - where I: SourceIter<Source = S>, - F: FnMut(&mut St, I::Item) -> Option<B>, +where + I: SourceIter<Source = S>, + F: FnMut(&mut St, I::Item) -> Option<B>, { type Source = S; @@ -2686,10 +2697,11 @@ unsafe impl<St, F, B, S: Iterator, I: Iterator> SourceIter for Scan<I, St, F> } } -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<St, F, B, I: InPlaceIterable> InPlaceIterable for Scan<I, St, F> - where F: FnMut(&mut St, I::Item) -> Option<B>, -{} +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<St, F, B, I: InPlaceIterable> InPlaceIterable for Scan<I, St, F> where + F: FnMut(&mut St, I::Item) -> Option<B> +{ +} /// An iterator that calls a function with a reference to each element before /// yielding it. @@ -2837,10 +2849,11 @@ where #[stable(feature = "fused", since = "1.26.0")] impl<I: FusedIterator, F> FusedIterator for Inspect<I, F> where F: FnMut(&I::Item) {} -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<S: Iterator, I: Iterator, F> SourceIter for Inspect<I, F> where +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<S: Iterator, I: Iterator, F> SourceIter for Inspect<I, F> +where F: FnMut(&I::Item), - I: SourceIter<Source = S> + I: SourceIter<Source = S>, { type Source = S; @@ -2851,8 +2864,8 @@ unsafe impl<S: Iterator, I: Iterator, F> SourceIter for Inspect<I, F> where } } -#[unstable(issue = "0", feature = "inplace_iteration")] -unsafe impl<I: InPlaceIterable, F> InPlaceIterable for Inspect<I, F> where F: FnMut(&I::Item) {} +#[unstable(issue = "none", feature = "inplace_iteration")] +unsafe impl<I: InPlaceIterable, F> InPlaceIterable for Inspect<I, F> where F: FnMut(&I::Item) {} /// An iterator adapter that produces output as long as the underlying /// iterator produces `Result::Ok` values. diff --git a/library/core/src/iter/adapters/zip.rs b/library/core/src/iter/adapters/zip.rs index d52ae1b05b4..0597d950185 100644 --- a/library/core/src/iter/adapters/zip.rs +++ b/library/core/src/iter/adapters/zip.rs @@ -332,7 +332,7 @@ where // Arbitrarily selects the left side of the zip iteration as extractable "source" // it would require negative trait bounds to be able to try both -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] unsafe impl<S, A, B> SourceIter for Zip<A, B> where A: SourceIter<Source = S>, @@ -348,7 +348,7 @@ unsafe impl<S, A, B> SourceIter for Zip<A, B> } } -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] // Limited to Item: Copy since interaction between Zip's use of TrustedRandomAccess // and Drop implementation of the source is unclear. // diff --git a/library/core/src/iter/mod.rs b/library/core/src/iter/mod.rs index 922ffd1e0b5..59f333e888b 100644 --- a/library/core/src/iter/mod.rs +++ b/library/core/src/iter/mod.rs @@ -342,7 +342,7 @@ pub use self::traits::{DoubleEndedIterator, Extend, FromIterator, IntoIterator}; #[stable(feature = "rust1", since = "1.0.0")] pub use self::traits::{ExactSizeIterator, Product, Sum}; -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] pub use self::traits::InPlaceIterable; #[stable(feature = "iter_cloned", since = "1.1.0")] @@ -351,9 +351,10 @@ pub use self::adapters::Cloned; pub use self::adapters::Copied; #[stable(feature = "iterator_flatten", since = "1.29.0")] pub use self::adapters::Flatten; + #[unstable(feature = "iter_map_while", reason = "recently added", issue = "68537")] pub use self::adapters::MapWhile; -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] pub use self::adapters::SourceIter; #[stable(feature = "iterator_step_by", since = "1.28.0")] pub use self::adapters::StepBy; diff --git a/library/core/src/iter/traits/marker.rs b/library/core/src/iter/traits/marker.rs index 549f7972689..f287196da03 100644 --- a/library/core/src/iter/traits/marker.rs +++ b/library/core/src/iter/traits/marker.rs @@ -52,5 +52,5 @@ unsafe impl<I: TrustedLen + ?Sized> TrustedLen for &mut I {} /// In other words this trait indicates that an iterator pipeline can be collected in place. /// /// [`SourceIter`]: ../../std/iter/trait.SourceIter.html -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] pub unsafe trait InPlaceIterable: Iterator {} diff --git a/library/core/src/iter/traits/mod.rs b/library/core/src/iter/traits/mod.rs index 9ed2de7313d..880f8d831fd 100644 --- a/library/core/src/iter/traits/mod.rs +++ b/library/core/src/iter/traits/mod.rs @@ -11,7 +11,7 @@ pub use self::double_ended::DoubleEndedIterator; pub use self::exact_size::ExactSizeIterator; #[stable(feature = "rust1", since = "1.0.0")] pub use self::iterator::Iterator; -#[unstable(issue = "0", feature = "inplace_iteration")] +#[unstable(issue = "none", feature = "inplace_iteration")] pub use self::marker::InPlaceIterable; #[stable(feature = "rust1", since = "1.0.0")] pub use self::marker::{FusedIterator, TrustedLen}; |
