about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2019-04-28 01:46:11 +0000
committerbors <bors@rust-lang.org>2019-04-28 01:46:11 +0000
commit5f0dc0e1ffb10ff9277aacae9bff3e70d342c1d4 (patch)
tree26a81dd55ae4787465f849907e1b200b7cf9befe /src
parent938d4ffe16c4430e1dcede570b06227114cb73d5 (diff)
parentb71f8d4e1beb2f10a546ee55c41d15aa66ef4240 (diff)
downloadrust-5f0dc0e1ffb10ff9277aacae9bff3e70d342c1d4.tar.gz
rust-5f0dc0e1ffb10ff9277aacae9bff3e70d342c1d4.zip
Auto merge of #60333 - Centril:stabilize-iterator-copied, r=varkor
Stabilize Iterator::copied in 1.36.0

Per https://github.com/rust-lang/rust/issues/57127#issuecomment-487289429.

Closes https://github.com/rust-lang/rust/issues/57127.

r? @varkor
Diffstat (limited to 'src')
-rw-r--r--src/libcore/iter/adapters/mod.rs13
-rw-r--r--src/libcore/iter/mod.rs2
-rw-r--r--src/libcore/iter/traits/iterator.rs4
-rw-r--r--src/libcore/tests/lib.rs1
4 files changed, 9 insertions, 11 deletions
diff --git a/src/libcore/iter/adapters/mod.rs b/src/libcore/iter/adapters/mod.rs
index 3ab404a48d3..518442efe74 100644
--- a/src/libcore/iter/adapters/mod.rs
+++ b/src/libcore/iter/adapters/mod.rs
@@ -130,19 +130,20 @@ unsafe impl<I> TrustedLen for Rev<I>
 ///
 /// [`copied`]: trait.Iterator.html#method.copied
 /// [`Iterator`]: trait.Iterator.html
-#[unstable(feature = "iter_copied", issue = "57127")]
+#[stable(feature = "iter_copied", since = "1.36.0")]
 #[must_use = "iterators are lazy and do nothing unless consumed"]
 #[derive(Clone, Debug)]
 pub struct Copied<I> {
     it: I,
 }
+
 impl<I> Copied<I> {
     pub(super) fn new(it: I) -> Copied<I> {
         Copied { it }
     }
 }
 
-#[unstable(feature = "iter_copied", issue = "57127")]
+#[stable(feature = "iter_copied", since = "1.36.0")]
 impl<'a, I, T: 'a> Iterator for Copied<I>
     where I: Iterator<Item=&'a T>, T: Copy
 {
@@ -169,7 +170,7 @@ impl<'a, I, T: 'a> Iterator for Copied<I>
     }
 }
 
-#[unstable(feature = "iter_copied", issue = "57127")]
+#[stable(feature = "iter_copied", since = "1.36.0")]
 impl<'a, I, T: 'a> DoubleEndedIterator for Copied<I>
     where I: DoubleEndedIterator<Item=&'a T>, T: Copy
 {
@@ -190,7 +191,7 @@ impl<'a, I, T: 'a> DoubleEndedIterator for Copied<I>
     }
 }
 
-#[unstable(feature = "iter_copied", issue = "57127")]
+#[stable(feature = "iter_copied", since = "1.36.0")]
 impl<'a, I, T: 'a> ExactSizeIterator for Copied<I>
     where I: ExactSizeIterator<Item=&'a T>, T: Copy
 {
@@ -203,7 +204,7 @@ impl<'a, I, T: 'a> ExactSizeIterator for Copied<I>
     }
 }
 
-#[unstable(feature = "iter_copied", issue = "57127")]
+#[stable(feature = "iter_copied", since = "1.36.0")]
 impl<'a, I, T: 'a> FusedIterator for Copied<I>
     where I: FusedIterator<Item=&'a T>, T: Copy
 {}
@@ -222,7 +223,7 @@ unsafe impl<'a, I, T: 'a> TrustedRandomAccess for Copied<I>
     }
 }
 
-#[unstable(feature = "iter_copied", issue = "57127")]
+#[stable(feature = "iter_copied", since = "1.36.0")]
 unsafe impl<'a, I, T: 'a> TrustedLen for Copied<I>
     where I: TrustedLen<Item=&'a T>,
           T: Copy
diff --git a/src/libcore/iter/mod.rs b/src/libcore/iter/mod.rs
index fd7498119bf..1601357d3b0 100644
--- a/src/libcore/iter/mod.rs
+++ b/src/libcore/iter/mod.rs
@@ -352,7 +352,7 @@ pub use self::adapters::Cloned;
 pub use self::adapters::StepBy;
 #[stable(feature = "iterator_flatten", since = "1.29.0")]
 pub use self::adapters::Flatten;
-#[unstable(feature = "iter_copied", issue = "57127")]
+#[stable(feature = "iter_copied", since = "1.36.0")]
 pub use self::adapters::Copied;
 
 pub(crate) use self::adapters::TrustedRandomAccess;
diff --git a/src/libcore/iter/traits/iterator.rs b/src/libcore/iter/traits/iterator.rs
index 9da593c86bd..403f3358105 100644
--- a/src/libcore/iter/traits/iterator.rs
+++ b/src/libcore/iter/traits/iterator.rs
@@ -2206,8 +2206,6 @@ pub trait Iterator {
     /// Basic usage:
     ///
     /// ```
-    /// #![feature(iter_copied)]
-    ///
     /// let a = [1, 2, 3];
     ///
     /// let v_cloned: Vec<_> = a.iter().copied().collect();
@@ -2218,7 +2216,7 @@ pub trait Iterator {
     /// assert_eq!(v_cloned, vec![1, 2, 3]);
     /// assert_eq!(v_map, vec![1, 2, 3]);
     /// ```
-    #[unstable(feature = "iter_copied", issue = "57127")]
+    #[stable(feature = "iter_copied", since = "1.36.0")]
     fn copied<'a, T: 'a>(self) -> Copied<Self>
         where Self: Sized + Iterator<Item=&'a T>, T: Copy
     {
diff --git a/src/libcore/tests/lib.rs b/src/libcore/tests/lib.rs
index ae12eb116b5..025f7fb5cc6 100644
--- a/src/libcore/tests/lib.rs
+++ b/src/libcore/tests/lib.rs
@@ -10,7 +10,6 @@
 #![feature(fmt_internals)]
 #![feature(hashmap_internals)]
 #![feature(is_sorted)]
-#![feature(iter_copied)]
 #![feature(iter_nth_back)]
 #![feature(iter_once_with)]
 #![feature(pattern)]