solana_geyser_plugin_postgres/
inline_spl_token_2022.rs

1/// Partial SPL Token declarations inlined to avoid an external dependency on the spl-token-2022 crate
2/// Copied from solana-runtime
3use crate::inline_spl_token::{self, GenericTokenAccount};
4
5solana_sdk::declare_id!("TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb");
6
7// `spl_token_program_2022::extension::AccountType::Account` ordinal value
8const ACCOUNTTYPE_ACCOUNT: u8 = 2;
9
10pub struct Account;
11impl GenericTokenAccount for Account {
12    fn valid_account_data(account_data: &[u8]) -> bool {
13        inline_spl_token::Account::valid_account_data(account_data)
14            || ACCOUNTTYPE_ACCOUNT
15                == *account_data
16                    .get(inline_spl_token::Account::get_packed_len())
17                    .unwrap_or(&0)
18    }
19}