Documentation
¶
Overview ¶
Package tracer provides custom tracing capabilities to comply with EIP-4337 specifications for forbidden opcodes.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccessInfo ¶
AccessInfo provides context on read and write counts by storage slots.
type AccessMap ¶ added in v0.2.0
type AccessMap = map[common.Address]AccessInfo
type BundlerCollectorReturn ¶
type BundlerCollectorReturn struct { NumberLevels []NumberLevelInfo `json:"numberLevels"` Keccak []string `json:"keccak"` Calls []CallInfo `json:"calls"` Logs []LogInfo `json:"logs"` Debug []any `json:"debug"` }
BundlerCollectorReturn is the return value from performing an EVM trace with BundlerCollectorTracer.js.
type BundlerErrorReturn ¶ added in v0.6.0
type BundlerErrorReturn struct { Reverts []string `json:"reverts"` ValidationOOG bool `json:"validationOOG"` ExecutionOOG bool `json:"executionOOG"` UserOperationEvent *LogInfo `json:"userOperationEvent,omitempty"` Output string `json:"output"` }
BundlerErrorReturn is the return value from performing an EVM trace with BundlerErrorTracer.js.
type CallInfo ¶
type CallInfo struct { // Common Type string `json:"type"` // Method info From common.Address `json:"from"` To common.Address `json:"to"` Method string `json:"method"` Value any `json:"value"` Gas float64 `json:"gas"` // Exit info GasUsed float64 `json:"gasUsed"` Data any `json:"data"` }
CallInfo provides context on internal calls made during tracing.
type NumberLevelInfo ¶
type NumberLevelInfo struct { Opcodes Counts `json:"opcodes"` Access AccessMap `json:"access"` ContractSize Counts `json:"contractSize"` }
NumberLevelInfo provides context on opcodes and storage access delimited by the use of NUMBER at the EntryPoint.
type Tracers ¶ added in v0.6.0
func NewTracers ¶ added in v0.6.0
NewBundlerTracers reads the *Tracer.js files and returns a collection of strings that can be passed to a debug RPC method as a custom tracer.