fluxus_utils/
error_converters.rs

1use crate::models::StreamError;
2use csv;
3use serde_json;
4
5/// Error converter for CSV errors
6impl From<csv::Error> for StreamError {
7    fn from(err: csv::Error) -> Self {
8        StreamError::Serialization(err.to_string())
9    }
10}
11
12/// Error converter for UTF-8 errors
13impl From<std::string::FromUtf8Error> for StreamError {
14    fn from(err: std::string::FromUtf8Error) -> Self {
15        StreamError::Serialization(err.to_string())
16    }
17}
18
19/// Error converter for serde_json errors
20impl From<serde_json::Error> for StreamError {
21    fn from(err: serde_json::Error) -> Self {
22        StreamError::Serialization(err.to_string())
23    }
24}
25
26/// Error converter for CSV writer's IntoInnerError
27impl<T> From<csv::IntoInnerError<T>> for StreamError {
28    fn from(err: csv::IntoInnerError<T>) -> Self {
29        StreamError::Serialization(err.to_string())
30    }
31}