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}