Skip to main content

tycho_simulation/evm/protocol/cowamm/
error.rs

1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum CowAMMError {
5    #[error("Token in does not exist")]
6    TokenInDoesNotExist,
7    #[error("Token out does not exist")]
8    TokenOutDoesNotExist,
9    #[error("Division by zero")]
10    DivZero,
11    #[error("Error during division")]
12    DivInternal,
13    #[error("Addition overflow")]
14    AddOverflow,
15    #[error("Subtraction underflow")]
16    SubUnderflow,
17    #[error("Multiplication overflow")]
18    MulOverflow,
19    #[error("Invalid pool ratio")]
20    InvalidPoolRatio,
21    #[error("Invalid token amount in")]
22    InvalidTokenAmountIn,
23    #[error("Token amount in above max")]
24    TokenAmountInAboveMax,
25    #[error("Invalid token amount out")]
26    InvalidTokenAmountOut,
27    #[error("Token amount out below min")]
28    TokenAmountOutBelowMinAmountOut,
29}