feat(xatu): add manual inherit lint

This commit was merged in pull request #86.
This commit is contained in:
2026-09-19 21:27:23 -04:00
parent 213cd84642
commit 4b7d3834ab
8 changed files with 77 additions and 111 deletions

View File

@@ -1,7 +1,9 @@
use crate::FileId;
use crate::ast;
use crate::rules::manual_inherit::ManualInherit;
use crate::rules::unquoted_uri::UnquotedUri;
pub mod manual_inherit;
pub mod unquoted_uri;
#[derive(Debug)]
@@ -27,7 +29,6 @@ impl std::fmt::Display for Diagnostic {
}
}
#[expect(dead_code, reason = "retained for planned node rules")]
pub trait NodeRule {
type Node;
@@ -47,7 +48,11 @@ pub trait TokenRule {
}
pub fn run_rules(file: &ast::ParsedFile) -> Vec<Diagnostic> {
let node_diagnostics = file.nodes.iter().flat_map(|_| std::iter::empty());
let node_diagnostics = file
.nodes
.iter()
.flat_map(|node| [run_node_rule::<ManualInherit>(node)])
.flatten();
let token_diagnostics = file
.tokens
.iter()
@@ -63,7 +68,6 @@ pub fn run_rules(file: &ast::ParsedFile) -> Vec<Diagnostic> {
.collect()
}
#[expect(dead_code, reason = "retained for planned node rules")]
fn run_node_rule<R>(node: &ast::Node) -> Option<Finding>
where
R: NodeRule,