Skip to main content

deltalake_mount/
error.rs

1use deltalake_core::errors::DeltaTableError;
2
3pub(crate) type Result<T, E = Error> = std::result::Result<T, E>;
4
5#[derive(thiserror::Error, Debug)]
6pub enum Error {
7    #[allow(dead_code)]
8    #[error("failed to parse config: {0}")]
9    Parse(String),
10
11    /// Unknown configuration key
12    #[error("Unknown configuration key: {0}")]
13    UnknownConfigKey(String),
14
15    #[error("The `allow_unsafe_rename` parameter must be specified")]
16    AllowUnsafeRenameNotSpecified,
17
18    #[error(transparent)]
19    ObjectStore(#[from] object_store::Error),
20}
21
22impl From<Error> for DeltaTableError {
23    fn from(e: Error) -> Self {
24        match e {
25            Error::Parse(msg) => DeltaTableError::Generic(msg),
26            Error::UnknownConfigKey(msg) => DeltaTableError::Generic(msg),
27            Error::AllowUnsafeRenameNotSpecified => DeltaTableError::Generic(
28                "The `allow_unsafe_rename` parameter must be specified".to_string(),
29            ),
30            Error::ObjectStore(e) => DeltaTableError::ObjectStore { source: e },
31        }
32    }
33}