Expand description

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

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

Structs

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

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

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

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

Enums

Mode of dealing with null accounts.

Return type of proof validity check.

Traits

Provides subset of State methods to query state information

Functions

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 a virtual transaction on the given state. Returns None when the transacion could not be proved, and a proof otherwise.

Type Definitions

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