diff --git a/bins/inbreeding/src/main.rs b/bins/inbreeding/src/main.rs index a6e3403952ec813fa387166dac25ac206b294ce4..e9f02c32ad10f5f88b94fc5c163ac092c95cebcc 100644 --- a/bins/inbreeding/src/main.rs +++ b/bins/inbreeding/src/main.rs @@ -38,15 +38,17 @@ fn measure_inbreeding<F: PrimeField>( nb_measurements: usize, mp: &MultiProgress, sty: &ProgressStyle, - rng: &mut impl RngCore, + rng: &(impl RngCore + Clone), ) -> f64 { + let mut rng = rng.clone(); + let mut count = 0; let pb = mp.add(ProgressBar::new(nb_measurements as u64)); pb.set_style(sty.clone()); pb.set_message("measure"); for _ in 0..nb_measurements { - if fec::decode(draw_unique_elements(shards, k, rng)).is_ok() { + if fec::decode(draw_unique_elements(shards, k, &mut rng)).is_ok() { count += 1; } pb.inc(1); @@ -62,7 +64,7 @@ fn end_to_end<F, Fun>( max_t: usize, nb_measurements: usize, measurement_schedule: Fun, - rng: &mut impl RngCore, + rng: &mut (impl RngCore + Clone), ) -> Result<(), KomodoError> where F: PrimeField, @@ -109,7 +111,7 @@ fn recoding<F, Fun>( env: Environment, nb_measurements: usize, measurement_schedule: Fun, - rng: &mut impl RngCore, + rng: &mut (impl RngCore + Clone), ) -> Result<(), KomodoError> where F: PrimeField,