error.rs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. use thiserror::Error;
  2. #[derive(Debug, Error)]
  3. pub enum Error {
  4. /// SQLX Error
  5. #[error(transparent)]
  6. SQLX(#[from] sqlx::Error),
  7. /// Serde Error
  8. #[error(transparent)]
  9. Serde(#[from] serde_json::Error),
  10. /// Wallet Error
  11. #[error(transparent)]
  12. CDKWallet(#[from] cdk::wallet::error::Error),
  13. /// NUT01 Error
  14. #[error(transparent)]
  15. CDKNUT01(#[from] cdk::nuts::nut01::Error),
  16. /// NUT02 Error
  17. #[error(transparent)]
  18. CDKNUT02(#[from] cdk::nuts::nut02::Error),
  19. /// NUT04 Error
  20. #[error(transparent)]
  21. CDKNUT04(#[from] cdk::nuts::nut04::Error),
  22. /// NUT05 Error
  23. #[error(transparent)]
  24. CDKNUT05(#[from] cdk::nuts::nut05::Error),
  25. /// NUT07 Error
  26. #[error(transparent)]
  27. CDKNUT07(#[from] cdk::nuts::nut07::Error),
  28. /// Secret Error
  29. #[error(transparent)]
  30. CDKSECRET(#[from] cdk::secret::Error),
  31. /// BIP32 Error
  32. #[error(transparent)]
  33. BIP32(#[from] bitcoin::bip32::Error),
  34. /// Could Not Initialize Db
  35. #[error("Could not initialize Db")]
  36. CouldNotInitialize,
  37. /// Invalid Database Path
  38. #[error("Invalid database path")]
  39. InvalidDbPath,
  40. }
  41. impl From<Error> for cdk::cdk_database::Error {
  42. fn from(e: Error) -> Self {
  43. Self::Database(Box::new(e))
  44. }
  45. }