Trait LoadReceipt

pub trait LoadReceipt:
    EthApiTypes
    + RpcNodeCoreExt
    + Send
    + Sync{
    // Required method
    fn build_transaction_receipt(
        &self,
        tx: <Self::Provider as TransactionsProvider>::Transaction,
        meta: TransactionMeta,
        receipt: <Self::Provider as ReceiptProvider>::Receipt,
    ) -> impl Future<Output = Result<<Self::NetworkTypes as RpcTypes>::Receipt, Self::Error>> + Send;
}
Expand description

Assembles transaction receipt data w.r.t to network.

Behaviour shared by several eth_ RPC methods, not exclusive to eth_ receipts RPC methods.

Required Methods§

fn build_transaction_receipt( &self, tx: <Self::Provider as TransactionsProvider>::Transaction, meta: TransactionMeta, receipt: <Self::Provider as ReceiptProvider>::Receipt, ) -> impl Future<Output = Result<<Self::NetworkTypes as RpcTypes>::Receipt, Self::Error>> + Send

Helper method for eth_getBlockReceipts and eth_getTransactionReceipt.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<Provider, Pool, Network, EvmConfig> LoadReceipt for EthApi<Provider, Pool, Network, EvmConfig>
where EthApi<Provider, Pool, Network, EvmConfig>: RpcNodeCoreExt, <EthApi<Provider, Pool, Network, EvmConfig> as RpcNodeCore>::Provider: TransactionsProvider<Transaction = TransactionSigned> + ReceiptProvider<Receipt = Receipt>, Provider: BlockReader + ChainSpecProvider,

impl<N> LoadReceipt for OpEthApi<N>
where Self: Send + Sync, N: FullNodeComponents<Types: NodeTypes<ChainSpec = OpChainSpec>>, Self::Provider: TransactionsProvider<Transaction = OpTransactionSigned> + ReceiptProvider<Receipt = OpReceipt>,