register method
Registers analysis rules, quick fixes, and assists.
Implementation
@override
void register(PluginRegistry registry) {
// 1. Register Rules (Lints)
final avoidCreate = SignalsAvoidCreateInBuildMethod();
final avoidWatch = SignalsAvoidDeprecatedWatchExtension();
final avoidMixin = SignalsAvoidDeprecatedSignalsMixin();
final preferNamed = SignalsPreferNamedBuilder();
final preferUnified = SignalsPreferUnifiedOptions();
registry.registerLintRule(avoidCreate);
registry.registerLintRule(avoidWatch);
registry.registerLintRule(avoidMixin);
registry.registerLintRule(preferNamed);
registry.registerLintRule(preferUnified);
// 2. Register Quick Fixes (associated with specific diagnostics)
registry.registerFixForRule(
avoidMixin.diagnosticCode,
MigrateSignalsMixinToSignalStatefulWidget.new,
);
registry.registerFixForRule(
avoidWatch.diagnosticCode,
MigrateWatchToSignalBuilder.new,
);
registry.registerFixForRule(
preferNamed.diagnosticCode,
MigrateWatchToSignalBuilder.new,
);
// 3. Register Assists (general context-based refactoring)
registry.registerAssist(ConvertStatelessToSignalWidget.new);
registry.registerAssist(ConvertStatefulToSignalStatefulWidget.new);
registry.registerAssist(MigrateSignalsMixinToSignalStatefulWidget.new);
registry.registerAssist(MigrateWatchToSignalBuilder.new);
registry.registerAssist(WrapWithSignalBuilder.new);
}