datafusion_tui/app/
error.rs1use datafusion::error::DataFusionError;
19use std::error;
20use std::fmt::{Display, Formatter};
21use std::io;
22use std::result;
23
24pub type Result<T> = result::Result<T, DftError>;
25
26#[derive(Debug)]
27pub enum DftError {
28 DataFusionError(DataFusionError),
29 IoError(io::Error),
30 UiError(String),
31}
32
33impl From<io::Error> for DftError {
34 fn from(e: io::Error) -> Self {
35 DftError::IoError(e)
36 }
37}
38
39impl From<DataFusionError> for DftError {
40 fn from(e: DataFusionError) -> Self {
41 DftError::DataFusionError(e)
42 }
43}
44
45impl Display for DftError {
46 fn fmt(&self, f: &mut Formatter) -> std::fmt::Result {
47 match *self {
48 DftError::DataFusionError(ref desc) => write!(f, "DataFusion error: {}", desc),
49 DftError::IoError(ref desc) => write!(f, "IO error: {}", desc),
50 DftError::UiError(ref text) => write!(f, "UI Error: {}", text),
51 }
52 }
53}
54
55impl error::Error for DftError {}