Trait sp_staking::offence::ReportOffence
source · pub trait ReportOffence<Reporter, Offender, O: Offence<Offender>> {
// Required methods
fn report_offence(
reporters: Vec<Reporter>,
offence: O
) -> Result<(), OffenceError>;
fn is_known_offence(offenders: &[Offender], time_slot: &O::TimeSlot) -> bool;
}
Expand description
A trait for decoupling offence reporters from the actual handling of offence reports.
Required Methods§
sourcefn report_offence(
reporters: Vec<Reporter>,
offence: O
) -> Result<(), OffenceError>
fn report_offence( reporters: Vec<Reporter>, offence: O ) -> Result<(), OffenceError>
Report an offence
and reward given reporters
.
sourcefn is_known_offence(offenders: &[Offender], time_slot: &O::TimeSlot) -> bool
fn is_known_offence(offenders: &[Offender], time_slot: &O::TimeSlot) -> bool
Returns true iff all of the given offenders have been previously reported at the given time slot. This function is useful to prevent the sending of duplicate offence reports.