instrumentation

package
v0.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 21, 2023 License: AGPL-3.0, AGPL-3.0-or-later Imports: 2 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Context

type Context struct {
	Type     string `json:"type"`
	From     string `json:"from"`
	To       string `json:"to"`
	Input    string `json:"input"`
	Gas      string `json:"gas"`
	Value    string `json:"value"`
	Output   string `json:"output"`
	Nonce    uint64 `json:"nonce"`
	GasPrice string `json:"gasPrice"`
	// ChainID      uint64 `json:"chainId"`
	OldStateRoot string `json:"oldStateRoot"`
	Time         uint64 `json:"time"`
	GasUsed      string `json:"gasUsed"`
}

Context is the trace context.

type Contract

type Contract struct {
	Address string `json:"address"`
	Caller  string `json:"caller"`
	Value   string `json:"value"`
	Input   string `json:"input"`
	Gas     string `json:"gas"`
}

Contract represents a contract in the trace.

type ExecutorTrace

type ExecutorTrace struct {
	Context Context `json:"context"`
	Steps   []Step  `json:"steps"`
}

ExecutorTrace contents executor traces.

type Step

type Step struct {
	StateRoot  string   `json:"stateRoot"`
	Depth      int      `json:"depth"`
	Pc         uint64   `json:"pc"`
	Gas        string   `json:"gas"`
	OpCode     string   `json:"opcode"`
	Refund     string   `json:"refund"`
	Op         string   `json:"op"`
	Error      string   `json:"error"`
	Contract   Contract `json:"contract"`
	GasCost    string   `json:"gasCost"`
	Stack      []string `json:"stack"`
	Memory     []byte   `json:"memory"`
	ReturnData []byte   `json:"returnData"`
}

Step is a trace step.

type StoreDiff

type StoreDiff struct {
	Location uint64 `json:"location"`
	Value    uint64 `json:"value"`
}

StoreDiff contains modified storage data

type StructLog

type StructLog struct {
	Pc            uint64                      `json:"pc"`
	Op            string                      `json:"op"`
	Gas           uint64                      `json:"gas"`
	GasCost       uint64                      `json:"gasCost"`
	Memory        []byte                      `json:"memory"`
	MemorySize    int                         `json:"memSize"`
	Stack         []*big.Int                  `json:"stack"`
	ReturnData    []byte                      `json:"returnData"`
	Storage       map[common.Hash]common.Hash `json:"-"`
	Depth         int                         `json:"depth"`
	RefundCounter uint64                      `json:"refund"`
	Err           error                       `json:"-"`
}

StructLog is emitted to the EVM each cycle and lists information about the current internal state prior to the execution of the statement.

type Tracer

type Tracer struct {
	Code string `json:"tracer"`
}

Tracer represents the executor tracer.

Directories

Path Synopsis
js
internal/tracers
Package tracers contains the actual JavaScript tracer assets.
Package tracers contains the actual JavaScript tracer assets.
Package tracers is a manager for transaction tracing engines.
Package tracers is a manager for transaction tracing engines.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL