use thiserror::Error as ThisError;
pub type UserEngineResult<T> = Result<T, Error>;
#[derive(ThisError, Debug)]
pub enum Error {
#[error("the lua userscript environment is not running")]
NoLuaVm,
#[error("the userscript scan engine service is not running")]
NoUserEngine,
#[error("failed to invoke userscript engine {engine}: {source}")]
EngineInvocation {
engine: String,
source: mlua::Error,
},
}
impl Error {
#[must_use]
pub fn engine_invocation(engine: String, source: mlua::Error) -> Self {
Self::EngineInvocation { engine, source }
}
}