pub enum TunaError {
Show 63 variants
AmountSlippageExceeded = 6_000,
BadDebt = 6_001,
InvalidRemainingAccountsLength = 6_002,
InvalidAccountOwner = 6_003,
InvalidInstructionArguments = 6_004,
InvalidMarketMaker = 6_005,
InvalidSqrtPriceLimitDirection = 6_006,
InvalidTickArraySequence = 6_007,
InsufficientLiquidity = 6_008,
InterestRateIsOutOfRange = 6_009,
LeverageIsOutOfRange = 6_010,
LeftoversExceeded = 6_011,
LimitOrderExecutionFeeIsOutOfRange = 6_012,
LiquidationFeeIsOutOfRange = 6_013,
LiquidationThresholdIsOutOfRange = 6_014,
LiquidityZero = 6_015,
MarketDisabled = 6_016,
MarketDebtLimitExceeded = 6_017,
MathOverflow = 6_018,
MathUnderflow = 6_019,
NoExtraAccountsForTransferHook = 6_020,
OracleStalePrice = 6_021,
OraclePriceDeviationThresholdExceeded = 6_022,
OraclePriceDeviationThresholdOutOfRange = 6_023,
PartialFillError = 6_024,
PositionIsHealthy = 6_025,
PositionIsLiquidated = 6_026,
PositionIsUnhealthy = 6_027,
PositionNotEmpty = 6_028,
ProtocolFeeIsOutOfRange = 6_029,
RebalanceConditionsNotMet = 6_030,
RemainingAccountsDuplicatedAccountsType = 6_031,
RemainingAccountsInvalidSlice = 6_032,
RemainingAccountsInvalidSliceLength = 6_033,
RemainingAccountsInsufficient = 6_034,
RequiredRemainingAccountNotProvided = 6_035,
SolverFailedToFindRoot = 6_036,
SqrtPriceOutOfBounds = 6_037,
SupplyLimitExceeded = 6_038,
Suspended = 6_039,
SwapSlippageExceeded = 6_040,
SwapSlippageIsOutOfRange = 6_041,
SwapToPositionRatioEstimationFailed = 6_042,
SwapQuoteNotEqualToActualSwapAmount = 6_043,
TickIndexOfBounds = 6_044,
TransferFeeCalculationError = 6_045,
TypeCastOverflow = 6_046,
UnableToLoadAccountData = 6_047,
UnableToDeserializeAccountData = 6_048,
UnexpectedValue = 6_049,
UnsupportedTokenMint = 6_050,
VaultNotInitialized = 6_051,
WithdrawRequestExceedsUserBalance = 6_052,
ZeroPriceRange = 6_053,
ZeroTradableAmount = 6_054,
ZeroYield = 6_055,
RaydiumInvalidFirstTickArrayAccount = 6_056,
RaydiumInvalidTickArray = 6_057,
RaydiumInvaildTickIndex = 6_058,
RaydiumMaxTokenOverflow = 6_059,
RaydiumNotEnoughTickArrayAccount = 6_060,
RaydiumSqrtPriceLimitOverflow = 6_061,
RaydiumZeroAmountSpecified = 6_062,
}Variants§
AmountSlippageExceeded = 6_000
6000 - Amount slippage exceeded
BadDebt = 6_001
6001 - Bad debt is not allowed for the executed instruction
InvalidRemainingAccountsLength = 6_002
6002 - Invalid number of remaining accounts
InvalidAccountOwner = 6_003
6003 - Invalid account owner
InvalidInstructionArguments = 6_004
6004 - Invalid instruction arguments
InvalidMarketMaker = 6_005
6005 - Invalid market maker
InvalidSqrtPriceLimitDirection = 6_006
6006 - Provided SqrtPriceLimit not in the same direction as the swap.
InvalidTickArraySequence = 6_007
6007 - Invalid tick array sequence provided for instruction
InsufficientLiquidity = 6_008
6008 - Insufficient liquidity
InterestRateIsOutOfRange = 6_009
6009 - Interest rate is out of range
LeverageIsOutOfRange = 6_010
6010 - Leverage is out or range
LeftoversExceeded = 6_011
6011 - Leftovers percentage exceeded the maximum allowed value
LimitOrderExecutionFeeIsOutOfRange = 6_012
6012 - Limit order execution fee is out of range
LiquidationFeeIsOutOfRange = 6_013
6013 - Liquidation fee is out of range
LiquidationThresholdIsOutOfRange = 6_014
6014 - Liquidation threshold is out of range
LiquidityZero = 6_015
6015 - Liquidity amount must be greater than zero.
MarketDisabled = 6_016
6016 - Market is disabled
MarketDebtLimitExceeded = 6_017
6017 - Exceed the maximum allowed debt for the market
MathOverflow = 6_018
6018 - Math overflow
MathUnderflow = 6_019
6019 - Math underflow
NoExtraAccountsForTransferHook = 6_020
6020 - Unable to call transfer hook without extra accounts
OracleStalePrice = 6_021
6021 - Oracle price is stale
OraclePriceDeviationThresholdExceeded = 6_022
6022 - OraclePriceDeviationThresholdExceeded
OraclePriceDeviationThresholdOutOfRange = 6_023
6023 - OraclePriceDeviationThresholdOutOfRange
PartialFillError = 6_024
6024 - Trade resulted in partial fill
PositionIsHealthy = 6_025
6025 - Position is healthy
PositionIsLiquidated = 6_026
6026 - Position is already liquidated
PositionIsUnhealthy = 6_027
6027 - Position is unhealthy
PositionNotEmpty = 6_028
6028 - Position is not empty
ProtocolFeeIsOutOfRange = 6_029
6029 - Protocol fee is out of range
RebalanceConditionsNotMet = 6_030
6030 - Rebalance conditions are not met
RemainingAccountsDuplicatedAccountsType = 6_031
6031 - Same accounts type is provided more than once
RemainingAccountsInvalidSlice = 6_032
6032 - Invalid remaining accounts
RemainingAccountsInvalidSliceLength = 6_033
6033 - Invalid remaining accounts slice length
RemainingAccountsInsufficient = 6_034
6034 - Insufficient remaining accounts
RequiredRemainingAccountNotProvided = 6_035
6035 - Required remaining account is not provided
SolverFailedToFindRoot = 6_036
6036 - Swap equation solver failed to t find the root
SqrtPriceOutOfBounds = 6_037
6037 - Provided sqrt price out of bounds
SupplyLimitExceeded = 6_038
6038 - Lending vault supply limit exceeded
Suspended = 6_039
6039 - Instruction is suspended
SwapSlippageExceeded = 6_040
6040 - Maximum allowed swap slippage is exceeded
SwapSlippageIsOutOfRange = 6_041
6041 - Provided swap slippage value is out of range
SwapToPositionRatioEstimationFailed = 6_042
6042 - Swap to position ratio estimation failed
SwapQuoteNotEqualToActualSwapAmount = 6_043
6043 - Swap quote amount is not equal to the actual swap amount
TickIndexOfBounds = 6_044
6044 - Tick index is out of bounds
TransferFeeCalculationError = 6_045
6045 - Transfer fee calculation failed
TypeCastOverflow = 6_046
6046 - Type cast overflow
UnableToLoadAccountData = 6_047
6047 - Unable to load the account data
UnableToDeserializeAccountData = 6_048
6048 - Unable to deserialize the account data
UnexpectedValue = 6_049
6049 - Unexpected value
UnsupportedTokenMint = 6_050
6050 - Token mint has unsupported attributes
VaultNotInitialized = 6_051
6051 - Lending vault is not initialized
WithdrawRequestExceedsUserBalance = 6_052
6052 - Withdraw request the exceeds user balance
ZeroPriceRange = 6_053
6053 - Zero price range: the lower price is equal to upper price)
ZeroTradableAmount = 6_054
6054 - There are no tradable amount to swap.
ZeroYield = 6_055
6055 - Collected yield is zero
RaydiumInvalidFirstTickArrayAccount = 6_056
6056 - RaydiumInvalidFirstTickArrayAccount
RaydiumInvalidTickArray = 6_057
6057 - RaydiumInvalidTickArray
RaydiumInvaildTickIndex = 6_058
6058 - RaydiumInvaildTickIndex
RaydiumMaxTokenOverflow = 6_059
6059 - RaydiumMaxTokenOverflow
RaydiumNotEnoughTickArrayAccount = 6_060
6060 - RaydiumNotEnoughTickArrayAccount
RaydiumSqrtPriceLimitOverflow = 6_061
6061 - RaydiumSqrtPriceLimitOverflow
RaydiumZeroAmountSpecified = 6_062
6062 - RaydiumZeroAmountSpecified
Trait Implementations§
Source§impl<T> DecodeError<T> for TunaError
impl<T> DecodeError<T> for TunaError
Source§fn decode_custom_error_to_enum(custom: u32) -> Option<E>where
E: FromPrimitive,
fn decode_custom_error_to_enum(custom: u32) -> Option<E>where
E: FromPrimitive,
num_traits::FromPrimitive insteadSource§impl Error for TunaError
impl Error for TunaError
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 FromPrimitive for TunaError
impl FromPrimitive for TunaError
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 PrintProgramError for TunaError
impl PrintProgramError for TunaError
impl Eq for TunaError
impl StructuralPartialEq for TunaError
Auto Trait Implementations§
impl Freeze for TunaError
impl RefUnwindSafe for TunaError
impl Send for TunaError
impl Sync for TunaError
impl Unpin for TunaError
impl UnwindSafe for TunaError
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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