Trait EthApiTypes

Source
pub trait EthApiTypes:
    Send
    + Sync
    + Clone {
    type Error: Into<ErrorObject<'static>> + FromEthApiError + AsEthApiError + Error + Send + Sync;
    type NetworkTypes: RpcTypes;
    type TransactionCompat: Send + Sync + Clone + Debug;

    // Required method
    fn tx_resp_builder(&self) -> &Self::TransactionCompat;
}
Expand description

Network specific eth API types.

This trait defines the network specific rpc types and helpers required for the eth_ and adjacent endpoints. NetworkTypes is [Network] as defined by the alloy crate, see also [alloy_network::Ethereum].

This type is stateful so that it can provide additional context if necessary, e.g. populating receipts with additional data.

Required Associated Types§

Source

type Error: Into<ErrorObject<'static>> + FromEthApiError + AsEthApiError + Error + Send + Sync

Extension of FromEthApiError, with network specific errors.

Source

type NetworkTypes: RpcTypes

Blockchain primitive types, specific to network, e.g. block and transaction.

Source

type TransactionCompat: Send + Sync + Clone + Debug

Conversion methods for transaction RPC type.

Required Methods§

Source

fn tx_resp_builder(&self) -> &Self::TransactionCompat

Returns reference to transaction response builder.

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§

impl<N> EthApiTypes for OpEthApi<N>
where Self: Send + Sync, N: OpNodeCore,

impl<Provider, Pool, Network, EvmConfig> EthApiTypes for EthApi<Provider, Pool, Network, EvmConfig>
where Self: Send + Sync, Provider: BlockReader,