
Blog posts are going to be constructed of multiple documents each forming their own page. This will allow me to link to supporting documents without having to promote them to their own pages.
91 lines
2.2 KiB
Rust
91 lines
2.2 KiB
Rust
use std::str::Utf8Error;
|
|
use std::string::FromUtf8Error;
|
|
|
|
#[derive(Debug)]
|
|
pub(crate) enum CustomError {
|
|
Static(&'static str),
|
|
IO(std::io::Error),
|
|
TomlSerialize(toml::ser::Error),
|
|
TomlDeserialize(toml::de::Error),
|
|
WalkDir(walkdir::Error),
|
|
Tokio(tokio::task::JoinError),
|
|
Serde(serde_json::Error),
|
|
Utf8(Utf8Error),
|
|
FromUtf8(FromUtf8Error),
|
|
DusterCompile(duster::renderer::CompileError),
|
|
DusterRender(duster::renderer::RenderError),
|
|
PathStripPrefix(std::path::StripPrefixError),
|
|
}
|
|
|
|
impl From<std::io::Error> for CustomError {
|
|
fn from(value: std::io::Error) -> Self {
|
|
CustomError::IO(value)
|
|
}
|
|
}
|
|
|
|
impl From<&'static str> for CustomError {
|
|
fn from(value: &'static str) -> Self {
|
|
CustomError::Static(value)
|
|
}
|
|
}
|
|
|
|
impl From<toml::ser::Error> for CustomError {
|
|
fn from(value: toml::ser::Error) -> Self {
|
|
CustomError::TomlSerialize(value)
|
|
}
|
|
}
|
|
|
|
impl From<toml::de::Error> for CustomError {
|
|
fn from(value: toml::de::Error) -> Self {
|
|
CustomError::TomlDeserialize(value)
|
|
}
|
|
}
|
|
|
|
impl From<walkdir::Error> for CustomError {
|
|
fn from(value: walkdir::Error) -> Self {
|
|
CustomError::WalkDir(value)
|
|
}
|
|
}
|
|
|
|
impl From<tokio::task::JoinError> for CustomError {
|
|
fn from(value: tokio::task::JoinError) -> Self {
|
|
CustomError::Tokio(value)
|
|
}
|
|
}
|
|
|
|
impl From<serde_json::Error> for CustomError {
|
|
fn from(value: serde_json::Error) -> Self {
|
|
CustomError::Serde(value)
|
|
}
|
|
}
|
|
|
|
impl From<Utf8Error> for CustomError {
|
|
fn from(value: Utf8Error) -> Self {
|
|
CustomError::Utf8(value)
|
|
}
|
|
}
|
|
|
|
impl From<FromUtf8Error> for CustomError {
|
|
fn from(value: FromUtf8Error) -> Self {
|
|
CustomError::FromUtf8(value)
|
|
}
|
|
}
|
|
|
|
impl From<duster::renderer::CompileError> for CustomError {
|
|
fn from(value: duster::renderer::CompileError) -> Self {
|
|
CustomError::DusterCompile(value)
|
|
}
|
|
}
|
|
|
|
impl From<duster::renderer::RenderError> for CustomError {
|
|
fn from(value: duster::renderer::RenderError) -> Self {
|
|
CustomError::DusterRender(value)
|
|
}
|
|
}
|
|
|
|
impl From<std::path::StripPrefixError> for CustomError {
|
|
fn from(value: std::path::StripPrefixError) -> Self {
|
|
CustomError::PathStripPrefix(value)
|
|
}
|
|
}
|