use crate::engine::Hit;
use crate::extract::Doc;
use crate::input::Prepared;
use crate::Config;
pub fn render_invisible(
prepared: &Prepared,
doc: &Doc,
config: &Config,
rule_idx: usize,
hits: &mut Vec<Hit>,
) {
let _ = prepared;
for c in &doc.html_comments {
if c.content.is_empty() {
continue;
}
let exempt = config
.deployment
.exempt_comment_markers
.iter()
.any(|m| c.content.starts_with(m.as_str()));
if exempt {
continue;
}
hits.push(Hit::new(rule_idx, c.range.clone()));
}
for r in &doc.dropped_html_text {
hits.push(Hit::new(rule_idx, r.clone()));
}
for (span, title) in &doc.unused_refdefs {
if title
.as_ref()
.map(|t| !t.trim().is_empty())
.unwrap_or(false)
{
hits.push(Hit::new(rule_idx, span.clone()));
}
}
}
pub fn render_divergence(
prepared: &Prepared,
doc: &Doc,
config: &Config,
rule_idx: usize,
hits: &mut Vec<Hit>,
) {
let _ = (prepared, config);
for (span, title) in &doc.unused_refdefs {
if title.is_none() {
hits.push(Hit::new(rule_idx, span.clone()));
}
}
}