mirror of
https://github.com/arnaucube/Nova.git
synced 2026-01-12 00:51:28 +01:00
use thiserror (#135)
This commit is contained in:
@@ -1,31 +1,44 @@
|
||||
//! This module defines errors returned by the library.
|
||||
use core::fmt::Debug;
|
||||
use thiserror::Error;
|
||||
|
||||
/// Errors returned by Nova
|
||||
#[derive(Clone, Debug, Eq, PartialEq)]
|
||||
#[derive(Clone, Debug, Eq, PartialEq, Error)]
|
||||
pub enum NovaError {
|
||||
/// returned if the supplied row or col in (row,col,val) tuple is out of range
|
||||
#[error("InvalidIndex")]
|
||||
InvalidIndex,
|
||||
/// returned if the supplied input is not even-sized
|
||||
#[error("OddInputLength")]
|
||||
OddInputLength,
|
||||
/// returned if the supplied input is not of the right length
|
||||
#[error("InvalidInputLength")]
|
||||
InvalidInputLength,
|
||||
/// returned if the supplied witness is not of the right length
|
||||
#[error("InvalidWitnessLength")]
|
||||
InvalidWitnessLength,
|
||||
/// returned if the supplied witness is not a satisfying witness to a given shape and instance
|
||||
#[error("UnSat")]
|
||||
UnSat,
|
||||
/// returned when the supplied compressed commitment cannot be decompressed
|
||||
#[error("DecompressionError")]
|
||||
DecompressionError,
|
||||
/// returned if proof verification fails
|
||||
#[error("ProofVerifyError")]
|
||||
ProofVerifyError,
|
||||
/// returned if the provided number of steps is zero
|
||||
#[error("InvalidNumSteps")]
|
||||
InvalidNumSteps,
|
||||
/// returned when an invalid inner product argument is provided
|
||||
#[error("InvalidIPA")]
|
||||
InvalidIPA,
|
||||
/// returned when an invalid sum-check proof is provided
|
||||
#[error("InvalidSumcheckProof")]
|
||||
InvalidSumcheckProof,
|
||||
/// returned when the initial input to an incremental computation differs from a previously declared arity
|
||||
#[error("InvalidInitialInputLength")]
|
||||
InvalidInitialInputLength,
|
||||
/// returned when the step execution produces an output whose length differs from a previously declared arity
|
||||
#[error("InvalidStepOutputLength")]
|
||||
InvalidStepOutputLength,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user