Skip to content

Commit 49c7452

Browse files
committed
vec: rm old_iter implementations, except BaseIter
The removed test for issue #2611 is well covered by the `std::iterator` module itself. This adds the `count` method to `IteratorUtil` to replace `EqIter`.
1 parent cbad1da commit 49c7452

Some content is hidden

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

96 files changed

+310
-490
lines changed

doc/tutorial-tasks.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,7 @@ let ports = do vec::from_fn(3) |init_val| {
283283
};
284284
285285
// Wait on each port, accumulating the results
286-
let result = ports.foldl(0, |accum, port| *accum + port.recv() );
286+
let result = ports.iter().fold(0, |accum, port| accum + port.recv() );
287287
# fn some_expensive_computation(_i: uint) -> int { 42 }
288288
~~~
289289

src/libextra/bitv.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -639,7 +639,7 @@ impl BitvSet {
639639
if self.capacity() < other.capacity() {
640640
self.bitv.storage.grow(other.capacity() / uint::bits, &0);
641641
}
642-
for other.bitv.storage.eachi |i, &w| {
642+
for other.bitv.storage.iter().enumerate().advance |(i, &w)| {
643643
let old = self.bitv.storage[i];
644644
let new = f(old, w);
645645
self.bitv.storage[i] = new;
@@ -672,7 +672,7 @@ impl BaseIter<uint> for BitvSet {
672672
fn size_hint(&self) -> Option<uint> { Some(self.len()) }
673673

674674
fn each(&self, blk: &fn(v: &uint) -> bool) -> bool {
675-
for self.bitv.storage.eachi |i, &w| {
675+
for self.bitv.storage.iter().enumerate().advance |(i, &w)| {
676676
if !iterate_bits(i * uint::bits, w, |b| blk(&b)) {
677677
return false;
678678
}
@@ -826,7 +826,7 @@ impl BitvSet {
826826
f: &fn(uint, uint, uint) -> bool) -> bool {
827827
let min = uint::min(self.bitv.storage.len(),
828828
other.bitv.storage.len());
829-
self.bitv.storage.slice(0, min).eachi(|i, &w| {
829+
self.bitv.storage.slice(0, min).iter().enumerate().advance(|(i, &w)| {
830830
f(i * uint::bits, w, other.bitv.storage[i])
831831
})
832832
}
@@ -845,12 +845,12 @@ impl BitvSet {
845845
let min = uint::min(len1, len2);
846846

847847
/* only one of these loops will execute and that's the point */
848-
for self.bitv.storage.slice(min, len1).eachi |i, &w| {
848+
for self.bitv.storage.slice(min, len1).iter().enumerate().advance |(i, &w)| {
849849
if !f(true, (i + min) * uint::bits, w) {
850850
return false;
851851
}
852852
}
853-
for other.bitv.storage.slice(min, len2).eachi |i, &w| {
853+
for other.bitv.storage.slice(min, len2).iter().enumerate().advance |(i, &w)| {
854854
if !f(false, (i + min) * uint::bits, w) {
855855
return false;
856856
}

src/libextra/fileinput.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -448,7 +448,7 @@ mod test {
448448
|i| fmt!("tmp/lib-fileinput-test-fileinput-read-byte-%u.tmp", i)), true);
449449
450450
// 3 files containing 0\n, 1\n, and 2\n respectively
451-
for filenames.eachi |i, &filename| {
451+
for filenames.iter().enumerate().advance |(i, &filename)| {
452452
make_file(filename.get_ref(), [fmt!("%u", i)]);
453453
}
454454
@@ -478,7 +478,7 @@ mod test {
478478
|i| fmt!("tmp/lib-fileinput-test-fileinput-read-%u.tmp", i)), true);
479479
480480
// 3 files containing 1\n, 2\n, and 3\n respectively
481-
for filenames.eachi |i, &filename| {
481+
for filenames.iter().enumerate().advance |(i, &filename)| {
482482
make_file(filename.get_ref(), [fmt!("%u", i)]);
483483
}
484484
@@ -498,7 +498,7 @@ mod test {
498498
3,
499499
|i| fmt!("tmp/lib-fileinput-test-input-vec-%u.tmp", i)), true);
500500

501-
for filenames.eachi |i, &filename| {
501+
for filenames.iter().enumerate().advance |(i, &filename)| {
502502
let contents =
503503
vec::from_fn(3, |j| fmt!("%u %u", i, j));
504504
make_file(filename.get_ref(), contents);
@@ -518,7 +518,7 @@ mod test {
518518
3,
519519
|i| fmt!("tmp/lib-fileinput-test-input-vec-state-%u.tmp", i)),true);
520520

521-
for filenames.eachi |i, &filename| {
521+
for filenames.iter().enumerate().advance |(i, &filename)| {
522522
let contents =
523523
vec::from_fn(3, |j| fmt!("%u %u", i, j + 1));
524524
make_file(filename.get_ref(), contents);
@@ -582,7 +582,7 @@ mod test {
582582
3,
583583
|i| fmt!("tmp/lib-fileinput-test-next-file-%u.tmp", i)),true);
584584
585-
for filenames.eachi |i, &filename| {
585+
for filenames.iter().enumerate().advance |(i, &filename)| {
586586
let contents =
587587
vec::from_fn(3, |j| fmt!("%u %u", i, j + 1));
588588
make_file(&filename.get(), contents);

src/libextra/flatpipes.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -307,11 +307,11 @@ impl<T,U:Unflattener<T>,P:BytePort> GenericPort<T> for FlatPort<T, U, P> {
307307

308308
impl<T,F:Flattener<T>,C:ByteChan> GenericChan<T> for FlatChan<T, F, C> {
309309
fn send(&self, val: T) {
310-
self.byte_chan.send(CONTINUE.to_vec());
310+
self.byte_chan.send(CONTINUE.to_owned());
311311
let bytes = self.flattener.flatten(val);
312312
let len = bytes.len() as u64;
313313
do io::u64_to_be_bytes(len, size_of::<u64>()) |len_bytes| {
314-
self.byte_chan.send(len_bytes.to_vec());
314+
self.byte_chan.send(len_bytes.to_owned());
315315
}
316316
self.byte_chan.send(bytes);
317317
}
@@ -937,7 +937,7 @@ mod test {
937937
fn test_try_recv_none3<P:BytePort>(loader: PortLoader<P>) {
938938
static CONTINUE: [u8, ..4] = [0xAA, 0xBB, 0xCC, 0xDD];
939939
// The control word is followed by garbage
940-
let bytes = CONTINUE.to_vec() + [0];
940+
let bytes = CONTINUE.to_owned() + [0];
941941
let port = loader(bytes);
942942
let res: Option<int> = port.try_recv();
943943
assert!(res.is_none());
@@ -959,9 +959,9 @@ mod test {
959959
// then undeserializable garbage
960960
let len_bytes = do io::u64_to_be_bytes(
961961
1, sys::size_of::<u64>()) |len_bytes| {
962-
len_bytes.to_vec()
962+
len_bytes.to_owned()
963963
};
964-
let bytes = CONTINUE.to_vec() + len_bytes + [0, 0, 0, 0];
964+
let bytes = CONTINUE.to_owned() + len_bytes + [0, 0, 0, 0];
965965

966966
let port = loader(bytes);
967967

src/libextra/net_ip.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ pub mod v4 {
205205
}).collect();
206206
if parts.len() != 4 {
207207
Err(fmt!("'%s' doesn't have 4 parts", ip))
208-
} else if parts.contains(&256) {
208+
} else if parts.iter().any_(|x| *x == 256u) {
209209
Err(fmt!("invalid octal in addr '%s'", ip))
210210
} else {
211211
Ok(Ipv4Rep {

src/libextra/net_tcp.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -978,7 +978,7 @@ impl io::Writer for TcpSocketBuf {
978978
let w_result = write_common_impl(socket_data_ptr,
979979
vec::slice(data,
980980
0,
981-
data.len()).to_vec());
981+
data.len()).to_owned());
982982
if w_result.is_err() {
983983
let err_data = w_result.get_err();
984984
debug!(

src/libextra/net_url.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -519,8 +519,9 @@ fn get_authority(rawurl: &str) ->
519519
let end = end; // make end immutable so it can be captured
520520

521521
let host_is_end_plus_one: &fn() -> bool = || {
522+
let xs = ['?', '#', '/'];
522523
end+1 == len
523-
&& !['?', '#', '/'].contains(&(rawurl[end] as char))
524+
&& !xs.iter().any_(|x| *x == (rawurl[end] as char))
524525
};
525526

526527
// finish up

src/libextra/num/bigint.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1175,8 +1175,8 @@ mod biguint_tests {
11751175
fn test_cmp() {
11761176
let data = [ &[], &[1], &[2], &[-1], &[0, 1], &[2, 1], &[1, 1, 1] ]
11771177
.map(|v| BigUint::from_slice(*v));
1178-
for data.eachi |i, ni| {
1179-
for vec::slice(data, i, data.len()).eachi |j0, nj| {
1178+
for data.iter().enumerate().advance |(i, ni)| {
1179+
for vec::slice(data, i, data.len()).iter().enumerate().advance |(j0, nj)| {
11801180
let j = j0 + i;
11811181
if i == j {
11821182
assert_eq!(ni.cmp(nj), Equal);
@@ -1651,8 +1651,8 @@ mod bigint_tests {
16511651
nums.push(Zero::zero());
16521652
nums.push_all_move(vs.map(|s| BigInt::from_slice(Plus, *s)));
16531653

1654-
for nums.eachi |i, ni| {
1655-
for vec::slice(nums, i, nums.len()).eachi |j0, nj| {
1654+
for nums.iter().enumerate().advance |(i, ni)| {
1655+
for vec::slice(nums, i, nums.len()).iter().enumerate().advance |(j0, nj)| {
16561656
let j = i + j0;
16571657
if i == j {
16581658
assert_eq!(ni.cmp(nj), Equal);

src/libextra/serialize.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -432,7 +432,7 @@ impl<D:Decoder,T:Decodable<D>> Decodable<D> for @T {
432432
impl<'self, S:Encoder,T:Encodable<S>> Encodable<S> for &'self [T] {
433433
fn encode(&self, s: &mut S) {
434434
do s.emit_seq(self.len()) |s| {
435-
for self.eachi |i, e| {
435+
for self.iter().enumerate().advance |(i, e)| {
436436
s.emit_seq_elt(i, |s| e.encode(s))
437437
}
438438
}
@@ -442,7 +442,7 @@ impl<'self, S:Encoder,T:Encodable<S>> Encodable<S> for &'self [T] {
442442
impl<S:Encoder,T:Encodable<S>> Encodable<S> for ~[T] {
443443
fn encode(&self, s: &mut S) {
444444
do s.emit_seq(self.len()) |s| {
445-
for self.eachi |i, e| {
445+
for self.iter().enumerate().advance |(i, e)| {
446446
s.emit_seq_elt(i, |s| e.encode(s))
447447
}
448448
}
@@ -462,7 +462,7 @@ impl<D:Decoder,T:Decodable<D>> Decodable<D> for ~[T] {
462462
impl<S:Encoder,T:Encodable<S>> Encodable<S> for @[T] {
463463
fn encode(&self, s: &mut S) {
464464
do s.emit_seq(self.len()) |s| {
465-
for self.eachi |i, e| {
465+
for self.iter().enumerate().advance |(i, e)| {
466466
s.emit_seq_elt(i, |s| e.encode(s))
467467
}
468468
}
@@ -901,7 +901,7 @@ pub trait EncoderHelpers {
901901
impl<S:Encoder> EncoderHelpers for S {
902902
fn emit_from_vec<T>(&mut self, v: &[T], f: &fn(&mut S, &T)) {
903903
do self.emit_seq(v.len()) |this| {
904-
for v.eachi |i, e| {
904+
for v.iter().enumerate().advance |(i, e)| {
905905
do this.emit_seq_elt(i) |this| {
906906
f(this, e)
907907
}

src/libextra/sort.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -731,7 +731,7 @@ fn copy_vec<T:Copy>(dest: &mut [T],
731731
from: &[T]) {
732732
assert!(s1+from.len() <= dest.len());
733733

734-
for from.eachi |i, v| {
734+
for from.iter().enumerate().advance |(i, v)| {
735735
dest[s1+i] = copy *v;
736736
}
737737
}
@@ -743,7 +743,7 @@ fn shift_vec<T:Copy>(dest: &mut [T],
743743
len: uint) {
744744
assert!(s1+len <= dest.len());
745745

746-
let tmp = dest.slice(s2, s2+len).to_vec();
746+
let tmp = dest.slice(s2, s2+len).to_owned();
747747
copy_vec(dest, s1, tmp);
748748
}
749749

0 commit comments

Comments
 (0)