summary refs log tree commit diff
path: root/src/libstd/vec.rs
diff options
context:
space:
mode:
authorErick Tryzelaar <erick.tryzelaar@gmail.com>2013-09-11 22:16:22 -0700
committerErick Tryzelaar <erick.tryzelaar@gmail.com>2013-09-12 18:54:13 -0700
commit43aba856b4a8d1b2068f1f5c5017934442d2aedd (patch)
tree5a3fa2f39d5ebbe444763e9b2a5d3330235a4437 /src/libstd/vec.rs
parenta0e123eb6e2c0a971dd4e9e2c49e2ceed0d73672 (diff)
downloadrust-43aba856b4a8d1b2068f1f5c5017934442d2aedd.tar.gz
rust-43aba856b4a8d1b2068f1f5c5017934442d2aedd.zip
std: Remove Zero impl from vec
Vecs are not numeric types, so it doesn't make sense for them to
implement Zero.
Diffstat (limited to 'src/libstd/vec.rs')
-rw-r--r--src/libstd/vec.rs25
1 files changed, 4 insertions, 21 deletions
diff --git a/src/libstd/vec.rs b/src/libstd/vec.rs
index b91384f0ba5..47c3a079614 100644
--- a/src/libstd/vec.rs
+++ b/src/libstd/vec.rs
@@ -107,7 +107,7 @@ use cmp;
 use default::Default;
 use iter::*;
 use libc::c_void;
-use num::{Integer, Zero, CheckedAdd, Saturating};
+use num::{Integer, CheckedAdd, Saturating};
 use option::{None, Option, Some};
 use ptr::to_unsafe_ptr;
 use ptr;
@@ -2250,22 +2250,6 @@ impl<A> Default for @[A] {
     fn default() -> @[A] { @[] }
 }
 
-// This works because every lifetime is a sub-lifetime of 'static
-impl<'self, A> Zero for &'self [A] {
-    fn zero() -> &'self [A] { &'self [] }
-    fn is_zero(&self) -> bool { self.is_empty() }
-}
-
-impl<A> Zero for ~[A] {
-    fn zero() -> ~[A] { ~[] }
-    fn is_zero(&self) -> bool { self.len() == 0 }
-}
-
-impl<A> Zero for @[A] {
-    fn zero() -> @[A] { @[] }
-    fn is_zero(&self) -> bool { self.len() == 0 }
-}
-
 macro_rules! iterator {
     /* FIXME: #4375 Cannot attach documentation/attributes to a macro generated struct.
     (struct $name:ident -> $ptr:ty, $elem:ty) => {
@@ -3602,13 +3586,12 @@ mod tests {
     }
 
     #[test]
-    fn test_vec_zero() {
-        use num::Zero;
+    fn test_vec_default() {
+        use default::Default;
         macro_rules! t (
             ($ty:ty) => {{
-                let v: $ty = Zero::zero();
+                let v: $ty = Default::default();
                 assert!(v.is_empty());
-                assert!(v.is_zero());
             }}
         );