pub trait Analyzer: Send + Sync {
// Required methods
fn parse(&self, content: &str, path: PathBuf) -> Result<Ast>;
fn analyze(&self, ast: &Ast) -> FileMetrics;
fn language(&self) -> Language;
}pub trait Analyzer: Send + Sync {
// Required methods
fn parse(&self, content: &str, path: PathBuf) -> Result<Ast>;
fn analyze(&self, ast: &Ast) -> FileMetrics;
fn language(&self) -> Language;
}