Documentation
¶
Index ¶
- type PrecompileStateDBAdapter
- type StateDB
- func (s *StateDB) GetPredicateStorageSlots(address common.Address, index int) ([]byte, bool)
- func (s *StateDB) Prepare(rules params.Rules, sender, coinbase common.Address, dst *common.Address, ...)
- func (s *StateDB) PrepareWithExtrasRules(rules params.Rules, extrasRules predicate.PredicaterExistChecker, ...)
- type VmStateDB
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PrecompileStateDBAdapter ¶ added in v0.8.6
type PrecompileStateDBAdapter struct {
*StateDB
}
PrecompileStateDBAdapter adapts the new geth StateDB interface (with BalanceChangeReason) to the legacy precompile contract.StateDB interface that doesn't use BalanceChangeReason.
func NewPrecompileAdapter ¶ added in v0.8.6
func NewPrecompileAdapter(stateDB *StateDB) *PrecompileStateDBAdapter
NewPrecompileAdapter creates a new adapter for precompile compatibility
func (*PrecompileStateDBAdapter) AddBalance ¶ added in v0.8.6
func (a *PrecompileStateDBAdapter) AddBalance(addr common.Address, amount *uint256.Int)
AddBalance implements the legacy AddBalance without BalanceChangeReason
type StateDB ¶
type StateDB struct {
// contains filtered or unexported fields
}
func New ¶
New creates a new *StateDB with the given VmStateDB, effectively wrapping it with additional functionality.
func (*StateDB) GetPredicateStorageSlots ¶
GetPredicateStorageSlots returns the storage slots associated with the address, index pair. A list of access tuples can be included within transaction types post EIP-2930. The address is declared directly on the access tuple and the index is the i'th occurrence of an access tuple with the specified address.
Ex. AccessList[[AddrA, Predicate1], [AddrB, Predicate2], [AddrA, Predicate3]] In this case, the caller could retrieve predicates 1-3 with the following calls: GetPredicateStorageSlots(AddrA, 0) -> Predicate1 GetPredicateStorageSlots(AddrB, 0) -> Predicate2 GetPredicateStorageSlots(AddrA, 1) -> Predicate3
func (*StateDB) PrepareWithExtrasRules ¶ added in v0.8.6
func (s *StateDB) PrepareWithExtrasRules(rules params.Rules, extrasRules predicate.PredicaterExistChecker, sender, coinbase common.Address, dst *common.Address, precompiles []common.Address, list types.AccessList)
PrepareWithExtrasRules prepares the state with extras.Rules for predicate support