plugeth/eth/tracers/native
Chris Ziogas 2ad150d986
eth/tracers: add native flatCallTracer (aka parity style tracer) (#26377)
Adds support for a native call tracer with the Parity format, which outputs call frames
in a flat array. This tracer accepts the following options:

- `convertParityErrors: true` will convert error messages to match those of Parity
- `includePrecompiles: true` will report all calls to precompiles. The default
  matches Parity's behavior where CALL and STATICCALLs to precompiles are excluded

Incompatibilities with Parity include:

- Parity removes the result object in case of failure. This behavior is maintained
  with the exception of reverts. Revert output usually contains useful information,
  i.e. Solidity revert reason.
- The `gasUsed` field accounts for intrinsic gas (e.g. 21000 for simple transfers)
  and refunds unlike Parity
- Block rewards are not reported

Co-authored-by: Sina Mahmoodi <itz.s1na@gmail.com>
2023-02-28 13:54:37 +03:30
..
4byte.go eth/tracers: use non-threaded tracechain (#24283) 2023-01-10 15:11:53 +01:00
call_flat.go eth/tracers: add native flatCallTracer (aka parity style tracer) (#26377) 2023-02-28 13:54:37 +03:30
call.go eth/tracers: add native flatCallTracer (aka parity style tracer) (#26377) 2023-02-28 13:54:37 +03:30
gen_account_json.go eth/tracers: simplify test framework (#25973) 2022-10-21 17:55:15 +02:00
gen_callframe_json.go eth/tracer: rename to revertReason (#26574) 2023-01-31 03:29:17 -05:00
gen_flatcallaction_json.go eth/tracers: add native flatCallTracer (aka parity style tracer) (#26377) 2023-02-28 13:54:37 +03:30
gen_flatcallresult_json.go eth/tracers: add native flatCallTracer (aka parity style tracer) (#26377) 2023-02-28 13:54:37 +03:30
mux.go eth/tracers: use non-threaded tracechain (#24283) 2023-01-10 15:11:53 +01:00
noop.go eth/tracers: use non-threaded tracechain (#24283) 2023-01-10 15:11:53 +01:00
prestate.go eth/tracers: use non-threaded tracechain (#24283) 2023-01-10 15:11:53 +01:00