diff options
| author | Alex Crichton <alex@alexcrichton.com> | 2015-02-02 11:01:12 -0800 |
|---|---|---|
| committer | Alex Crichton <alex@alexcrichton.com> | 2015-02-02 11:01:12 -0800 |
| commit | 7335c7dd63cafe70ffca76677f9e33bc6eccefaa (patch) | |
| tree | 3646a5159f74b47d8bdf471eff072ea71f395d82 /src/test | |
| parent | 075588a4939acb47feea79779a9bdacce702d9c5 (diff) | |
| parent | 3484706c38272828efc50b2553578afc62230dbb (diff) | |
| download | rust-7335c7dd63cafe70ffca76677f9e33bc6eccefaa.tar.gz rust-7335c7dd63cafe70ffca76677f9e33bc6eccefaa.zip | |
rollup merge of #21830: japaric/for-cleanup
Conflicts: src/librustc/metadata/filesearch.rs src/librustc_back/target/mod.rs src/libstd/os.rs src/libstd/sys/windows/os.rs src/libsyntax/ext/tt/macro_parser.rs src/libsyntax/print/pprust.rs src/test/compile-fail/issue-2149.rs
Diffstat (limited to 'src/test')
82 files changed, 111 insertions, 111 deletions
diff --git a/src/test/auxiliary/cci_nested_lib.rs b/src/test/auxiliary/cci_nested_lib.rs index 8494917c615..587af956c77 100644 --- a/src/test/auxiliary/cci_nested_lib.rs +++ b/src/test/auxiliary/cci_nested_lib.rs @@ -35,7 +35,7 @@ pub fn alist_get<A:Clone + 'static, -> B { let eq_fn = lst.eq_fn; let data = lst.data.borrow(); - for entry in (*data).iter() { + for entry in &(*data) { if eq_fn(entry.key.clone(), k.clone()) { return entry.value.clone(); } diff --git a/src/test/bench/msgsend-pipes-shared.rs b/src/test/bench/msgsend-pipes-shared.rs index 6928397566d..259b4d9418d 100644 --- a/src/test/bench/msgsend-pipes-shared.rs +++ b/src/test/bench/msgsend-pipes-shared.rs @@ -75,7 +75,7 @@ fn run(args: &[String]) { server(&from_parent, &to_parent); }); - for r in worker_results.into_iter() { + for r in worker_results { let _ = r.join(); } diff --git a/src/test/bench/msgsend-pipes.rs b/src/test/bench/msgsend-pipes.rs index 9bf0ce1a590..1341c03e505 100644 --- a/src/test/bench/msgsend-pipes.rs +++ b/src/test/bench/msgsend-pipes.rs @@ -82,7 +82,7 @@ fn run(args: &[String]) { server(&from_parent, &to_parent); }); - for r in worker_results.into_iter() { + for r in worker_results { let _ = r.join(); } diff --git a/src/test/bench/msgsend-ring-mutex-arcs.rs b/src/test/bench/msgsend-ring-mutex-arcs.rs index c344084a4c0..5d17e3a460c 100644 --- a/src/test/bench/msgsend-ring-mutex-arcs.rs +++ b/src/test/bench/msgsend-ring-mutex-arcs.rs @@ -99,7 +99,7 @@ fn main() { thread_ring(0, msg_per_task, num_chan, num_port); // synchronize - for f in futures.iter_mut() { + for f in &mut futures { f.get() } }); diff --git a/src/test/bench/noise.rs b/src/test/bench/noise.rs index 664491eed7d..dc5b2f4596e 100644 --- a/src/test/bench/noise.rs +++ b/src/test/bench/noise.rs @@ -45,7 +45,7 @@ impl Noise2DContext { let mut rng = StdRng::new().unwrap(); let mut rgradients = [Vec2 { x: 0.0, y: 0.0 }; 256]; - for x in rgradients.iter_mut() { + for x in &mut rgradients[] { *x = random_gradient(&mut rng); } diff --git a/src/test/bench/shootout-binarytrees.rs b/src/test/bench/shootout-binarytrees.rs index 4182f8b651b..dc65a63c5cb 100644 --- a/src/test/bench/shootout-binarytrees.rs +++ b/src/test/bench/shootout-binarytrees.rs @@ -114,7 +114,7 @@ fn main() { Thread::scoped(move || inner(depth, iterations)) }).collect::<Vec<_>>(); - for message in messages.into_iter() { + for message in messages { println!("{}", message.join().ok().unwrap()); } diff --git a/src/test/bench/shootout-chameneos-redux.rs b/src/test/bench/shootout-chameneos-redux.rs index 15a63e153b9..0835dd9a08e 100644 --- a/src/test/bench/shootout-chameneos-redux.rs +++ b/src/test/bench/shootout-chameneos-redux.rs @@ -47,8 +47,8 @@ use std::thread::Thread; fn print_complements() { let all = [Blue, Red, Yellow]; - for aa in all.iter() { - for bb in all.iter() { + for aa in &all { + for bb in &all { println!("{:?} + {:?} -> {:?}", *aa, *bb, transform(*aa, *bb)); } } @@ -80,7 +80,7 @@ struct CreatureInfo { fn show_color_list(set: Vec<Color>) -> String { let mut out = String::new(); - for col in set.iter() { + for col in &set { out.push(' '); out.push_str(format!("{:?}", col).as_slice()); } diff --git a/src/test/bench/shootout-fannkuch-redux.rs b/src/test/bench/shootout-fannkuch-redux.rs index 03666c84d57..47613e2d69c 100644 --- a/src/test/bench/shootout-fannkuch-redux.rs +++ b/src/test/bench/shootout-fannkuch-redux.rs @@ -171,7 +171,7 @@ fn fannkuch(n: i32) -> (i32, i32) { let mut checksum = 0; let mut maxflips = 0; - for fut in futures.into_iter() { + for fut in futures { let (cs, mf) = fut.join().ok().unwrap(); checksum += cs; maxflips = cmp::max(maxflips, mf); diff --git a/src/test/bench/shootout-fasta-redux.rs b/src/test/bench/shootout-fasta-redux.rs index f32e98ef17d..5386fc0419d 100644 --- a/src/test/bench/shootout-fasta-redux.rs +++ b/src/test/bench/shootout-fasta-redux.rs @@ -92,7 +92,7 @@ static HOMO_SAPIENS: [AminoAcid;4] = [ fn sum_and_scale(a: &'static [AminoAcid]) -> Vec<AminoAcid> { let mut result = Vec::new(); let mut p = 0f32; - for a_i in a.iter() { + for a_i in a { let mut a_i = *a_i; p += a_i.p; a_i.p = p * LOOKUP_SCALE; @@ -180,7 +180,7 @@ impl<'a, W: Writer> RandomFasta<'a, W> { fn nextc(&mut self) -> u8 { let r = self.rng(1.0); - for a in self.lookup.iter() { + for a in &self.lookup[] { if a.p >= r { return a.c; } diff --git a/src/test/bench/shootout-k-nucleotide-pipes.rs b/src/test/bench/shootout-k-nucleotide-pipes.rs index 2da276b722e..ad8e6551a03 100644 --- a/src/test/bench/shootout-k-nucleotide-pipes.rs +++ b/src/test/bench/shootout-k-nucleotide-pipes.rs @@ -56,14 +56,14 @@ fn sort_and_fmt(mm: &HashMap<Vec<u8> , uint>, total: uint) -> String { let mut pairs = Vec::new(); // map -> [(k,%)] - for (key, &val) in mm.iter() { + for (key, &val) in mm { pairs.push(((*key).clone(), pct(val, total))); } let pairs_sorted = sortKV(pairs); let mut buffer = String::new(); - for &(ref k, v) in pairs_sorted.iter() { + for &(ref k, v) in &pairs_sorted { buffer.push_str(format!("{:?} {:0.3}\n", k.to_ascii_uppercase(), v).as_slice()); diff --git a/src/test/bench/shootout-k-nucleotide.rs b/src/test/bench/shootout-k-nucleotide.rs index 2c3ade63f06..e3f8e60df93 100644 --- a/src/test/bench/shootout-k-nucleotide.rs +++ b/src/test/bench/shootout-k-nucleotide.rs @@ -264,7 +264,7 @@ fn print_frequencies(frequencies: &Table, frame: uint) { vector.as_mut_slice().sort(); let mut total_count = 0; - for &(count, _) in vector.iter() { + for &(count, _) in &vector { total_count += count; } @@ -308,7 +308,7 @@ fn main() { Thread::scoped(move|| generate_frequencies(input.as_slice(), occ.len())) }).collect(); - for (i, freq) in nb_freqs.into_iter() { + for (i, freq) in nb_freqs { print_frequencies(&freq.join().ok().unwrap(), i); } for (&occ, freq) in OCCURRENCES.iter().zip(occ_freqs.into_iter()) { diff --git a/src/test/bench/shootout-mandelbrot.rs b/src/test/bench/shootout-mandelbrot.rs index ac32b584801..a5729c5b5bd 100644 --- a/src/test/bench/shootout-mandelbrot.rs +++ b/src/test/bench/shootout-mandelbrot.rs @@ -106,7 +106,7 @@ fn mandelbrot<W: old_io::Writer>(w: usize, mut out: W) -> old_io::IoResult<()> { }) }).collect::<Vec<_>>(); - for res in precalc_futures.into_iter() { + for res in precalc_futures { let (rs, is) = res.join().ok().unwrap(); precalc_r.extend(rs.into_iter()); precalc_i.extend(is.into_iter()); @@ -133,7 +133,7 @@ fn mandelbrot<W: old_io::Writer>(w: usize, mut out: W) -> old_io::IoResult<()> { (i + 1) * chunk_size }; - for &init_i in vec_init_i[start..end].iter() { + for &init_i in &vec_init_i[start..end] { write_line(init_i, init_r_slice, &mut res); } @@ -142,7 +142,7 @@ fn mandelbrot<W: old_io::Writer>(w: usize, mut out: W) -> old_io::IoResult<()> { }).collect::<Vec<_>>(); try!(writeln!(&mut out as &mut Writer, "P4\n{} {}", w, h)); - for res in data.into_iter() { + for res in data { try!(out.write(res.join().ok().unwrap().as_slice())); } out.flush() diff --git a/src/test/bench/shootout-meteor.rs b/src/test/bench/shootout-meteor.rs index d44948e4ed2..d061403d590 100644 --- a/src/test/bench/shootout-meteor.rs +++ b/src/test/bench/shootout-meteor.rs @@ -116,9 +116,9 @@ fn transform(piece: Vec<(i32, i32)> , all: bool) -> Vec<Vec<(i32, i32)>> { }).collect(); // translating to (0, 0) as minimum coordinates. - for cur_piece in res.iter_mut() { + for cur_piece in &mut res { let (dy, dx) = *cur_piece.iter().min_by(|e| *e).unwrap(); - for &mut (ref mut y, ref mut x) in cur_piece.iter_mut() { + for &mut (ref mut y, ref mut x) in cur_piece { *y -= dy; *x -= dx; } } @@ -135,7 +135,7 @@ fn transform(piece: Vec<(i32, i32)> , all: bool) -> Vec<Vec<(i32, i32)>> { // dx) is on the board. fn mask(dy: i32, dx: i32, id: usize, p: &Vec<(i32, i32)>) -> Option<u64> { let mut m = 1 << (50 + id); - for &(y, x) in p.iter() { + for &(y, x) in p { let x = x + dx + (y + (dy % 2)) / 2; if x < 0 || x > 4 {return None;} let y = y + dy; @@ -184,7 +184,7 @@ fn is_board_unfeasible(board: u64, masks: &Vec<Vec<Vec<u64>>>) -> bool { if board & 1 << i != 0 { continue; } for (cur_id, pos_masks) in masks_at.iter().enumerate() { if board & 1 << (50 + cur_id) != 0 { continue; } - for &cur_m in pos_masks.iter() { + for &cur_m in pos_masks { if cur_m & board != 0 { continue; } coverable |= cur_m; // if every coordinates can be covered and every diff --git a/src/test/bench/shootout-nbody.rs b/src/test/bench/shootout-nbody.rs index b2161000322..a8de1469456 100644 --- a/src/test/bench/shootout-nbody.rs +++ b/src/test/bench/shootout-nbody.rs @@ -109,7 +109,7 @@ fn advance(bodies: &mut [Planet;N_BODIES], dt: f64, steps: int) { Some(bi) => bi, None => break }; - for bj in b_slice.iter_mut() { + for bj in &mut *b_slice { let dx = bi.x - bj.x; let dy = bi.y - bj.y; let dz = bi.z - bj.z; @@ -158,7 +158,7 @@ fn offset_momentum(bodies: &mut [Planet;N_BODIES]) { let mut px = 0.0; let mut py = 0.0; let mut pz = 0.0; - for bi in bodies.iter() { + for bi in &*bodies { px += bi.vx * bi.mass; py += bi.vy * bi.mass; pz += bi.vz * bi.mass; diff --git a/src/test/bench/shootout-pfib.rs b/src/test/bench/shootout-pfib.rs index dd3ae1699a9..ea1d913b3e2 100644 --- a/src/test/bench/shootout-pfib.rs +++ b/src/test/bench/shootout-pfib.rs @@ -82,7 +82,7 @@ fn stress(num_tasks: int) { stress_task(i); })); } - for r in results.into_iter() { + for r in results { let _ = r.join(); } } diff --git a/src/test/compile-fail/borrowck-for-loop-correct-cmt-for-pattern.rs b/src/test/compile-fail/borrowck-for-loop-correct-cmt-for-pattern.rs index ad77953bdd8..492fd4a2c84 100644 --- a/src/test/compile-fail/borrowck-for-loop-correct-cmt-for-pattern.rs +++ b/src/test/compile-fail/borrowck-for-loop-correct-cmt-for-pattern.rs @@ -25,7 +25,7 @@ fn main() { let f = Foo { a: [box 3, box 4, box 5], }; - for &a in f.a.iter() { //~ ERROR cannot move out + for &a in &f.a { //~ ERROR cannot move out } let x = Some(box 1); diff --git a/src/test/compile-fail/borrowck-for-loop-head-linkage.rs b/src/test/compile-fail/borrowck-for-loop-head-linkage.rs index d2f99ea696a..043ea0bf00e 100644 --- a/src/test/compile-fail/borrowck-for-loop-head-linkage.rs +++ b/src/test/compile-fail/borrowck-for-loop-head-linkage.rs @@ -12,7 +12,7 @@ use std::iter::repeat; fn main() { let mut vector = vec![1us, 2]; - for &x in vector.iter() { + for &x in &vector { let cap = vector.capacity(); vector.extend(repeat(0)); //~ ERROR cannot borrow vector[1us] = 5us; //~ ERROR cannot borrow diff --git a/src/test/compile-fail/borrowck-insert-during-each.rs b/src/test/compile-fail/borrowck-insert-during-each.rs index d729af844cb..2c634865983 100644 --- a/src/test/compile-fail/borrowck-insert-during-each.rs +++ b/src/test/compile-fail/borrowck-insert-during-each.rs @@ -17,7 +17,7 @@ struct Foo { impl Foo { pub fn foo<F>(&mut self, mut fun: F) where F: FnMut(&isize) { - for f in self.n.iter() { + for f in &self.n { fun(f); } } diff --git a/src/test/compile-fail/drop-with-active-borrows-1.rs b/src/test/compile-fail/drop-with-active-borrows-1.rs index 5f5fbd0f348..dc8deb04833 100644 --- a/src/test/compile-fail/drop-with-active-borrows-1.rs +++ b/src/test/compile-fail/drop-with-active-borrows-1.rs @@ -12,7 +12,7 @@ fn main() { let a = "".to_string(); let b: Vec<&str> = a.lines().collect(); drop(a); //~ ERROR cannot move out of `a` because it is borrowed - for s in b.iter() { + for s in &b { println!("{}", *s); } } diff --git a/src/test/compile-fail/issue-15480.rs b/src/test/compile-fail/issue-15480.rs index 1e4476e563b..30f58f909a0 100644 --- a/src/test/compile-fail/issue-15480.rs +++ b/src/test/compile-fail/issue-15480.rs @@ -14,7 +14,7 @@ fn main() { //~^ ERROR borrowed value does not live long enough ]; - for &&x in v.iter() { + for &&x in &v { println!("{}", x + 3); } } diff --git a/src/test/compile-fail/issue-18400.rs b/src/test/compile-fail/issue-18400.rs index f3b2b3d5667..015f1fa603a 100644 --- a/src/test/compile-fail/issue-18400.rs +++ b/src/test/compile-fail/issue-18400.rs @@ -22,7 +22,7 @@ impl<'a, T, S> Set<&'a [T]> for S where } fn set(&mut self, bits: &[T]) { - for &bit in bits.iter() { + for &bit in bits { self.set(bit) } } diff --git a/src/test/compile-fail/issue-2149.rs b/src/test/compile-fail/issue-2149.rs index 4852dfc9a02..998b9587b96 100644 --- a/src/test/compile-fail/issue-2149.rs +++ b/src/test/compile-fail/issue-2149.rs @@ -15,8 +15,8 @@ trait vec_monad<A> { impl<A> vec_monad<A> for Vec<A> { fn bind<B, F>(&self, mut f: F) where F: FnMut(A) -> Vec<B> { let mut r = panic!(); - for elt in self.iter() { r = r + f(*elt); } - //~^ ERROR binary operation `+` cannot be applied to type `collections::vec::Vec<B>` + for elt in self { r = r + f(*elt); } + //~^ ERROR the type of this value must be known } } fn main() { diff --git a/src/test/compile-fail/issue-2150.rs b/src/test/compile-fail/issue-2150.rs index 68195985eec..a2711d532d2 100644 --- a/src/test/compile-fail/issue-2150.rs +++ b/src/test/compile-fail/issue-2150.rs @@ -16,7 +16,7 @@ fn fail_len(v: Vec<isize> ) -> usize { let mut i = 3; panic!(); - for x in v.iter() { i += 1us; } + for x in &v { i += 1us; } //~^ ERROR: unreachable statement return i; } diff --git a/src/test/compile-fail/issue-5100.rs b/src/test/compile-fail/issue-5100.rs index b051abbc7ff..474274c93fd 100644 --- a/src/test/compile-fail/issue-5100.rs +++ b/src/test/compile-fail/issue-5100.rs @@ -64,7 +64,7 @@ fn main() { ('c', 'd'), ('e', 'f')]; - for &(x,y) in v.iter() {} // should be OK + for &(x,y) in &v {} // should be OK // Make sure none of the errors above were fatal let x: char = true; //~ ERROR mismatched types diff --git a/src/test/compile-fail/issue-7573.rs b/src/test/compile-fail/issue-7573.rs index 897afb1c102..c15c556f5d6 100644 --- a/src/test/compile-fail/issue-7573.rs +++ b/src/test/compile-fail/issue-7573.rs @@ -32,7 +32,7 @@ pub fn remove_package_from_database() { }; list_database(push_id); - for l in lines_to_use.iter() { + for l in &lines_to_use { println!("{}", l.local_path); } @@ -41,7 +41,7 @@ pub fn remove_package_from_database() { pub fn list_database<F>(mut f: F) where F: FnMut(&CrateId) { let stuff = ["foo", "bar"]; - for l in stuff.iter() { + for l in &stuff { f(&CrateId::new(*l)); } } diff --git a/src/test/compile-fail/vec-mut-iter-borrow.rs b/src/test/compile-fail/vec-mut-iter-borrow.rs index 7dcedc8ecad..023ef72c453 100644 --- a/src/test/compile-fail/vec-mut-iter-borrow.rs +++ b/src/test/compile-fail/vec-mut-iter-borrow.rs @@ -11,7 +11,7 @@ fn main() { let mut xs: Vec<isize> = vec!(); - for x in xs.iter_mut() { + for x in &mut xs { xs.push(1) //~ ERROR cannot borrow `xs` } } diff --git a/src/test/debuginfo/destructured-for-loop-variable.rs b/src/test/debuginfo/destructured-for-loop-variable.rs index 08062ce8966..0d526d60190 100644 --- a/src/test/debuginfo/destructured-for-loop-variable.rs +++ b/src/test/debuginfo/destructured-for-loop-variable.rs @@ -170,14 +170,14 @@ fn main() { z: true }; - for &Struct { x, y, z } in [s].iter() { + for &Struct { x, y, z } in &[s] { zzz(); // #break } let tuple: (i8, u8, i16, u16, i32, u32, i64, u64, f32, f64) = (0x6f, 0x70, -113, 114, -115, 116, -117, 118, 119.5, 120.5); - for &(_i8, _u8, _i16, _u16, _i32, _u32, _i64, _u64, _f32, _f64) in [tuple].iter() { + for &(_i8, _u8, _i16, _u16, _i32, _u32, _i64, _u64, _f32, _f64) in &[tuple] { zzz(); // #break } @@ -215,7 +215,7 @@ fn main() { zzz(); // #break } - for simple_tuple_ident in vec![(34903493u32, 232323i64)].into_iter() { + for simple_tuple_ident in vec![(34903493u32, 232323i64)] { zzz(); // #break } } diff --git a/src/test/debuginfo/lexical-scope-in-for-loop.rs b/src/test/debuginfo/lexical-scope-in-for-loop.rs index 1fa54e47163..fe5983cbb6a 100644 --- a/src/test/debuginfo/lexical-scope-in-for-loop.rs +++ b/src/test/debuginfo/lexical-scope-in-for-loop.rs @@ -94,7 +94,7 @@ fn main() { let x = 1000000; // wan meeeljen doollaars! - for &x in range.iter() { + for &x in &range { zzz(); // #break sentinel(); diff --git a/src/test/debuginfo/unreachable-locals.rs b/src/test/debuginfo/unreachable-locals.rs index 70f8b1ccd96..8bcb54af8ba 100644 --- a/src/test/debuginfo/unreachable-locals.rs +++ b/src/test/debuginfo/unreachable-locals.rs @@ -26,7 +26,7 @@ fn after_return() { match (20i32, 'c') { (a, ref b) => {} } - for a in [111i32].iter() {} + for a in &[111i32] {} } fn after_panic() { @@ -36,7 +36,7 @@ fn after_panic() { match (20i32, 'c') { (a, ref b) => {} } - for a in [111i32].iter() {} + for a in &[111i32] {} } fn after_diverging_function() { @@ -46,7 +46,7 @@ fn after_diverging_function() { match (20i32, 'c') { (a, ref b) => {} } - for a in [111i32].iter() {} + for a in &[111i32] {} } fn after_break() { @@ -57,7 +57,7 @@ fn after_break() { match (20i32, 'c') { (a, ref b) => {} } - for a in [111i32].iter() {} + for a in &[111i32] {} } } @@ -69,7 +69,7 @@ fn after_continue() { match (20i32, 'c') { (a, ref b) => {} } - for a in [111i32].iter() {} + for a in &[111i32] {} } } diff --git a/src/test/pretty/block-comment-wchar.pp b/src/test/pretty/block-comment-wchar.pp index fbdd15b6060..5a55cb4e561 100644 --- a/src/test/pretty/block-comment-wchar.pp +++ b/src/test/pretty/block-comment-wchar.pp @@ -109,7 +109,7 @@ fn main() { '\u2000', '\u2001', '\u2002', '\u2003', '\u2004', '\u2005', '\u2006', '\u2007', '\u2008', '\u2009', '\u200A', '\u2028', '\u2029', '\u202F', '\u205F', '\u3000']; - for c in chars.iter() { + for c in &chars { let ws = c.is_whitespace(); println!("{} {}" , c , ws); } diff --git a/src/test/pretty/block-comment-wchar.rs b/src/test/pretty/block-comment-wchar.rs index cc5640ce82a..c82bdcd8dcb 100644 --- a/src/test/pretty/block-comment-wchar.rs +++ b/src/test/pretty/block-comment-wchar.rs @@ -103,7 +103,7 @@ fn main() { '\u2000', '\u2001', '\u2002', '\u2003', '\u2004', '\u2005', '\u2006', '\u2007', '\u2008', '\u2009', '\u200A', '\u2028', '\u2029', '\u202F', '\u205F', '\u3000']; - for c in chars.iter() { + for c in &chars { let ws = c.is_whitespace(); println!("{} {}", c , ws); } diff --git a/src/test/pretty/for-comment.rs b/src/test/pretty/for-comment.rs index 2318e783b69..0f2a667e11c 100644 --- a/src/test/pretty/for-comment.rs +++ b/src/test/pretty/for-comment.rs @@ -12,7 +12,7 @@ fn f(v: &[int]) -> int { let mut n = 0; - for e in v.iter() { + for e in v { n = *e; // This comment once triggered pretty printer bug } diff --git a/src/test/run-pass/auto-loop.rs b/src/test/run-pass/auto-loop.rs index e5f4d078749..2cc7451e138 100644 --- a/src/test/run-pass/auto-loop.rs +++ b/src/test/run-pass/auto-loop.rs @@ -11,7 +11,7 @@ pub fn main() { let mut sum = 0; let xs = vec!(1, 2, 3, 4, 5); - for x in xs.iter() { + for x in &xs { sum += *x; } assert_eq!(sum, 15); diff --git a/src/test/run-pass/block-arg.rs b/src/test/run-pass/block-arg.rs index d017a0dbf9a..2f530331a2b 100644 --- a/src/test/run-pass/block-arg.rs +++ b/src/test/run-pass/block-arg.rs @@ -13,7 +13,7 @@ pub fn main() { let v = vec!(-1.0f64, 0.0, 1.0, 2.0, 3.0); // Statement form does not require parentheses: - for i in v.iter() { + for i in &v { println!("{}", *i); } diff --git a/src/test/run-pass/block-iter-1.rs b/src/test/run-pass/block-iter-1.rs index b5bd4d90c2e..d5d26f42ef0 100644 --- a/src/test/run-pass/block-iter-1.rs +++ b/src/test/run-pass/block-iter-1.rs @@ -8,7 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -fn iter_vec<T, F>(v: Vec<T> , mut f: F) where F: FnMut(&T) { for x in v.iter() { f(x); } } +fn iter_vec<T, F>(v: Vec<T> , mut f: F) where F: FnMut(&T) { for x in &v { f(x); } } pub fn main() { let v = vec![1i32, 2, 3, 4, 5, 6, 7]; diff --git a/src/test/run-pass/block-iter-2.rs b/src/test/run-pass/block-iter-2.rs index 348d9df6e7e..8c079ca4b07 100644 --- a/src/test/run-pass/block-iter-2.rs +++ b/src/test/run-pass/block-iter-2.rs @@ -8,7 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -fn iter_vec<T, F>(v: Vec<T>, mut f: F) where F: FnMut(&T) { for x in v.iter() { f(x); } } +fn iter_vec<T, F>(v: Vec<T>, mut f: F) where F: FnMut(&T) { for x in &v { f(x); } } pub fn main() { let v = vec![1i32, 2, 3, 4, 5]; diff --git a/src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs b/src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs index 05dffe91680..94c7c2b13ce 100644 --- a/src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs +++ b/src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs @@ -11,7 +11,7 @@ fn want_slice(v: &[int]) -> int { let mut sum = 0; - for i in v.iter() { sum += *i; } + for i in v { sum += *i; } sum } diff --git a/src/test/run-pass/break.rs b/src/test/run-pass/break.rs index bcfb8f6f914..6498c4b461d 100644 --- a/src/test/run-pass/break.rs +++ b/src/test/run-pass/break.rs @@ -15,7 +15,7 @@ pub fn main() { loop { i += 1; if i == 20 { break; } } assert_eq!(i, 20); let xs = [1, 2, 3, 4, 5, 6]; - for x in xs.iter() { + for x in &xs { if *x == 3 { break; } assert!((*x <= 3)); } i = 0; @@ -26,7 +26,7 @@ pub fn main() { if i >= 10 { break; } } let ys = vec!(1, 2, 3, 4, 5, 6); - for x in ys.iter() { + for x in &ys { if *x % 2 == 0 { continue; } assert!((*x % 2 != 0)); } diff --git a/src/test/run-pass/capture-clauses-boxed-closures.rs b/src/test/run-pass/capture-clauses-boxed-closures.rs index 6e8ed4fd5a1..5e696566bfa 100644 --- a/src/test/run-pass/capture-clauses-boxed-closures.rs +++ b/src/test/run-pass/capture-clauses-boxed-closures.rs @@ -9,7 +9,7 @@ // except according to those terms. fn each<T, F>(x: &[T], mut f: F) where F: FnMut(&T) { - for val in x.iter() { + for val in x { f(val) } } diff --git a/src/test/run-pass/capture-clauses-unboxed-closures.rs b/src/test/run-pass/capture-clauses-unboxed-closures.rs index cd40e2a7843..de1196e10d8 100644 --- a/src/test/run-pass/capture-clauses-unboxed-closures.rs +++ b/src/test/run-pass/capture-clauses-unboxed-closures.rs @@ -11,7 +11,7 @@ #![feature(unboxed_closures)] fn each<'a,T,F:FnMut(&'a T)>(x: &'a [T], mut f: F) { - for val in x.iter() { + for val in x { f(val) } } diff --git a/src/test/run-pass/cleanup-rvalue-for-scope.rs b/src/test/run-pass/cleanup-rvalue-for-scope.rs index 8969cca2610..f69a0332cc4 100644 --- a/src/test/run-pass/cleanup-rvalue-for-scope.rs +++ b/src/test/run-pass/cleanup-rvalue-for-scope.rs @@ -61,7 +61,7 @@ impl Drop for AddFlags { pub fn main() { // The array containing [AddFlags] should not be dropped until // after the for loop: - for x in [AddFlags(1)].iter() { + for x in &[AddFlags(1)] { check_flags(0); } check_flags(1); diff --git a/src/test/run-pass/coerce-reborrow-imm-vec-arg.rs b/src/test/run-pass/coerce-reborrow-imm-vec-arg.rs index f6abfda03e3..b6b30e2fe9b 100644 --- a/src/test/run-pass/coerce-reborrow-imm-vec-arg.rs +++ b/src/test/run-pass/coerce-reborrow-imm-vec-arg.rs @@ -10,7 +10,7 @@ fn sum(x: &[int]) -> int { let mut sum = 0; - for y in x.iter() { sum += *y; } + for y in x { sum += *y; } return sum; } diff --git a/src/test/run-pass/const-vec-of-fns.rs b/src/test/run-pass/const-vec-of-fns.rs index f21f7d1903c..4b07b1d3b07 100644 --- a/src/test/run-pass/const-vec-of-fns.rs +++ b/src/test/run-pass/const-vec-of-fns.rs @@ -22,8 +22,8 @@ static mut closures: &'static mut [S<fn()>] = &mut [S(f as fn()), S(f as fn())]; pub fn main() { unsafe { - for &bare_fn in bare_fns.iter() { bare_fn() } - for closure in closures.iter_mut() { + for &bare_fn in bare_fns { bare_fn() } + for closure in &mut *closures { let S(ref mut closure) = *closure; (*closure)() } diff --git a/src/test/run-pass/explicit-self-closures.rs b/src/test/run-pass/explicit-self-closures.rs index c7e5681c0c1..ef9dc377bc7 100644 --- a/src/test/run-pass/explicit-self-closures.rs +++ b/src/test/run-pass/explicit-self-closures.rs @@ -16,7 +16,7 @@ struct Box { impl Box { pub fn set_many(&mut self, xs: &[uint]) { - for x in xs.iter() { self.x = *x; } + for x in xs { self.x = *x; } } } diff --git a/src/test/run-pass/fn-pattern-expected-type-2.rs b/src/test/run-pass/fn-pattern-expected-type-2.rs index 8590c8b90b2..4e2c8facaf8 100644 --- a/src/test/run-pass/fn-pattern-expected-type-2.rs +++ b/src/test/run-pass/fn-pattern-expected-type-2.rs @@ -10,7 +10,7 @@ pub fn main() { let v : &[(int,int)] = &[ (1, 2), (3, 4), (5, 6) ]; - for &(x, y) in v.iter() { + for &(x, y) in v { println!("{}", y); println!("{}", x); } diff --git a/src/test/run-pass/for-destruct.rs b/src/test/run-pass/for-destruct.rs index 7cc8b22e061..7a9b8a45b2a 100644 --- a/src/test/run-pass/for-destruct.rs +++ b/src/test/run-pass/for-destruct.rs @@ -11,7 +11,7 @@ struct Pair { x: int, y: int } pub fn main() { - for elt in (vec!(Pair {x: 10, y: 20}, Pair {x: 30, y: 0})).iter() { + for elt in &(vec!(Pair {x: 10, y: 20}, Pair {x: 30, y: 0})) { assert_eq!(elt.x + elt.y, 30); } } diff --git a/src/test/run-pass/for-loop-goofiness.rs b/src/test/run-pass/for-loop-goofiness.rs index ae509dc0862..7754751120e 100644 --- a/src/test/run-pass/for-loop-goofiness.rs +++ b/src/test/run-pass/for-loop-goofiness.rs @@ -17,7 +17,7 @@ type Iterator = int; pub fn main() { let x = [ 3, 3, 3 ]; - for i in x.iter() { + for i in &x { assert_eq!(*i, 3); } } diff --git a/src/test/run-pass/for-loop-panic.rs b/src/test/run-pass/for-loop-panic.rs index d157da3139f..d2de1ed8c7e 100644 --- a/src/test/run-pass/for-loop-panic.rs +++ b/src/test/run-pass/for-loop-panic.rs @@ -9,4 +9,4 @@ // except according to those terms. -pub fn main() { let x: Vec<int> = Vec::new(); for _ in x.iter() { panic!("moop"); } } +pub fn main() { let x: Vec<int> = Vec::new(); for _ in &x { panic!("moop"); } } diff --git a/src/test/run-pass/foreach-external-iterators-break.rs b/src/test/run-pass/foreach-external-iterators-break.rs index 9cbb4f4107a..e9e8c3f0929 100644 --- a/src/test/run-pass/foreach-external-iterators-break.rs +++ b/src/test/run-pass/foreach-external-iterators-break.rs @@ -11,7 +11,7 @@ pub fn main() { let x = [1; 100]; let mut y = 0; - for i in x.iter() { + for i in &x[] { if y > 10 { break; } diff --git a/src/test/run-pass/foreach-external-iterators-hashmap-break-restart.rs b/src/test/run-pass/foreach-external-iterators-hashmap-break-restart.rs index 891cbf6696b..a4988bf016c 100644 --- a/src/test/run-pass/foreach-external-iterators-hashmap-break-restart.rs +++ b/src/test/run-pass/foreach-external-iterators-hashmap-break-restart.rs @@ -19,7 +19,7 @@ use std::collections::HashMap; pub fn main() { let mut h = HashMap::new(); let kvs = [(1, 10), (2, 20), (3, 30)]; - for &(k,v) in kvs.iter() { + for &(k,v) in &kvs { h.insert(k,v); } let mut x = 0; diff --git a/src/test/run-pass/foreach-external-iterators-hashmap.rs b/src/test/run-pass/foreach-external-iterators-hashmap.rs index 1878997de5a..ed4328d94fe 100644 --- a/src/test/run-pass/foreach-external-iterators-hashmap.rs +++ b/src/test/run-pass/foreach-external-iterators-hashmap.rs @@ -15,12 +15,12 @@ use std::collections::HashMap; pub fn main() { let mut h = HashMap::new(); let kvs = [(1, 10), (2, 20), (3, 30)]; - for &(k,v) in kvs.iter() { + for &(k,v) in &kvs { h.insert(k,v); } let mut x = 0; let mut y = 0; - for (&k,&v) in h.iter() { + for (&k,&v) in &h { x += k; y += v; } diff --git a/src/test/run-pass/foreach-external-iterators-nested.rs b/src/test/run-pass/foreach-external-iterators-nested.rs index 75471991620..6acfbc95317 100644 --- a/src/test/run-pass/foreach-external-iterators-nested.rs +++ b/src/test/run-pass/foreach-external-iterators-nested.rs @@ -13,8 +13,8 @@ pub fn main() { let y = [2; 100]; let mut p = 0; let mut q = 0; - for i in x.iter() { - for j in y.iter() { + for i in &x[] { + for j in &y[] { p += *j; } q += *i + p; diff --git a/src/test/run-pass/foreach-external-iterators.rs b/src/test/run-pass/foreach-external-iterators.rs index ef4692b2b51..2f154be659d 100644 --- a/src/test/run-pass/foreach-external-iterators.rs +++ b/src/test/run-pass/foreach-external-iterators.rs @@ -11,7 +11,7 @@ pub fn main() { let x = [1; 100]; let mut y = 0; - for i in x.iter() { + for i in &x[] { y += *i } assert!(y == 100); diff --git a/src/test/run-pass/generic-static-methods.rs b/src/test/run-pass/generic-static-methods.rs index 90a6349385d..7f84efcdd5d 100644 --- a/src/test/run-pass/generic-static-methods.rs +++ b/src/test/run-pass/generic-static-methods.rs @@ -16,7 +16,7 @@ trait vec_utils<T> { impl<T> vec_utils<T> for Vec<T> { fn map_<U, F>(x: &Vec<T> , mut f: F) -> Vec<U> where F: FnMut(&T) -> U { let mut r = Vec::new(); - for elt in x.iter() { + for elt in x { r.push(f(elt)); } r diff --git a/src/test/run-pass/hashmap-memory.rs b/src/test/run-pass/hashmap-memory.rs index 0e82ad43782..651ac632439 100644 --- a/src/test/run-pass/hashmap-memory.rs +++ b/src/test/run-pass/hashmap-memory.rs @@ -35,7 +35,7 @@ mod map_reduce { enum ctrl_proto { find_reducer(Vec<u8>, Sender<int>), mapper_done, } fn start_mappers(ctrl: Sender<ctrl_proto>, inputs: Vec<String>) { - for i in inputs.iter() { + for i in &inputs { let ctrl = ctrl.clone(); let i = i.clone(); Thread::spawn(move|| map_task(ctrl.clone(), i.clone()) ); diff --git a/src/test/run-pass/issue-10396.rs b/src/test/run-pass/issue-10396.rs index 7095812ce4b..b487608d4e6 100644 --- a/src/test/run-pass/issue-10396.rs +++ b/src/test/run-pass/issue-10396.rs @@ -14,7 +14,7 @@ enum Foo<'s> { } fn f(arr: &[&Foo]) { - for &f in arr.iter() { + for &f in arr { println!("{:?}", f); } } diff --git a/src/test/run-pass/issue-17068.rs b/src/test/run-pass/issue-17068.rs index dfbe7406229..a0e6f2c9be9 100644 --- a/src/test/run-pass/issue-17068.rs +++ b/src/test/run-pass/issue-17068.rs @@ -11,7 +11,7 @@ // Test that regionck creates the right region links in the pattern // binding of a for loop fn foo<'a>(v: &'a [uint]) -> &'a uint { - for &ref x in v.iter() { return x; } + for &ref x in v { return x; } unreachable!() } diff --git a/src/test/run-pass/issue-2904.rs b/src/test/run-pass/issue-2904.rs index 8a67d84cb64..b55f3691358 100644 --- a/src/test/run-pass/issue-2904.rs +++ b/src/test/run-pass/issue-2904.rs @@ -66,12 +66,12 @@ fn read_board_grid<rdr:'static + old_io::Reader>(mut input: rdr) let mut line = [0; 10]; input.read(&mut line); let mut row = Vec::new(); - for c in line.iter() { + for c in &line { row.push(square_from_char(*c as char)) } grid.push(row); let width = grid[0].len(); - for row in grid.iter() { assert!(row.len() == width) } + for row in &grid { assert!(row.len() == width) } grid } diff --git a/src/test/run-pass/issue-3389.rs b/src/test/run-pass/issue-3389.rs index 8f6b8137199..26558bdd30c 100644 --- a/src/test/run-pass/issue-3389.rs +++ b/src/test/run-pass/issue-3389.rs @@ -15,7 +15,7 @@ struct trie_node { } fn print_str_vector(vector: Vec<String> ) { - for string in vector.iter() { + for string in &vector { println!("{}", *string); } } diff --git a/src/test/run-pass/issue-3563-2.rs b/src/test/run-pass/issue-3563-2.rs index e688b95f873..2cf29296b85 100644 --- a/src/test/run-pass/issue-3563-2.rs +++ b/src/test/run-pass/issue-3563-2.rs @@ -11,7 +11,7 @@ trait Canvas { fn add_point(&self, point: &int); fn add_points(&self, shapes: &[int]) { - for pt in shapes.iter() { + for pt in shapes { self.add_point(pt) } } diff --git a/src/test/run-pass/issue-3563-3.rs b/src/test/run-pass/issue-3563-3.rs index 426a8ccf7e7..5d02a1b2bd2 100644 --- a/src/test/run-pass/issue-3563-3.rs +++ b/src/test/run-pass/issue-3563-3.rs @@ -122,7 +122,7 @@ trait Canvas { // Unlike interfaces traits support default implementations. // Got an ICE as soon as I added this method. fn add_points(&mut self, shapes: &[Point]) { - for pt in shapes.iter() {self.add_point(*pt)}; + for pt in shapes {self.add_point(*pt)}; } } diff --git a/src/test/run-pass/issue-4241.rs b/src/test/run-pass/issue-4241.rs index 19622cb88e3..89cf2f69b34 100644 --- a/src/test/run-pass/issue-4241.rs +++ b/src/test/run-pass/issue-4241.rs @@ -100,7 +100,7 @@ priv fn cmd_to_string(cmd: ~[String]) -> String { let mut res = "*".to_string(); res.push_str(cmd.len().to_string()); res.push_str("\r\n"); - for s in cmd.iter() { + for s in &cmd { res.push_str(["$".to_string(), s.len().to_string(), "\r\n".to_string(), (*s).clone(), "\r\n".to_string()].concat() ); } diff --git a/src/test/run-pass/issue-4542.rs b/src/test/run-pass/issue-4542.rs index 024ee8c6dfe..ae72de50d26 100644 --- a/src/test/run-pass/issue-4542.rs +++ b/src/test/run-pass/issue-4542.rs @@ -11,7 +11,7 @@ use std::os; pub fn main() { - for arg in os::args().iter() { + for arg in &os::args() { match (*arg).clone() { _s => { } } diff --git a/src/test/run-pass/issue-5666.rs b/src/test/run-pass/issue-5666.rs index e53f4c86923..4f304e3b436 100644 --- a/src/test/run-pass/issue-5666.rs +++ b/src/test/run-pass/issue-5666.rs @@ -31,7 +31,7 @@ pub fn main() { let bubbles = box Dog{name: "bubbles".to_string()}; let barker = [snoopy as Box<Barks>, bubbles as Box<Barks>]; - for pup in barker.iter() { + for pup in &barker { println!("{}", pup.bark()); } } diff --git a/src/test/run-pass/issue-5688.rs b/src/test/run-pass/issue-5688.rs index a4f39884846..9612c4bf181 100644 --- a/src/test/run-pass/issue-5688.rs +++ b/src/test/run-pass/issue-5688.rs @@ -23,7 +23,7 @@ struct X { vec: &'static [int] } static V: &'static [X] = &[X { vec: &[1, 2, 3] }]; pub fn main() { - for &v in V.iter() { + for &v in V { println!("{:?}", v.vec); } } diff --git a/src/test/run-pass/linear-for-loop.rs b/src/test/run-pass/linear-for-loop.rs index eda14222e91..22a29279a67 100644 --- a/src/test/run-pass/linear-for-loop.rs +++ b/src/test/run-pass/linear-for-loop.rs @@ -13,7 +13,7 @@ pub fn main() { let x = vec!(1, 2, 3); let mut y = 0; - for i in x.iter() { println!("{}", *i); y += *i; } + for i in &x { println!("{}", *i); y += *i; } println!("{}", y); assert_eq!(y, 6); let s = "hello there".to_string(); diff --git a/src/test/run-pass/loop-label-shadowing.rs b/src/test/run-pass/loop-label-shadowing.rs index cfe51fe7758..686a9a002ce 100644 --- a/src/test/run-pass/loop-label-shadowing.rs +++ b/src/test/run-pass/loop-label-shadowing.rs @@ -12,7 +12,7 @@ fn main() { let mut foo = Vec::new(); - 'foo: for i in [1, 2, 3].iter() { + 'foo: for i in &[1, 2, 3] { foo.push(i); } } diff --git a/src/test/run-pass/loop-scope.rs b/src/test/run-pass/loop-scope.rs index 1dc3700194c..88711a46059 100644 --- a/src/test/run-pass/loop-scope.rs +++ b/src/test/run-pass/loop-scope.rs @@ -11,6 +11,6 @@ pub fn main() { let x = vec!(10, 20, 30); let mut sum = 0; - for x in x.iter() { sum += *x; } + for x in &x { sum += *x; } assert_eq!(sum, 60); } diff --git a/src/test/run-pass/monad.rs b/src/test/run-pass/monad.rs index acd8078b1f4..457c0a35fd7 100644 --- a/src/test/run-pass/monad.rs +++ b/src/test/run-pass/monad.rs @@ -17,7 +17,7 @@ trait vec_monad<A> { impl<A> vec_monad<A> for Vec<A> { fn bind<B, F>(&self, mut f: F) -> Vec<B> where F: FnMut(&A) -> Vec<B> { let mut r = Vec::new(); - for elt in self.iter() { + for elt in self { r.extend(f(elt).into_iter()); } r diff --git a/src/test/run-pass/mutability-inherits-through-fixed-length-vec.rs b/src/test/run-pass/mutability-inherits-through-fixed-length-vec.rs index 7d6bbbe4240..e074c3fb3d7 100644 --- a/src/test/run-pass/mutability-inherits-through-fixed-length-vec.rs +++ b/src/test/run-pass/mutability-inherits-through-fixed-length-vec.rs @@ -16,8 +16,8 @@ fn test1() { fn test2() { let mut ints = [0; 32]; - for i in ints.iter_mut() { *i += 22; } - for i in ints.iter() { assert!(*i == 22); } + for i in &mut ints { *i += 22; } + for i in &ints { assert!(*i == 22); } } pub fn main() { diff --git a/src/test/run-pass/overloaded-index-assoc-list.rs b/src/test/run-pass/overloaded-index-assoc-list.rs index 7e3ff198c43..0064748e883 100644 --- a/src/test/run-pass/overloaded-index-assoc-list.rs +++ b/src/test/run-pass/overloaded-index-assoc-list.rs @@ -32,7 +32,7 @@ impl<K: PartialEq + std::fmt::Debug, V:Clone> Index<K> for AssociationList<K,V> type Output = V; fn index<'a>(&'a self, index: &K) -> &'a V { - for pair in self.pairs.iter() { + for pair in &self.pairs { if pair.key == *index { return &pair.value } diff --git a/src/test/run-pass/packed-struct-vec.rs b/src/test/run-pass/packed-struct-vec.rs index 847688ce045..ede94acd934 100644 --- a/src/test/run-pass/packed-struct-vec.rs +++ b/src/test/run-pass/packed-struct-vec.rs @@ -28,7 +28,7 @@ pub fn main() { assert_eq!(foos[i], Foo { bar: 1, baz: 2}); } - for &foo in foos.iter() { + for &foo in &foos { assert_eq!(foo, Foo { bar: 1, baz: 2 }); } } diff --git a/src/test/run-pass/regions-mock-tcx.rs b/src/test/run-pass/regions-mock-tcx.rs index 34ff7acfca4..be7db25201a 100644 --- a/src/test/run-pass/regions-mock-tcx.rs +++ b/src/test/run-pass/regions-mock-tcx.rs @@ -66,7 +66,7 @@ impl<'tcx,'ast> TypeContext<'tcx, 'ast> { } fn add_type(&mut self, s: TypeStructure<'tcx>) -> Type<'tcx> { - for &ty in self.types.iter() { + for &ty in &self.types { if *ty == s { return ty; } diff --git a/src/test/run-pass/repeated-vector-syntax.rs b/src/test/run-pass/repeated-vector-syntax.rs index 6048e0d8673..6a1384ff933 100644 --- a/src/test/run-pass/repeated-vector-syntax.rs +++ b/src/test/run-pass/repeated-vector-syntax.rs @@ -13,7 +13,7 @@ pub fn main() { let y = [ 0; 1 ]; print!("["); - for xi in x.iter() { + for xi in &x[] { print!("{:?}, ", &xi[]); } println!("]"); diff --git a/src/test/run-pass/shadow.rs b/src/test/run-pass/shadow.rs index dbe73d1b94a..6e03c1e4a80 100644 --- a/src/test/run-pass/shadow.rs +++ b/src/test/run-pass/shadow.rs @@ -15,7 +15,7 @@ fn foo(c: Vec<int> ) { match t::none::<int> { t::some::<int>(_) => { - for _i in c.iter() { + for _i in &c { println!("{}", a); let a = 17; b.push(a); diff --git a/src/test/run-pass/static-impl.rs b/src/test/run-pass/static-impl.rs index 44d77e440d1..ff37ccb81ed 100644 --- a/src/test/run-pass/static-impl.rs +++ b/src/test/run-pass/static-impl.rs @@ -47,10 +47,10 @@ trait vec_utils<T> { impl<T> vec_utils<T> for Vec<T> { fn length_(&self) -> uint { self.len() } - fn iter_<F>(&self, mut f: F) where F: FnMut(&T) { for x in self.iter() { f(x); } } + fn iter_<F>(&self, mut f: F) where F: FnMut(&T) { for x in self { f(x); } } fn map_<U, F>(&self, mut f: F) -> Vec<U> where F: FnMut(&T) -> U { let mut r = Vec::new(); - for elt in self.iter() { + for elt in self { r.push(f(elt)); } r diff --git a/src/test/run-pass/task-comm-3.rs b/src/test/run-pass/task-comm-3.rs index 306cc0ffcef..90282946838 100644 --- a/src/test/run-pass/task-comm-3.rs +++ b/src/test/run-pass/task-comm-3.rs @@ -51,7 +51,7 @@ fn test00() { // Read from spawned tasks... let mut sum = 0; - for _r in results.iter() { + for _r in &results { i = 0; while i < number_of_messages { let value = rx.recv().unwrap(); @@ -61,7 +61,7 @@ fn test00() { } // Join spawned tasks... - for r in results.into_iter() { r.join(); } + for r in results { r.join(); } println!("Completed: Final number is: "); println!("{}", sum); diff --git a/src/test/run-pass/trait-bounds-in-arc.rs b/src/test/run-pass/trait-bounds-in-arc.rs index 0089646d0a1..0b650d97e4f 100644 --- a/src/test/run-pass/trait-bounds-in-arc.rs +++ b/src/test/run-pass/trait-bounds-in-arc.rs @@ -97,20 +97,20 @@ pub fn main() { fn check_legs(arc: Arc<Vec<Box<Pet+Sync+Send>>>) { let mut legs = 0; - for pet in arc.iter() { + for pet in &*arc { legs += pet.num_legs(); } assert!(legs == 12); } fn check_names(arc: Arc<Vec<Box<Pet+Sync+Send>>>) { - for pet in arc.iter() { + for pet in &*arc { pet.name(box |name| { assert!(name.as_bytes()[0] == 'a' as u8 && name.as_bytes()[1] == 'l' as u8); }) } } fn check_pedigree(arc: Arc<Vec<Box<Pet+Sync+Send>>>) { - for pet in arc.iter() { + for pet in &*arc { assert!(pet.of_good_pedigree()); } } diff --git a/src/test/run-pass/trait-generic.rs b/src/test/run-pass/trait-generic.rs index e79b22f70cf..5f4b18df6e1 100644 --- a/src/test/run-pass/trait-generic.rs +++ b/src/test/run-pass/trait-generic.rs @@ -29,7 +29,7 @@ trait map<T> { impl<T> map<T> for Vec<T> { fn map<U, F>(&self, mut f: F) -> Vec<U> where F: FnMut(&T) -> U { let mut r = Vec::new(); - for i in self.iter() { + for i in self { r.push(f(i)); } r diff --git a/src/test/run-pass/unboxed-closures-counter-not-moved.rs b/src/test/run-pass/unboxed-closures-counter-not-moved.rs index e921f0c723e..0b85916d224 100644 --- a/src/test/run-pass/unboxed-closures-counter-not-moved.rs +++ b/src/test/run-pass/unboxed-closures-counter-not-moved.rs @@ -21,7 +21,7 @@ fn main() { call(|| { // Move `y`, but do not move `counter`, even though it is read // by value (note that it is also mutated). - for item in y.into_iter() { + for item in y { let v = counter; counter += v; } diff --git a/src/test/run-pass/unboxed-closures-move-some-upvars-in-by-ref-closure.rs b/src/test/run-pass/unboxed-closures-move-some-upvars-in-by-ref-closure.rs index 9534ee6fa12..99663646254 100644 --- a/src/test/run-pass/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +++ b/src/test/run-pass/unboxed-closures-move-some-upvars-in-by-ref-closure.rs @@ -22,7 +22,7 @@ fn main() { // Here: `x` must be captured with a mutable reference in // order for us to append on it, and `y` must be captured by // value. - for item in y.into_iter() { + for item in y { x.push(item); } }); diff --git a/src/test/run-pass/vector-sort-panic-safe.rs b/src/test/run-pass/vector-sort-panic-safe.rs index aaefbc42d70..9d83c0b0079 100644 --- a/src/test/run-pass/vector-sort-panic-safe.rs +++ b/src/test/run-pass/vector-sort-panic-safe.rs @@ -73,7 +73,7 @@ pub fn main() { // ... and then panic on each and every single one. for panic_countdown in 0..count { // refresh the counters. - for c in drop_counts.iter() { + for c in &drop_counts { c.store(0, Ordering::Relaxed); } |
