Skip to content

Commit 1be24f0

Browse files
committed
replace explicit calls to vec::each with vec::each_ref, partially demode str
1 parent e17a3b3 commit 1be24f0

Some content is hidden

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

77 files changed

+564
-600
lines changed

src/compiletest/runtest.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -425,8 +425,8 @@ fn compose_and_run_compiler(
425425
let extra_link_args = ~[~"-L",
426426
aux_output_dir_name(config, testfile).to_str()];
427427

428-
do vec::iter(props.aux_builds) |rel_ab| {
429-
let abs_ab = config.aux_base.push_rel(&Path(rel_ab));
428+
for vec::each_ref(props.aux_builds) |rel_ab| {
429+
let abs_ab = config.aux_base.push_rel(&Path(*rel_ab));
430430
let aux_args =
431431
make_compile_args(config, props, ~[~"--lib"] + extra_link_args,
432432
|a,b| make_lib_name(a, b, testfile), &abs_ab);

src/libcore/at_vec.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ pure fn build_sized_opt<A>(size: Option<uint>,
9191
#[inline(always)]
9292
pure fn append<T: Copy>(lhs: @[T], rhs: &[const T]) -> @[T] {
9393
do build_sized(lhs.len() + rhs.len()) |push| {
94-
for vec::each(lhs) |x| { push(x); }
94+
for vec::each_ref(lhs) |x| { push(*x); }
9595
for uint::range(0, rhs.len()) |i| { push(rhs[i]); }
9696
}
9797
}
@@ -100,8 +100,8 @@ pure fn append<T: Copy>(lhs: @[T], rhs: &[const T]) -> @[T] {
100100
/// Apply a function to each element of a vector and return the results
101101
pure fn map<T, U>(v: &[T], f: fn(T) -> U) -> @[U] {
102102
do build_sized(v.len()) |push| {
103-
for vec::each(v) |elem| {
104-
push(f(elem));
103+
for vec::each_ref(v) |elem| {
104+
push(f(*elem));
105105
}
106106
}
107107
}

src/libcore/either.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ fn lefts<T: Copy, U>(eithers: &[Either<T, U>]) -> ~[T] {
3333
//! Extracts from a vector of either all the left values
3434
3535
let mut result: ~[T] = ~[];
36-
for vec::each(eithers) |elt| {
37-
match elt {
36+
for vec::each_ref(eithers) |elt| {
37+
match *elt {
3838
Left(l) => vec::push(result, l),
3939
_ => { /* fallthrough */ }
4040
}
@@ -46,8 +46,8 @@ fn rights<T, U: Copy>(eithers: &[Either<T, U>]) -> ~[U] {
4646
//! Extracts from a vector of either all the right values
4747
4848
let mut result: ~[U] = ~[];
49-
for vec::each(eithers) |elt| {
50-
match elt {
49+
for vec::each_ref(eithers) |elt| {
50+
match *elt {
5151
Right(r) => vec::push(result, r),
5252
_ => { /* fallthrough */ }
5353
}
@@ -66,8 +66,8 @@ fn partition<T: Copy, U: Copy>(eithers: &[Either<T, U>])
6666

6767
let mut lefts: ~[T] = ~[];
6868
let mut rights: ~[U] = ~[];
69-
for vec::each(eithers) |elt| {
70-
match elt {
69+
for vec::each_ref(eithers) |elt| {
70+
match *elt {
7171
Left(l) => vec::push(lefts, l),
7272
Right(r) => vec::push(rights, r)
7373
}

src/libcore/hash.rs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -390,7 +390,9 @@ impl &SipState : Streaming {
390390
fn result_str() -> ~str {
391391
let r = self.result_bytes();
392392
let mut s = ~"";
393-
for vec::each(r) |b| { s += uint::to_str(b as uint, 16u); }
393+
for vec::each_ref(r) |b| {
394+
s += uint::to_str(*b as uint, 16u);
395+
}
394396
move s
395397
}
396398

@@ -483,7 +485,9 @@ fn test_siphash() {
483485

484486
fn to_hex_str(r: &[u8]/8) -> ~str {
485487
let mut s = ~"";
486-
for vec::each(*r) |b| { s += uint::to_str(b as uint, 16u); }
488+
for vec::each_ref(*r) |b| {
489+
s += uint::to_str(*b as uint, 16u);
490+
}
487491
return s;
488492
}
489493

src/libcore/io.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -450,8 +450,8 @@ fn mk_file_writer(path: &Path, flags: ~[FileFlag])
450450
fn wb() -> c_int { O_WRONLY as c_int }
451451

452452
let mut fflags: c_int = wb();
453-
for vec::each(flags) |f| {
454-
match f {
453+
for vec::each_ref(flags) |f| {
454+
match *f {
455455
Append => fflags |= O_APPEND as c_int,
456456
Create => fflags |= O_CREAT as c_int,
457457
Truncate => fflags |= O_TRUNC as c_int,

src/libcore/iter-trait/dvec.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,12 @@ type IMPL_T<A> = dvec::DVec<A>;
77
* Attempts to access this dvec during iteration will fail.
88
*/
99
pure fn EACH<A>(self: IMPL_T<A>, f: fn(A) -> bool) {
10-
unsafe { self.swap(|v| { vec::each(v, f); move v }) }
10+
unsafe {
11+
do self.swap |v| {
12+
vec::each(v, f);
13+
move v
14+
}
15+
}
1116
}
1217

1318
pure fn SIZE_HINT<A>(self: IMPL_T<A>) -> Option<uint> {

src/libcore/os.rs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -210,8 +210,8 @@ mod global_env {
210210

211211
fn env() -> ~[(~str,~str)] {
212212
let mut pairs = ~[];
213-
for vec::each(rustrt::rust_env_pairs()) |p| {
214-
let vs = str::splitn_char(p, '=', 1u);
213+
for vec::each_ref(rustrt::rust_env_pairs()) |p| {
214+
let vs = str::splitn_char(*p, '=', 1u);
215215
assert vec::len(vs) == 2u;
216216
vec::push(pairs, (copy vs[0], copy vs[1]));
217217
}
@@ -892,8 +892,8 @@ mod tests {
892892
fn test_env_getenv() {
893893
let e = env();
894894
assert vec::len(e) > 0u;
895-
for vec::each(e) |p| {
896-
let (n, v) = copy p;
895+
for vec::each_ref(e) |p| {
896+
let (n, v) = copy *p;
897897
log(debug, n);
898898
let v2 = getenv(n);
899899
// MingW seems to set some funky environment variables like
@@ -985,7 +985,9 @@ mod tests {
985985
// Just assuming that we've got some contents in the current directory
986986
assert (vec::len(dirs) > 0u);
987987

988-
for vec::each(dirs) |dir| { log(debug, dir); }
988+
for vec::each_ref(dirs) |dir| {
989+
log(debug, *dir);
990+
}
989991
}
990992

991993
#[test]

src/libcore/pipes.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1099,7 +1099,7 @@ impl<T: Send> PortSet<T> : Recv<T> {
10991099
pure fn peek() -> bool {
11001100
// It'd be nice to use self.port.each, but that version isn't
11011101
// pure.
1102-
for vec::each(self.ports) |p| {
1102+
for vec::each_ref(self.ports) |p| {
11031103
if p.peek() { return true }
11041104
}
11051105
false

src/libcore/repr.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ impl ReprVisitor {
158158

159159
fn write_escaped_slice(slice: &str) {
160160
self.writer.write_char('"');
161-
do str::chars_iter(slice) |ch| {
161+
for str::chars_each(slice) |ch| {
162162
self.writer.write_escaped_char(ch);
163163
}
164164
self.writer.write_char('"');
@@ -563,7 +563,7 @@ impl ReprPrinterWrapper {
563563
let vec_repr = *vec_repr_ptr;
564564
let data_ptr = ptr::to_unsafe_ptr(&(*vec_repr).unboxed.data);
565565
let slice: &str = transmute((data_ptr, (*vec_repr).unboxed.fill));
566-
do str::chars_iter(slice) |ch| {
566+
for str::chars_each(slice) |ch| {
567567
self.printer.writer.write_escaped_char(ch);
568568
}
569569
self.printer.writer.write_char('"');
@@ -686,7 +686,7 @@ impl ReprPrinterWrapper : TyVisitor {
686686
self.printer.writer.write_char('"');
687687
let slice_ptr: *&str = transmute(copy self.printer.ptr);
688688
let slice = *slice_ptr;
689-
do str::chars_iter(slice) |ch| {
689+
for str::chars_each(slice) |ch| {
690690
self.printer.writer.write_escaped_char(ch);
691691
}
692692
self.printer.writer.write_char('"');

src/libcore/result.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -267,11 +267,11 @@ impl<T: Copy, E: Copy> Result<T, E> {
267267
* }
268268
*/
269269
fn map_vec<T,U:Copy,V:Copy>(
270-
ts: &[T], op: fn(T) -> Result<V,U>) -> Result<~[V],U> {
270+
ts: &[T], op: fn((&T)) -> Result<V,U>) -> Result<~[V],U> {
271271

272272
let mut vs: ~[V] = ~[];
273273
vec::reserve(vs, vec::len(ts));
274-
for vec::each(ts) |t| {
274+
for vec::each_ref(ts) |t| {
275275
match op(t) {
276276
Ok(v) => vec::push(vs, v),
277277
Err(u) => return Err(u)

src/libcore/run.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,8 @@ fn with_argv<T>(prog: &str, args: &[~str],
8686
cb: fn(**libc::c_char) -> T) -> T {
8787
let mut argptrs = str::as_c_str(prog, |b| ~[b]);
8888
let mut tmps = ~[];
89-
for vec::each(args) |arg| {
90-
let t = @copy arg;
89+
for vec::each_ref(args) |arg| {
90+
let t = @copy *arg;
9191
vec::push(tmps, t);
9292
vec::push_all(argptrs, str::as_c_str(*t, |b| ~[b]));
9393
}
@@ -105,8 +105,8 @@ fn with_envp<T>(env: &Option<~[(~str,~str)]>,
105105
let mut tmps = ~[];
106106
let mut ptrs = ~[];
107107

108-
for vec::each(es) |e| {
109-
let (k,v) = copy e;
108+
for vec::each_ref(es) |e| {
109+
let (k,v) = copy *e;
110110
let t = @(fmt!("%s=%s", k, v));
111111
vec::push(tmps, t);
112112
vec::push_all(ptrs, str::as_c_str(*t, |b| ~[b]));
@@ -130,8 +130,8 @@ fn with_envp<T>(env: &Option<~[(~str,~str)]>,
130130
match *env {
131131
Some(es) if !vec::is_empty(es) => {
132132
let mut blk : ~[u8] = ~[];
133-
for vec::each(es) |e| {
134-
let (k,v) = e;
133+
for vec::each_ref(es) |e| {
134+
let (k,v) = *e;
135135
let t = fmt!("%s=%s", k, v);
136136
let mut v : ~[u8] = ::unsafe::reinterpret_cast(&t);
137137
blk += v;

src/libcore/send_map.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -312,7 +312,7 @@ mod linear {
312312
}
313313

314314
pure fn each_ref(&self, blk: fn(k: &K, v: &V) -> bool) {
315-
for vec::each(self.buckets) |slot| {
315+
for vec::each_ref(self.buckets) |slot| {
316316
let mut broke = false;
317317
do slot.iter |bucket| {
318318
if !blk(&bucket.key, &bucket.value) {

0 commit comments

Comments
 (0)