Skip to content

Commit 004816f

Browse files
committed
option: remove redundant old_iter impls
1 parent 4f2f545 commit 004816f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+448
-638
lines changed

src/compiletest/procsrv.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
// except according to those terms.
1010

1111
use core::prelude::*;
12+
use core::iterator::IteratorUtil;
1213

1314
use core::os;
1415
use core::run;
@@ -58,7 +59,7 @@ pub fn run(lib_path: &str,
5859
err_fd: None
5960
});
6061

61-
for input.each |input| {
62+
for input.iter().advance |input| {
6263
proc.input().write_str(*input);
6364
}
6465
let output = proc.finish_with_output();

src/libextra/par.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,8 @@ pub fn any<A:Copy + Owned>(
139139
fn_factory: &fn() -> ~fn(&A) -> bool) -> bool {
140140
let mapped = map_slices(xs, || {
141141
let f = fn_factory();
142-
let result: ~fn(uint, &[A]) -> bool = |_, slice| slice.iter().any(f);
142+
let result: ~fn(uint, &[A]) -> bool = |_, slice| slice.iter().any_(f);
143143
result
144144
});
145-
mapped.iter().any(|&x| x)
145+
mapped.iter().any_(|&x| x)
146146
}

src/libextra/treemap.rs

+12-11
Original file line numberDiff line numberDiff line change
@@ -427,7 +427,7 @@ impl<T: TotalOrd> Set<T> for TreeSet<T> {
427427
b = y.next();
428428
}
429429
}
430-
return b.each(|&x| f(x)) && y.advance(f);
430+
b.iter().advance(|&x| f(x)) && y.advance(f)
431431
}
432432

433433
/// Visit the values (in-order) representing the intersection
@@ -485,7 +485,7 @@ impl<T: TotalOrd> Set<T> for TreeSet<T> {
485485
a = x.next();
486486
}
487487
}
488-
return b.each(|&x| f(x)) && y.advance(f);
488+
b.iter().advance(|&x| f(x)) && y.advance(f)
489489
}
490490
}
491491

@@ -527,14 +527,14 @@ impl<K: TotalOrd, V> TreeNode<K, V> {
527527

528528
fn each<'r, K: TotalOrd, V>(node: &'r Option<~TreeNode<K, V>>,
529529
f: &fn(&'r K, &'r V) -> bool) -> bool {
530-
node.each(|x| each(&x.left, f) && f(&x.key, &x.value) &&
531-
each(&x.right, f))
530+
node.iter().advance(|x| each(&x.left, f) && f(&x.key, &x.value) &&
531+
each(&x.right, f))
532532
}
533533

534534
fn each_reverse<'r, K: TotalOrd, V>(node: &'r Option<~TreeNode<K, V>>,
535535
f: &fn(&'r K, &'r V) -> bool) -> bool {
536-
node.each(|x| each_reverse(&x.right, f) && f(&x.key, &x.value) &&
537-
each_reverse(&x.left, f))
536+
node.iter().advance(|x| each_reverse(&x.right, f) && f(&x.key, &x.value) &&
537+
each_reverse(&x.left, f))
538538
}
539539

