Struct sp_consensus_slots::EquivocationProof[][src]

pub struct EquivocationProof<Header, Id> {
    pub offender: Id,
    pub slot_number: SlotNumber,
    pub first_header: Header,
    pub second_header: Header,
}

Represents an equivocation proof. An equivocation happens when a validator produces more than one block on the same slot. The proof of equivocation are the given distinct headers that were signed by the validator and which include the slot number.

Fields

offender: Id

Returns the authority id of the equivocator.

slot_number: SlotNumber

The slot number at which the equivocation happened.

first_header: Header

The first header involved in the equivocation.

second_header: Header

The second header involved in the equivocation.

Trait Implementations

impl<Header: Clone, Id: Clone> Clone for EquivocationProof<Header, Id>[src]

impl<Header: Debug, Id: Debug> Debug for EquivocationProof<Header, Id>[src]

impl<Header, Id> Decode for EquivocationProof<Header, Id> where
    Id: Decode,
    Id: Decode,
    Header: Decode,
    Header: Decode,
    Header: Decode,
    Header: Decode
[src]

impl<Header, Id> Encode for EquivocationProof<Header, Id> where
    Id: Encode,
    Id: Encode,
    Header: Encode,
    Header: Encode,
    Header: Encode,
    Header: Encode
[src]

impl<Header, Id> EncodeLike<EquivocationProof<Header, Id>> for EquivocationProof<Header, Id> where
    Id: Encode,
    Id: Encode,
    Header: Encode,
    Header: Encode,
    Header: Encode,
    Header: Encode
[src]

impl<Header: PartialEq, Id: PartialEq> PartialEq<EquivocationProof<Header, Id>> for EquivocationProof<Header, Id>[src]

impl<Header, Id> StructuralPartialEq for EquivocationProof<Header, Id>[src]

Auto Trait Implementations

impl<Header, Id> RefUnwindSafe for EquivocationProof<Header, Id> where
    Header: RefUnwindSafe,
    Id: RefUnwindSafe

impl<Header, Id> Send for EquivocationProof<Header, Id> where
    Header: Send,
    Id: Send

impl<Header, Id> Sync for EquivocationProof<Header, Id> where
    Header: Sync,
    Id: Sync

impl<Header, Id> Unpin for EquivocationProof<Header, Id> where
    Header: Unpin,
    Id: Unpin

impl<Header, Id> UnwindSafe for EquivocationProof<Header, Id> where
    Header: UnwindSafe,
    Id: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> CheckedConversion for T[src]

impl<S> Codec for S where
    S: Encode + Decode
[src]

impl<T> DecodeAll for T where
    T: Decode
[src]

impl<T> DecodeLimit for T where
    T: Decode
[src]

impl<T> DynClone for T where
    T: Clone
[src]

impl<'_, '_, T> EncodeLike<&'_ &'_ T> for T where
    T: Encode
[src]

impl<'_, T> EncodeLike<&'_ T> for T where
    T: Encode
[src]

impl<'_, T> EncodeLike<&'_ mut T> for T where
    T: Encode
[src]

impl<T> EncodeLike<Arc<T>> for T where
    T: Encode
[src]

impl<T> EncodeLike<Box<T, Global>> for T where
    T: Encode
[src]

impl<'a, T> EncodeLike<Cow<'a, T>> for T where
    T: Encode + ToOwned
[src]

impl<T> EncodeLike<Rc<T>> for T where
    T: Encode
[src]

impl<T> From<T> for T[src]

impl<S> FullCodec for S where
    S: Decode + FullEncode
[src]

impl<S> FullEncode for S where
    S: Encode + EncodeLike<S>, 
[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, Outer> IsWrappedBy<Outer> for T where
    T: From<Outer>,
    Outer: AsRef<T> + AsMut<T> + From<T>, 
[src]

pub fn from_ref(outer: &Outer) -> &T[src]

Get a reference to the inner from the outer.

pub fn from_mut(outer: &mut Outer) -> &mut T[src]

Get a mutable reference to the inner from the outer.

impl<T> KeyedVec for T where
    T: Codec
[src]

impl<T> MaybeDebug for T where
    T: Debug
[src]

impl<T> MaybeDebug for T where
    T: Debug
[src]

impl<T> MaybeRefUnwindSafe for T where
    T: RefUnwindSafe
[src]

impl<T> Pointable for T[src]

type Init = T

The type for initializers.

impl<T> Same<T> for T[src]

type Output = T

Should always be Self

impl<T> SaturatedConversion for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<S, T> UncheckedInto<T> for S where
    T: UncheckedFrom<S>, 
[src]

impl<T, S> UniqueSaturatedInto<T> for S where
    T: Bounded,
    S: TryInto<T>, 
[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]