Enum spl_stake_pool::error::StakePoolError
source · pub enum StakePoolError {
Show 43 variants
AlreadyInUse,
InvalidProgramAddress,
InvalidState,
CalculationFailure,
FeeTooHigh,
WrongAccountMint,
WrongManager,
SignatureMissing,
InvalidValidatorStakeList,
InvalidFeeAccount,
WrongPoolMint,
WrongStakeStake,
UserStakeNotActive,
ValidatorAlreadyAdded,
ValidatorNotFound,
InvalidStakeAccountAddress,
StakeListOutOfDate,
StakeListAndPoolOutOfDate,
UnknownValidatorStakeAccount,
WrongMintingAuthority,
UnexpectedValidatorListAccountSize,
WrongStaker,
NonZeroPoolTokenSupply,
StakeLamportsNotEqualToMinimum,
IncorrectDepositVoteAddress,
IncorrectWithdrawVoteAddress,
InvalidMintFreezeAuthority,
FeeIncreaseTooHigh,
WithdrawalTooSmall,
DepositTooSmall,
InvalidStakeDepositAuthority,
InvalidSolDepositAuthority,
InvalidPreferredValidator,
TransientAccountInUse,
InvalidSolWithdrawAuthority,
SolWithdrawalTooLarge,
InvalidMetadataAccount,
UnsupportedMintExtension,
UnsupportedFeeAccountExtension,
ExceededSlippage,
IncorrectMintDecimals,
ReserveDepleted,
MissingRequiredSysvar,
}
Expand description
Errors that may be returned by the StakePool program.
Variants§
AlreadyInUse
The account cannot be initialized because it is already being used.
InvalidProgramAddress
The program address provided doesn’t match the value generated by the program.
InvalidState
The stake pool state is invalid.
CalculationFailure
The calculation failed.
FeeTooHigh
Stake pool fee > 1.
WrongAccountMint
Token account is associated with the wrong mint.
WrongManager
Wrong pool manager account.
SignatureMissing
Required signature is missing.
InvalidValidatorStakeList
Invalid validator stake list account.
InvalidFeeAccount
Invalid manager fee account.
WrongPoolMint
Specified pool mint account is wrong.
WrongStakeStake
Stake account is not in the state expected by the program.
UserStakeNotActive
User stake is not active
ValidatorAlreadyAdded
Stake account voting for this validator already exists in the pool.
ValidatorNotFound
Stake account for this validator not found in the pool.
InvalidStakeAccountAddress
Stake account address not properly derived from the validator address.
StakeListOutOfDate
Identify validator stake accounts with old balances and update them.
StakeListAndPoolOutOfDate
First update old validator stake account balances and then pool stake balance.
UnknownValidatorStakeAccount
Validator stake account is not found in the list storage.
WrongMintingAuthority
Wrong minting authority set for mint pool account
UnexpectedValidatorListAccountSize
The size of the given validator stake list does match the expected amount
WrongStaker
Wrong pool staker account.
NonZeroPoolTokenSupply
Pool token supply is not zero on initialization
StakeLamportsNotEqualToMinimum
The lamports in the validator stake account is not equal to the minimum
IncorrectDepositVoteAddress
The provided deposit stake account is not delegated to the preferred deposit vote account
IncorrectWithdrawVoteAddress
The provided withdraw stake account is not the preferred deposit vote account
InvalidMintFreezeAuthority
The mint has an invalid freeze authority
FeeIncreaseTooHigh
Proposed fee increase exceeds stipulated ratio
WithdrawalTooSmall
Not enough pool tokens provided to withdraw stake with one lamport
DepositTooSmall
Not enough lamports provided for deposit to result in one pool token
InvalidStakeDepositAuthority
Provided stake deposit authority does not match the program’s
InvalidSolDepositAuthority
Provided sol deposit authority does not match the program’s
InvalidPreferredValidator
Provided preferred validator is invalid
TransientAccountInUse
Provided validator stake account already has a transient stake account in use
InvalidSolWithdrawAuthority
Provided sol withdraw authority does not match the program’s
SolWithdrawalTooLarge
Too much SOL withdrawn from the stake pool’s reserve account
InvalidMetadataAccount
Provided metadata account does not match metadata account derived for pool mint
UnsupportedMintExtension
The mint has an unsupported extension
UnsupportedFeeAccountExtension
The fee account has an unsupported extension
ExceededSlippage
Instruction exceeds desired slippage limit
IncorrectMintDecimals
Provided mint does not have 9 decimals to match SOL
ReserveDepleted
Pool reserve does not have enough lamports to fund rent-exempt reserve in split destination. Deposit more SOL in reserve, or pre-fund split destination with the rent-exempt reserve for a stake account.
MissingRequiredSysvar
Missing required sysvar account
Trait Implementations§
source§impl Clone for StakePoolError
impl Clone for StakePoolError
source§fn clone(&self) -> StakePoolError
fn clone(&self) -> StakePoolError
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for StakePoolError
impl Debug for StakePoolError
source§impl<T> DecodeError<T> for StakePoolError
impl<T> DecodeError<T> for StakePoolError
source§impl Display for StakePoolError
impl Display for StakePoolError
source§impl Error for StakePoolError
impl Error for StakePoolError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
source§impl From<StakePoolError> for ProgramError
impl From<StakePoolError> for ProgramError
source§fn from(e: StakePoolError) -> Self
fn from(e: StakePoolError) -> Self
source§impl FromPrimitive for StakePoolError
impl FromPrimitive for StakePoolError
source§fn from_i64(n: i64) -> Option<Self>
fn from_i64(n: i64) -> Option<Self>
i64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u64(n: u64) -> Option<Self>
fn from_u64(n: u64) -> Option<Self>
u64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_isize(n: isize) -> Option<Self>
fn from_isize(n: isize) -> Option<Self>
isize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i8(n: i8) -> Option<Self>
fn from_i8(n: i8) -> Option<Self>
i8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i16(n: i16) -> Option<Self>
fn from_i16(n: i16) -> Option<Self>
i16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i32(n: i32) -> Option<Self>
fn from_i32(n: i32) -> Option<Self>
i32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i128(n: i128) -> Option<Self>
fn from_i128(n: i128) -> Option<Self>
i128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresource§fn from_usize(n: usize) -> Option<Self>
fn from_usize(n: usize) -> Option<Self>
usize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u8(n: u8) -> Option<Self>
fn from_u8(n: u8) -> Option<Self>
u8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u16(n: u16) -> Option<Self>
fn from_u16(n: u16) -> Option<Self>
u16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u32(n: u32) -> Option<Self>
fn from_u32(n: u32) -> Option<Self>
u32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u128(n: u128) -> Option<Self>
fn from_u128(n: u128) -> Option<Self>
u128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresource§impl PartialEq for StakePoolError
impl PartialEq for StakePoolError
source§fn eq(&self, other: &StakePoolError) -> bool
fn eq(&self, other: &StakePoolError) -> bool
self
and other
values to be equal, and is used
by ==
.