#[derive(Debug, thiserror::Error)]
pub enum SoushiError {
#[error("script error: {0}")]
ScriptError(String),
#[error("io: {0}")]
IoError(#[from] std::io::Error),
#[error("no such script: {0}")]
NoSuchScript(String),
}
impl From<Box<rhai::EvalAltResult>> for SoushiError {
fn from(err: Box<rhai::EvalAltResult>) -> Self {
Self::ScriptError(err.to_string())
}
}
impl From<rhai::ParseError> for SoushiError {
fn from(err: rhai::ParseError) -> Self {
Self::ScriptError(err.to_string())
}
}