Module ethcore::state [] [src]

A mutable state representation suitable to execute transactions. Generic over a Backend. Deals with Accounts. Unconfirmed sub-states are managed with checkpoints which may be canonicalized or rolled back.

Re-exports

pub use self::backend::Backend;

Modules

backend

A minimal "state backend" trait: an abstraction over the sources of data a blockchain state may draw upon.

Structs

Account

Single account in the system. Keeps track of changes to the code and storage. The changes are applied in commit_storage and commit_code

ApplyOutcome

Used to return information about an State::apply operation.

State

Representation of the entire state of all accounts in the system.

Substate

State changes which should be applied in finalize, after transaction is fully executed.

Enums

CleanupMode

Mode of dealing with null accounts.

ProvedExecution

Return type of proof validity check.

Traits

StateInfo

Provides subset of State methods to query state information

Functions

check_proof

Check the given proof of execution. Err(ExecutionError::Internal) indicates failure, everything else indicates a successful proof (as the transaction itself may be poorly chosen).

prove_transaction

Prove a transaction on the given state. Returns None when the transacion could not be proved, and a proof otherwise.

Type Definitions

ApplyResult

Result type for the execution ("application") of a transaction.