run method
Run every rule against every file. Returns all issues found.
Rules that throw are skipped — a buggy rule should never crash the whole audit.
Implementation
List<Issue> run(List<ParsedFile> files) {
final allIssues = <Issue>[];
for (final file in files) {
for (final rule in rules) {
try {
allIssues.addAll(rule.check(file));
} catch (_) {
// Skip rules that crash on weird input.
continue;
}
}
}
return allIssues;
}