[−][src]Enum solana_sdk::native_program::ProgramError
Reasons a program might have rejected an instruction.
Variants
GenericError
The program instruction returned an error
InvalidArgument
The arguments provided to a program instruction where invalid
ResultWithNegativeLamports
An instruction resulted in an account with a negative balance The difference from InsufficientFundsForFee is that the transaction was executed by the contract
UnbalancedInstruction
Program's instruction lamport balance does not equal the balance after the instruction
ModifiedProgramId
Program modified an account's program id
ExternalAccountLamportSpend
Program spent the lamports of an account that doesn't belong to it
ExternalAccountDataModified
Program modified the userdata of an account that doesn't belong to it
InvalidInstructionData
An instruction's data contents was invalid
InvalidAccountData
An account's data contents was invalid
AccountDataTooSmall
An account's data was too small
AssignOfUnownedAccount
SystemInstruction::Assign was attempted on an account unowned by the system program
DuplicateAccountIndex
An account was referenced more than once in a single instruction
CustomError(Vec<u8>)
CustomError allows on-chain programs to implement program-specific error types and see them returned by the Solana runtime. A CustomError may be any type that is serialized to a Vec of bytes, max length 32 bytes. Any CustomError Vec greater than this length will be truncated by the runtime.
Trait Implementations
impl PartialEq<ProgramError> for ProgramError
[src]
fn eq(&self, other: &ProgramError) -> bool
[src]
fn ne(&self, other: &ProgramError) -> bool
[src]
impl Clone for ProgramError
[src]
fn clone(&self) -> ProgramError
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Eq for ProgramError
[src]
impl Display for ProgramError
[src]
impl Debug for ProgramError
[src]
impl Error for ProgramError
[src]
fn description(&self) -> &str
1.0.0[src]
This method is soft-deprecated. Read more
fn cause(&self) -> Option<&dyn Error>
1.0.0[src]
replaced by Error::source, which can support downcasting
The lower-level cause of this error, if any. Read more
fn source(&self) -> Option<&(dyn Error + 'static)>
1.30.0[src]
The lower-level source of this error, if any. Read more
Auto Trait Implementations
impl Send for ProgramError
impl Sync for ProgramError
Blanket Implementations
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T> From for T
[src]
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Same for T
type Output = T
Should always be Self