about summary refs log tree commit diff
path: root/src/libcore/slice
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2018-06-03 17:33:49 +0300
committerSebastian Dröge <sebastian@centricular.com>2018-06-03 17:33:49 +0300
commitadaf8e6abfac277a8e5e835bbcd704b2848ae2af (patch)
tree03508715f84d04958613acef2fa18286c0ea955c /src/libcore/slice
parentfe5c45bb53268e9496d36a6f5956a7ec6e4854b3 (diff)
downloadrust-adaf8e6abfac277a8e5e835bbcd704b2848ae2af.tar.gz
rust-adaf8e6abfac277a8e5e835bbcd704b2848ae2af.zip
Move TrustedLen and FusedIterator impl of Iter/IterMut into macro
Diffstat (limited to 'src/libcore/slice')
-rw-r--r--src/libcore/slice/mod.rs19
1 files changed, 6 insertions, 13 deletions
diff --git a/src/libcore/slice/mod.rs b/src/libcore/slice/mod.rs
index ab986e4c86d..f1ad5b169f0 100644
--- a/src/libcore/slice/mod.rs
+++ b/src/libcore/slice/mod.rs
@@ -2513,6 +2513,12 @@ macro_rules! iterator {
                 accum
             }
         }
+
+        #[stable(feature = "fused", since = "1.26.0")]
+        impl<'a, T> FusedIterator for $name<'a, T> {}
+
+        #[unstable(feature = "trusted_len", issue = "37572")]
+        unsafe impl<'a, T> TrustedLen for $name<'a, T> {}
     }
 }
 
@@ -2639,12 +2645,6 @@ impl<'a, T> ExactSizeIterator for Iter<'a, T> {
     }
 }
 
-#[stable(feature = "fused", since = "1.26.0")]
-impl<'a, T> FusedIterator for Iter<'a, T> {}
-
-#[unstable(feature = "trusted_len", issue = "37572")]
-unsafe impl<'a, T> TrustedLen for Iter<'a, T> {}
-
 #[stable(feature = "rust1", since = "1.0.0")]
 impl<'a, T> Clone for Iter<'a, T> {
     fn clone(&self) -> Iter<'a, T> { Iter { ptr: self.ptr, end: self.end, _marker: self._marker } }
@@ -2767,13 +2767,6 @@ impl<'a, T> ExactSizeIterator for IterMut<'a, T> {
     }
 }
 
-#[stable(feature = "fused", since = "1.26.0")]
-impl<'a, T> FusedIterator for IterMut<'a, T> {}
-
-#[unstable(feature = "trusted_len", issue = "37572")]
-unsafe impl<'a, T> TrustedLen for IterMut<'a, T> {}
-
-
 // Return the number of elements of `T` from `start` to `end`.
 // Return the arithmetic difference if `T` is zero size.
 #[inline(always)]