Available on crate feature
monad only.Expand description
Monad-specific execution and context helpers for the in-memory backend.
Re-exportsยง
use super::AnvilInspector;๐use super::Backend;๐use super::ClientFork;๐use super::DatabaseRef;๐use super::EnvelopeExecutionKind;๐use super::MonadExecutionContext;๐use super::storage::BlockchainStorage;๐use crate::eth::backend::db::MonadBlockReplayProfile;๐use crate::eth::backend::executor::AnvilBlockExecutor;๐use crate::eth::backend::executor::AnvilTxResult;๐use crate::eth::backend::executor::ExecutedPoolTransactions;๐use crate::eth::backend::executor::PoolTxGasConfig;๐use crate::eth::backend::executor::build_tx_env_for_pending;๐use crate::eth::backend::executor::execute_pool_transactions;๐use crate::eth::backend::replay::ExecutedHistoricalReplay;๐use crate::eth::backend::replay::HistoricalReplayTransaction;๐use crate::eth::backend::replay::execute_historical_replay_with;๐use crate::eth::error::BlockchainError;๐use crate::eth::error::InvalidTransactionError;๐use crate::eth::fees::FeeManager;๐use crate::eth::pool::transactions::PoolTransaction;๐use alloy_consensus::BlockHeader;๐use alloy_consensus::Header;๐use alloy_consensus::Transaction as _;๐use alloy_consensus::constants::EMPTY_ROOT_HASH;๐use alloy_consensus::transaction::Recovered;๐use alloy_eips::eip1559::BaseFeeParams;๐use alloy_evm::Evm;๐use alloy_evm::EvmEnv;๐use alloy_evm::EvmFactory;๐use alloy_evm::RecoveredTx;๐use alloy_evm::block::BalIndexedDatabase;๐use alloy_evm::block::BlockExecutionError;๐use alloy_evm::block::BlockExecutionResult;๐use alloy_evm::block::BlockExecutor;๐use alloy_evm::block::StateDB;๐use alloy_monad_evm::MonadContext;๐use alloy_monad_evm::MonadEvm;๐use alloy_monad_evm::MonadEvmFactory;๐use alloy_network::BlockResponse;๐use alloy_network::Network;๐use alloy_primitives::B256;๐use alloy_primitives::U256;๐use alloy_rpc_types::AccessList;๐use alloy_rpc_types::BlockNumberOrTag as BlockNumber;๐use alloy_rpc_types::BlockTransactions;๐use anvil_core::eth::block::Block;๐use anvil_core::eth::transaction::MaybeImpersonatedTransaction;๐use anvil_core::eth::transaction::PendingTransaction;๐use eyre::Context;๐use eyre::Result;๐use foundry_evm::backend::DatabaseError;๐use foundry_evm::core::FoundryChain;๐use foundry_evm::core::FromAnyRpcTransaction;๐use foundry_evm::core::evm::MonadBlockParticipants;๐use foundry_evm::core::evm::monad_block_participants;๐use foundry_evm::core::evm::monad_context_from_participants;๐use foundry_evm::core::evm::protocol_system_call;๐use foundry_evm::core::evm::try_transact_monad_system_replay;๐use foundry_evm::hardfork::FoundryHardfork;๐use foundry_evm::utils::get_blob_params;๐use foundry_primitives::FoundryReceiptEnvelope;๐use foundry_primitives::FoundryTxEnvelope;๐use monad_revm::MonadChainContext;๐use monad_revm::MonadHardfork;๐use monad_revm::instructions::monad_gas_params;๐use revm::Inspector;๐use revm::context::Transaction;๐use revm::context::TxEnv;๐use revm::context_interface::block::BlobExcessGasAndPrice;๐use revm::context_interface::result::HaltReason;๐use revm::context_interface::result::InvalidTransaction;๐use revm::context_interface::result::ResultAndState;๐use revm::context_interface::transaction::AuthorizationTr;๐use revm::database_interface::WrapDatabaseRef;๐use revm::primitives::hardfork::SpecId;๐use revm::state::AccountInfo;๐use std::sync::Arc;๐use tracing::debug;๐
Structsยง
- Fork
Replay ๐ - Monad
Rollback ๐Profile - Monad execution state staged while rewinding to a retained canonical block.
- Prepared
Execution ๐ - Resolved Monad inputs, including a transaction context for standalone calls.
Functionsยง
- advance_
block_ ๐context - append_
transaction ๐ - Adds a candidate transaction to the current Monad block context.
- cache_
fork_ ๐context - Caches the fork blocks needed to construct the next Monad blockโs ancestor context.
- execute_
pool_ ๐transaction - Executes one Monad pool candidate and restores its context if execution fails before inclusion.
- normalize_
access_ ๐list - prepare_
transaction ๐ - resolve_
execution_ ๐context - rollback_
transaction ๐ - Removes a candidate transaction that failed before block inclusion.
- store_
block_ ๐metadata