401354976b
This change introduces 2 new optional methods; `enter()` and `exit()` for js tracers, and makes `step()` optiona. The two new methods are invoked when entering and exiting a call frame (but not invoked for the outermost scope, which has it's own methods). Currently these are the data fields passed to each of them: enter: type (opcode), from, to, input, gas, value exit: output, gasUsed, error The PR also comes with a re-write of the callTracer. As a backup we keep the previous tracing script under the name `callTracerLegacy`. Behaviour of both tracers are equivalent for the most part, although there are some small differences (improvements), where the new tracer is more correct / has more information. |
||
---|---|---|
.. | ||
create.json | ||
deep_calls.json | ||
delegatecall.json | ||
inner_create_oog_outer_throw.json | ||
inner_instafail.json | ||
inner_throw_outer_revert.json | ||
oog.json | ||
revert_reason.json | ||
revert.json | ||
selfdestruct.json | ||
simple.json | ||
throw.json |