Versions in this module Expand all Collapse all v1 v1.14.14 Nov 19, 2024 v1.14.13 Nov 19, 2024 Changes in this version + type BalanceChangeHook = func(addr common.Address, prev, new *big.Int, reason BalanceChangeReason) + type BalanceChangeReason byte + const BalanceChangeTouchAccount + const BalanceChangeTransfer + const BalanceChangeUnspecified + const BalanceDecreaseDaoAccount + const BalanceDecreaseGasBuy + const BalanceDecreaseSelfdestruct + const BalanceDecreaseSelfdestructBurn + const BalanceIncreaseDaoContract + const BalanceIncreaseGasReturn + const BalanceIncreaseGenesisBalance + const BalanceIncreaseRewardMineBlock + const BalanceIncreaseRewardMineUncle + const BalanceIncreaseRewardTransactionFee + const BalanceIncreaseSelfdestruct + const BalanceIncreaseWithdrawal + func (i BalanceChangeReason) String() string + type BlockEndHook = func(err error) + type BlockEvent struct + Block *types.Block + Finalized *types.Header + Safe *types.Header + TD *big.Int + type BlockStartHook = func(event BlockEvent) + type BlockchainInitHook = func(chainConfig *params.ChainConfig) + type CloseHook = func() + type CodeChangeHook = func(addr common.Address, prevCodeHash common.Hash, prevCode []byte, ...) + type EnterHook = func(depth int, typ byte, from common.Address, to common.Address, input []byte, ...) + type ExitHook = func(depth int, output []byte, gasUsed uint64, err error, reverted bool) + type FaultHook = func(pc uint64, op byte, gas, cost uint64, scope OpContext, depth int, err error) + type GasChangeHook = func(old, new uint64, reason GasChangeReason) + type GasChangeReason byte + const GasChangeCallCodeStorage + const GasChangeCallContractCreation + const GasChangeCallContractCreation2 + const GasChangeCallFailedExecution + const GasChangeCallInitialBalance + const GasChangeCallLeftOverRefunded + const GasChangeCallLeftOverReturned + const GasChangeCallOpCode + const GasChangeCallPrecompiledContract + const GasChangeCallStorageColdAccess + const GasChangeIgnored + const GasChangeTxInitialBalance + const GasChangeTxIntrinsicGas + const GasChangeTxLeftOverReturned + const GasChangeTxRefunds + const GasChangeUnspecified + const GasChangeWitnessCodeChunk + const GasChangeWitnessContractCollisionCheck + const GasChangeWitnessContractCreation + const GasChangeWitnessContractInit + type GenesisBlockHook = func(genesis *types.Block, alloc types.GenesisAlloc) + type Hooks struct + OnBalanceChange BalanceChangeHook + OnBlockEnd BlockEndHook + OnBlockStart BlockStartHook + OnBlockchainInit BlockchainInitHook + OnClose CloseHook + OnCodeChange CodeChangeHook + OnEnter EnterHook + OnExit ExitHook + OnFault FaultHook + OnGasChange GasChangeHook + OnGenesisBlock GenesisBlockHook + OnLog LogHook + OnNonceChange NonceChangeHook + OnOpcode OpcodeHook + OnSkippedBlock SkippedBlockHook + OnStorageChange StorageChangeHook + OnSystemCallEnd OnSystemCallEndHook + OnSystemCallStart OnSystemCallStartHook + OnTxEnd TxEndHook + OnTxStart TxStartHook + type LogHook = func(log *types.Log) + type NonceChangeHook = func(addr common.Address, prev, new uint64) + type OnSystemCallEndHook = func() + type OnSystemCallStartHook = func() + type OpContext interface + Address func() common.Address + CallInput func() []byte + CallValue func() *uint256.Int + Caller func() common.Address + ContractCode func() []byte + MemoryData func() []byte + StackData func() []uint256.Int + type OpcodeHook = func(pc uint64, op byte, gas, cost uint64, scope OpContext, rData []byte, depth int, ...) + type SkippedBlockHook = func(event BlockEvent) + type StateDB interface + Exist func(common.Address) bool + GetBalance func(common.Address) *uint256.Int + GetCode func(common.Address) []byte + GetNonce func(common.Address) uint64 + GetRefund func() uint64 + GetState func(common.Address, common.Hash) common.Hash + GetTransientState func(common.Address, common.Hash) common.Hash + type StorageChangeHook = func(addr common.Address, slot common.Hash, prev, new common.Hash) + type TxEndHook = func(receipt *types.Receipt, err error) + type TxStartHook = func(vm *VMContext, tx *types.Transaction, from common.Address) + type VMContext struct + BlockNumber *big.Int + Coinbase common.Address + GasPrice *big.Int + Random *common.Hash + StateDB StateDB + Time uint64