cfx_executor/state/
mod.rs

1// Copyright 2019 Conflux Foundation. All rights reserved.
2// Conflux is free software and distributed under GNU General Public License.
3// See http://www.gnu.org/licenses/
4
5//! Ledger State: Acts as a caching and checkpoint layer built upon semantically
6//! meaningful database interfaces for the execution.
7
8mod checkpoints;
9
10/// Global Statistic Variables: Manages global variables with different
11/// checkpoint and caching mechanisms compared to other state variables, such
12/// as, `total_issued_tokens`.
13mod global_stat;
14
15/// Overlay Account: Defines the access and manipulation object during
16/// execution. Each `OverlayAccount` encompasses both the database-stored
17/// information of an account and its in-execution data.
18mod overlay_account;
19
20/// State Object: Represents the core object of the state module.
21mod state_object;
22
23pub use state_object::{
24    distribute_pos_interest, initialize_cip107, initialize_cip137,
25    initialize_or_update_dao_voted_params, settle_collateral_for_all,
26    update_pos_status, State, StateCommitResult,
27    COMMISSION_PRIVILEGE_SPECIAL_KEY,
28};
29#[cfg(test)]
30pub use state_object::{get_state_by_epoch_id, get_state_for_genesis_write};