Skip to main content
@tevm/voltaire
@tevm/voltaire / primitives/TraceResult

primitives/TraceResult

Type Aliases

TraceResultType

TraceResultType = object
Defined in: src/primitives/TraceResult/TraceResultType.ts:13 Complete execution trace result Returned by debug_traceTransaction and debug_traceCall

See

https://voltaire.tevm.sh/primitives/trace-result for TraceResult documentation

Since

0.0.0

Properties

[brand]
readonly [brand]: "TraceResult"
Defined in: src/primitives/TraceResult/TraceResultType.ts:14
callTrace?
readonly optional callTrace: CallTraceType
Defined in: src/primitives/TraceResult/TraceResultType.ts:24 Call tree (when using callTracer)
failed
readonly failed: boolean
Defined in: src/primitives/TraceResult/TraceResultType.ts:18 Whether execution failed
gas
readonly gas: Type
Defined in: src/primitives/TraceResult/TraceResultType.ts:16 Total gas used by the execution
returnValue
readonly returnValue: Uint8Array
Defined in: src/primitives/TraceResult/TraceResultType.ts:20 Return value or revert data
structLogs?
readonly optional structLogs: readonly StructLogType[]
Defined in: src/primitives/TraceResult/TraceResultType.ts:22 Opcode-level execution trace (when using default tracer)

Functions

_from()

_from(data): TraceResultType
Defined in: src/primitives/TraceResult/from.js:22 Creates a TraceResult from raw data

Parameters

data
TraceResult data
callTrace?
CallTraceType Call tree
failed
boolean Whether execution failed
gas
Type Total gas used
returnValue
Uint8Array<ArrayBufferLike> Return value
structLogs?
readonly StructLogType[] Opcode trace

Returns

TraceResultType TraceResult instance

Example

import { from } from './from.js';
const result = from({
  gas: 50000n,
  failed: false,
  returnValue: new Uint8Array(),
  structLogs: []
});

_getCallTrace()

_getCallTrace(result): CallTraceType | undefined
Defined in: src/primitives/TraceResult/getCallTrace.js:15 Gets call trace from a TraceResult

Parameters

result
TraceResultType TraceResult to extract call trace from

Returns

CallTraceType | undefined Call trace (undefined if not using callTracer)

Example

import { getCallTrace } from './getCallTrace.js';
const callTrace = getCallTrace(result);
if (callTrace) {
  console.log(`Root call: ${callTrace.type}`);
}

_getStructLogs()

_getStructLogs(result): readonly StructLogType[]
Defined in: src/primitives/TraceResult/getStructLogs.js:13 Gets structured logs from a TraceResult

Parameters

result
TraceResultType TraceResult to extract logs from

Returns

readonly StructLogType[] Structured logs (empty array if none)

Example

import { getStructLogs } from './getStructLogs.js';
const logs = getStructLogs(result);
console.log(`${logs.length} opcodes executed`);

from()

from(data): TraceResultType
Defined in: src/primitives/TraceResult/index.ts:26 Creates a TraceResult from raw data

Parameters

data
Omit<TraceResultType, brand> TraceResult data

Returns

TraceResultType TraceResult instance

See

https://voltaire.tevm.sh/primitives/trace-result for TraceResult documentation

Since

0.0.0

Example

import { TraceResult } from './primitives/TraceResult/index.js';
const result = TraceResult.from({ gas: 50000n, failed: false, returnValue: new Uint8Array() });

getCallTrace()

getCallTrace(result): CallTraceType | undefined
Defined in: src/primitives/TraceResult/index.ts:60 Gets call trace from a TraceResult

Parameters

result
TraceResultType TraceResult to extract call trace from

Returns

CallTraceType | undefined Call trace

Example

import { TraceResult } from './primitives/TraceResult/index.js';
const trace = TraceResult.getCallTrace(result);

getStructLogs()

getStructLogs(result): readonly StructLogType[]
Defined in: src/primitives/TraceResult/index.ts:43 Gets structured logs from a TraceResult

Parameters

result
TraceResultType TraceResult to extract logs from

Returns

readonly StructLogType[] Structured logs

Example

import { TraceResult } from './primitives/TraceResult/index.js';
const logs = TraceResult.getStructLogs(result);