switchboard_solana/oracle_program/accounts/
sb_state.rs

1use crate::prelude::*;
2
3#[account(zero_copy(unsafe))]
4#[repr(packed)]
5pub struct SbState {
6    /// The account authority permitted to make account changes.
7    pub authority: Pubkey,
8    /// The token mint used for oracle rewards, aggregator leases, and other reward incentives.
9    pub token_mint: Pubkey,
10    /// Token vault used by the program to receive kickbacks.
11    pub token_vault: Pubkey,
12    /// The token mint used by the DAO.
13    pub dao_mint: Pubkey,
14    /// The PDA bump to derive the pubkey.
15    pub bump: u8,
16    /// Reserved for future info.
17    pub _ebuf: [u8; 991],
18}
19
20impl SbState {
21    pub fn size() -> usize {
22        8 + std::mem::size_of::<SbState>()
23    }
24}