diff options
| author | Huon Wilson <dbau.pp+github@gmail.com> | 2013-07-02 01:26:44 +1000 |
|---|---|---|
| committer | Huon Wilson <dbau.pp+github@gmail.com> | 2013-07-04 00:46:49 +1000 |
| commit | eee677564216a64f48ebaffa860e4062f2b2d264 (patch) | |
| tree | 57cbad17c6c510a8a164dc88b757a1ba908454b6 /src/libextra | |
| parent | 55f155521d2f604794d2ab1de2a8d439440af4a8 (diff) | |
| download | rust-eee677564216a64f48ebaffa860e4062f2b2d264.tar.gz rust-eee677564216a64f48ebaffa860e4062f2b2d264.zip | |
Implement consuming iterators for ~[], remove vec::{consume, consume_reverse, map_consume}.
Diffstat (limited to 'src/libextra')
| -rw-r--r-- | src/libextra/json.rs | 5 | ||||
| -rw-r--r-- | src/libextra/par.rs | 5 | ||||
| -rw-r--r-- | src/libextra/test.rs | 2 |
3 files changed, 5 insertions, 7 deletions
diff --git a/src/libextra/json.rs b/src/libextra/json.rs index 210921aa3d7..71d99479693 100644 --- a/src/libextra/json.rs +++ b/src/libextra/json.rs @@ -24,7 +24,6 @@ use std::io::{WriterUtil, ReaderUtil}; use std::io; use std::str; use std::to_str; -use std::vec; use serialize::Encodable; use serialize; @@ -941,7 +940,7 @@ impl serialize::Decoder for Decoder { let name = match self.stack.pop() { String(s) => s, List(list) => { - do vec::consume_reverse(list) |_i, v| { + for list.consume_rev_iter().advance |v| { self.stack.push(v); } match self.stack.pop() { @@ -1059,7 +1058,7 @@ impl serialize::Decoder for Decoder { let len = match self.stack.pop() { List(list) => { let len = list.len(); - do vec::consume_reverse(list) |_i, v| { + for list.consume_rev_iter().advance |v| { self.stack.push(v); } len diff --git a/src/libextra/par.rs b/src/libextra/par.rs index 2d827365681..da046f6b5ce 100644 --- a/src/libextra/par.rs +++ b/src/libextra/par.rs @@ -78,11 +78,10 @@ fn map_slices<A:Copy + Send,B:Copy + Send>( info!("num_tasks: %?", (num_tasks, futures.len())); assert_eq!(num_tasks, futures.len()); - let r = do vec::map_consume(futures) |ys| { + do futures.consume_iter().transform |ys| { let mut ys = ys; ys.get() - }; - r + }.collect() } } diff --git a/src/libextra/test.rs b/src/libextra/test.rs index 59aed0055d8..313577ac67d 100644 --- a/src/libextra/test.rs +++ b/src/libextra/test.rs @@ -477,7 +477,7 @@ fn run_tests(opts: &TestOpts, } // All benchmarks run at the end, in serial. - do vec::consume(filtered_benchs) |_, b| { + for filtered_benchs.consume_iter().advance |b| { callback(TeWait(copy b.desc)); run_test(!opts.run_benchmarks, b, ch.clone()); let (test, result) = p.recv(); |
