use std::io;
use thiserror::Error;
#[derive(Debug, Error)]
pub enum DataError {
#[error("{0}")]
Validation(String),
#[error("{0}")]
Cast(String),
#[error("{0}")]
Adapter(String),
#[error("{0}")]
Migration(String),
#[error("{0}")]
Query(String),
#[error("{0}")]
Config(String),
#[error("{0}")]
Integration(String),
#[error(transparent)]
Io(#[from] io::Error),
#[error(transparent)]
Json(#[from] serde_json::Error),
}
pub type DataResult<T> = Result<T, DataError>;