solana_svm/
transaction_processing_callback.rsuse solana_sdk::{account::AccountSharedData, pubkey::Pubkey};
pub trait TransactionProcessingCallback {
fn account_matches_owners(&self, account: &Pubkey, owners: &[Pubkey]) -> Option<usize>;
fn get_account_shared_data(&self, pubkey: &Pubkey) -> Option<AccountSharedData>;
fn add_builtin_account(&self, _name: &str, _program_id: &Pubkey) {}
fn inspect_account(&self, _address: &Pubkey, _account_state: AccountState, _is_writable: bool) {
}
}
#[derive(Debug)]
pub enum AccountState<'a> {
Dead,
Alive(&'a AccountSharedData),
}