Struct solana_sdk::genesis_config::GenesisConfig
source · pub struct GenesisConfig {Show 13 fields
pub creation_time: UnixTimestamp,
pub accounts: BTreeMap<Pubkey, Account>,
pub native_instruction_processors: Vec<(String, Pubkey)>,
pub rewards_pools: BTreeMap<Pubkey, Account>,
pub ticks_per_slot: u64,
pub unused: u64,
pub poh_config: PohConfig,
pub __backwards_compat_with_v0_23: u64,
pub fee_rate_governor: FeeRateGovernor,
pub rent: Rent,
pub inflation: Inflation,
pub epoch_schedule: EpochSchedule,
pub cluster_type: ClusterType,
}
Fields§
§creation_time: UnixTimestamp
when the network (bootstrap validator) was started relative to the UNIX Epoch
accounts: BTreeMap<Pubkey, Account>
initial accounts
native_instruction_processors: Vec<(String, Pubkey)>
built-in programs
rewards_pools: BTreeMap<Pubkey, Account>
accounts for network rewards, these do not count towards capitalization
ticks_per_slot: u64
§unused: u64
§poh_config: PohConfig
network speed configuration
__backwards_compat_with_v0_23: u64
this field exists only to ensure that the binary layout of GenesisConfig remains compatible with the Safecoin v0.23 release line
fee_rate_governor: FeeRateGovernor
transaction fee config
rent: Rent
rent config
inflation: Inflation
inflation config
epoch_schedule: EpochSchedule
how slots map to epochs
cluster_type: ClusterType
network runlevel
Implementations§
source§impl GenesisConfig
impl GenesisConfig
pub fn new( accounts: &[(Pubkey, AccountSharedData)], native_instruction_processors: &[(String, Pubkey)] ) -> Self
pub fn hash(&self) -> Hash
pub fn load(ledger_path: &Path) -> Result<Self, Error>
pub fn write(&self, ledger_path: &Path) -> Result<(), Error>
pub fn add_account(&mut self, pubkey: Pubkey, account: AccountSharedData)
pub fn add_native_instruction_processor( &mut self, name: String, program_id: Pubkey )
pub fn hashes_per_tick(&self) -> Option<u64>
pub fn ticks_per_slot(&self) -> u64
pub fn ns_per_slot(&self) -> u128
pub fn slots_per_year(&self) -> f64
Trait Implementations§
source§impl AbiExample for GenesisConfig
impl AbiExample for GenesisConfig
source§impl Clone for GenesisConfig
impl Clone for GenesisConfig
source§fn clone(&self) -> GenesisConfig
fn clone(&self) -> GenesisConfig
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for GenesisConfig
impl Debug for GenesisConfig
source§impl Default for GenesisConfig
impl Default for GenesisConfig
source§impl<'de> Deserialize<'de> for GenesisConfig
impl<'de> Deserialize<'de> for GenesisConfig
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more