1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use thiserror::Error;

#[derive(Error, Debug)]
pub enum MerkleTreeError {
    #[error("{0} not found")]
    NotFoundError(String),
    #[error("Failed to order merkle tree nodes")]
    OrderingError,
    #[error("The Merkle tree is empty")]
    EmptyMerkleTreeError,
    #[error("Failed to retrieve the node at index {0}")]
    IndexError(String),
    #[error("Invalid format error: {0}")]
    InvalidFormatError(String),
    #[error("Failed to generate Merkle proof")]
    MerkleProofError,
}