Struct sp_consensus_slots::EquivocationProof
source · [−]pub struct EquivocationProof<Header, Id> {
pub offender: Id,
pub slot: Slot,
pub first_header: Header,
pub second_header: Header,
}
Expand description
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: Slot
The slot 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
sourceimpl<Header: Clone, Id: Clone> Clone for EquivocationProof<Header, Id>
impl<Header: Clone, Id: Clone> Clone for EquivocationProof<Header, Id>
sourcefn clone(&self) -> EquivocationProof<Header, Id>
fn clone(&self) -> EquivocationProof<Header, Id>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<Header: Debug, Id: Debug> Debug for EquivocationProof<Header, Id>
impl<Header: Debug, Id: Debug> Debug for EquivocationProof<Header, Id>
sourceimpl<Header, Id> Decode for EquivocationProof<Header, Id> where
Id: Decode,
Id: Decode,
Header: Decode,
Header: Decode,
Header: Decode,
Header: Decode,
impl<Header, Id> Decode for EquivocationProof<Header, Id> where
Id: Decode,
Id: Decode,
Header: Decode,
Header: Decode,
Header: Decode,
Header: Decode,
sourcefn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
Attempt to deserialise the value from input.
sourcefn skip<I>(input: &mut I) -> Result<(), Error> where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error> where
I: Input,
Attempt to skip the encoded value from input. Read more
sourcefn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
Returns the fixed encoded size of the type. Read more
sourceimpl<Header, Id> Encode for EquivocationProof<Header, Id> where
Id: Encode,
Id: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
impl<Header, Id> Encode for EquivocationProof<Header, Id> where
Id: Encode,
Id: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
sourcefn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
Convert self to a slice and append it to the destination.
sourcefn size_hint(&self) -> usize
fn size_hint(&self) -> usize
If possible give a hint of expected size of the encoding. Read more
sourcefn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R,
fn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R,
Convert self to a slice and then invoke the given closure with it.
sourcefn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Calculates the encoded size. Read more
sourceimpl<Header: PartialEq, Id: PartialEq> PartialEq<EquivocationProof<Header, Id>> for EquivocationProof<Header, Id>
impl<Header: PartialEq, Id: PartialEq> PartialEq<EquivocationProof<Header, Id>> for EquivocationProof<Header, Id>
sourcefn eq(&self, other: &EquivocationProof<Header, Id>) -> bool
fn eq(&self, other: &EquivocationProof<Header, Id>) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &EquivocationProof<Header, Id>) -> bool
fn ne(&self, other: &EquivocationProof<Header, Id>) -> bool
This method tests for !=
.
impl<Header, Id> EncodeLike<EquivocationProof<Header, Id>> for EquivocationProof<Header, Id> where
Id: Encode,
Id: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
Header: Encode,
impl<Header, Id> StructuralPartialEq for EquivocationProof<Header, Id>
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
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> DecodeLimit for T where
T: Decode,
impl<T> DecodeLimit for T where
T: Decode,
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more