1pub(crate) type Result<T> = std::result::Result<T, MemoryError>;
8
9#[derive(Debug, thiserror::Error)]
10pub enum MemoryError {
11 #[error(transparent)]
12 CoreError(#[from] eryon::Error),
13 #[error(transparent)]
14 Other(#[from] anyhow::Error),
15 #[error("Unknown Error: {0}")]
16 Unknown(String),
17}
18
19impl From<&str> for MemoryError {
20 fn from(s: &str) -> Self {
21 MemoryError::Unknown(s.to_string())
22 }
23}
24
25impl From<String> for MemoryError {
26 fn from(s: String) -> Self {
27 MemoryError::Unknown(s)
28 }
29}
30
31impl From<Box<dyn std::error::Error>> for MemoryError {
32 fn from(e: Box<dyn std::error::Error>) -> Self {
33 MemoryError::Unknown(e.to_string())
34 }
35}