lib.rs 619 B

12345678910111213141516171819202122232425262728
  1. mod create;
  2. mod mint;
  3. mod transfer;
  4. use create::*;
  5. use mint::*;
  6. use transfer::*;
  7. use steel::*;
  8. use transfer_tokens_api::prelude::*;
  9. pub fn process_instruction(
  10. program_id: &Pubkey,
  11. accounts: &[AccountInfo],
  12. data: &[u8],
  13. ) -> ProgramResult {
  14. let (ix, data) = parse_instruction(&transfer_tokens_api::ID, program_id, data)?;
  15. match ix {
  16. SteelInstruction::Mint => process_mint(accounts, data)?,
  17. SteelInstruction::Create => process_create(accounts, data)?,
  18. SteelInstruction::Transfer => process_transfer(accounts, data)?,
  19. }
  20. Ok(())
  21. }
  22. entrypoint!(process_instruction);