pub struct ChainPoller<B: Deref<Target = T> + Sized + Send + Sync, T: BlockSource + ?Sized> { /* private fields */ }
Expand description
The canonical Poll
implementation used for a single BlockSource
.
Other Poll
implementations should be built using ChainPoller
as it provides the simplest way
of validating chain data and checking consistency.
Implementations§
Source§impl<B: Deref<Target = T> + Sized + Send + Sync, T: BlockSource + ?Sized> ChainPoller<B, T>
impl<B: Deref<Target = T> + Sized + Send + Sync, T: BlockSource + ?Sized> ChainPoller<B, T>
Trait Implementations§
Source§impl<B: Deref<Target = T> + Sized + Send + Sync, T: BlockSource + ?Sized> Poll for ChainPoller<B, T>
impl<B: Deref<Target = T> + Sized + Send + Sync, T: BlockSource + ?Sized> Poll for ChainPoller<B, T>
Source§fn poll_chain_tip<'a>(
&'a self,
best_known_chain_tip: ValidatedBlockHeader,
) -> AsyncBlockSourceResult<'a, ChainTip>
fn poll_chain_tip<'a>( &'a self, best_known_chain_tip: ValidatedBlockHeader, ) -> AsyncBlockSourceResult<'a, ChainTip>
Returns a chain tip in terms of its relationship to the provided chain tip.
Source§fn look_up_previous_header<'a>(
&'a self,
header: &'a ValidatedBlockHeader,
) -> AsyncBlockSourceResult<'a, ValidatedBlockHeader>
fn look_up_previous_header<'a>( &'a self, header: &'a ValidatedBlockHeader, ) -> AsyncBlockSourceResult<'a, ValidatedBlockHeader>
Returns the header that preceded the given header in the chain.
Source§fn fetch_block<'a>(
&'a self,
header: &'a ValidatedBlockHeader,
) -> AsyncBlockSourceResult<'a, ValidatedBlock>
fn fetch_block<'a>( &'a self, header: &'a ValidatedBlockHeader, ) -> AsyncBlockSourceResult<'a, ValidatedBlock>
Returns the block associated with the given header.
Auto Trait Implementations§
impl<B, T> Freeze for ChainPoller<B, T>
impl<B, T> RefUnwindSafe for ChainPoller<B, T>where
B: RefUnwindSafe,
T: ?Sized,
impl<B, T> Send for ChainPoller<B, T>where
T: ?Sized,
impl<B, T> Sync for ChainPoller<B, T>where
T: ?Sized,
impl<B, T> Unpin for ChainPoller<B, T>
impl<B, T> UnwindSafe for ChainPoller<B, T>where
B: UnwindSafe,
T: ?Sized,
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