Skip to main content
import * as TraceResult from 'voltaire-effect/primitives/TraceResult'
import { Effect } from 'effect'

const result = await Effect.runPromise(TraceResult.from({
  gas: 21000n,
  failed: false,
  returnValue: new Uint8Array([]),
  callTrace: {
    type: 'CALL',
    from: '0x...',
    to: '0x...',
    gas: '0x5208',
    input: '0x'
  }
}))

Fields

FieldTypeDescription
gasbigintGas consumed
failedbooleanExecution reverted
returnValueUint8ArrayReturn data
structLogsany[]Step-by-step logs (structLog tracer)
callTraceobjectCall tree (callTracer)

Error Handling

const result = await Effect.runPromiseExit(TraceResult.from(invalid))
if (result._tag === 'Failure') {
  console.error(result.cause) // TraceResultError
}