From 20683ca8244717ff919a6724d2625109c0218ed8 Mon Sep 17 00:00:00 2001 From: Elias Projahn Date: Sun, 25 Apr 2021 22:56:16 +0200 Subject: [PATCH] database: Add parsing error --- database/src/error.rs | 6 +++--- database/src/medium.rs | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/database/src/error.rs b/database/src/error.rs index a0b7a87..d0b1c8a 100644 --- a/database/src/error.rs +++ b/database/src/error.rs @@ -13,14 +13,14 @@ pub enum Error { #[error("Missing item dependency ({0} {1})")] MissingItem(&'static str, String), + #[error("Failed to parse {0} from '{1}'")] + ParsingError(&'static str, String), + #[error(transparent)] SendError(#[from] std::sync::mpsc::SendError), #[error(transparent)] ReceiveError(#[from] tokio::sync::oneshot::error::RecvError), - - #[error("Database error: {0}")] - Other(String), } /// Return type for database methods. diff --git a/database/src/medium.rs b/database/src/medium.rs index bcf1ac1..d6c12f7 100644 --- a/database/src/medium.rs +++ b/database/src/medium.rs @@ -264,10 +264,10 @@ impl Database { for part_index in work_parts { if !part_index.is_empty() { - let index = str::parse(part_index).or(Err(Error::Other(format!( - "Failed to parse part index from '{}'.", - row.work_parts - ))))?; + let index = str::parse(part_index).or(Err(Error::ParsingError( + "part index", + String::from(part_index), + )))?; part_indices.push(index); }