processor.rs 580 B

1234567891011121314151617181920
  1. use borsh::BorshDeserialize;
  2. use solana_program::{
  3. account_info::AccountInfo, entrypoint::ProgramResult, program_error::ProgramError,
  4. pubkey::Pubkey,
  5. };
  6. use crate::instructions;
  7. use crate::state::AddressInfo;
  8. pub fn process_instruction(
  9. program_id: &Pubkey,
  10. accounts: &[AccountInfo],
  11. instruction_data: &[u8],
  12. ) -> ProgramResult {
  13. if let Ok(address_info) = AddressInfo::try_from_slice(instruction_data) {
  14. return instructions::create::create_address_info(program_id, accounts, address_info);
  15. };
  16. Err(ProgramError::InvalidInstructionData)
  17. }