diff options
| author | Daniel Micay <danielmicay@gmail.com> | 2013-06-15 02:20:06 -0400 |
|---|---|---|
| committer | Daniel Micay <danielmicay@gmail.com> | 2013-06-15 22:16:21 -0400 |
| commit | 6c547e42c859b1b0051293c48c691d8388bad332 (patch) | |
| tree | 64638dae2106c6be15acd78116c11dc5a76007ea /src/libstd | |
| parent | c989b79127c5062df0a64d8c383de93c82a3d9b7 (diff) | |
| download | rust-6c547e42c859b1b0051293c48c691d8388bad332.tar.gz rust-6c547e42c859b1b0051293c48c691d8388bad332.zip | |
rm vec::uniq_len
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/comm.rs | 2 | ||||
| -rw-r--r-- | src/libstd/container.rs | 4 | ||||
| -rw-r--r-- | src/libstd/io.rs | 2 | ||||
| -rw-r--r-- | src/libstd/repr.rs | 5 | ||||
| -rw-r--r-- | src/libstd/rt/io/extensions.rs | 3 | ||||
| -rw-r--r-- | src/libstd/vec.rs | 28 |
6 files changed, 25 insertions, 19 deletions
diff --git a/src/libstd/comm.rs b/src/libstd/comm.rs index f0c353c8d62..bcdd6cd0bfa 100644 --- a/src/libstd/comm.rs +++ b/src/libstd/comm.rs @@ -209,7 +209,7 @@ impl<T: Owned> Peekable<T> for PortSet<T> { fn peek(&self) -> bool { // It'd be nice to use self.port.each, but that version isn't // pure. - for uint::range(0, vec::uniq_len(&const self.ports)) |i| { + for uint::range(0, self.ports.len()) |i| { let port: &pipesy::Port<T> = &self.ports[i]; if port.peek() { return true; diff --git a/src/libstd/container.rs b/src/libstd/container.rs index 065582e2e0d..c1b656f1cd9 100644 --- a/src/libstd/container.rs +++ b/src/libstd/container.rs @@ -16,10 +16,10 @@ use option::Option; /// knowledge known is the number of elements contained within. pub trait Container { /// Return the number of elements in the container - fn len(&const self) -> uint; + fn len(&self) -> uint; /// Return true if the container contains no elements - fn is_empty(&const self) -> bool; + fn is_empty(&self) -> bool; } /// A trait to represent mutable containers diff --git a/src/libstd/io.rs b/src/libstd/io.rs index 6f065d74fa2..d3faa75e3b0 100644 --- a/src/libstd/io.rs +++ b/src/libstd/io.rs @@ -1667,7 +1667,7 @@ impl Writer for BytesWriter { fn seek(&self, offset: int, whence: SeekStyle) { let pos = *self.pos; - let len = vec::uniq_len(&const *self.bytes); + let len = self.bytes.len(); *self.pos = seek_in_buf(offset, pos, len, whence); } diff --git a/src/libstd/repr.rs b/src/libstd/repr.rs index 46f69d020d1..b7ff1acea13 100644 --- a/src/libstd/repr.rs +++ b/src/libstd/repr.rs @@ -18,6 +18,7 @@ More runtime type reflection use cast::transmute; use char; +use container::Container; use intrinsic; use intrinsic::{TyDesc, TyVisitor, visit_tydesc}; use intrinsic::Opaque; @@ -502,7 +503,7 @@ impl TyVisitor for ReprVisitor { _offset: uint, inner: *TyDesc) -> bool { - match self.var_stk[vec::uniq_len(&const *self.var_stk) - 1] { + match self.var_stk[self.var_stk.len() - 1] { Matched => { if i != 0 { self.writer.write_str(", "); @@ -520,7 +521,7 @@ impl TyVisitor for ReprVisitor { _disr_val: int, n_fields: uint, _name: &str) -> bool { - match self.var_stk[vec::uniq_len(&const *self.var_stk) - 1] { + match self.var_stk[self.var_stk.len() - 1] { Matched => { if n_fields > 0 { self.writer.write_char(')'); diff --git a/src/libstd/rt/io/extensions.rs b/src/libstd/rt/io/extensions.rs index 727ab13a4f6..a5e68bcdac4 100644 --- a/src/libstd/rt/io/extensions.rs +++ b/src/libstd/rt/io/extensions.rs @@ -297,7 +297,8 @@ impl<T: Reader> ReaderUtil for T { do (|| { while total_read < len { - let slice = vec::mut_slice(*buf, start_len + total_read, buf.len()); + let len = buf.len(); + let slice = vec::mut_slice(*buf, start_len + total_read, len); match self.read(slice) { Some(nread) => { total_read += nread; diff --git a/src/libstd/vec.rs b/src/libstd/vec.rs index 211ee12c291..44f3fc4c321 100644 --- a/src/libstd/vec.rs +++ b/src/libstd/vec.rs @@ -118,15 +118,6 @@ pub fn capacity<T>(v: &const ~[T]) -> uint { } } -// A botch to tide us over until core and std are fully demuted. -#[allow(missing_doc)] -pub fn uniq_len<T>(v: &const ~[T]) -> uint { - unsafe { - let v: &~[T] = transmute(v); - as_const_buf(*v, |_p, len| len) - } -} - /** * Creates and initializes an owned vector. * @@ -1767,19 +1758,32 @@ pub mod traits { } } -impl<'self,T> Container for &'self const [T] { +impl<'self, T> Container for &'self const [T] { /// Returns true if a vector contains no elements #[inline] - fn is_empty(&const self) -> bool { + fn is_empty(&self) -> bool { as_const_buf(*self, |_p, len| len == 0u) } /// Returns the length of a vector #[inline] - fn len(&const self) -> uint { + fn len(&self) -> uint { as_const_buf(*self, |_p, len| len) } +} +impl<T> Container for ~[T] { + /// Returns true if a vector contains no elements + #[inline] + fn is_empty(&self) -> bool { + as_const_buf(*self, |_p, len| len == 0u) + } + + /// Returns the length of a vector + #[inline] + fn len(&self) -> uint { + as_const_buf(*self, |_p, len| len) + } } #[allow(missing_doc)] |
