Versions in this module Expand all Collapse all v0 v0.5.3 Dec 13, 2023 Changes in this version + func NewTestStateDB(t testing.TB) contract.StateDB + type Code []byte + func (c Code) String() string + type Database interface + ContractCode func(addrHash, codeHash common.Hash) ([]byte, error) + ContractCodeSize func(addrHash, codeHash common.Hash) (int, error) + CopyTrie func(Trie) Trie + DiskDB func() ethdb.KeyValueStore + OpenStorageTrie func(stateRoot common.Hash, addrHash, root common.Hash) (Trie, error) + OpenTrie func(root common.Hash) (Trie, error) + TrieDB func() *trie.Database + func NewDatabase(db ethdb.Database) Database + func NewDatabaseWithConfig(db ethdb.Database, config *trie.Config) Database + func NewDatabaseWithNodeDB(db ethdb.Database, triedb *trie.Database) Database + type Dump struct + Accounts map[common.Address]DumpAccount + Root string + func (d *Dump) OnAccount(addr *common.Address, account DumpAccount) + func (d *Dump) OnRoot(root common.Hash) + type DumpAccount struct + Address *common.Address + Balance string + Code hexutil.Bytes + CodeHash hexutil.Bytes + Nonce uint64 + Root hexutil.Bytes + SecureKey hexutil.Bytes + Storage map[common.Hash]string + type DumpCollector interface + OnAccount func(*common.Address, DumpAccount) + OnRoot func(common.Hash) + type DumpConfig struct + Max uint64 + OnlyWithAddresses bool + SkipCode bool + SkipStorage bool + Start []byte + type IteratorDump struct + Accounts map[common.Address]DumpAccount + Next []byte + Root string + func (d *IteratorDump) OnAccount(addr *common.Address, account DumpAccount) + func (d *IteratorDump) OnRoot(root common.Hash) + type StateDB struct + AccountCommits time.Duration + AccountDeleted int + AccountHashes time.Duration + AccountReads time.Duration + AccountUpdated int + AccountUpdates time.Duration + SnapshotAccountReads time.Duration + SnapshotCommits time.Duration + SnapshotStorageReads time.Duration + StorageCommits time.Duration + StorageDeleted int + StorageHashes time.Duration + StorageReads time.Duration + StorageUpdated int + StorageUpdates time.Duration + TrieDBCommits time.Duration + func New(root common.Hash, db Database, snaps *snapshot.Tree) (*StateDB, error) + func NewWithSnapshot(root common.Hash, db Database, snap snapshot.Snapshot) (*StateDB, error) + func (db *StateDB) ForEachStorage(addr common.Address, cb func(key, value common.Hash) bool) error + func (s *StateDB) AddAddressToAccessList(addr common.Address) + func (s *StateDB) AddBalance(addr common.Address, amount *big.Int) + func (s *StateDB) AddLog(addr common.Address, topics []common.Hash, data []byte, blockNumber uint64) + func (s *StateDB) AddPreimage(hash common.Hash, preimage []byte) + func (s *StateDB) AddRefund(gas uint64) + func (s *StateDB) AddSlotToAccessList(addr common.Address, slot common.Hash) + func (s *StateDB) AddressInAccessList(addr common.Address) bool + func (s *StateDB) Commit(deleteEmptyObjects bool, referenceRoot bool) (common.Hash, error) + func (s *StateDB) CommitWithSnap(deleteEmptyObjects bool, snaps *snapshot.Tree, ...) (common.Hash, error) + func (s *StateDB) Copy() *StateDB + func (s *StateDB) CreateAccount(addr common.Address) + func (s *StateDB) Database() Database + func (s *StateDB) Dump(opts *DumpConfig) []byte + func (s *StateDB) DumpToCollector(c DumpCollector, conf *DumpConfig) (nextKey []byte) + func (s *StateDB) Empty(addr common.Address) bool + func (s *StateDB) Error() error + func (s *StateDB) Exist(addr common.Address) bool + func (s *StateDB) Finalise(deleteEmptyObjects bool) + func (s *StateDB) GetBalance(addr common.Address) *big.Int + func (s *StateDB) GetCode(addr common.Address) []byte + func (s *StateDB) GetCodeHash(addr common.Address) common.Hash + func (s *StateDB) GetCodeSize(addr common.Address) int + func (s *StateDB) GetCommittedState(addr common.Address, hash common.Hash) common.Hash + func (s *StateDB) GetLogData() [][]byte + func (s *StateDB) GetLogs(hash common.Hash, blockNumber uint64, blockHash common.Hash) []*types.Log + func (s *StateDB) GetNonce(addr common.Address) uint64 + func (s *StateDB) GetOrNewStateObject(addr common.Address) *stateObject + func (s *StateDB) GetPredicateStorageSlots(address common.Address, index int) ([]byte, bool) + func (s *StateDB) GetProof(addr common.Address) ([][]byte, error) + func (s *StateDB) GetProofByHash(addrHash common.Hash) ([][]byte, error) + func (s *StateDB) GetRefund() uint64 + func (s *StateDB) GetState(addr common.Address, hash common.Hash) common.Hash + func (s *StateDB) GetStorageProof(a common.Address, key common.Hash) ([][]byte, error) + func (s *StateDB) GetTransientState(addr common.Address, key common.Hash) common.Hash + func (s *StateDB) GetTxHash() common.Hash + func (s *StateDB) HasSuicided(addr common.Address) bool + func (s *StateDB) IntermediateRoot(deleteEmptyObjects bool) common.Hash + func (s *StateDB) IterativeDump(opts *DumpConfig, output *json.Encoder) + func (s *StateDB) IteratorDump(opts *DumpConfig) IteratorDump + func (s *StateDB) Logs() []*types.Log + func (s *StateDB) Preimages() map[common.Hash][]byte + func (s *StateDB) Prepare(rules params.Rules, sender, coinbase common.Address, dst *common.Address, ...) + func (s *StateDB) RawDump(opts *DumpConfig) Dump + func (s *StateDB) RevertToSnapshot(revid int) + func (s *StateDB) SetBalance(addr common.Address, amount *big.Int) + func (s *StateDB) SetCode(addr common.Address, code []byte) + func (s *StateDB) SetNonce(addr common.Address, nonce uint64) + func (s *StateDB) SetPredicateStorageSlots(address common.Address, predicates [][]byte) + func (s *StateDB) SetState(addr common.Address, key, value common.Hash) + func (s *StateDB) SetStorage(addr common.Address, storage map[common.Hash]common.Hash) + func (s *StateDB) SetTransientState(addr common.Address, key, value common.Hash) + func (s *StateDB) SetTxContext(thash common.Hash, ti int) + func (s *StateDB) SlotInAccessList(addr common.Address, slot common.Hash) (addressPresent bool, slotPresent bool) + func (s *StateDB) Snapshot() int + func (s *StateDB) StartPrefetcher(namespace string) + func (s *StateDB) StopPrefetcher() + func (s *StateDB) StorageTrie(addr common.Address) (Trie, error) + func (s *StateDB) SubBalance(addr common.Address, amount *big.Int) + func (s *StateDB) SubRefund(gas uint64) + func (s *StateDB) Suicide(addr common.Address) bool + func (s *StateDB) TxIndex() int + type Storage map[common.Hash]common.Hash + func (s Storage) Copy() Storage + func (s Storage) String() (str string) + type Trie interface + Commit func(collectLeaf bool) (common.Hash, *trienode.NodeSet) + DeleteAccount func(address common.Address) error + DeleteStorage func(addr common.Address, key []byte) error + GetAccount func(address common.Address) (*types.StateAccount, error) + GetKey func([]byte) []byte + GetStorage func(addr common.Address, key []byte) ([]byte, error) + Hash func() common.Hash + NodeIterator func(startKey []byte) trie.NodeIterator + Prove func(key []byte, fromLevel uint, proofDb ethdb.KeyValueWriter) error + UpdateAccount func(address common.Address, account *types.StateAccount) error + UpdateStorage func(addr common.Address, key, value []byte) error