540540
fn mutate_values<'r, K: TotalOrd, V>(node: &'r mut Option<~TreeNode<K, V>>,
@@ -625,7 +625,7 @@ fn remove<K: TotalOrd, V>(node: &mut Option<~TreeNode<K, V>>,
625625
fn heir_swap<K: TotalOrd, V>(node: &mut ~TreeNode<K, V>,
626626
child: &mut Option<~TreeNode<K, V>>) {
627627
// *could* be done without recursion, but it won't borrow check
628-
for child.each_mut |x| {
628+
for child.mut_iter().advance |x| {
629629
if x.right.is_some() {
630630
heir_swap(node, &mut x.right);
631631
} else {
@@ -680,18 +680,18 @@ fn remove<K: TotalOrd, V>(node: &mut Option<~TreeNode<K, V>>,
680680
save.level -= 1;
681681

682682
if right_level > save.level {
683-
for save.right.each_mut |x| { x.level = save.level }
683+
for save.right.mut_iter().advance |x| { x.level = save.level }
684684
}
685685

686686
skew(save);
687687

688-
for save.right.each_mut |right| {
688+
for save.right.mut_iter().advance |right| {
689689
skew(right);
690-
for right.right.each_mut |x| { skew(x) }
690+
for right.right.mut_iter().advance |x| { skew(x) }
691691
}
692692

693693
split(save);
694-
for save.right.each_mut |x| { split(x) }
694+
for save.right.mut_iter().advance |x| { split(x) }
695695
}
696696

697697
return ret;
@@ -1111,6 +1111,7 @@ mod test_set {
11111111

11121112
let mut n = 0;
11131113
for m.each |x| {
1114+
println(fmt!("%?", x));
11141115
assert_eq!(*x, n);
11151116
n += 1
11161117
}

src/librust/rust.rc

+3-1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ extern mod rusti;
3030
extern mod rustc;
3131

3232
use core::prelude::*;
33+
use core::iterator::IteratorUtil;
3334

3435
use core::io;
3536
use core::os;
@@ -242,7 +243,8 @@ pub fn main() {
242243
let args = os_args.tail();
243244

244245
if !args.is_empty() {
245-
for find_cmd(*args.head()).each |command| {
246+
let r = find_cmd(*args.head());
247+
for r.iter().advance |command| {
246248
let result = do_command(command, args.tail());
247249
match result {
248250
Valid(exit_code) => unsafe { exit(exit_code.to_i32()) },

src/librustc/metadata/encoder.rs

+4-3
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ use middle::ty;
2222
use middle;
2323
use util::ppaux::ty_to_str;
2424

25+
use core::iterator::IteratorUtil;
2526
use core::hash::HashUtil;
2627
use core::hashmap::HashMap;
2728
use core::int;
@@ -120,7 +121,7 @@ fn encode_region_param(ecx: @EncodeContext,
120121
ebml_w: &mut writer::Encoder,
121122
it: @ast::item) {
122123
let opt_rp = ecx.tcx.region_paramd_items.find(&it.id);
123-
for opt_rp.each |rp| {
124+
for opt_rp.iter().advance |rp| {
124125
ebml_w.start_tag(tag_region_param);
125126
rp.encode(ebml_w);
126127
ebml_w.end_tag();
@@ -240,7 +241,7 @@ fn encode_type(ecx: @EncodeContext,
240241
fn encode_transformed_self_ty(ecx: @EncodeContext,
241242
ebml_w: &mut writer::Encoder,
242243
opt_typ: Option<ty::t>) {
243-
for opt_typ.each |&typ| {
244+
for opt_typ.iter().advance |&typ| {
244245
ebml_w.start_tag(tag_item_method_transformed_self_ty);
245246
write_type(ecx, ebml_w, typ);
246247
ebml_w.end_tag();
@@ -956,7 +957,7 @@ fn encode_info_for_item(ecx: @EncodeContext,
956957
ebml_w.writer.write(str::to_bytes(def_to_str(method_def_id)));
957958
ebml_w.end_tag();
958959
}
959-
for opt_trait.each |ast_trait_ref| {
960+
for opt_trait.iter().advance |ast_trait_ref| {
960961
let trait_ref = ty::node_id_to_trait_ref(ecx.tcx, ast_trait_ref.ref_id);
961962
encode_trait_ref(ebml_w, ecx, trait_ref, tag_item_trait_ref);
962963
}

src/librustc/middle/astencode.rs

+83-52
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ use middle::{ty, typeck, moves};
2525
use middle;
2626
use util::ppaux::ty_to_str;
2727

28+
use core::iterator::IteratorUtil;
2829
use core::at_vec;
2930
use core::uint;
3031
use extra::ebml::reader;
@@ -826,86 +827,113 @@ fn encode_side_tables_for_id(ecx: @e::EncodeContext,
826827

827828
debug!("Encoding side tables for id %d", id);
828829

829-
for tcx.def_map.find(&id).each |def| {
830-
do ebml_w.tag(c::tag_table_def) |ebml_w| {
831-
ebml_w.id(id);
832-
do ebml_w.tag(c::tag_table_val) |ebml_w| {
833-
(*def).encode(ebml_w)
830+
{
831+
let r = tcx.def_map.find(&id);
832+
for r.iter().advance |def| {
833+
do ebml_w.tag(c::tag_table_def) |ebml_w| {
834+
ebml_w.id(id);
835+
do ebml_w.tag(c::tag_table_val) |ebml_w| {
836+
(*def).encode(ebml_w)
837+
}
834838
}
835839
}
836840
}
837841

838-
for tcx.node_types.find(&(id as uint)).each |&ty| {
839-
do ebml_w.tag(c::tag_table_node_type) |ebml_w| {
840-
ebml_w.id(id);
841-
do ebml_w.tag(c::tag_table_val) |ebml_w| {
842-
ebml_w.emit_ty(ecx, *ty);
842+
{
843+
let r = tcx.node_types.find(&(id as uint));
844+
for r.iter().advance |&ty| {
845+
do ebml_w.tag(c::tag_table_node_type) |ebml_w| {
846+
ebml_w.id(id);
847+
do ebml_w.tag(c::tag_table_val) |ebml_w| {
848+
ebml_w.emit_ty(ecx, *ty);
849+
}
843850
}
844851
}
845852
}
846853

847-
for tcx.node_type_substs.find(&id).each |tys| {
848-
do ebml_w.tag(c::tag_table_node_type_subst) |ebml_w| {
849-
ebml_w.id(id);
850-
do ebml_w.tag(c::tag_table_val) |ebml_w| {
851-
ebml_w.emit_tys(ecx, **tys)
854+
{
855+
let r = tcx.node_type_substs.find(&id);
856+
for r.iter().advance |tys| {
857+
do ebml_w.tag(c::tag_table_node_type_subst) |ebml_w| {
858+
ebml_w.id(id);
859+
do ebml_w.tag(c::tag_table_val) |ebml_w| {
860+
ebml_w.emit_tys(ecx, **tys)
861+
}
852862
}
853863
}
854864
}
855865

856-
for tcx.freevars.find(&id).each |&fv| {
857-
do ebml_w.tag(c::tag_table_freevars) |ebml_w| {
858-
ebml_w.id(id);
859-
do ebml_w.tag(c::tag_table_val) |ebml_w| {
860-
do ebml_w.emit_from_vec(**fv) |ebml_w, fv_entry| {
861-
encode_freevar_entry(ebml_w, *fv_entry)
866+
{
867+
let r = tcx.freevars.find(&id);
868+
for r.iter().advance |&fv| {
869+
do ebml_w.tag(c::tag_table_freevars) |ebml_w| {
870+
ebml_w.id(id);
871+
do ebml_w.tag(c::tag_table_val) |ebml_w| {
872+
do ebml_w.emit_from_vec(**fv) |ebml_w, fv_entry| {
873+
encode_freevar_entry(ebml_w, *fv_entry)
874+
}
862875
}
863876
}
864877
}
865878
}
866879

867880
let lid = ast::def_id { crate: ast::local_crate, node: id };
868-
for tcx.tcache.find(&lid).each |&tpbt| {
869-
do ebml_w.tag(c::tag_table_tcache) |ebml_w| {
870-
ebml_w.id(id);
871-
do ebml_w.tag(c::tag_table_val) |ebml_w| {
872-
ebml_w.emit_tpbt(ecx, *tpbt);
881+
{
882+
let r = tcx.tcache.find(&lid);
883+
for r.iter().advance |&tpbt| {
884+
do ebml_w.tag(c::tag_table_tcache) |ebml_w| {
885+
ebml_w.id(id);
886+
do ebml_w.tag(c::tag_table_val) |ebml_w| {
887+
ebml_w.emit_tpbt(ecx, *tpbt);
888+
}
873889
}
874890
}
875891
}
876892

877-
for tcx.ty_param_defs.find(&id).each |&type_param_def| {
878-
do ebml_w.tag(c::tag_table_param_defs) |ebml_w| {
879-
ebml_w.id(id);
880-
do ebml_w.tag(c::tag_table_val) |ebml_w| {
881-
ebml_w.emit_type_param_def(ecx, type_param_def)
893+
{
894+
let r = tcx.ty_param_defs.find(&id);
895+
for r.iter().advance |&type_param_def| {
896+
do ebml_w.tag(c::tag_table_param_defs) |ebml_w| {
897+
ebml_w.id(id);
898+
do ebml_w.tag(c::tag_table_val) |ebml_w| {
899+
ebml_w.emit_type_param_def(ecx, type_param_def)
900+
}
882901
}
883902
}
884903
}
885904

886-
for maps.method_map.find(&id).each |&mme| {
887-
do ebml_w.tag(c::tag_table_method_map) |ebml_w| {
888-
ebml_w.id(id);
889-
do ebml_w.tag(c::tag_table_val) |ebml_w| {
890-
encode_method_map_entry(ecx, ebml_w, *mme)
905+
{
906+
let r = maps.method_map.find(&id);
907+
for r.iter().advance |&mme| {
908+
do ebml_w.tag(c::tag_table_method_map) |ebml_w| {
909+
ebml_w.id(id);
910+
do ebml_w.tag(c::tag_table_val) |ebml_w| {
911+
encode_method_map_entry(ecx, ebml_w, *mme)
912+
}
891913
}
892914
}
893915
}
894916

895-
for maps.vtable_map.find(&id).each |&dr| {
896-
do ebml_w.tag(c::tag_table_vtable_map) |ebml_w| {
897-
ebml_w.id(id);
898-
do ebml_w.tag(c::tag_table_val) |ebml_w| {
899-
encode_vtable_res(ecx, ebml_w, *dr);
917+
{
918+
let r = maps.vtable_map.find(&id);
919+
for r.iter().advance |&dr| {
920+
do ebml_w.tag(c::tag_table_vtable_map) |ebml_w| {
921+
ebml_w.id(id);
922+
do ebml_w.tag(c::tag_table_val) |ebml_w| {
923+
encode_vtable_res(ecx, ebml_w, *dr);
924+
}
900925
}
901926
}
902927
}
903928

904-
for tcx.adjustments.find(&id).each |adj| {
905-
do ebml_w.tag(c::tag_table_adjustments) |ebml_w| {
906-
ebml_w.id(id);
907-
do ebml_w.tag(c::tag_table_val) |ebml_w| {
908-
(**adj).encode(ebml_w)
929+
{
930+
let r = tcx.adjustments.find(&id);
931+
for r.iter().advance |adj| {
932+
do ebml_w.tag(c::tag_table_adjustments) |ebml_w| {
933+
ebml_w.id(id);
934+
do ebml_w.tag(c::tag_table_val) |ebml_w| {
935+
(**adj).encode(ebml_w)
936+
}
909937
}
910938
}
911939
}
@@ -916,12 +944,15 @@ fn encode_side_tables_for_id(ecx: @e::EncodeContext,
916944
}
917945
}
918946

919-
for maps.capture_map.find(&id).each |&cap_vars| {
920-
do ebml_w.tag(c::tag_table_capture_map) |ebml_w| {
921-
ebml_w.id(id);
922-
do ebml_w.tag(c::tag_table_val) |ebml_w| {
923-
do ebml_w.emit_from_vec(*cap_vars) |ebml_w, cap_var| {
924-
cap_var.encode(ebml_w);
947+
{
948+
let r = maps.capture_map.find(&id);
949+
for r.iter().advance |&cap_vars| {
950+
do ebml_w.tag(c::tag_table_capture_map) |ebml_w| {
951+
ebml_w.id(id);
952+
do ebml_w.tag(c::tag_table_val) |ebml_w| {
953+
do ebml_w.emit_from_vec(*cap_vars) |ebml_w, cap_var| {
954+
cap_var.encode(ebml_w);
955+
}
925956
}
926957
}
927958
}

src/librustc/middle/borrowck/check_loans.rs

+7-5
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
// 4. moves do not affect things loaned out in any way
1919

2020
use core::prelude::*;
21+
use core::iterator::IteratorUtil;
2122

2223
use core::hashmap::HashSet;
2324
use core::uint;
@@ -581,14 +582,15 @@ impl<'self> CheckLoanCtxt<'self> {
581582
// FIXME(#4384) inadequare if/when we permit `move a.b`
582583

583584
// check for a conflicting loan:
584-
for opt_loan_path(cmt).each |&lp| {
585+
let r = opt_loan_path(cmt);
586+
for r.iter().advance |&lp| {
585587
for self.each_in_scope_restriction(cmt.id, lp) |loan, _| {
586588
// Any restriction prevents moves.
587589
return MoveWhileBorrowed(lp, loan.loan_path, loan.span);
588590
}
589591
}
590592

591-
return MoveOk;
593+
MoveOk
592594
}
593595

594596
pub fn check_call(&mut self,
@@ -700,9 +702,9 @@ fn check_loans_in_expr<'a>(expr: @ast::expr,
700702
if !this.move_data.is_assignee(expr.id) {
701703
let cmt = this.bccx.cat_expr_unadjusted(expr);
702704
debug!("path cmt=%s", cmt.repr(this.tcx()));
703-
for opt_loan_path(cmt).each |&lp| {
704-
this.check_if_path_is_moved(expr.id, expr.span,
705-
MovedInUse, lp);
705+
let r = opt_loan_path(cmt);
706+
for r.iter().advance |&lp| {
707+
this.check_if_path_is_moved(expr.id, expr.span, MovedInUse, lp);
706708
}
707709
}
708710
}

0 commit comments

Comments
 (0)