pub trait ClientBlockImportExt<Block: BlockT>: Sized {
// Required methods
fn import<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn import_as_best<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn import_as_final<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn import_justified<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
justifications: Justifications,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}
Expand description
Extension trait for a test client around block importing.
Required Methods§
sourcefn import<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn import<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Import block to the chain. No finality.
sourcefn import_as_best<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn import_as_best<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Import a block and make it our best block if possible.
sourcefn import_as_final<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn import_as_final<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Import a block and finalize it.
sourcefn import_justified<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
justifications: Justifications,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn import_justified<'life0, 'async_trait>(
&'life0 self,
origin: BlockOrigin,
block: Block,
justifications: Justifications,
) -> Pin<Box<dyn Future<Output = Result<(), ConsensusError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Import block with justification(s), finalizes block.
Object Safety§
This trait is not object safe.
Implementations on Foreign Types§
source§impl<Block: BlockT, T> ClientBlockImportExt<Block> for Arc<T>
impl<Block: BlockT, T> ClientBlockImportExt<Block> for Arc<T>
This implementation is required, because of the weird api requirements around BlockImport
.