use thiserror::Error; #[derive(Error, Debug)] pub enum StagError { #[error("tree-sitter: {0}")] TreeSitter(#[from] tree_sitter::LanguageError), #[error("config error: {0}")] Config(#[from] ConfigError), } #[derive(Error, Debug)] pub enum ConfigError { #[error("no language configured")] MissingLanguage, #[error("no stag query configured")] MissingStagSource, #[error("no source file configured")] MissingSource, #[error("parse error: {0}")] Parse(#[from] tree_sitter_graph::ParseError), #[error("tree-sitter graph execution error: {0}")] TsgExecute(#[from] tree_sitter_graph::ExecutionError), }