From 10c6e85c1a080ffde04de4790c6bd8ea3a99aa61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Garillot?= Date: Mon, 2 Dec 2019 07:12:38 -0800 Subject: [PATCH] Remove a few unnecessary `.into_iter()` explicit calls, and some cloning. See https://rust-lang.github.io/rust-clippy/master/#explicit_into_iter_loop --- crypto-primitives/src/commitment/blake2s/constraints.rs | 6 +++--- crypto-primitives/src/commitment/pedersen/constraints.rs | 2 +- crypto-primitives/src/crh/bowe_hopwood/constraints.rs | 4 ++-- crypto-primitives/src/crh/pedersen/constraints.rs | 2 +- crypto-primitives/src/prf/blake2s/constraints.rs | 2 +- r1cs-std/src/bits/boolean.rs | 2 +- r1cs-std/src/bits/uint32.rs | 2 +- r1cs-std/src/bits/uint8.rs | 6 +++--- r1cs-std/src/fields/mod.rs | 2 +- r1cs-std/src/groups/curves/twisted_edwards/mod.rs | 4 ++-- r1cs-std/src/pairing/bls12/mod.rs | 2 +- 11 files changed, 17 insertions(+), 17 deletions(-) diff --git a/crypto-primitives/src/commitment/blake2s/constraints.rs b/crypto-primitives/src/commitment/blake2s/constraints.rs index c8327d1..0a575c2 100644 --- a/crypto-primitives/src/commitment/blake2s/constraints.rs +++ b/crypto-primitives/src/commitment/blake2s/constraints.rs @@ -32,7 +32,7 @@ impl CommitmentGadget r: &Self::RandomnessGadget, ) -> Result { let mut input_bits = Vec::with_capacity(512); - for byte in input.into_iter().chain(r.0.iter()) { + for byte in input.iter().chain(r.0.iter()) { input_bits.extend_from_slice(&byte.into_bits_le()); } let mut result = Vec::new(); @@ -141,13 +141,13 @@ mod test { let primitive_result = Blake2sCommitment::commit(¶meters, &input, &randomness).unwrap(); let mut input_bytes = vec![]; - for (byte_i, input_byte) in input.into_iter().enumerate() { + for (byte_i, input_byte) in input.iter().enumerate() { let cs = cs.ns(|| format!("input_byte_gadget_{}", byte_i)); input_bytes.push(UInt8::alloc(cs, || Ok(*input_byte)).unwrap()); } let mut randomness_bytes = vec![]; - for (byte_i, random_byte) in randomness.into_iter().enumerate() { + for (byte_i, random_byte) in randomness.iter().enumerate() { let cs = cs.ns(|| format!("randomness_byte_gadget_{}", byte_i)); randomness_bytes.push(UInt8::alloc(cs, || Ok(*random_byte)).unwrap()); } diff --git a/crypto-primitives/src/commitment/pedersen/constraints.rs b/crypto-primitives/src/commitment/pedersen/constraints.rs index 7fcc63b..6d7219c 100644 --- a/crypto-primitives/src/commitment/pedersen/constraints.rs +++ b/crypto-primitives/src/commitment/pedersen/constraints.rs @@ -218,7 +218,7 @@ mod test { PedersenCommitment::::commit(¶meters, &input, &randomness).unwrap(); let mut input_bytes = vec![]; - for (byte_i, input_byte) in input.into_iter().enumerate() { + for (byte_i, input_byte) in input.iter().enumerate() { let cs = cs.ns(|| format!("input_byte_gadget_{}", byte_i)); input_bytes.push(UInt8::alloc(cs, || Ok(*input_byte)).unwrap()); } diff --git a/crypto-primitives/src/crh/bowe_hopwood/constraints.rs b/crypto-primitives/src/crh/bowe_hopwood/constraints.rs index 37dd508..60accf8 100644 --- a/crypto-primitives/src/crh/bowe_hopwood/constraints.rs +++ b/crypto-primitives/src/crh/bowe_hopwood/constraints.rs @@ -72,7 +72,7 @@ where // Allocate new variable for the result. let input_in_bits = input_in_bits .chunks(W::WINDOW_SIZE * CHUNK_SIZE) - .map(|x| x.chunks(CHUNK_SIZE).into_iter().collect::>()) + .map(|x| x.chunks(CHUNK_SIZE).collect::>()) .collect::>(); let result = GG::precomputed_base_3_bit_signed_digit_scalar_mul( cs, @@ -159,7 +159,7 @@ mod test { rng.fill_bytes(&mut input); let mut input_bytes = vec![]; - for (byte_i, input_byte) in input.into_iter().enumerate() { + for (byte_i, input_byte) in input.iter().enumerate() { let cs = cs.ns(|| format!("input_byte_gadget_{}", byte_i)); input_bytes.push(UInt8::alloc(cs, || Ok(*input_byte)).unwrap()); } diff --git a/crypto-primitives/src/crh/pedersen/constraints.rs b/crypto-primitives/src/crh/pedersen/constraints.rs index 27ce3f1..68442aa 100644 --- a/crypto-primitives/src/crh/pedersen/constraints.rs +++ b/crypto-primitives/src/crh/pedersen/constraints.rs @@ -147,7 +147,7 @@ mod test { rng.fill_bytes(&mut input); let mut input_bytes = vec![]; - for (byte_i, input_byte) in input.into_iter().enumerate() { + for (byte_i, input_byte) in input.iter().enumerate() { let cs = cs.ns(|| format!("input_byte_gadget_{}", byte_i)); input_bytes.push(UInt8::alloc(cs, || Ok(*input_byte)).unwrap()); } diff --git a/crypto-primitives/src/prf/blake2s/constraints.rs b/crypto-primitives/src/prf/blake2s/constraints.rs index af5df21..b2f6bf0 100644 --- a/crypto-primitives/src/prf/blake2s/constraints.rs +++ b/crypto-primitives/src/prf/blake2s/constraints.rs @@ -482,7 +482,7 @@ impl PRFGadget for Blake2sGadget assert_eq!(seed.len(), 32); // assert_eq!(input.len(), 32); let mut gadget_input = Vec::with_capacity(512); - for byte in seed.into_iter().chain(input) { + for byte in seed.iter().chain(input) { gadget_input.extend_from_slice(&byte.into_bits_le()); } let mut result = Vec::new(); diff --git a/r1cs-std/src/bits/boolean.rs b/r1cs-std/src/bits/boolean.rs index 6a32647..7395dc5 100644 --- a/r1cs-std/src/bits/boolean.rs +++ b/r1cs-std/src/bits/boolean.rs @@ -371,7 +371,7 @@ impl Boolean { values: &[u8], ) -> Vec { let mut input_bits = vec![]; - for (byte_i, input_byte) in values.into_iter().enumerate() { + for (byte_i, input_byte) in values.iter().enumerate() { for bit_i in (0..8).rev() { let cs = cs.ns(|| format!("input_bit_gadget {} {}", byte_i, bit_i)); input_bits.push( diff --git a/r1cs-std/src/bits/uint32.rs b/r1cs-std/src/bits/uint32.rs index 77e4eca..a1fb5c2 100644 --- a/r1cs-std/src/bits/uint32.rs +++ b/r1cs-std/src/bits/uint32.rs @@ -291,7 +291,7 @@ impl ToBytesGadget for UInt32 { None => [None, None, None, None], }; let mut bytes = Vec::new(); - for (i, chunk8) in self.to_bits_le().chunks(8).into_iter().enumerate() { + for (i, chunk8) in self.to_bits_le().chunks(8).enumerate() { let byte = UInt8 { bits: chunk8.to_vec(), value: value_chunks[i], diff --git a/r1cs-std/src/bits/uint8.rs b/r1cs-std/src/bits/uint8.rs index b7de9ed..77568f6 100644 --- a/r1cs-std/src/bits/uint8.rs +++ b/r1cs-std/src/bits/uint8.rs @@ -60,7 +60,7 @@ impl UInt8 { T: Into> + Copy, { let mut output_vec = Vec::with_capacity(values.len()); - for (i, value) in values.into_iter().enumerate() { + for (i, value) in values.iter().enumerate() { let byte: Option = Into::into(*value); let alloc_byte = Self::alloc(&mut cs.ns(|| format!("byte_{}", i)), || byte.get())?; output_vec.push(alloc_byte); @@ -115,7 +115,7 @@ impl UInt8 { /// LSB-first means that we can easily get the corresponding field element /// via double and add. pub fn into_bits_le(&self) -> Vec { - self.bits.iter().cloned().collect() + self.bits.to_vec() } /// Converts a little-endian byte order representation of bits into a @@ -317,7 +317,7 @@ mod test { #[test] fn test_uint8_alloc_input_vec() { let mut cs = TestConstraintSystem::::new(); - let byte_vals = (64u8..128u8).into_iter().collect::>(); + let byte_vals = (64u8..128u8).collect::>(); let bytes = UInt8::alloc_input_vec(cs.ns(|| "alloc value"), &byte_vals).unwrap(); for (native_byte, gadget_byte) in byte_vals.into_iter().zip(bytes) { let bits = gadget_byte.into_bits_le(); diff --git a/r1cs-std/src/fields/mod.rs b/r1cs-std/src/fields/mod.rs index ec21ccf..271c1d2 100644 --- a/r1cs-std/src/fields/mod.rs +++ b/r1cs-std/src/fields/mod.rs @@ -217,7 +217,7 @@ pub trait FieldGadget: bits: &[Boolean], ) -> Result { let mut res = Self::one(cs.ns(|| "Alloc result"))?; - for (i, bit) in bits.into_iter().enumerate() { + for (i, bit) in bits.iter().enumerate() { res = res.square(cs.ns(|| format!("Double {}", i)))?; let tmp = res.mul(cs.ns(|| format!("Add {}-th base power", i)), self)?; res = Self::conditionally_select( diff --git a/r1cs-std/src/groups/curves/twisted_edwards/mod.rs b/r1cs-std/src/groups/curves/twisted_edwards/mod.rs index d79dfdf..02731d3 100644 --- a/r1cs-std/src/groups/curves/twisted_edwards/mod.rs +++ b/r1cs-std/src/groups/curves/twisted_edwards/mod.rs @@ -983,11 +983,11 @@ mod projective_impl { // Compute ∏(h_i^{m_i}) for all i. for (segment_i, (segment_bits_chunks, segment_powers)) in - scalars.into_iter().zip(bases.iter()).enumerate() + scalars.iter().zip(bases.iter()).enumerate() { for (i, (bits, base_power)) in segment_bits_chunks .borrow() - .into_iter() + .iter() .zip(segment_powers.borrow().iter()) .enumerate() { diff --git a/r1cs-std/src/pairing/bls12/mod.rs b/r1cs-std/src/pairing/bls12/mod.rs index e8e91d2..bbe52c3 100644 --- a/r1cs-std/src/pairing/bls12/mod.rs +++ b/r1cs-std/src/pairing/bls12/mod.rs @@ -102,7 +102,7 @@ where qs: &[Self::G2PreparedGadget], ) -> Result { let mut pairs = vec![]; - for (p, q) in ps.into_iter().zip(qs.into_iter()) { + for (p, q) in ps.iter().zip(qs.iter()) { pairs.push((p, q.ell_coeffs.iter())); } let mut f = Self::GTGadget::one(cs.ns(|| "one"))?;