pub fn rule<F>(id: impl Into<String>, f: F) -> Box<dyn Rule>where F: Fn(&SectionNode, &Ctx<'_>) -> Vec<Finding> + 'static,
A per-node named rule from a closure — the TS rule(id, fn).
rule(id, fn)