use alloc::string::String;
use thiserror::Error;
#[derive(Debug, Clone, PartialEq, Eq, Error)]
pub enum GetNotesByIdError {
#[error("internal server error")]
Internal,
#[error("deserialization failed")]
DeserializationFailed,
#[error("note not found")]
NoteNotFound,
#[error("note is not public")]
NoteNotPublic,
#[error("unknown error code {code}: {message}")]
Unknown { code: u8, message: String },
}
impl GetNotesByIdError {
pub fn from_code(code: u8, message: &str) -> Self {
match code {
0 => Self::Internal,
1 => Self::DeserializationFailed,
2 => Self::NoteNotFound,
3 => Self::NoteNotPublic,
_ => Self::Unknown { code, message: String::from(message) },
}
}
}
#[derive(Debug, Clone, PartialEq, Eq, Error)]
pub enum GetNoteScriptByRootError {
#[error("internal server error")]
Internal,
#[error("deserialization failed")]
DeserializationFailed,
#[error("script not found")]
ScriptNotFound,
#[error("unknown error code {code}: {message}")]
Unknown { code: u8, message: String },
}
impl GetNoteScriptByRootError {
pub fn from_code(code: u8, message: &str) -> Self {
match code {
0 => Self::Internal,
1 => Self::DeserializationFailed,
2 => Self::ScriptNotFound,
_ => Self::Unknown { code, message: String::from(message) },
}
}
}
#[derive(Debug, Clone, PartialEq, Eq, Error)]
pub enum CheckNullifiersError {
#[error("internal server error")]
Internal,
#[error("deserialization failed")]
DeserializationFailed,
#[error("unknown error code {code}: {message}")]
Unknown { code: u8, message: String },
}
impl CheckNullifiersError {
pub fn from_code(code: u8, message: &str) -> Self {
match code {
0 => Self::Internal,
1 => Self::DeserializationFailed,
_ => Self::Unknown { code, message: String::from(message) },
}
}
}