pub trait BlockRangeRootRetriever<S: MKTreeStorer>: Send + Sync {
    // Required method
    fn retrieve_block_range_roots<'a, 'async_trait>(
        &'a self,
        up_to_beacon: BlockNumber,
    ) -> Pin<Box<dyn Future<Output = StdResult<Box<dyn Iterator<Item = (BlockRange, MKTreeNode)> + 'a>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'a: 'async_trait;

    // Provided method
    fn compute_merkle_map_from_block_range_roots<'life0, 'async_trait>(
        &'life0 self,
        up_to_beacon: BlockNumber,
    ) -> Pin<Box<dyn Future<Output = StdResult<MKMap<BlockRange, MKMapNode<BlockRange, S>, S>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
}
Expand description

Block Range Merkle roots retriever

Required Methods§

source

fn retrieve_block_range_roots<'a, 'async_trait>( &'a self, up_to_beacon: BlockNumber, ) -> Pin<Box<dyn Future<Output = StdResult<Box<dyn Iterator<Item = (BlockRange, MKTreeNode)> + 'a>>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait,

Returns a Merkle map of the block ranges roots up to a given beacon

Provided Methods§

source

fn compute_merkle_map_from_block_range_roots<'life0, 'async_trait>( &'life0 self, up_to_beacon: BlockNumber, ) -> Pin<Box<dyn Future<Output = StdResult<MKMap<BlockRange, MKMapNode<BlockRange, S>, S>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Returns a Merkle map of the block ranges roots up to a given beacon

Implementors§