dubp_common/
errors.rs

1//! Define DUBP Documents errors types.
2
3use crate::*;
4
5#[derive(Clone, Debug, Error, PartialEq)]
6#[error("{0}")]
7pub struct StringErr(pub String);
8
9/// List of possible errors for document signatures verification.
10#[derive(Debug, Error, Eq, PartialEq)]
11pub enum DocumentSigsErr {
12    /// Not same amount of issuers and signatures.
13    /// (issuers count, signatures count)
14    #[error("Not same amount of issuers and signatures: found {0} issuers and {1} signatures.")]
15    IncompletePairs(usize, usize),
16    /// Signatures don't match.
17    /// List of mismatching pairs indexes.
18    #[error("Signatures don\'t match: {0:?}")]
19    Invalid(HashMap<usize, SigError>),
20}