register method
Registers enabled rules and their quick-fix generators with the server.
Only rules in SaropaLintRule.enabledRules are instantiated and registered. When no config is found (enabledRules is null), no rules fire — the safe default. Uses getRulesFromRegistry to only instantiate the enabled subset instead of all 2050+ rules.
Implementation
@override
void register(PluginRegistry registry) {
try {
final enabled = SaropaLintRule.enabledRules;
if (enabled == null || enabled.isEmpty) return;
final rules = getRulesFromRegistry(enabled);
if (rules.isEmpty) return;
final disabled = SaropaLintRule.disabledRules;
for (final rule in rules) {
final code = rule.code;
if (code.lowerCaseName.isEmpty) continue;
if (disabled != null && disabled.contains(code.lowerCaseName)) {
continue;
}
registry.registerLintRule(rule);
for (final generator in rule.fixGenerators) {
registry.registerFixForRule(code, generator);
}
}
} catch (e, st) {
developer.log(
'register(PluginRegistry) failed',
name: 'saropa_lints',
error: e,
stackTrace: st,
);
// Defensive: avoid bringing down the analysis server
}
}