]> git.proxmox.com Git - rustc.git/blame - src/test/run-pass/block-iter-2.rs
New upstream version 1.19.0+dfsg1
[rustc.git] / src / test / run-pass / block-iter-2.rs
CommitLineData
1a4d82fc 1// Copyright 2012-2014 The Rust Project Developers. See the COPYRIGHT
223e47cc
LB
2// file at the top-level directory of this distribution and at
3// http://rust-lang.org/COPYRIGHT.
4//
5// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8// option. This file may not be copied, modified, or distributed
9// except according to those terms.
10
85aaf69f 11fn iter_vec<T, F>(v: Vec<T>, mut f: F) where F: FnMut(&T) { for x in &v { f(x); } }
223e47cc
LB
12
13pub fn main() {
c34b1796 14 let v = vec![1, 2, 3, 4, 5];
223e47cc
LB
15 let mut sum = 0;
16 iter_vec(v.clone(), |i| {
17 iter_vec(v.clone(), |j| {
18 sum += *i * *j;
19 });
20 });
1a4d82fc 21 println!("{}", sum);
970d7e83 22 assert_eq!(sum, 225);
223e47cc 23}