From 302ede497f7c0d138e28d1ce752d8c8a83d84ede Mon Sep 17 00:00:00 2001 From: davidemazzocchi Date: Fri, 27 Feb 2026 09:55:55 +0100 Subject: [PATCH] feat: encapsulate rusqlite::Error into sqlite::FailedTo (ExecuteQuery) --- 01.workspace/heave/src/fun/sqlite_load_attributes.rs | 2 +- 01.workspace/heave/src/fun/sqlite_load_by_class.rs | 2 +- 01.workspace/heave/src/fun/sqlite_load_by_filter.rs | 2 +- 01.workspace/heave/src/fun/sqlite_load_by_id.rs | 2 +- 01.workspace/heave/src/str/sqlite_failed_to.rs | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/01.workspace/heave/src/fun/sqlite_load_attributes.rs b/01.workspace/heave/src/fun/sqlite_load_attributes.rs index ffce4bb..3f11b77 100644 --- a/01.workspace/heave/src/fun/sqlite_load_attributes.rs +++ b/01.workspace/heave/src/fun/sqlite_load_attributes.rs @@ -20,7 +20,7 @@ pub fn run(transaction: &Transaction, entity: &mut Entity) -> Result<(), FailedT .map_err(|_| sqlite::FailedTo::PrepareStatement)?; let attributes = select_attributes_statement .query_map([&entity.id], sqlite::map::row_to_attribute) - .map_err(|_| sqlite::FailedTo::ExecuteQuery)?; + .map_err(|sqlite_error| sqlite::FailedTo::ExecuteQuery(sqlite_error))?; for attribute in attributes { let attribute = attribute.map_err(|_| FailedTo::MapAttribute)?; entity.attributes.insert(attribute.id.clone(), attribute); diff --git a/01.workspace/heave/src/fun/sqlite_load_by_class.rs b/01.workspace/heave/src/fun/sqlite_load_by_class.rs index ba281dc..9b1e9ab 100644 --- a/01.workspace/heave/src/fun/sqlite_load_by_class.rs +++ b/01.workspace/heave/src/fun/sqlite_load_by_class.rs @@ -18,7 +18,7 @@ pub fn run(path: &path::Path, entity_class: &str) -> Result, FailedT .map_err(|_| sqlite::FailedTo::PrepareStatement)?; let result = statement .query_map([entity_class], sqlite::map::row_to_entity) - .map_err(|_| sqlite::FailedTo::ExecuteQuery)?; + .map_err(|sqlite_error| sqlite::FailedTo::ExecuteQuery(sqlite_error))?; for entity in result { let mut entity = entity.map_err(|_| FailedTo::MapEntity)?; sqlite::load::attributes(&transaction, &mut entity)?; diff --git a/01.workspace/heave/src/fun/sqlite_load_by_filter.rs b/01.workspace/heave/src/fun/sqlite_load_by_filter.rs index bf5536d..5a550b8 100644 --- a/01.workspace/heave/src/fun/sqlite_load_by_filter.rs +++ b/01.workspace/heave/src/fun/sqlite_load_by_filter.rs @@ -16,7 +16,7 @@ pub fn run(path: &path::Path, filter: &Filter) -> Result, FailedTo> .map_err(|_| sqlite::FailedTo::PrepareStatement)?; let result = statement .query_map(¶ms[..], sqlite::map::row_to_entity) - .map_err(|_| sqlite::FailedTo::ExecuteQuery)?; + .map_err(|sqlite_error| sqlite::FailedTo::ExecuteQuery(sqlite_error))?; for entity in result { let mut entity = entity.map_err(|_| FailedTo::MapEntity)?; sqlite::load::attributes(&transaction, &mut entity)?; diff --git a/01.workspace/heave/src/fun/sqlite_load_by_id.rs b/01.workspace/heave/src/fun/sqlite_load_by_id.rs index 5284df0..83624c3 100644 --- a/01.workspace/heave/src/fun/sqlite_load_by_id.rs +++ b/01.workspace/heave/src/fun/sqlite_load_by_id.rs @@ -15,7 +15,7 @@ pub fn run(path: &path::Path, entity_id: &str) -> Result, FailedT let mut entity = transaction .query_one(SELECT_ENTITY_BY_ID, [entity_id], sqlite::map::row_to_entity) .optional() - .map_err(|_| sqlite::FailedTo::ExecuteQuery)?; + .map_err(|sqlite_error| sqlite::FailedTo::ExecuteQuery(sqlite_error))?; if let Some(ref mut entity) = entity { sqlite::load::attributes(&transaction, entity)?; entity.state = EntityState::Loaded; diff --git a/01.workspace/heave/src/str/sqlite_failed_to.rs b/01.workspace/heave/src/str/sqlite_failed_to.rs index 5bff5e4..3024ba9 100644 --- a/01.workspace/heave/src/str/sqlite_failed_to.rs +++ b/01.workspace/heave/src/str/sqlite_failed_to.rs @@ -10,7 +10,7 @@ pub enum FailedTo { /// Failed to execute a batch of SQL statements. ExecuteBatch(rusqlite::Error), /// Failed to execute a SQL query. - ExecuteQuery, + ExecuteQuery(rusqlite::Error), /// Failed to execute a prepared SQL statement. ExecuteStatement, /// Failed to open a connection to the SQLite database.