#[repr(u8)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum AccountState {
Uninitialized,
Initialized,
Frozen,
}
impl From<u8> for AccountState {
fn from(value: u8) -> Self {
match value {
0 => AccountState::Uninitialized,
1 => AccountState::Initialized,
2 => AccountState::Frozen,
_ => panic!("invalid account state value: {value}"),
}
}
}
impl From<AccountState> for u8 {
fn from(value: AccountState) -> Self {
match value {
AccountState::Uninitialized => 0,
AccountState::Initialized => 1,
AccountState::Frozen => 2,
}
}
}