spherenet_program_whitelist_interface/state/
entry.rs1use {
2 super::{account_state::AccountState, Initializable},
3 bytemuck::{Pod, Zeroable},
4 pinocchio::pubkey::Pubkey,
5 shank::ShankAccount,
6};
7
8#[repr(C)]
9#[derive(Copy, Clone, Pod, Zeroable, ShankAccount)]
10pub struct WhitelistEntryAccount {
11 pub entry_address: Pubkey,
12 pub state: u8,
13}
14
15impl WhitelistEntryAccount {
16 #[inline(always)]
17 pub fn set_initialized(&mut self) {
18 self.state = AccountState::Initialized as u8;
19 }
20}
21
22impl Initializable for WhitelistEntryAccount {
23 #[inline(always)]
24 fn is_initialized(&self) -> bool {
25 self.state != AccountState::Uninitialized as u8
26 }
27}