sigil_client/generated/errors/
sigil.rs1use num_derive::FromPrimitive;
9use thiserror::Error;
10
11#[derive(Clone, Debug, Eq, Error, FromPrimitive, PartialEq)]
12pub enum SigilError {
13 #[error("Error deserializing an account")]
15 DeserializationError,
16 #[error("Error serializing an account")]
18 SerializationError,
19 #[error("Invalid program owner. This likely mean the provided account does not exist")]
21 InvalidProgramOwner,
22 #[error("Invalid PDA derivation")]
24 InvalidPda,
25 #[error("Expected empty account")]
27 ExpectedEmptyAccount,
28 #[error("Expected non empty account")]
30 ExpectedNonEmptyAccount,
31 #[error("Expected signer account")]
33 ExpectedSignerAccount,
34 #[error("Expected writable account")]
36 ExpectedWritableAccount,
37 #[error("Account mismatch")]
39 AccountMismatch,
40 #[error("Invalid account key")]
42 InvalidAccountKey,
43 #[error("Numerical overflow")]
45 NumericalOverflow,
46 #[error("Invalid utf8 ticker")]
48 InvalidTicker,
49 #[error("Invalid mint")]
51 InvalidMint,
52 #[error("Invalid token account")]
54 InvalidTokenAccount,
55 #[error("Insufficient funds")]
57 InsufficientFunds,
58 #[error("Maximum supply reached")]
60 MaximumSupplyReached,
61 #[error("Cannot close mint account with supply")]
63 MintHasSupply,
64}
65
66impl solana_program::program_error::PrintProgramError for SigilError {
67 fn print<E>(&self) {
68 solana_program::msg!(&self.to_string());
69 }
70}