error_kit/
types.rs

1use super::messages;
2
3#[derive(Debug, thiserror::Error)]
4pub enum CommonError {
5    #[error("{}", messages::CACHE_LOCK_ERROR)]
6    CacheLock,
7
8    #[error("{prefix}: {detail}", prefix = messages::SERIALIZATION_ERROR_PREFIX, detail = .0)]
9    Serialization(&'static str),
10
11    #[error("{prefix}: {detail}", prefix = messages::DESERIALIZATION_ERROR_PREFIX, detail = .0)]
12    Deserialization(&'static str),
13
14    #[error("{prefix}: {detail}", prefix = messages::IO_ERROR_PREFIX, detail = .0)]
15    Io(#[from] std::io::Error),
16
17    #[error("{prefix}: {detail}", prefix = messages::UNSUPPORTED_FILE_TYPE_PREFIX, detail = .0)]
18    UnsupportedFileType(&'static str),
19
20    #[error("{}", messages::DATA_NOT_FOUND)]
21    DataNotFound,
22
23    #[error("{}", messages::UNABLE_TO_FRESH_DATA)]
24    UnableToFreshData,
25
26    #[error("{}", messages::STALE_INTERNAL_NONE)]
27    StaleInternalNone,
28
29    #[error("{}", messages::TIMEOUT_EXCEEDED)]
30    Timeout,
31
32    #[error("{}", messages::FAILED_TO_GET_FILENAME)]
33    FilenameError,
34
35    #[error("{}", messages::INVALID_FILENAME_ENCODING)]
36    InvalidFilenameEncoding,
37
38    #[error("{}", messages::MISSING_TIMESTAMP_SEPARATOR)]
39    MissingTimestampSeparator,
40
41    #[error("{}", messages::MISSING_FILE_EXTENSION)]
42    MissingFileExtension,
43
44    #[error("{}", messages::FAILED_TO_PARSE_TIMESTAMP)]
45    TimestampParseError,
46}