Modules§
- epoch_
start_ iota_ system_ state - iota_
system_ state_ inner_ v1 - iota_
system_ state_ inner_ v2 - iota_
system_ state_ summary
Structs§
- Advance
Epoch Params - Iota
System State Wrapper - Rust version of the Move iota::iota_system::IotaSystemState type This repreents the object with 0x5 ID. In Rust, this type should be rarely used since it’s just a thin wrapper used to access the inner object. Within this module, we use it to determine the current version of the system state inner object type, so that we could deserialize the inner object correctly. Outside of this module, we only use it in genesis snapshot and testing.
- Pool
Token Exchange Rate - Validator
Enums§
- Iota
System State - IotaSystemState provides an abstraction over multiple versions of the inner IotaSystemStateInner object. This should be the primary interface to the system state object in Rust. We use enum dispatch to dispatch all methods defined in IotaSystemStateTrait to the actual implementation in the inner types.
Constants§
Traits§
- Iota
System State Trait - This is the standard API that all inner system state object type should implement.
Functions§
- get_
iota_ system_ state - get_
iota_ system_ state_ wrapper - get_
validator_ from_ table - Given a system state type version, and the ID of the table, along with a key, retrieve the dynamic field as a Validator type. We need the version to determine which inner type to use for the Validator type. This is assuming that the validator is stored in the table as Validator type.
- get_
validators_ from_ table_ vec
Type Aliases§
- Iota
System State Inner Genesis - This is the fixed type used by genesis.
- Iota
Validator Genesis