mirror of
https://github.com/paradigmxyz/reth.git
synced 2026-01-23 14:18:05 -05:00
use default implementation for BlockId (#7917)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
This commit is contained in:
@@ -267,7 +267,7 @@ where
|
||||
block_id: Option<BlockId>,
|
||||
opts: GethDebugTracingCallOptions,
|
||||
) -> EthResult<GethTrace> {
|
||||
let at = block_id.unwrap_or(BlockId::Number(BlockNumberOrTag::Latest));
|
||||
let at = block_id.unwrap_or_default();
|
||||
let GethDebugTracingCallOptions { tracing_options, state_overrides, block_overrides } =
|
||||
opts;
|
||||
let overrides = EvmOverrides::new(state_overrides, block_overrides.map(Box::new));
|
||||
@@ -420,7 +420,7 @@ where
|
||||
let StateContext { transaction_index, block_number } = state_context.unwrap_or_default();
|
||||
let transaction_index = transaction_index.unwrap_or_default();
|
||||
|
||||
let target_block = block_number.unwrap_or(BlockId::Number(BlockNumberOrTag::Latest));
|
||||
let target_block = block_number.unwrap_or_default();
|
||||
let ((cfg, mut block_env, _), block) = futures::try_join!(
|
||||
self.inner.eth_api.evm_env_at(target_block),
|
||||
self.inner.eth_api.block_by_id_with_senders(target_block),
|
||||
|
||||
@@ -14,9 +14,7 @@ use crate::{
|
||||
};
|
||||
use reth_evm::ConfigureEvm;
|
||||
use reth_network_api::NetworkInfo;
|
||||
use reth_primitives::{
|
||||
revm::env::tx_env_with_recovered, BlockId, BlockNumberOrTag, Bytes, TxKind, U256,
|
||||
};
|
||||
use reth_primitives::{revm::env::tx_env_with_recovered, BlockId, Bytes, TxKind, U256};
|
||||
use reth_provider::{
|
||||
BlockReaderIdExt, ChainSpecProvider, EvmEnvProvider, StateProvider, StateProviderFactory,
|
||||
};
|
||||
@@ -73,13 +71,8 @@ where
|
||||
block_number: Option<BlockId>,
|
||||
overrides: EvmOverrides,
|
||||
) -> EthResult<Bytes> {
|
||||
let (res, _env) = self
|
||||
.transact_call_at(
|
||||
request,
|
||||
block_number.unwrap_or(BlockId::Number(BlockNumberOrTag::Latest)),
|
||||
overrides,
|
||||
)
|
||||
.await?;
|
||||
let (res, _env) =
|
||||
self.transact_call_at(request, block_number.unwrap_or_default(), overrides).await?;
|
||||
|
||||
ensure_success(res.result)
|
||||
}
|
||||
@@ -100,7 +93,7 @@ where
|
||||
let StateContext { transaction_index, block_number } = state_context.unwrap_or_default();
|
||||
let transaction_index = transaction_index.unwrap_or_default();
|
||||
|
||||
let target_block = block_number.unwrap_or(BlockId::Number(BlockNumberOrTag::Latest));
|
||||
let target_block = block_number.unwrap_or_default();
|
||||
let is_block_target_pending = target_block.is_pending();
|
||||
|
||||
let ((cfg, block_env, _), block) = futures::try_join!(
|
||||
@@ -390,7 +383,7 @@ where
|
||||
mut request: TransactionRequest,
|
||||
at: Option<BlockId>,
|
||||
) -> EthResult<AccessListWithGasUsed> {
|
||||
let block_id = at.unwrap_or(BlockId::Number(BlockNumberOrTag::Latest));
|
||||
let block_id = at.unwrap_or_default();
|
||||
let (cfg, block, at) = self.evm_env_at(block_id).await?;
|
||||
let state = self.state_at(at)?;
|
||||
|
||||
|
||||
@@ -314,13 +314,7 @@ where
|
||||
state_override: Option<StateOverride>,
|
||||
) -> Result<U256> {
|
||||
trace!(target: "rpc::eth", ?request, ?block_number, "Serving eth_estimateGas");
|
||||
Ok(self
|
||||
.estimate_gas_at(
|
||||
request,
|
||||
block_number.unwrap_or(BlockId::Number(BlockNumberOrTag::Latest)),
|
||||
state_override,
|
||||
)
|
||||
.await?)
|
||||
Ok(self.estimate_gas_at(request, block_number.unwrap_or_default(), state_override).await?)
|
||||
}
|
||||
|
||||
/// Handler for: `eth_gasPrice`
|
||||
|
||||
@@ -84,7 +84,7 @@ where
|
||||
block_id: Option<BlockId>,
|
||||
) -> EthResult<EIP1186AccountProofResponse> {
|
||||
let chain_info = self.provider().chain_info()?;
|
||||
let block_id = block_id.unwrap_or(BlockId::Number(BlockNumberOrTag::Latest));
|
||||
let block_id = block_id.unwrap_or_default();
|
||||
|
||||
// if we are trying to create a proof for the latest block, but have a BlockId as input
|
||||
// that is not BlockNumberOrTag::Latest, then we need to figure out whether or not the
|
||||
|
||||
@@ -78,7 +78,7 @@ where
|
||||
{
|
||||
/// Executes the given call and returns a number of possible traces for it.
|
||||
pub async fn trace_call(&self, trace_request: TraceCallRequest) -> EthResult<TraceResults> {
|
||||
let at = trace_request.block_id.unwrap_or(BlockId::Number(BlockNumberOrTag::Latest));
|
||||
let at = trace_request.block_id.unwrap_or_default();
|
||||
let config = TracingInspectorConfig::from_parity_config(&trace_request.trace_types);
|
||||
let overrides =
|
||||
EvmOverrides::new(trace_request.state_overrides, trace_request.block_overrides);
|
||||
@@ -106,11 +106,7 @@ where
|
||||
) -> EthResult<TraceResults> {
|
||||
let tx = recover_raw_transaction(tx)?;
|
||||
|
||||
let (cfg, block, at) = self
|
||||
.inner
|
||||
.eth_api
|
||||
.evm_env_at(block_id.unwrap_or(BlockId::Number(BlockNumberOrTag::Latest)))
|
||||
.await?;
|
||||
let (cfg, block, at) = self.inner.eth_api.evm_env_at(block_id.unwrap_or_default()).await?;
|
||||
let tx = tx_env_with_recovered(&tx.into_ecrecovered_transaction());
|
||||
let env = EnvWithHandlerCfg::new_with_cfg_env(cfg, block, tx);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user