diff --git a/src/libstd/hash.rs b/src/libstd/hash.rs index 16d138d4e1fb..5d4b9b4e3f0b 100644 --- a/src/libstd/hash.rs +++ b/src/libstd/hash.rs @@ -85,9 +85,10 @@ impl Hash for A { #[inline] fn hash_keyed(&self, k0: u64, k1: u64) -> u64 { let mut s = State::new(k0, k1); - for self.iter_bytes(true) |bytes| { + do self.iter_bytes(true) |bytes| { s.input(bytes); - } + true + }; s.result_u64() } } @@ -95,12 +96,14 @@ impl Hash for A { fn hash_keyed_2(a: &A, b: &B, k0: u64, k1: u64) -> u64 { let mut s = State::new(k0, k1); - for a.iter_bytes(true) |bytes| { + do a.iter_bytes(true) |bytes| { s.input(bytes); - } - for b.iter_bytes(true) |bytes| { + true + }; + do b.iter_bytes(true) |bytes| { s.input(bytes); - } + true + }; s.result_u64() } @@ -108,15 +111,18 @@ fn hash_keyed_3(a: &A, b: &B, c: &C, k0: u64, k1: u64) -> u64 { let mut s = State::new(k0, k1); - for a.iter_bytes(true) |bytes| { + do a.iter_bytes(true) |bytes| { s.input(bytes); - } - for b.iter_bytes(true) |bytes| { + true + }; + do b.iter_bytes(true) |bytes| { s.input(bytes); - } - for c.iter_bytes(true) |bytes| { + true + }; + do c.iter_bytes(true) |bytes| { s.input(bytes); - } + true + }; s.result_u64() } @@ -132,18 +138,22 @@ fn hash_keyed_4 u64 { let mut s = State::new(k0, k1); - for a.iter_bytes(true) |bytes| { + do a.iter_bytes(true) |bytes| { s.input(bytes); - } - for b.iter_bytes(true) |bytes| { + true + }; + do b.iter_bytes(true) |bytes| { s.input(bytes); - } - for c.iter_bytes(true) |bytes| { + true + }; + do c.iter_bytes(true) |bytes| { s.input(bytes); - } - for d.iter_bytes(true) |bytes| { + true + }; + do d.iter_bytes(true) |bytes| { s.input(bytes); - } + true + }; s.result_u64() } @@ -161,21 +171,26 @@ fn hash_keyed_5 u64 { let mut s = State::new(k0, k1); - for a.iter_bytes(true) |bytes| { + do a.iter_bytes(true) |bytes| { s.input(bytes); - } - for b.iter_bytes(true) |bytes| { + true + }; + do b.iter_bytes(true) |bytes| { s.input(bytes); - } - for c.iter_bytes(true) |bytes| { + true + }; + do c.iter_bytes(true) |bytes| { s.input(bytes); - } - for d.iter_bytes(true) |bytes| { + true + }; + do d.iter_bytes(true) |bytes| { s.input(bytes); - } - for e.iter_bytes(true) |bytes| { + true + }; + do e.iter_bytes(true) |bytes| { s.input(bytes); - } + true + }; s.result_u64() } diff --git a/src/libstd/to_bytes.rs b/src/libstd/to_bytes.rs index 60df31fd4ca8..5ad7969c8d21 100644 --- a/src/libstd/to_bytes.rs +++ b/src/libstd/to_bytes.rs @@ -353,9 +353,10 @@ pub trait ToBytes { impl ToBytes for A { fn to_bytes(&self, lsb0: bool) -> ~[u8] { do io::with_bytes_writer |wr| { - for self.iter_bytes(lsb0) |bytes| { - wr.write(bytes) - } + do self.iter_bytes(lsb0) |bytes| { + wr.write(bytes); + true + }; } } }