pi-lens
Version:
Real-time code feedback for pi — LSP, linters, formatters, type-checking, structural analysis & booboo
18 lines (17 loc) • 406 B
JavaScript
const rules = [];
export function registerRule(r) {
rules.push(r);
}
export function clearRules() {
rules.length = 0;
}
export function evaluateRules(ctx) {
const diagnostics = [];
for (const rule of rules) {
if (!rule.appliesTo(ctx))
continue;
const results = rule.evaluate(ctx, ctx.facts);
diagnostics.push(...results);
}
return diagnostics;
}