carbon_token_program_decoder/accounts/
mint.rs1use solana_pubkey::Pubkey;
3
4#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5#[derive(Debug, Clone, borsh::BorshSerialize, borsh::BorshDeserialize, PartialEq)]
6pub struct Mint {
7 pub mint_authority: Option<Pubkey>,
11 pub supply: u64,
13 pub decimals: u8,
15 pub is_initialized: bool,
17 pub freeze_authority: Option<Pubkey>,
19}
20
21impl From<spl_token_interface::state::Mint> for Mint {
22 fn from(value: spl_token_interface::state::Mint) -> Self {
23 Mint {
24 mint_authority: value.mint_authority.into(),
25 supply: value.supply,
26 decimals: value.decimals,
27 is_initialized: value.is_initialized,
28 freeze_authority: value.freeze_authority.into(),
29 }
30 }
31}