feat: encapsulate rusqlite::Error into sqlite::FailedTo (ExecuteStatement)

This commit is contained in:
2026-02-27 09:58:50 +01:00
parent 302ede497f
commit b48ae74a47
2 changed files with 5 additions and 5 deletions

View File

@@ -38,7 +38,7 @@ fn write_attribute(
INSERT_ATTRIBUTE_STATEMENT_TEMPLATE.replace("{column}", column); INSERT_ATTRIBUTE_STATEMENT_TEMPLATE.replace("{column}", column);
transaction transaction
.execute(&insert_attribute_statement, attribute_values) .execute(&insert_attribute_statement, attribute_values)
.map_err(|_| sqlite::FailedTo::ExecuteStatement)?; .map_err(|sqlite_error| sqlite::FailedTo::ExecuteStatement(sqlite_error))?;
Ok(()) Ok(())
} }
@@ -46,7 +46,7 @@ fn delete_entity(entity: &Entity, transaction: &rusqlite::Transaction) -> Result
let entity_id = [&entity.id]; let entity_id = [&entity.id];
transaction transaction
.execute(DELETE_ENTITY_STATEMENT, entity_id) .execute(DELETE_ENTITY_STATEMENT, entity_id)
.map_err(|_| sqlite::FailedTo::ExecuteStatement)?; .map_err(|sqlite_error| sqlite::FailedTo::ExecuteStatement(sqlite_error))?;
Ok(()) Ok(())
} }
@@ -55,10 +55,10 @@ fn write_entity(entity: &Entity, transaction: &rusqlite::Transaction) -> Result<
let entity_values = (&entity.id, &entity.class, &entity.subclass, entity.ref_date); let entity_values = (&entity.id, &entity.class, &entity.subclass, entity.ref_date);
transaction transaction
.execute(DELETE_ENTITY_STATEMENT, entity_id) .execute(DELETE_ENTITY_STATEMENT, entity_id)
.map_err(|_| sqlite::FailedTo::ExecuteStatement)?; .map_err(|sqlite_error| sqlite::FailedTo::ExecuteStatement(sqlite_error))?;
transaction transaction
.execute(INSERT_ENTITY_STATEMENT, entity_values) .execute(INSERT_ENTITY_STATEMENT, entity_values)
.map_err(|_| sqlite::FailedTo::ExecuteStatement)?; .map_err(|sqlite_error| sqlite::FailedTo::ExecuteStatement(sqlite_error))?;
for attribute in entity.attributes.values() { for attribute in entity.attributes.values() {
write_attribute(attribute, entity, transaction)?; write_attribute(attribute, entity, transaction)?;
} }

View File

@@ -12,7 +12,7 @@ pub enum FailedTo {
/// Failed to execute a SQL query. /// Failed to execute a SQL query.
ExecuteQuery(rusqlite::Error), ExecuteQuery(rusqlite::Error),
/// Failed to execute a prepared SQL statement. /// Failed to execute a prepared SQL statement.
ExecuteStatement, ExecuteStatement(rusqlite::Error),
/// Failed to open a connection to the SQLite database. /// Failed to open a connection to the SQLite database.
OpenConnection, OpenConnection,
/// Failed to prepare a SQL statement for execution. /// Failed to prepare a SQL statement for execution.