Struct evm::State [] [src]

pub struct State<M, P: Patch> {
    pub memory: M,
    pub stack: Stack,
    pub context: Context,
    pub out: Rc<Vec<u8>>,
    pub memory_cost: Gas,
    pub used_gas: Gas,
    pub refunded_gas: Gas,
    pub account_state: AccountState<P::Account>,
    pub logs: Vec<Log>,
    pub removed: Vec<Address>,
    pub depth: usize,
    pub valids: Valids,
    pub position: usize,
}

A VM state without PC.

Fields

Memory of this runtime.

Stack of this runtime.

Context.

The current out value.

The current memory cost. Note that this is different from memory gas.

Used gas excluding memory gas.

Refunded gas.

The current account commitment states.

Logs appended.

Removed accounts using the SUICIDE opcode.

Depth of this runtime.

Code valid maps.

PC position.

Methods

impl<M, P: Patch> State<M, P>
[src]

[src]

Memory gas, part of total used gas.

[src]

Available gas at this moment.

[src]

Total used gas including the memory gas.