epoint_io/
error.rs

1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum Error {
5    #[error(transparent)]
6    EpointIoE57Error(#[from] crate::e57::error::Error),
7
8    #[error(transparent)]
9    EpointError(#[from] epoint_core::Error),
10    #[error(transparent)]
11    EcoordIo(#[from] ecoord::io::Error),
12    #[error(transparent)]
13    Io(#[from] std::io::Error),
14    #[error(transparent)]
15    Parsing(#[from] serde_json::Error),
16    #[error(transparent)]
17    Polars(#[from] polars::error::PolarsError),
18    #[error(transparent)]
19    Las(#[from] las::Error),
20    #[error(transparent)]
21    StdSystemTimeError(#[from] std::time::SystemTimeError),
22
23    #[error("file extension is invalid")]
24    NoDirectoryPath(),
25    #[error("file extension is invalid")]
26    NoFileExtension(),
27    #[error("file extension is invalid")]
28    NoFileName(),
29    #[error("file extension is invalid")]
30    FileNotFound(String),
31    #[error("file extension is invalid")]
32    FormatNotSupported(String),
33
34    #[error("file extension `{0}` is invalid")]
35    InvalidFileExtension(String),
36    #[error("file extension `{0}` is unknown")]
37    UnknownFileExtension(String),
38    #[error("invalid version of major={major} and minor={minor}")]
39    InvalidVersion { major: u8, minor: u8 },
40
41    #[error("file extension is invalid")]
42    PointDataFileNotFound(),
43}