1use std::fmt::Display;
4
5#[derive(Debug)]
7pub enum Error {
8 IOError(std::io::Error),
10 DBCorrupt(Box<Error>),
12 ReadOnly,
14 InvalidLayer,
16 OutOfBounds,
18 Custom(String),
20}
21
22impl std::error::Error for Error {}
23impl Display for Error {
24 #[inline]
25 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
26 write!(f, "{self:?}")
27 }
28}
29
30impl From<std::io::Error> for Error {
31 #[inline]
32 fn from(value: std::io::Error) -> Self {
33 Self::IOError(value)
34 }
35}