Struct revm::Machine [−][src]
pub struct Machine {
pub contract: Contract,
pub program_counter: usize,
pub return_range: Range<usize>,
pub memory: Memory,
pub stack: Stack,
pub return_data_buffer: Bytes,
pub gas: Gas,
pub call_depth: u64,
}
Fields
contract: Contract
Contract information and invoking data
program_counter: usize
Program counter.
return_range: Range<usize>
Return value.
memory: Memory
Memory.
stack: Stack
Stack.
return_data_buffer: Bytes
After call returns, its return data is saved here.
gas: Gas
left gas. Memory gas can be found in Memory field.
call_depth: u64
used only for inspector.
Implementations
Return a reference of the program counter.
loop steps until we are finished with execution
Step the machine, executing one opcode. It then returns.
Copy and get the return value of the machine, if any.