pub trait IotaSystemStateTrait {
    // Required methods
    fn epoch(&self) -> u64;
    fn reference_gas_price(&self) -> u64;
    fn protocol_version(&self) -> u64;
    fn system_state_version(&self) -> u64;
    fn epoch_start_timestamp_ms(&self) -> u64;
    fn epoch_duration_ms(&self) -> u64;
    fn safe_mode(&self) -> bool;
    fn advance_epoch_safe_mode(&mut self, params: &AdvanceEpochParams);
    fn get_current_epoch_committee(&self) -> CommitteeWithNetworkMetadata;
    fn get_pending_active_validators<S: ObjectStore + ?Sized>(
        &self,
        object_store: &S,
    ) -> Result<Vec<IotaValidatorSummary>, IotaError>;
    fn into_epoch_start_state(self) -> EpochStartSystemState;
    fn into_iota_system_state_summary(self) -> IotaSystemStateSummary;
}
Expand description

This is the standard API that all inner system state object type should implement.

Required Methods§

Object Safety§

This trait is not object safe.

Implementors§