Electra attestation changes from Lions review (#5971)

* dedup/cleanup and remove unneeded hashset use

* remove irrelevant TODOs
This commit is contained in:
Eitan Seri-Levi
2024-06-20 15:36:43 +02:00
committed by GitHub
parent 0e2add2daa
commit f85a124362
5 changed files with 11 additions and 29 deletions

View File

@@ -47,7 +47,6 @@ pub mod attesting_indices_electra {
use std::collections::HashSet;
use crate::per_block_processing::errors::{AttestationInvalid as Invalid, BlockOperationError};
use itertools::Itertools;
use safe_arith::SafeArith;
use types::*;
@@ -96,7 +95,7 @@ pub mod attesting_indices_electra {
aggregation_bits: &BitList<E::MaxValidatorsPerSlot>,
committee_bits: &BitVector<E::MaxCommitteesPerSlot>,
) -> Result<Vec<u64>, BeaconStateError> {
let mut output: HashSet<u64> = HashSet::new();
let mut attesting_indices = vec![];
let committee_indices = get_committee_indices::<E>(committee_bits);
@@ -128,8 +127,7 @@ pub mod attesting_indices_electra {
})
.collect::<HashSet<u64>>();
output.extend(committee_attesters);
attesting_indices.extend(committee_attesters);
committee_offset.safe_add_assign(beacon_committee.committee.len())?;
}
@@ -138,10 +136,9 @@ pub mod attesting_indices_electra {
return Err(BeaconStateError::InvalidBitfield);
}
let mut indices = output.into_iter().collect_vec();
indices.sort_unstable();
attesting_indices.sort_unstable();
Ok(indices)
Ok(attesting_indices)
}
pub fn get_committee_indices<E: EthSpec>(