diff options
| author | Patrick Walton <pcwalton@mimiga.net> | 2013-06-04 21:43:41 -0700 |
|---|---|---|
| committer | Patrick Walton <pcwalton@mimiga.net> | 2013-06-04 21:45:42 -0700 |
| commit | 8114d0e9505b44856b822dd587293fd7895320e4 (patch) | |
| tree | 1e738ee1a533e43733225d9a66b065fb550b6dc7 /src/libstd/vec.rs | |
| parent | 16086ecff7edda82b114a72948762d59095f6fb4 (diff) | |
| download | rust-8114d0e9505b44856b822dd587293fd7895320e4.tar.gz rust-8114d0e9505b44856b822dd587293fd7895320e4.zip | |
librustc: Disallow multiple patterns from appearing in a "let" declaration.
You can still initialize multiple variables at once with "let (x, y) = (1, 2)".
Diffstat (limited to 'src/libstd/vec.rs')
| -rw-r--r-- | src/libstd/vec.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/libstd/vec.rs b/src/libstd/vec.rs index 9aeee4ba7b7..f078cd3bda3 100644 --- a/src/libstd/vec.rs +++ b/src/libstd/vec.rs @@ -749,7 +749,7 @@ pub fn truncate<T>(v: &mut ~[T], newlen: uint) { pub fn dedup<T:Eq>(v: &mut ~[T]) { unsafe { if v.len() < 1 { return; } - let mut last_written = 0, next_to_read = 1; + let mut (last_written, next_to_read) = (0, 1); do as_const_buf(*v) |p, ln| { // We have a mutable reference to v, so we can make arbitrary // changes. (cf. push and pop) @@ -1365,7 +1365,7 @@ pub fn bsearch_elem<T:TotalOrd>(v: &[T], x: &T) -> Option<uint> { * Convert a vector of pairs into a pair of vectors, by reference. As unzip(). */ pub fn unzip_slice<T:Copy,U:Copy>(v: &[(T, U)]) -> (~[T], ~[U]) { - let mut ts = ~[], us = ~[]; + let mut (ts, us) = (~[], ~[]); for each(v) |p| { let (t, u) = *p; ts.push(t); @@ -1383,7 +1383,7 @@ pub fn unzip_slice<T:Copy,U:Copy>(v: &[(T, U)]) -> (~[T], ~[U]) { * of the i-th tuple of the input vector. */ pub fn unzip<T,U>(v: ~[(T, U)]) -> (~[T], ~[U]) { - let mut ts = ~[], us = ~[]; + let mut (ts, us) = (~[], ~[]); do consume(v) |_i, p| { let (t, u) = p; ts.push(t); |
