kabu_evm_utils/
geth_state_update.rs1use alloy::primitives::{Address, B256, U256};
2use alloy::rpc::types::trace::geth::AccountState;
3use kabu_types_blockchain::GethStateUpdate;
4
5pub fn account_state_with_nonce_and_balance(nonce: u64, balance: U256) -> AccountState {
6 AccountState { balance: Some(balance), code: None, nonce: Some(nonce), storage: Default::default() }
7}
8pub fn account_state_add_storage(account_state: AccountState, key: B256, value: B256) -> AccountState {
9 let mut account_state = account_state;
10 account_state.storage.insert(key, value);
11 account_state
12}
13
14pub fn geth_state_update_add_account(update: GethStateUpdate, address: Address, account_state: AccountState) -> GethStateUpdate {
15 let mut update = update;
16 update.insert(address, account_state);
17 update
18}