reth_rpc/eth/helpers/
call.rs1use crate::EthApi;
4use alloy_consensus::Header;
5use reth_evm::ConfigureEvm;
6use reth_provider::{BlockReader, ProviderHeader};
7use reth_rpc_eth_api::{
8 helpers::{estimate::EstimateCall, Call, EthCall, LoadPendingBlock, LoadState, SpawnBlocking},
9 FullEthApiTypes,
10};
11
12impl<Provider, Pool, Network, EvmConfig> EthCall for EthApi<Provider, Pool, Network, EvmConfig>
13where
14 Self: EstimateCall + LoadPendingBlock + FullEthApiTypes,
15 Provider: BlockReader,
16{
17}
18
19impl<Provider, Pool, Network, EvmConfig> Call for EthApi<Provider, Pool, Network, EvmConfig>
20where
21 Self: LoadState<Evm: ConfigureEvm<Header = ProviderHeader<Self::Provider>>> + SpawnBlocking,
22 EvmConfig: ConfigureEvm<Header = Header>,
23 Provider: BlockReader,
24{
25 #[inline]
26 fn call_gas_limit(&self) -> u64 {
27 self.inner.gas_cap()
28 }
29
30 #[inline]
31 fn max_simulate_blocks(&self) -> u64 {
32 self.inner.max_simulate_blocks()
33 }
34}
35
36impl<Provider, Pool, Network, EvmConfig> EstimateCall for EthApi<Provider, Pool, Network, EvmConfig>
37where
38 Self: Call,
39 Provider: BlockReader,
40{
41}