#[repr(u32)]pub enum PoolError {
Show 42 variants
MathOverflow = 0,
InvalidFee = 1,
InvalidInvariant = 2,
FeeCalculationFailure = 3,
ExceededSlippage = 4,
InvalidCalculation = 5,
ZeroTradingTokens = 6,
ConversionError = 7,
FaultyLpMint = 8,
MismatchedTokenMint = 9,
MismatchedLpMint = 10,
MismatchedOwner = 11,
InvalidVaultAccount = 12,
InvalidVaultLpAccount = 13,
InvalidPoolLpMintAccount = 14,
PoolDisabled = 15,
InvalidAdminAccount = 16,
InvalidAdminFeeAccount = 17,
SameAdminAccount = 18,
IdenticalSourceDestination = 19,
ApyCalculationError = 20,
InsufficientSnapshot = 21,
NonUpdatableCurve = 22,
MisMatchedCurve = 23,
InvalidAmplification = 24,
UnsupportedOperation = 25,
ExceedMaxAChanges = 26,
InvalidRemainingAccountsLen = 27,
InvalidRemainingAccounts = 28,
MismatchedDepegMint = 29,
InvalidApyAccount = 30,
InvalidTokenMultiplier = 31,
InvalidDepegInformation = 32,
UpdateTimeConstraint = 33,
ExceedMaxFeeBps = 34,
OwnerFeeOverHalfOfTradeFee = 35,
InvalidAdmin = 36,
PoolIsNotPermissioned = 37,
InvalidDepositAmount = 38,
InvalidFeeOwner = 39,
NonDepletedPool = 40,
AmountNotPeg = 41,
}Expand description
Error messages and codes of the program
Variants§
MathOverflow = 0
Mathematic operation results in overflow.
InvalidFee = 1
Invalid fee configuration
InvalidInvariant = 2
Invalid invariant d amount
FeeCalculationFailure = 3
Failed to calculate fees.
ExceededSlippage = 4
The operation exceeds slippage defined by the user.
InvalidCalculation = 5
Swap curve calculation results in error.
ZeroTradingTokens = 6
Swap curve calculation results in zero token A/B.
ConversionError = 7
Type conversion results in error.
FaultyLpMint = 8
Invalid LP mint account.
MismatchedTokenMint = 9
Invalid token mint account.
MismatchedLpMint = 10
Invalid LP mint account.
MismatchedOwner = 11
Invalid owner account.
InvalidVaultAccount = 12
Invalid vault account.
InvalidVaultLpAccount = 13
Invalud vault LP account.
InvalidPoolLpMintAccount = 14
Invalid pool LP mint account.
PoolDisabled = 15
The pool was disabled.
InvalidAdminAccount = 16
Invalid admin account.
InvalidAdminFeeAccount = 17
Invalid admin fee token account.
SameAdminAccount = 18
Old and new admin are the same account.
IdenticalSourceDestination = 19
Source and destination token mint are the same.
ApyCalculationError = 20
APY calculation results in error.
InsufficientSnapshot = 21
Insufficient virtual price snapshot.
NonUpdatableCurve = 22
Curve is not updatable.
MisMatchedCurve = 23
The new curve is not the same type as the old curve.
InvalidAmplification = 24
Invalid amplification coefficient value.
UnsupportedOperation = 25
The operation is not supported.
ExceedMaxAChanges = 26
The ramping of amplification coefficient over the allowed value.
InvalidRemainingAccountsLen = 27
Invalid number of remaining accounts
InvalidRemainingAccounts = 28
Invalid remaining accounts
MismatchedDepegMint = 29
Pool token B mint doesn’t match with depeg token mint address
InvalidApyAccount = 30
Invalid APY account
InvalidTokenMultiplier = 31
Invalid token multiplier for stable swap curve
InvalidDepegInformation = 32
Invalid depeg information
UpdateTimeConstraint = 33
Update time violated the cooldown interval
ExceedMaxFeeBps = 34
Pool fee exceed allowed max fee bps
OwnerFeeOverHalfOfTradeFee = 35
Owner fee exceed half of trade fee
InvalidAdmin = 36
Invalid admin
PoolIsNotPermissioned = 37
Pool is not permissioned
InvalidDepositAmount = 38
Invalid deposit amount
InvalidFeeOwner = 39
Invalid fee owner
NonDepletedPool = 40
Pool is not depleted
AmountNotPeg = 41
Amount is not peg
Implementations§
Trait Implementations§
impl Copy for PoolError
Auto Trait Implementations§
impl Freeze for PoolError
impl RefUnwindSafe for PoolError
impl Send for PoolError
impl Sync for PoolError
impl Unpin for PoolError
impl UnwindSafe for PoolError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more