datafusion_quality/
error.rs1use snafu::Snafu;
2
3#[derive(Debug, Snafu)]
4#[snafu(visibility(pub))]
5pub enum ValidationError {
6 #[snafu(display("DataFrame error: {}", source))]
7 DataFusion {
8 source: datafusion::error::DataFusionError,
9 },
10
11 #[snafu(display("Validation error: {}", message))]
12 Validation { message: String },
13
14 #[snafu(display("Configuration error: {}", message))]
15 Configuration { message: String },
16
17 #[snafu(display("Column not found: {}", column_name))]
18 ColumnNotFound { column_name: String },
19
20 #[snafu(display("Type mismatch: {}", message))]
21 TypeMismatch { message: String },
22
23 #[snafu(display("Column nullable: {}, expected: {}", column_name, expected))]
24 ColumnNullabilityMismatch { column_name: String, expected: bool },
25
26 #[snafu(display("Schema error: {}", message))]
27 Schema { message: String },
28
29 #[snafu(display("Column error: {}", message))]
30 Column { message: String },
31}
32
33impl From<datafusion::error::DataFusionError> for ValidationError {
34 fn from(source: datafusion::error::DataFusionError) -> Self {
35 Self::DataFusion { source }
36 }
37}