pub enum ChainSyncAction<B: BlockT> {
SendBlockRequest {
peer_id: PeerId,
request: BlockRequest<B>,
},
CancelBlockRequest {
peer_id: PeerId,
},
SendStateRequest {
peer_id: PeerId,
request: OpaqueStateRequest,
},
DropPeer(BadPeer),
ImportBlocks {
origin: BlockOrigin,
blocks: Vec<IncomingBlock<B>>,
},
ImportJustifications {
peer_id: PeerId,
hash: B::Hash,
number: NumberFor<B>,
justifications: Justifications,
},
}Expand description
Action that the parent of ChainSync should perform after reporting a network or block event.
Variants§
SendBlockRequest
Send block request to peer. Always implies dropping a stale block request to the same peer.
CancelBlockRequest
Fields
§
peer_id: PeerIdDrop stale block request.
SendStateRequest
Send state request to peer.
DropPeer(BadPeer)
Peer misbehaved. Disconnect, report it and cancel the block request to it.
ImportBlocks
Import blocks.
ImportJustifications
Import justifications.
Trait Implementations§
Auto Trait Implementations§
impl<B> !RefUnwindSafe for ChainSyncAction<B>
impl<B> Send for ChainSyncAction<B>
impl<B> !Sync for ChainSyncAction<B>
impl<B> Unpin for ChainSyncAction<B>
impl<B> !UnwindSafe for ChainSyncAction<B>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T. Read moresource§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from.source§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T.