Skip to main content

Module monad

Module monad 

Source
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ยง

ForkReplay ๐Ÿ”’
MonadRollbackProfile ๐Ÿ”’
Monad execution state staged while rewinding to a retained canonical block.
PreparedExecution ๐Ÿ”’
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 ๐Ÿ”’