Crate near_chain[][src]

Re-exports

pub use chain::collect_receipts;
pub use chain::Chain;
pub use chain::MAX_ORPHAN_SIZE;
pub use store_validator::ErrorMessage;
pub use store_validator::StoreValidator;
pub use types::BlockStatus;
pub use types::ChainGenesis;
pub use types::Provenance;
pub use types::RuntimeAdapter;

Modules

Macros

Structs

All chain-related database operations.

Contains all the logic for Doomslug, but no integration with chain or storage. The integration happens via PersistentDoomslug struct. The split is to simplify testing of the logic separate from the chain.

Enums

Versioned Block data structure. For each next version, document what are the changes between versions.

Versioned BlockHeader data structure. For each next version, document what are the changes between versions.

The result of processing an approval.

The threshold for doomslug to create a block. TwoThirds means the block can only be produced if at least 2/3 of the stake is approving it, and is what should be used in production (and what guarantees finality) NoApprovals means the block production is not blocked on approvals. This is used in many tests (e.g. cross_shard_tx) to create lots of forkfulness.

Traits

Accesses the chain store. Used to create atomic editable views that can be reverted.

Functions

Creates the LightClientBlock from the information in the chain store for a given block.

Type Definitions

Provides layer to update chain without touching the underlying database. This serves few purposes, main one is that even if executable exists/fails during update the database is in consistent state.

Map of shard to list of receipts to send to it.