pub(crate) type AlloyCacheDB = CacheDB<WrapDatabaseAsync<AlloyDB<Http<Client>, Ethereum, RootProvider<Http<Client>>>>>;
Aliased Type§
struct AlloyCacheDB {
pub accounts: HashMap<Address, DbAccount>,
pub contracts: HashMap<FixedBytes<32>, Bytecode>,
pub logs: Vec<Log>,
pub block_hashes: HashMap<Uint<256, 4>, FixedBytes<32>>,
pub db: WrapDatabaseAsync<AlloyDB<Http<Client>, Ethereum, RootProvider<Http<Client>>>>,
}
Fields§
§accounts: HashMap<Address, DbAccount>
Account info where None means it is not existing. Not existing state is needed for Pre TANGERINE forks.
code
is always None
, and bytecode can be found in contracts
.
contracts: HashMap<FixedBytes<32>, Bytecode>
Tracks all contracts by their code hash.
logs: Vec<Log>
All logs that were committed via [DatabaseCommit::commit].
block_hashes: HashMap<Uint<256, 4>, FixedBytes<32>>
All cached block hashes from the [DatabaseRef].
db: WrapDatabaseAsync<AlloyDB<Http<Client>, Ethereum, RootProvider<Http<Client>>>>
The underlying database ([DatabaseRef]) that is used to load data.
Note: this is read-only, data is never written to this database.