pub trait OpcodeTracer {
    // Provided methods
    fn do_trace_opcode(&self, _enabled: &mut bool) { ... }
    fn initialize_interp(&mut self, gas_limit: U256) { ... }
    fn step(&mut self, interp: &dyn InterpreterInfo) { ... }
    fn step_end(&mut self, interp: &dyn InterpreterInfo) { ... }
    fn log(&mut self, address: &Address, topics: &Vec<H256>, data: &[u8]) { ... }
    fn selfdestruct(
        &mut self,
        contract: &Address,
        target: &Address,
        value: U256
    ) { ... }
}

Provided Methods§

source

fn do_trace_opcode(&self, _enabled: &mut bool)

source

fn initialize_interp(&mut self, gas_limit: U256)

Called before the interpreter is initialized.

source

fn step(&mut self, interp: &dyn InterpreterInfo)

Called on each step of the interpreter.

Information about the current execution, including the memory, stack and more is available on interp (see [Interpreter]).

source

fn step_end(&mut self, interp: &dyn InterpreterInfo)

Called after step when the instruction has been executed.

source

fn log(&mut self, address: &Address, topics: &Vec<H256>, data: &[u8])

Called when a log is emitted.

source

fn selfdestruct(&mut self, contract: &Address, target: &Address, value: U256)

Called when a contract has been self-destructed with funds transferred to target.

Implementations on Foreign Types§

source§

impl OpcodeTracer for ()
where U256: Clone,

source§

fn initialize_interp(&mut self, gas_limit: U256)

Called before the interpreter is initialized.

source§

fn step(&mut self, interp: &dyn InterpreterInfo)

Called on each step of the interpreter.

Information about the current execution, including the memory, stack and more is available on interp (see [Interpreter]).

source§

fn step_end(&mut self, interp: &dyn InterpreterInfo)

Called after step when the instruction has been executed.

source§

fn log(&mut self, address: &Address, topics: &Vec<H256>, data: &[u8])

Called when a log is emitted.

source§

fn selfdestruct(&mut self, contract: &Address, target: &Address, value: U256)

Called when a contract has been self-destructed with funds transferred to target.

source§

fn do_trace_opcode(&self, _enabled: &mut bool)

source§

impl<T: OpcodeTracer + ?Sized> OpcodeTracer for &mut T

source§

fn do_trace_opcode(&self, _enabled: &mut bool)

source§

fn initialize_interp(&mut self, gas_limit: U256)

source§

fn step(&mut self, interp: &dyn InterpreterInfo)

source§

fn step_end(&mut self, interp: &dyn InterpreterInfo)

source§

fn log(&mut self, address: &Address, topics: &Vec<H256>, data: &[u8])

source§

fn selfdestruct(&mut self, contract: &Address, target: &Address, value: U256)

source§

impl<TupleElement0: OpcodeTracer> OpcodeTracer for (TupleElement0,)
where U256: Clone,

source§

fn initialize_interp(&mut self, gas_limit: U256)

Called before the interpreter is initialized.

source§

fn step(&mut self, interp: &dyn InterpreterInfo)

Called on each step of the interpreter.

Information about the current execution, including the memory, stack and more is available on interp (see [Interpreter]).

source§

fn step_end(&mut self, interp: &dyn InterpreterInfo)

Called after step when the instruction has been executed.

source§

fn log(&mut self, address: &Address, topics: &Vec<H256>, data: &[u8])

Called when a log is emitted.

source§

fn selfdestruct(&mut self, contract: &Address, target: &Address, value: U256)

Called when a contract has been self-destructed with funds transferred to target.

source§

fn do_trace_opcode(&self, _enabled: &mut bool)

source§

impl<TupleElement0: OpcodeTracer, TupleElement1: OpcodeTracer> OpcodeTracer for (TupleElement0, TupleElement1)
where U256: Clone,

source§

fn initialize_interp(&mut self, gas_limit: U256)

Called before the interpreter is initialized.

source§

fn step(&mut self, interp: &dyn InterpreterInfo)

Called on each step of the interpreter.

Information about the current execution, including the memory, stack and more is available on interp (see [Interpreter]).

source§

fn step_end(&mut self, interp: &dyn InterpreterInfo)

Called after step when the instruction has been executed.

source§

fn log(&mut self, address: &Address, topics: &Vec<H256>, data: &[u8])

Called when a log is emitted.

source§

fn selfdestruct(&mut self, contract: &Address, target: &Address, value: U256)

Called when a contract has been self-destructed with funds transferred to target.

source§

fn do_trace_opcode(&self, _enabled: &mut bool)

source§

impl<TupleElement0: OpcodeTracer, TupleElement1: OpcodeTracer, TupleElement2: OpcodeTracer> OpcodeTracer for (TupleElement0, TupleElement1, TupleElement2)
where U256: Clone,

source§

fn initialize_interp(&mut self, gas_limit: U256)

Called before the interpreter is initialized.

source§

fn step(&mut self, interp: &dyn InterpreterInfo)

Called on each step of the interpreter.

Information about the current execution, including the memory, stack and more is available on interp (see [Interpreter]).

source§

fn step_end(&mut self, interp: &dyn InterpreterInfo)

Called after step when the instruction has been executed.

source§

fn log(&mut self, address: &Address, topics: &Vec<H256>, data: &[u8])

Called when a log is emitted.

source§

fn selfdestruct(&mut self, contract: &Address, target: &Address, value: U256)

Called when a contract has been self-destructed with funds transferred to target.

source§

fn do_trace_opcode(&self, _enabled: &mut bool)

Implementors§