diff options
| author | Erick Tryzelaar <erick.tryzelaar@gmail.com> | 2013-09-11 22:16:22 -0700 |
|---|---|---|
| committer | Erick Tryzelaar <erick.tryzelaar@gmail.com> | 2013-09-12 18:54:13 -0700 |
| commit | 43aba856b4a8d1b2068f1f5c5017934442d2aedd (patch) | |
| tree | 5a3fa2f39d5ebbe444763e9b2a5d3330235a4437 /src/libstd/vec.rs | |
| parent | a0e123eb6e2c0a971dd4e9e2c49e2ceed0d73672 (diff) | |
| download | rust-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.rs | 25 |
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()); }} ); |
