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 EcoordError(#[from] ecoord::Error),
12 #[error(transparent)]
13 EcoordIoError(#[from] ecoord::io::Error),
14 #[error(transparent)]
15 Io(#[from] std::io::Error),
16 #[error(transparent)]
17 Parsing(#[from] serde_json::Error),
18 #[error(transparent)]
19 Polars(#[from] polars::error::PolarsError),
20 #[error(transparent)]
21 Las(#[from] las::Error),
22 #[error(transparent)]
23 StdSystemTimeError(#[from] std::time::SystemTimeError),
24
25 #[error("file extension is invalid")]
26 NoDirectoryPath(),
27 #[error("file extension is invalid")]
28 NoFileExtension(),
29 #[error("file extension is invalid")]
30 NoFileName(),
31 #[error("file extension is invalid")]
32 FileNotFound(String),
33 #[error("file extension is invalid")]
34 FormatNotSupported(String),
35
36 #[error("file extension `{0}` is invalid")]
37 InvalidFileExtension(String),
38 #[error("file extension `{0}` is unknown")]
39 UnknownFileExtension(String),
40 #[error("invalid version of major={major} and minor={minor}")]
41 InvalidVersion { major: u8, minor: u8 },
42
43 #[error("file extension is invalid")]
44 PointDataFileNotFound(),
45}