[−][src]Struct sp_consensus_slots::EquivocationProof
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: IdReturns the authority id of the equivocator.
slot_number: SlotNumberThe slot number at which the equivocation happened.
first_header: HeaderThe first header involved in the equivocation.
second_header: HeaderThe second header involved in the equivocation.
Trait Implementations
impl<Header: Clone, Id: Clone> Clone for EquivocationProof<Header, Id>[src]
fn clone(&self) -> EquivocationProof<Header, Id>[src]
fn clone_from(&mut self, source: &Self)1.0.0[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]
Id: Decode,
Id: Decode,
Header: Decode,
Header: Decode,
Header: Decode,
Header: Decode,
fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>[src]
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
impl<Header, Id> Encode for EquivocationProof<Header, Id> where
Id: Encode,
Id: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
Header: Encode, [src]
Id: Encode,
Id: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
fn encode_to<__CodecOutputEdqy: Output>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)[src]
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
fn size_hint(&self) -> usize[src]
fn encode(&self) -> Vec<u8>[src]
fn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R, [src]
F: FnOnce(&[u8]) -> R,
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]
Id: Encode,
Id: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
impl<Header: PartialEq, Id: PartialEq> PartialEq<EquivocationProof<Header, Id>> for EquivocationProof<Header, Id>[src]
fn eq(&self, other: &EquivocationProof<Header, Id>) -> bool[src]
fn ne(&self, other: &EquivocationProof<Header, Id>) -> bool[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,
Header: RefUnwindSafe,
Id: RefUnwindSafe,
impl<Header, Id> Send for EquivocationProof<Header, Id> where
Header: Send,
Id: Send,
Header: Send,
Id: Send,
impl<Header, Id> Sync for EquivocationProof<Header, Id> where
Header: Sync,
Id: Sync,
Header: Sync,
Id: Sync,
impl<Header, Id> Unpin for EquivocationProof<Header, Id> where
Header: Unpin,
Id: Unpin,
Header: Unpin,
Id: Unpin,
impl<Header, Id> UnwindSafe for EquivocationProof<Header, Id> where
Header: UnwindSafe,
Id: UnwindSafe,
Header: UnwindSafe,
Id: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> CheckedConversion for T[src]
fn checked_from<T>(t: T) -> Option<Self> where
Self: TryFrom<T>, [src]
Self: TryFrom<T>,
fn checked_into<T>(self) -> Option<T> where
Self: TryInto<T>, [src]
Self: TryInto<T>,
impl<S> Codec for S where
S: Encode + Decode, [src]
S: Encode + Decode,
impl<T, X> Decode for X where
T: Decode + Into<X>,
X: WrapperTypeDecode<Wrapped = T>, [src]
T: Decode + Into<X>,
X: WrapperTypeDecode<Wrapped = T>,
impl<T> DecodeAll for T where
T: Decode, [src]
T: Decode,
impl<T> DecodeLimit for T where
T: Decode, [src]
T: Decode,
fn decode_all_with_depth_limit(limit: u32, input: &[u8]) -> Result<T, Error>[src]
fn decode_with_depth_limit(limit: u32, input: &[u8]) -> Result<T, Error>[src]
impl<T> DynClone for T where
T: Clone, [src]
T: Clone,
impl<T, X> Encode for X where
T: Encode + ?Sized,
X: WrapperTypeEncode<Target = T>, [src]
T: Encode + ?Sized,
X: WrapperTypeEncode<Target = T>,
fn size_hint(&self) -> usize[src]
fn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R, [src]
F: FnOnce(&[u8]) -> R,
fn encode(&self) -> Vec<u8>[src]
fn encode_to<W>(&self, dest: &mut W) where
W: Output, [src]
W: Output,
impl<'_, '_, T> EncodeLike<&'_ &'_ T> for T where
T: Encode, [src]
T: Encode,
impl<'_, T> EncodeLike<&'_ T> for T where
T: Encode, [src]
T: Encode,
impl<'_, T> EncodeLike<&'_ mut T> for T where
T: Encode, [src]
T: Encode,
impl<T> EncodeLike<Arc<T>> for T where
T: Encode, [src]
T: Encode,
impl<T> EncodeLike<Box<T>> for T where
T: Encode, [src]
T: Encode,
impl<'a, T> EncodeLike<Cow<'a, T>> for T where
T: Encode + ToOwned, [src]
T: Encode + ToOwned,
impl<T> EncodeLike<Rc<T>> for T where
T: Encode, [src]
T: Encode,
impl<T> From<T> for T[src]
impl<S> FullCodec for S where
S: Decode + FullEncode, [src]
S: Decode + FullEncode,
impl<S> FullEncode for S where
S: Encode + EncodeLike<S>, [src]
S: Encode + EncodeLike<S>,
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, Outer> IsWrappedBy<Outer> for T where
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
fn from_ref(outer: &Outer) -> &T
Get a reference to the inner from the outer.
fn from_mut(outer: &mut Outer) -> &mut T
Get a mutable reference to the inner from the outer.
impl<T> KeyedVec for T where
T: Codec, [src]
T: Codec,
impl<T> MaybeDebug for T where
T: Debug,
T: Debug,
impl<T> MaybeDebug for T where
T: Debug,
T: Debug,
impl<T> MaybeRefUnwindSafe for T where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> SaturatedConversion for T
fn saturated_from<T>(t: T) -> Self where
Self: UniqueSaturatedFrom<T>,
Self: UniqueSaturatedFrom<T>,
fn saturated_into<T>(self) -> T where
Self: UniqueSaturatedInto<T>,
Self: UniqueSaturatedInto<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T[src]
fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
T: UncheckedFrom<S>,
fn unchecked_into(self) -> T
impl<T, S> UniqueSaturatedInto<T> for S where
S: TryInto<T>,
T: Bounded,
S: TryInto<T>,
T: Bounded,
fn unique_saturated_into(self) -> T
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,