pub mod generic;
pub use generic::{Context, Table};
pub mod v2 {
use crate::generic;
use polkadot_primitives::{
CandidateHash, CommittedCandidateReceiptV2 as CommittedCandidateReceipt,
CompactStatement as PrimitiveStatement, CoreIndex, ValidatorIndex, ValidatorSignature,
};
pub type Statement = generic::Statement<CommittedCandidateReceipt, CandidateHash>;
pub type SignedStatement = generic::SignedStatement<
CommittedCandidateReceipt,
CandidateHash,
ValidatorIndex,
ValidatorSignature,
>;
pub type Misbehavior = generic::Misbehavior<
CommittedCandidateReceipt,
CandidateHash,
ValidatorIndex,
ValidatorSignature,
>;
pub type Summary = generic::Summary<CandidateHash, CoreIndex>;
impl<'a> From<&'a Statement> for PrimitiveStatement {
fn from(s: &'a Statement) -> PrimitiveStatement {
match *s {
generic::Statement::Valid(s) => PrimitiveStatement::Valid(s),
generic::Statement::Seconded(ref s) => PrimitiveStatement::Seconded(s.hash()),
}
}
}
}