Skip to main content

briefcase_core/
lib.rs

1pub mod cost;
2pub mod drift;
3pub mod models;
4pub mod replay;
5pub mod sanitization;
6
7// Storage module only available with storage features
8#[cfg(any(feature = "sqlite-storage", feature = "lakefs-storage"))]
9pub mod storage;
10
11pub use cost::*;
12pub use drift::*;
13pub use models::*;
14pub use replay::*;
15pub use sanitization::*;
16
17use thiserror::Error;
18
19#[derive(Error, Debug)]
20pub enum BriefcaseError {
21    #[cfg(any(feature = "sqlite-storage", feature = "lakefs-storage"))]
22    #[error("Storage error: {0}")]
23    Storage(#[from] storage::StorageError),
24
25    #[error("Replay error: {0}")]
26    Replay(#[from] replay::ReplayError),
27
28    #[error("Cost calculation error: {0}")]
29    Cost(#[from] cost::CostError),
30
31    #[error("Sanitization error: {0}")]
32    Sanitization(#[from] sanitization::SanitizationError),
33
34    #[error("Serialization error: {0}")]
35    Serialization(#[from] serde_json::Error),
36
37    #[error("Invalid input: {0}")]
38    InvalidInput(String),
39}