pub fn execute_transactions<S, T>(
builder: S,
calls: Vec<RpcTxReq<T::Network>>,
remaining_call_gas_limit: &mut Option<u64>,
chain_id: u64,
converter: &T,
) -> Result<(BlockBuilderOutcome<S::Primitives>, Vec<ExecutionResult<<<S::Executor as BlockExecutor>::Evm as Evm>::HaltReason>>), EthApiError>where
S: BlockBuilder<Executor: BlockExecutor<Evm: Evm<DB: Database<Error: Into<EthApiError>>>>>,
T: RpcConvert<Primitives = S::Primitives>,Expand description
Converts all TransactionRequests into [Recovered] transactions and applies them to the
given [BlockExecutor].
Returns all executed transactions and the result of the execution.
For each call without an explicit gas field, the remaining block gas is used as the default.
The RPC gas cap is tracked as a request-wide remaining budget and caps each call before
execution. This matches the spec rule "gasLimit: blockGasLimit - soFarUsedGasInBlock" and
geth’s per-call sanitizeCall behavior.