Move active_validators into own crate

This commit is contained in:
Paul Hauner
2018-10-23 23:42:01 +02:00
parent a34266de0a
commit da25a66196
6 changed files with 21 additions and 5 deletions

View File

@@ -0,0 +1,26 @@
extern crate types;
use types::{
ValidatorRecord,
ValidatorStatus,
};
pub fn validator_is_active(v: &ValidatorRecord) -> bool {
v.status == ValidatorStatus::Active as u8
}
/// Returns the indicies of each active validator in a given vec of validators.
pub fn active_validator_indices(validators: &[ValidatorRecord])
-> Vec<usize>
{
validators.iter()
.enumerate()
.filter_map(|(i, validator)| {
if validator_is_active(&validator) {
Some(i)
} else {
None
}
})
.collect()
}