UNPKG

@tevm/actions

Version:

A typesafe library for writing forge scripts in typescript

26 lines (23 loc) 801 B
import { numberToHex } from '@tevm/utils' /** * @template {'callTracer' | 'prestateTracer' | undefined} TTracer * @template {boolean} TDiffMode * @template {import('../debug/DebugResult.js').DebugTraceCallResult<TTracer, TDiffMode>} TTraceResult * @param {TTraceResult} traceResult * @returns {import('../utils/SerializeToJson.js').SerializeToJson<TTraceResult>} */ export const serializeTraceResult = (traceResult) => { if ('structLogs' in traceResult) { return /** @type {any} */ ({ failed: traceResult.failed, gas: numberToHex(traceResult.gas), returnValue: traceResult.returnValue, structLogs: traceResult.structLogs.map((log) => ({ ...log, gas: numberToHex(log.gas), gasCost: numberToHex(log.gasCost), })), }) } return /** @type {any} */ (traceResult) }