error.rs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. //! Redb Error
  2. use std::num::ParseIntError;
  3. use thiserror::Error;
  4. /// Redb Database Error
  5. #[derive(Debug, Error)]
  6. pub enum Error {
  7. /// Redb Error
  8. #[error(transparent)]
  9. Redb(#[from] redb::Error),
  10. /// Redb Database Error
  11. #[error(transparent)]
  12. Database(#[from] redb::DatabaseError),
  13. /// Redb Transaction Error
  14. #[error(transparent)]
  15. Transaction(#[from] redb::TransactionError),
  16. /// Redb Commit Error
  17. #[error(transparent)]
  18. Commit(#[from] redb::CommitError),
  19. /// Redb Table Error
  20. #[error(transparent)]
  21. Table(#[from] redb::TableError),
  22. /// Redb Storage Error
  23. #[error(transparent)]
  24. Storage(#[from] redb::StorageError),
  25. /// Serde Json Error
  26. #[error(transparent)]
  27. Serde(#[from] serde_json::Error),
  28. /// Parse int Error
  29. #[error(transparent)]
  30. ParseInt(#[from] ParseIntError),
  31. /// CDK Database Error
  32. #[error(transparent)]
  33. CDKDatabase(#[from] cdk::cdk_database::Error),
  34. /// CDK Error
  35. #[error(transparent)]
  36. CDK(#[from] cdk::error::Error),
  37. /// NUT02 Error
  38. #[error(transparent)]
  39. CDKNUT02(#[from] cdk::nuts::nut02::Error),
  40. /// NUT00 Error
  41. #[error(transparent)]
  42. CDKNUT00(#[from] cdk::nuts::nut00::Error),
  43. /// Unknown Mint Info
  44. #[error("Unknown Mint Info")]
  45. UnknownMintInfo,
  46. /// Unknown Proof Y
  47. #[error("Unknown Proof Y")]
  48. UnknownY,
  49. /// Unknown Database Version
  50. #[error("Unknown Database Version")]
  51. UnknownDatabaseVersion,
  52. }
  53. impl From<Error> for cdk::cdk_database::Error {
  54. fn from(e: Error) -> Self {
  55. Self::Database(Box::new(e))
  56. }
  57. }