fuel_poa_coordinator::ports

Trait BlockProducer

Source
pub trait BlockProducer<Database>: Send + Sync {
    // Required methods
    fn produce_and_execute_block<'life0, 'async_trait>(
        &'life0 self,
        height: BlockHeight,
        max_gas: Word,
    ) -> Pin<Box<dyn Future<Output = Result<UncommittedResult<DBTransaction<Database>>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn dry_run<'life0, 'async_trait>(
        &'life0 self,
        transaction: Transaction,
        height: Option<BlockHeight>,
        utxo_validation: Option<bool>,
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Receipt>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}

Required Methods§

Source

fn produce_and_execute_block<'life0, 'async_trait>( &'life0 self, height: BlockHeight, max_gas: Word, ) -> Pin<Box<dyn Future<Output = Result<UncommittedResult<DBTransaction<Database>>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn dry_run<'life0, 'async_trait>( &'life0 self, transaction: Transaction, height: Option<BlockHeight>, utxo_validation: Option<bool>, ) -> Pin<Box<dyn Future<Output = Result<Vec<Receipt>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Implementors§