about summary refs log tree commit diff
path: root/library/alloc/src/vec
diff options
context:
space:
mode:
authorC <DeveloperC@protonmail.com>2020-12-05 00:47:54 +0000
committerC <DeveloperC@protonmail.com>2020-12-29 14:03:29 +0000
commit2a1248976a00429994d5965bb31d6dcc1b7dcd68 (patch)
tree5a27b90f5bc6ac0356e020f5a78f2ef376b5ec00 /library/alloc/src/vec
parent93613901d004ccf0b8a240bf328559a4128ac3b2 (diff)
downloadrust-2a1248976a00429994d5965bb31d6dcc1b7dcd68.tar.gz
rust-2a1248976a00429994d5965bb31d6dcc1b7dcd68.zip
refactor: moving AsIntoIter into into_iter.rs
Diffstat (limited to 'library/alloc/src/vec')
-rw-r--r--library/alloc/src/vec/into_iter.rs15
-rw-r--r--library/alloc/src/vec/mod.rs16
2 files changed, 16 insertions, 15 deletions
diff --git a/library/alloc/src/vec/into_iter.rs b/library/alloc/src/vec/into_iter.rs
index 623792a6316..c4330df4ad9 100644
--- a/library/alloc/src/vec/into_iter.rs
+++ b/library/alloc/src/vec/into_iter.rs
@@ -268,3 +268,18 @@ unsafe impl<T, A: Allocator> SourceIter for IntoIter<T, A> {
         self
     }
 }
+
+// internal helper trait for in-place iteration specialization.
+#[rustc_specialization_trait]
+pub(crate) trait AsIntoIter {
+    type Item;
+    fn as_into_iter(&mut self) -> &mut IntoIter<Self::Item>;
+}
+
+impl<T> AsIntoIter for IntoIter<T> {
+    type Item = T;
+
+    fn as_into_iter(&mut self) -> &mut IntoIter<Self::Item> {
+        self
+    }
+}
diff --git a/library/alloc/src/vec/mod.rs b/library/alloc/src/vec/mod.rs
index b6508bfea08..1f410e3c028 100644
--- a/library/alloc/src/vec/mod.rs
+++ b/library/alloc/src/vec/mod.rs
@@ -93,6 +93,7 @@ mod cow;
 
 #[stable(feature = "rust1", since = "1.0.0")]
 pub use self::into_iter::IntoIter;
+pub (crate) use self::into_iter::AsIntoIter;
 
 mod into_iter;
 
@@ -3019,18 +3020,3 @@ impl<T, A: Allocator, const N: usize> TryFrom<Vec<T, A>> for [T; N] {
         Ok(array)
     }
 }
-
-// internal helper trait for in-place iteration specialization.
-#[rustc_specialization_trait]
-pub(crate) trait AsIntoIter {
-    type Item;
-    fn as_into_iter(&mut self) -> &mut IntoIter<Self::Item>;
-}
-
-impl<T> AsIntoIter for IntoIter<T> {
-    type Item = T;
-
-    fn as_into_iter(&mut self) -> &mut IntoIter<Self::Item> {
-        self
-    }
-}