diff --git a/src/backend/serial/scalar_mul/pippenger.rs b/src/backend/serial/scalar_mul/pippenger.rs index 0cae2a1..8653f36 100644 --- a/src/backend/serial/scalar_mul/pippenger.rs +++ b/src/backend/serial/scalar_mul/pippenger.rs @@ -101,12 +101,10 @@ impl VartimeMultiscalarMul for Pippenger { .into_iter() .map(|p| p.map(|P| P.to_projective_niels())); - let scalars_points = scalars.zip(points).map(|(s,maybe_p)| maybe_p.map(|p| (s,p) ) ) - .collect::>>(); - let scalars_points = match scalars_points { - Some(sp) => sp, - None => return None, - }; + let scalars_points = scalars + .zip(points) + .map(|(s, maybe_p)| maybe_p.map(|p| (s, p))) + .collect::>>()?; // Prepare 2^w/2 buckets. // buckets[i] corresponds to a multiplication factor (i+1). diff --git a/src/backend/serial/scalar_mul/precomputed_straus.rs b/src/backend/serial/scalar_mul/precomputed_straus.rs index 9c66c9a..97f5e86 100644 --- a/src/backend/serial/scalar_mul/precomputed_straus.rs +++ b/src/backend/serial/scalar_mul/precomputed_straus.rs @@ -67,14 +67,10 @@ impl VartimePrecomputedMultiscalarMul for VartimePrecomputedStraus { .map(|c| c.borrow().non_adjacent_form(5)) .collect::>(); - let dynamic_lookup_tables = match dynamic_points + let dynamic_lookup_tables = dynamic_points .into_iter() .map(|P_opt| P_opt.map(|P| NafLookupTable5::::from(&P))) - .collect::>>() - { - Some(x) => x, - None => return None, - }; + .collect::>>()?; let sp = self.static_lookup_tables.len(); let dp = dynamic_lookup_tables.len(); diff --git a/src/backend/serial/scalar_mul/straus.rs b/src/backend/serial/scalar_mul/straus.rs index 862cf25..6f0786e 100644 --- a/src/backend/serial/scalar_mul/straus.rs +++ b/src/backend/serial/scalar_mul/straus.rs @@ -168,14 +168,10 @@ impl VartimeMultiscalarMul for Straus { .map(|c| c.borrow().non_adjacent_form(5)) .collect(); - let lookup_tables = match points + let lookup_tables = points .into_iter() .map(|P_opt| P_opt.map(|P| NafLookupTable5::::from(&P))) - .collect::>>() - { - Some(x) => x, - None => return None, - }; + .collect::>>()?; let mut r = ProjectivePoint::identity(); diff --git a/src/backend/vector/scalar_mul/pippenger.rs b/src/backend/vector/scalar_mul/pippenger.rs index f834a66..7f9e241 100644 --- a/src/backend/vector/scalar_mul/pippenger.rs +++ b/src/backend/vector/scalar_mul/pippenger.rs @@ -58,12 +58,10 @@ impl VartimeMultiscalarMul for Pippenger { .into_iter() .map(|p| p.map(|P| CachedPoint::from(ExtendedPoint::from(P)))); - let scalars_points = scalars.zip(points).map(|(s,maybe_p)| maybe_p.map(|p| (s,p) ) ) - .collect::>>(); - let scalars_points = match scalars_points { - Some(sp) => sp, - None => return None, - }; + let scalars_points = scalars + .zip(points) + .map(|(s, maybe_p)| maybe_p.map(|p| (s, p))) + .collect::>>()?; // Prepare 2^w/2 buckets. // buckets[i] corresponds to a multiplication factor (i+1). diff --git a/src/backend/vector/scalar_mul/precomputed_straus.rs b/src/backend/vector/scalar_mul/precomputed_straus.rs index cc1404a..2c6fdf5 100644 --- a/src/backend/vector/scalar_mul/precomputed_straus.rs +++ b/src/backend/vector/scalar_mul/precomputed_straus.rs @@ -66,14 +66,10 @@ impl VartimePrecomputedMultiscalarMul for VartimePrecomputedStraus { .map(|c| c.borrow().non_adjacent_form(5)) .collect::>(); - let dynamic_lookup_tables = match dynamic_points + let dynamic_lookup_tables = dynamic_points .into_iter() .map(|P_opt| P_opt.map(|P| NafLookupTable5::::from(&P))) - .collect::>>() - { - Some(x) => x, - None => return None, - }; + .collect::>>()?; let sp = self.static_lookup_tables.len(); let dp = dynamic_lookup_tables.len(); diff --git a/src/backend/vector/scalar_mul/straus.rs b/src/backend/vector/scalar_mul/straus.rs index 285a5fd..7a1167b 100644 --- a/src/backend/vector/scalar_mul/straus.rs +++ b/src/backend/vector/scalar_mul/straus.rs @@ -83,14 +83,10 @@ impl VartimeMultiscalarMul for Straus { .into_iter() .map(|c| c.borrow().non_adjacent_form(5)) .collect(); - let lookup_tables: Vec<_> = match points + let lookup_tables: Vec<_> = points .into_iter() .map(|P_opt| P_opt.map(|P| NafLookupTable5::::from(&P))) - .collect::>>() - { - Some(x) => x, - None => return None, - }; + .collect::>>()?; let mut Q = ExtendedPoint::identity();