Struct evm::State [] [src]

pub struct State<M> {
    pub memory: M,
    pub stack: Stack,
    pub context: Context,
    pub block: HeaderParams,
    pub out: Vec<u8>,
    pub memory_cost: Gas,
    pub used_gas: Gas,
    pub refunded_gas: Gas,
    pub account_state: AccountState,
    pub blockhash_state: BlockhashState,
    pub logs: Vec<Log>,
    pub removed: Vec<Address>,
    pub depth: usize,
}

A VM state without PC.

Fields

Memory of this runtime.

Stack of this runtime.

Context.

Block header.

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.

The current blockhash commitment states.

Logs appended.

Removed accounts using the SUICIDE opcode.

Depth of this runtime.

Methods

impl<M> State<M>
[src]

[src]

Memory gas, part of total used gas.

[src]

Available gas at this moment.

[src]

Total used gas including the memory gas.