Skip to main content

ReceiptBuilder

Trait ReceiptBuilder 

Source
pub trait ReceiptBuilder {
    type Transaction: SignedTransaction + TransactionEnvelope<TxType: Send + 'static>;
    type Receipt: Receipt;

    // Required method
    fn build_receipt<T: EvmTypes>(
        &self,
        ctx: ReceiptBuilderCtx<<Self::Transaction as TransactionEnvelope>::TxType, TxResult<T>>,
    ) -> Self::Receipt;
}
Expand description

Builds chain-specific receipts from raw transaction execution results.

Required Associated Types§

Source

type Transaction: SignedTransaction + TransactionEnvelope<TxType: Send + 'static>

Consensus transaction type accepted by the executor.

Source

type Receipt: Receipt

Receipt produced by this builder.

Required Methods§

Source

fn build_receipt<T: EvmTypes>( &self, ctx: ReceiptBuilderCtx<<Self::Transaction as TransactionEnvelope>::TxType, TxResult<T>>, ) -> Self::Receipt

Builds a receipt for the transaction execution result.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<'a, U: 'a + ReceiptBuilder + ?Sized> ReceiptBuilder for &'a U

Source§

type Transaction = <U as ReceiptBuilder>::Transaction

Source§

type Receipt = <U as ReceiptBuilder>::Receipt

Source§

fn build_receipt<T: EvmTypes>( &self, ctx: ReceiptBuilderCtx<<Self::Transaction as TransactionEnvelope>::TxType, TxResult<T>>, ) -> Self::Receipt

Source§

impl<U: ReceiptBuilder + ?Sized> ReceiptBuilder for Arc<U>

Source§

type Transaction = <U as ReceiptBuilder>::Transaction

Source§

type Receipt = <U as ReceiptBuilder>::Receipt

Source§

fn build_receipt<T: EvmTypes>( &self, ctx: ReceiptBuilderCtx<<Self::Transaction as TransactionEnvelope>::TxType, TxResult<T>>, ) -> Self::Receipt

Implementors§