#[repr(C)]pub struct Config {
pub discriminator: u64,
pub admin: [u8; 32],
pub mint: [u8; 32],
pub current_round: u64,
pub round_start_ts: i64,
pub min_difficulty: u64,
pub base_weight: u64,
pub round_seconds: u64,
pub config_bump: u64,
pub treasury_bump: u64,
}Expand description
Global program configuration (“config” PDA, singleton).
Fields§
§discriminator: u64§admin: [u8; 32]Admin (update_config / set_admin). Held by a multisig with a timelock.
mint: [u8; 32]Token mint (mint authority = “treasury” PDA).
current_round: u64Index of the current (open) round.
round_start_ts: i64Start timestamp of the current round.
min_difficulty: u64Minimum hash difficulty (leading zero bits).
base_weight: u64Free-tier base weight in native token units.
round_seconds: u64Round length in seconds (submit cadence; the round budget scales pro-rata, so emission per minute stays constant).
config_bump: u64Config PDA bump.
treasury_bump: u64Treasury PDA bump.
Implementations§
Trait Implementations§
impl Copy for Config
impl Pod for Config
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnsafeUnpin for Config
impl UnwindSafe for Config
Blanket Implementations§
impl<T> AnyBitPattern for Twhere
T: Pod,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
Source§type Bits = T
type Bits = T
Self must have the same layout as the specified Bits except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern.Source§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret
bits
as &Self.