fuel_core_poa::ports

Trait BlockProducer

source
pub trait BlockProducer: Send + Sync {
    // Required methods
    fn produce_and_execute_block<'life0, 'async_trait>(
        &'life0 self,
        height: BlockHeight,
        block_time: Tai64,
        source: TransactionsSource,
    ) -> Pin<Box<dyn Future<Output = Result<UncommittedExecutionResult<Changes>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn produce_predefined_block<'life0, 'life1, 'async_trait>(
        &'life0 self,
        block: &'life1 Block,
    ) -> Pin<Box<dyn Future<Output = Result<UncommittedExecutionResult<Changes>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
}

Required Methods§

source

fn produce_and_execute_block<'life0, 'async_trait>( &'life0 self, height: BlockHeight, block_time: Tai64, source: TransactionsSource, ) -> Pin<Box<dyn Future<Output = Result<UncommittedExecutionResult<Changes>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn produce_predefined_block<'life0, 'life1, 'async_trait>( &'life0 self, block: &'life1 Block, ) -> Pin<Box<dyn Future<Output = Result<UncommittedExecutionResult<Changes>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Implementors§