kobo_db_tools/export/
error.rs1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum ExportError {
5 #[error("CSV error: {0}")]
6 Csv(#[from] csv::Error),
7 #[error("I/O error: {0}")]
8 Io(#[from] std::io::Error),
9 #[error("UTF-8 error: {0}")]
10 Utf8(#[from] std::string::FromUtf8Error),
11 #[error("CSV into inner error: {0}")]
12 CsvIntoInner(Box<csv::IntoInnerError<csv::Writer<Vec<u8>>>>),
13 #[error("serde_json::to_string error: {0}")]
14 JsonToString(#[from] serde_json::Error),
15}
16
17impl From<csv::IntoInnerError<csv::Writer<Vec<u8>>>> for ExportError {
18 fn from(err: csv::IntoInnerError<csv::Writer<Vec<u8>>>) -> Self {
19 Self::CsvIntoInner(Box::new(err))
20 }
21}