Expand description
The in memory DB
Re-exportsΒ§
use crate::eth::backend::db::BLOCKHASH_HISTORY;πuse crate::eth::backend::db::Db;πuse crate::eth::backend::db::MaybeForkedDatabase;πuse crate::eth::backend::db::MaybeFullDatabase;πuse crate::eth::backend::db::SerializableAccountRecord;πuse crate::eth::backend::db::SerializableBlock;πuse crate::eth::backend::db::SerializableHistoricalStates;πuse crate::eth::backend::db::SerializableState;πuse crate::eth::backend::db::SerializableTransaction;πuse crate::eth::backend::db::StateDb;πuse crate::eth::backend::db::cache_block_hash;πuse crate::mem::state::StateRootCache;πuse crate::mem::state::state_root;πuse alloy_primitives::Address;πuse alloy_primitives::B256;πuse alloy_primitives::U256;πuse alloy_primitives::map::AddressMap;πuse alloy_primitives::map::B256Map;πuse alloy_primitives::map::HashSet;πuse alloy_rpc_types::BlockId;πuse foundry_evm::backend::BlockchainDb;πuse foundry_evm::backend::DatabaseError;πuse foundry_evm::backend::DatabaseResult;πuse foundry_evm::backend::StateSnapshot;πuse imbl::HashMap as PersistentMap;πuse parking_lot::Mutex;πuse revm::Database;πuse revm::DatabaseCommit;πuse revm::bytecode::Bytecode;πuse revm::context::BlockEnv;πuse revm::database::AccountState;πuse revm::database::DatabaseRef;πuse revm::database::DbAccount;πuse revm::state::Account;πuse revm::state::AccountInfo;πuse std::sync::OnceLock;πuse foundry_evm::backend::RevertStateSnapshotAction;π
StructsΒ§
- Dirty
Historical πAccount - Historical
State πCache - Incrementally maintained, structurally shared state used by block-history snapshots.
- MemDb
- In-memory [
Database] for Anvil. - Persistent
Account π - Persistent
State πDb - A read-only historical state whose maps are cheap structural-sharing clones.
- State
Root Db - An in-memory database that incrementally maintains Anvilβs mined-block state root.