Crate evm_tracing_events

Source
Expand description

A Proxy in this context is an environmental trait implementor meant to be used for capturing EVM trace events sent to a Host function from the Runtime. Works like:

  • Runtime Api call using environmental.
  • Runtime calls a Host function with some scale-encoded Evm event.
  • Host function emits an additional event to this Listener.
  • Proxy listens for the event and format the actual trace response.

There are two proxy types: Raw and CallList.

  • Raw - used for opcode-level traces.
  • CallList - used for block tracing (stack of call stacks) and custom tracing outputs.

The EVM event types may contain references and not implement Encode/Decode. This module provide mirror types and conversion into them from the original events.

Re-exports§

pub use self::evm::EvmEvent;
pub use gasometer::GasometerEvent;
pub use runtime::RuntimeEvent;

Modules§

evm
gasometer
runtime

Structs§

Context
StepEventFilter
Allow to configure which data of the Step event we want to keep or discard. Not discarding the data requires cloning the data in the runtime which have a significant cost for each step.

Enums§

Event

Traits§

Listener
Main trait to proxy emitted messages. Used 2 times :

Functions§

step_event_filter
using