Files
keep/src/services/error.rs
Andrew Phillips f6454d94f3 refactor: remove unused code and fields
Co-authored-by: aider (openai/andrew/openrouter/qwen/qwen3-coder) <aider@aider.chat>
2025-08-25 18:26:01 -03:00

35 lines
807 B
Rust

use thiserror::Error;
#[derive(Error, Debug)]
pub enum CoreError {
#[error("Database error: {0}")]
Database(#[from] rusqlite::Error),
#[error("I/O error: {0}")]
Io(#[from] std::io::Error),
#[error("Item not found with id {0}")]
ItemNotFound(i64),
#[error("Item not found")]
ItemNotFoundGeneric,
#[error("Invalid input: {0}")]
InvalidInput(String),
#[error("Compression error: {0}")]
Compression(String),
#[error(transparent)]
Other(#[from] anyhow::Error),
}
impl From<rusqlite_migration::Error> for CoreError {
fn from(err: rusqlite_migration::Error) -> Self {
match err {
rusqlite_migration::Error::RusqliteError { err: e, .. } => CoreError::Database(e),
e => CoreError::Other(e.into()),
}
}
}