Documentation ¶
Index ¶
Constants ¶
View Source
const ( ErrorEVM = 2 ErrorVMConfig = 3 ErrorMissingBlockhash = 4 ErrorJson = 10 ErrorIO = 11 )
Variables ¶
View Source
var ( TraceFlag = cli.BoolFlag{ Name: "trace", Usage: "Output full trace logs to files <txhash>.jsonl", } TraceDisableMemoryFlag = cli.BoolFlag{ Name: "trace.nomemory", Usage: "Disable full memory dump in traces", } TraceDisableStackFlag = cli.BoolFlag{ Name: "trace.nostack", Usage: "Disable stack output in traces", } TraceDisableReturnDataFlag = cli.BoolFlag{ Name: "trace.noreturndata", Usage: "Disable return data output in traces", } OutputBasedir = cli.StringFlag{ Name: "output.basedir", Usage: "Specifies where output files are placed. Will be created if it does not exist.", Value: "", } OutputBodyFlag = cli.StringFlag{ Name: "output.body", Usage: "If set, the RLP of the transactions (block body) will be written to this file.", Value: "", } OutputAllocFlag = cli.StringFlag{ Name: "output.alloc", Usage: "Determines where to put the `alloc` of the post-state.\n" + "\t`stdout` - into the stdout output\n" + "\t`stderr` - into the stderr output\n" + "\t<file> - into the file <file> ", Value: "alloc.json", } OutputResultFlag = cli.StringFlag{ Name: "output.result", Usage: "Determines where to put the `result` (stateroot, txroot etc) of the post-state.\n" + "\t`stdout` - into the stdout output\n" + "\t`stderr` - into the stderr output\n" + "\t<file> - into the file <file> ", Value: "result.json", } InputAllocFlag = cli.StringFlag{ Name: "input.alloc", Usage: "`stdin` or file name of where to find the prestate alloc to use.", Value: "alloc.json", } InputEnvFlag = cli.StringFlag{ Name: "input.env", Usage: "`stdin` or file name of where to find the prestate env to use.", Value: "env.json", } InputTxsFlag = cli.StringFlag{ Name: "input.txs", Usage: "`stdin` or file name of where to find the transactions to apply. " + "If the file prefix is '.rlp', then the data is interpreted as an RLP list of signed transactions." + "The '.rlp' format is identical to the output.body format.", Value: "txs.json", } RewardFlag = cli.Int64Flag{ Name: "state.reward", Usage: "Mining reward. Set to -1 to disable", Value: 0, } ChainIDFlag = cli.Int64Flag{ Name: "state.chainid", Usage: "ChainID to use", Value: 1, } ForknameFlag = cli.StringFlag{ Name: "state.fork", Usage: fmt.Sprintf("Name of ruleset to use."+ "\n\tAvailable forknames:"+ "\n\t %v"+ "\n\tAvailable extra eips:"+ "\n\t %v"+ "\n\tSyntax <forkname>(+ExtraEip)", strings.Join(tests.AvailableForks(), "\n\t "), strings.Join(vm.ActivateableEips(), ", ")), Value: "Istanbul", } VerbosityFlag = cli.IntFlag{ Name: "verbosity", Usage: "sets the verbosity level", Value: 3, } )
Functions ¶
func MakePreState ¶
Types ¶
type Alloc ¶
type Alloc map[common.Address]core.GenesisAccount
type ExecutionResult ¶
type ExecutionResult struct { StateRoot common.Hash `json:"stateRoot"` TxRoot common.Hash `json:"txRoot"` ReceiptRoot common.Hash `json:"receiptRoot"` LogsHash common.Hash `json:"logsHash"` Bloom types.Bloom `json:"logsBloom" gencodec:"required"` Receipts types.Receipts `json:"receipts"` Rejected []*rejectedTx `json:"rejected,omitempty"` }
ExecutionResult contains the execution status after running a state test, any error that might have occurred and a dump of the final state if requested.
type NumberedError ¶
type NumberedError struct {
// contains filtered or unexported fields
}
func NewError ¶
func NewError(errorCode int, err error) *NumberedError
func (*NumberedError) Code ¶
func (n *NumberedError) Code() int
func (*NumberedError) Error ¶
func (n *NumberedError) Error() string
type Prestate ¶
type Prestate struct { Env stEnv `json:"env"` Pre core.GenesisAlloc `json:"pre"` }
func (*Prestate) Apply ¶
func (pre *Prestate) Apply(vmConfig vm.Config, chainConfig *params.ChainConfig, txs types.Transactions, miningReward int64, getTracerFn func(txIndex int, txHash common.Hash) (tracer vm.Tracer, err error)) (*state.StateDB, *ExecutionResult, error)
Apply applies a set of transactions to a pre-state
Click to show internal directories.
Click to hide internal directories.