[][src]Struct sc_finality_grandpa::GrandpaJustification

pub struct GrandpaJustification<Block: BlockT> { /* fields omitted */ }

A GRANDPA justification for block finality, it includes a commit message and an ancestry proof including all headers routing all precommit target blocks to the commit target block. Due to the current voting strategy the precommit targets should be the same as the commit target, since honest voters don't vote past authority set change blocks.

This is meant to be stored in the db and passed around the network to other nodes, and are used by syncing nodes to prove authority set handoffs.

Trait Implementations

impl<Block: BlockT> Decode for GrandpaJustification<Block> where
    Commit<Block>: Decode,
    Commit<Block>: Decode,
    Vec<Block::Header>: Decode,
    Vec<Block::Header>: Decode
[src]

impl<Block: BlockT> Encode for GrandpaJustification<Block> where
    Commit<Block>: Encode,
    Commit<Block>: Encode,
    Vec<Block::Header>: Encode,
    Vec<Block::Header>: Encode
[src]

impl<Block: BlockT> EncodeLike<GrandpaJustification<Block>> for GrandpaJustification<Block> where
    Commit<Block>: Encode,
    Commit<Block>: Encode,
    Vec<Block::Header>: Encode,
    Vec<Block::Header>: Encode
[src]

Auto Trait Implementations

impl<Block> RefUnwindSafe for GrandpaJustification<Block> where
    <Block as Block>::Hash: RefUnwindSafe,
    <Block as Block>::Header: Header + RefUnwindSafe,
    <<Block as Block>::Header as Header>::Number: RefUnwindSafe

impl<Block> Send for GrandpaJustification<Block> where
    <Block as Block>::Hash: Send,
    <Block as Block>::Header: Header + Send,
    <<Block as Block>::Header as Header>::Number: Send

impl<Block> Sync for GrandpaJustification<Block> where
    <Block as Block>::Hash: Sync,
    <Block as Block>::Header: Header + Sync,
    <<Block as Block>::Header as Header>::Number: Sync

impl<Block> Unpin for GrandpaJustification<Block> where
    <Block as Block>::Hash: Unpin,
    <Block as Block>::Header: Header + Unpin,
    <<Block as Block>::Header as Header>::Number: Unpin

impl<Block> UnwindSafe for GrandpaJustification<Block> where
    <Block as Block>::Hash: UnwindSafe,
    <Block as Block>::Header: Header + UnwindSafe,
    <<Block as Block>::Header as Header>::Number: 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, X> Decode for X where
    T: Decode + Into<X>,
    X: WrapperTypeDecode<Wrapped = T>, 
[src]

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

impl<T, X> Encode for X where
    T: Encode + ?Sized,
    X: WrapperTypeEncode<Target = T>, 
[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>> for T where
    T: Encode
[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, U> Into<U> for T where
    U: From<T>, 
[src]

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

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

Get a reference to the inner from the outer.

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> MaybeRefUnwindSafe for T where
    T: RefUnwindSafe

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> SaturatedConversion for T[src]

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized

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
    S: TryInto<T>,
    T: Bounded
[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,