quarks_zk/
errors.rs

1//! Error types for Quarks implementation
2
3use thiserror::Error;
4
5#[derive(Error, Debug)]
6pub enum QuarksError {
7    #[error("Invalid field element: {0}")]
8    InvalidFieldElement(String),
9    
10    #[error("R1CS verification failed: {0}")]
11    R1CSVerificationFailed(String),
12    
13    #[error("Polynomial evaluation error: {0}")]
14    PolynomialError(String),
15    
16    #[error("Sum-check protocol failed: {0}")]
17    SumCheckFailed(String),
18    
19    #[error("Commitment verification failed: {0}")]
20    CommitmentFailed(String),
21    
22    #[error("Invalid proof: {0}")]
23    InvalidProof(String),
24    
25    #[error("Serialization error: {0}")]
26    SerializationError(String),
27    
28    #[error("Invalid parameter: {0}")]
29    InvalidParameter(String),
30}
31
32pub type Result<T> = std::result::Result<T, QuarksError>;
33