refactor: improve error-handling, fix lints, & update criterion

This commit is contained in:
rzmk 2024-06-20 23:18:38 -04:00
parent f435642358
commit c0b76fa543
No known key found for this signature in database
6 changed files with 58 additions and 118 deletions

View file

@ -13,5 +13,5 @@ crate-type = ["cdylib", "rlib"]
anyhow = "1.0.86"
csv = "1.3.0"
czv = { path = "../czv" }
pyo3 = { version = "0.21.2", features = ["extension-module"] }
pyo3 = { version = "0.21.2", features = ["anyhow", "extension-module"] }
thiserror = "1.0.61"

View file

@ -8,25 +8,25 @@ pub struct CzvError(anyhow::Error);
impl From<OGError> for CzvError {
fn from(value: OGError) -> Self {
value.into()
Self(anyhow::anyhow!(value))
}
}
impl From<pyo3::PyErr> for CzvError {
fn from(value: pyo3::PyErr) -> Self {
value.into()
Self(anyhow::anyhow!(value))
}
}
impl From<csv::Error> for CzvError {
fn from(value: csv::Error) -> Self {
value.into()
Self(anyhow::anyhow!(value))
}
}
impl From<CzvError> for pyo3::PyErr {
fn from(value: CzvError) -> Self {
value.into()
anyhow::anyhow!(value).into()
}
}