pub trait Verifier<B: BlockT>: Send + Sync {
    // Required method
    fn verify<'life0, 'async_trait>(
        &'life0 mut self,
        block: BlockImportParams<B, ()>
    ) -> Pin<Box<dyn Future<Output = Result<(BlockImportParams<B, ()>, Option<Vec<(CacheKeyId, Vec<u8>)>>), String>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Verify a justification of a block

Required Methods§

source

fn verify<'life0, 'async_trait>( &'life0 mut self, block: BlockImportParams<B, ()> ) -> Pin<Box<dyn Future<Output = Result<(BlockImportParams<B, ()>, Option<Vec<(CacheKeyId, Vec<u8>)>>), String>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Verify the given data and return the BlockImportParams and an optional new set of validators to import. If not, err with an Error-Message presented to the User in the logs.

Implementors§

impl<B: BlockT, C, P, CIDP> Verifier<B> for AuraVerifier<C, P, CIDP, NumberFor<B>>where C: ProvideRuntimeApi<B> + Send + Sync + AuxStore, C::Api: BlockBuilderApi<B> + AuraApi<B, <P as Pair>::Public> + ApiExt<B>, P: Pair + Send + Sync + 'static, P::Public: Send + Sync + Hash + Eq + Clone + Decode + Encode + Debug + 'static, P::Signature: Encode + Decode, CIDP: CreateInherentDataProviders<B, ()> + Send + Sync, CIDP::InherentDataProviders: InherentDataProviderExt + Send + Sync,

impl<Block, Client, SelectChain, CIDP> Verifier<Block> for BabeVerifier<Block, Client, SelectChain, CIDP>where Block: BlockT, Client: HeaderMetadata<Block, Error = Error> + HeaderBackend<Block> + ProvideRuntimeApi<Block> + Send + Sync + AuxStore, Client::Api: BlockBuilderApi<Block> + BabeApi<Block>, SelectChain: SelectChain<Block>, CIDP: CreateInherentDataProviders<Block, ()> + Send + Sync, CIDP::InherentDataProviders: InherentDataProviderExt + Send + Sync,