registerRules function
Registers all DCQ rules with the given registry.
If projectRoot is provided, reads rule config from that directory
instead of CWD. This allows parallel analysis of multiple projects.
Implementation
void registerRules(PluginRegistry registry, {String? projectRoot}) {
DcqConfig.readAllRuleConfigs(projectRoot: projectRoot);
// Track all registered rule names for AvoidUnusedRuleIgnores.
// Rules disabled via dart_code_quality: rules: are suppressed at report
// time in DcqRule.reportAtNode/reportAtToken/reportAtOffset.
final tracking = _TrackingRegistry(registry);
// Warning rules (on by default — recommended set).
tracking.registerWarningRule(AvoidAssigningToStaticField());
tracking.registerWarningRule(AvoidAssignmentsAsConditions());
tracking.registerWarningRule(AvoidAsyncCallInSyncFunction());
tracking.registerWarningRule(AvoidBitwiseOperatorsWithBooleans());
tracking.registerWarningRule(AvoidBottomTypeInPatterns());
tracking.registerWarningRule(AvoidBottomTypeInRecords());
tracking.registerWarningRule(AvoidCascadeAfterIfNull());
tracking.registerWarningRule(AvoidCastingToExtensionType());
tracking.registerWarningRule(AvoidCollectionEqualityChecks());
tracking.registerWarningRule(AvoidConditionsWithBooleanLiterals());
tracking.registerWarningRule(AvoidConstantAssertConditions());
tracking.registerWarningRule(AvoidConstantConditions());
tracking.registerWarningRule(AvoidConstantSwitches());
tracking.registerWarningRule(AvoidContradictoryExpressions());
tracking.registerWarningRule(AvoidDuplicateCascades());
tracking.registerWarningRule(AvoidDuplicateCollectionElements());
tracking.registerWarningRule(AvoidDuplicateConstantValues());
tracking.registerWarningRule(AvoidDuplicateExports());
tracking.registerWarningRule(AvoidDuplicateInitializers());
tracking.registerWarningRule(AvoidDuplicateMapKeys());
tracking.registerWarningRule(AvoidDuplicateMixins());
tracking.registerWarningRule(AvoidDuplicateNamedImports());
tracking.registerWarningRule(AvoidDuplicatePatterns());
tracking.registerWarningRule(AvoidDuplicateSwitchCaseConditions());
tracking.registerWarningRule(AvoidEmptySpread());
tracking.registerWarningRule(AvoidEnumValuesByIndex());
tracking.registerWarningRule(AvoidEqualExpressions());
tracking.registerWarningRule(AvoidFutureIgnore());
tracking.registerWarningRule(AvoidFutureTostring());
tracking.registerWarningRule(AvoidGenericsShadowing());
tracking.registerWarningRule(AvoidImplicitlyNullableExtensionTypes());
tracking.registerWarningRule(AvoidIncorrectUri());
tracking.registerWarningRule(AvoidMapKeysContains());
tracking.registerWarningRule(AvoidMissedCalls());
tracking.registerWarningRule(AvoidMissingCompleterStackTrace());
tracking.registerWarningRule(AvoidMissingEnumConstantInMap());
tracking.registerWarningRule(AvoidMissingInterpolation());
tracking.registerWarningRule(AvoidMisusedSetLiterals());
tracking.registerWarningRule(AvoidMisusedTestMatchers());
tracking.registerWarningRule(AvoidMisusedWildcardPattern());
tracking.registerWarningRule(AvoidMultiAssignment());
tracking.registerWarningRule(AvoidNestedFutures());
tracking.registerWarningRule(AvoidNestedShorthands());
tracking.registerWarningRule(AvoidNestedStreamsAndFutures());
tracking.registerWarningRule(AvoidNonFinalExceptionClassFields());
tracking.registerWarningRule(AvoidNonNullAssertion());
tracking.registerWarningRule(AvoidNotEncodableInToJson());
tracking.registerWarningRule(AvoidNullableInterpolation());
tracking.registerWarningRule(AvoidNullableParametersWithDefaultValues());
tracking.registerWarningRule(AvoidNullableTostring());
tracking.registerWarningRule(AvoidOnlyRethrow());
tracking.registerWarningRule(AvoidPassingAsyncWhenSyncExpected());
tracking.registerWarningRule(AvoidPassingSelfAsArgument());
tracking.registerWarningRule(AvoidRecursiveCalls());
tracking.registerWarningRule(AvoidRecursiveTostring());
tracking.registerWarningRule(AvoidRedundantElse());
tracking.registerWarningRule(AvoidSelfCompare());
tracking.registerWarningRule(AvoidShadowedExtensionMethods());
tracking.registerWarningRule(AvoidStreamTostring());
tracking.registerWarningRule(AvoidSuspiciousGlobalReference());
tracking.registerWarningRule(AvoidSuspiciousSuperOverrides());
tracking.registerWarningRule(AvoidUnassignedFields());
tracking.registerWarningRule(AvoidUnassignedLateFields());
tracking.registerWarningRule(AvoidUnassignedLocalVariable());
tracking.registerWarningRule(AvoidUnassignedStreamSubscriptions());
tracking.registerWarningRule(AvoidUncaughtFutureErrors());
tracking.registerWarningRule(AvoidUnconditionalBreak());
tracking.registerWarningRule(AvoidUnknownPragma());
tracking.registerWarningRule(AvoidUnnecessaryConditionals());
tracking.registerWarningRule(AvoidUnnecessaryFutures());
tracking.registerWarningRule(AvoidUnnecessaryIf());
tracking.registerWarningRule(AvoidUnnecessaryNegations());
tracking.registerWarningRule(AvoidUnnecessaryReassignment());
tracking.registerWarningRule(AvoidUnnecessaryTypeAssertions());
tracking.registerWarningRule(AvoidUnreachableForLoop());
tracking.registerWarningRule(AvoidUnrelatedTypeAssertions());
tracking.registerWarningRule(AvoidUnrelatedTypeCasts());
tracking.registerWarningRule(AvoidUnremovableCallbacksInListeners());
tracking.registerWarningRule(AvoidUnsafeCollectionMethods());
tracking.registerWarningRule(AvoidUnsafeReduce());
tracking.registerWarningRule(AvoidUnusedAfterNullCheck());
tracking.registerWarningRule(AvoidUnusedAssignment());
tracking.registerWarningRule(AvoidUnusedInstances());
tracking.registerWarningRule(AvoidUnusedParameters());
tracking.registerWarningRule(AvoidWeakCryptographicAlgorithms());
tracking.registerWarningRule(AvoidWildcardCasesWithEnums());
tracking.registerWarningRule(AvoidWildcardCasesWithSealedClasses());
tracking.registerWarningRule(DisposeClassFields());
tracking.registerWarningRule(FunctionAlwaysReturnsNull());
tracking.registerWarningRule(FunctionAlwaysReturnsSameValue());
tracking.registerWarningRule(MatchBaseClassDefaultValue());
tracking.registerWarningRule(MatchGetterSetterFieldNames());
tracking.registerWarningRule(MissingTestAssertion());
tracking.registerWarningRule(NoEmptyBlock());
tracking.registerWarningRule(NoMagicNumber());
tracking.registerWarningRule(NoMagicString());
tracking.registerWarningRule(NoEqualArguments());
tracking.registerWarningRule(NoEqualConditions());
tracking.registerWarningRule(NoEqualNestedConditions());
tracking.registerWarningRule(NoEqualSwitchExpressionCases());
tracking.registerWarningRule(NoEqualThenElse());
tracking.registerWarningRule(PreferCorrectForLoopIncrement());
tracking.registerWarningRule(PreferCorrectJsonCasts());
tracking.registerWarningRule(PreferCorrectStreamReturnType());
tracking.registerWarningRule(PreferCorrectThrows());
tracking.registerWarningRule(PreferOverridingParentEquality());
tracking.registerWarningRule(PreferParenthesesWithIfNull());
tracking.registerWarningRule(PreferReturnAwait());
tracking.registerWarningRule(PreferSpecificCasesFirst());
tracking.registerWarningRule(PreferSpecifyingFutureValueType());
tracking.registerWarningRule(PreferUniqueTestNames());
tracking.registerWarningRule(AddEquatableProps());
tracking.registerWarningRule(ListAllEquatableFields());
tracking.registerWarningRule(AvoidAsyncCallbackInFakeAsync());
tracking.registerWarningRule(AlwaysRemoveListener());
tracking.registerWarningRule(AvoidDisposingLateFields());
tracking.registerWarningRule(AvoidEmptySetstate());
tracking.registerWarningRule(AvoidFlexibleOutsideFlex());
tracking.registerWarningRule(AvoidIncompleteCopyWith());
tracking.registerWarningRule(AvoidIncorrectImageOpacity());
tracking.registerWarningRule(AvoidInheritedWidgetInInitstate());
tracking.registerWarningRule(AvoidLateContext());
tracking.registerWarningRule(AvoidMissingController());
tracking.registerWarningRule(AvoidMissingImageAlt());
tracking.registerWarningRule(AvoidMountedInSetstate());
tracking.registerWarningRule(AvoidRecursiveWidgetCalls());
tracking.registerWarningRule(AvoidShrinkWrapInLists());
tracking.registerWarningRule(AvoidStateConstructors());
tracking.registerWarningRule(AvoidStatelessWidgetInitializedFields());
tracking.registerWarningRule(AvoidUndisposedInstances());
tracking.registerWarningRule(AvoidUnnecessarySetstate());
tracking.registerWarningRule(CheckForEqualsInRenderObjectSetters());
tracking.registerWarningRule(ConsistentUpdateRenderObject());
tracking.registerWarningRule(DisposeFields());
tracking.registerWarningRule(PassExistingFutureToFutureBuilder());
tracking.registerWarningRule(PassExistingStreamToStreamBuilder());
tracking.registerWarningRule(PreferDedicatedMediaQueryMethods());
tracking.registerWarningRule(PreferDefineHeroTag());
tracking.registerWarningRule(PreferCorrectStaticIconProvider());
tracking.registerWarningRule(ProperSuperCalls());
tracking.registerWarningRule(UseSetstateSynchronously());
tracking.registerWarningRule(AvoidImplementationInMocks());
tracking.registerWarningRule(PassMockObject());
tracking.registerWarningRule(PreferCorrectAnyMatcher());
tracking.registerWarningRule(AvoidAssigningNotifiers());
tracking.registerWarningRule(AvoidCallingNotifierMembersInsideBuild());
tracking.registerWarningRule(AvoidNotifierConstructors());
tracking.registerWarningRule(AvoidNullableAsyncValuePattern());
tracking.registerWarningRule(AvoidPublicNotifierProperties());
tracking.registerWarningRule(AvoidRefInsideStateDispose());
tracking.registerWarningRule(AvoidRefReadInsideBuild());
tracking.registerWarningRule(AvoidRefWatchOutsideBuild());
tracking.registerWarningRule(DisposeProvidedInstances());
tracking.registerWarningRule(PreferImmutableProviderArguments());
tracking.registerWarningRule(UseRefAndStateSynchronously());
tracking.registerWarningRule(UseRefReadSynchronously());
tracking.registerWarningRule(UseThenAnswer());
// Lint rules (off by default — enable via diagnostics: rule_name: true).
tracking.registerLintRule(ArgumentsOrdering());
tracking.registerLintRule(AvoidAccessingCollectionsByConstantIndex());
tracking.registerLintRule(AvoidAccessingOtherClassesPrivateMembers());
tracking.registerLintRule(AvoidAdjacentStrings());
tracking.registerLintRule(AvoidBannedAnnotations());
tracking.registerLintRule(AvoidBannedExports());
tracking.registerLintRule(AvoidBannedFileNames());
tracking.registerLintRule(AvoidBannedImports());
tracking.registerLintRule(AvoidBannedNames());
tracking.registerLintRule(AvoidBannedTypes());
tracking.registerLintRule(AvoidBarrelFiles());
tracking.registerLintRule(AvoidCollapsibleIf());
tracking.registerLintRule(AvoidCollectionMutatingMethods());
tracking.registerLintRule(AvoidCommentedOutCode());
tracking.registerLintRule(AvoidComplexArithmeticExpressions());
tracking.registerLintRule(AvoidComplexConditions());
tracking.registerLintRule(AvoidComplexLoopConditions());
tracking.registerLintRule(AvoidContinue());
tracking.registerLintRule(AvoidDeclaringCallMethod());
tracking.registerLintRule(AvoidDefaultTostring());
tracking.registerLintRule(AvoidDoubleSlashImports());
tracking.registerLintRule(AvoidDuplicateTestAssertions());
tracking.registerLintRule(AvoidDynamic());
tracking.registerLintRule(AvoidEmptyTestGroups());
tracking.registerLintRule(AvoidExcessiveExpressions());
tracking.registerLintRule(AvoidExplicitPatternFieldName());
tracking.registerLintRule(AvoidExplicitTypeDeclaration());
tracking.registerLintRule(AvoidExtensionsOnRecords());
tracking.registerLintRule(AvoidFunctionTypeInRecords());
tracking.registerLintRule(AvoidGetterPrefix());
tracking.registerLintRule(AvoidGlobalState());
tracking.registerLintRule(AvoidHighCyclomaticComplexity());
tracking.registerLintRule(AvoidIdenticalExceptionHandlingBlocks());
tracking.registerLintRule(AvoidIfWithManyBranches());
tracking.registerLintRule(AvoidIgnoringReturnValues());
tracking.registerLintRule(AvoidImmediatelyInvokedFunctions());
tracking.registerLintRule(AvoidInconsistentDigitSeparators());
tracking.registerLintRule(AvoidInferrableTypeArguments());
tracking.registerLintRule(AvoidInvertedBooleanChecks());
tracking.registerLintRule(AvoidKeywordsInWildcardPattern());
tracking.registerLintRule(AvoidLateKeyword());
tracking.registerLintRule(AvoidLocalFunctions());
tracking.registerLintRule(AvoidLongFiles());
tracking.registerLintRule(AvoidLongParameterList());
tracking.registerLintRule(AvoidLongRecords());
tracking.registerLintRule(AvoidMixingNamedAndPositionalFields());
tracking.registerLintRule(AvoidMutatingParameters());
tracking.registerLintRule(AvoidNegatedConditions());
tracking.registerLintRule(AvoidNegationsInEqualityChecks());
tracking.registerLintRule(AvoidNestedAssignments());
tracking.registerLintRule(AvoidNestedConditionalExpressions());
tracking.registerLintRule(AvoidNestedExtensionTypes());
tracking.registerLintRule(AvoidNestedRecords());
tracking.registerLintRule(AvoidNestedSwitchExpressions());
tracking.registerLintRule(AvoidNestedSwitches());
tracking.registerLintRule(AvoidNestedTryStatements());
tracking.registerLintRule(AvoidNonAsciiSymbols());
tracking.registerLintRule(AvoidNonEmptyConstructorBodies());
tracking.registerLintRule(AvoidOneFieldRecords());
tracking.registerLintRule(AvoidPassingDefaultValues());
tracking.registerLintRule(AvoidPositionalRecordFieldAccess());
tracking.registerLintRule(AvoidRedundantPositionalFieldName());
tracking.registerLintRule(AvoidRedundantPragmaInline());
tracking.registerLintRule(AvoidReferencingSubclasses());
tracking.registerLintRule(AvoidRenamingRepresentationGetters());
tracking.registerLintRule(AvoidReturningCascades());
tracking.registerLintRule(AvoidReturningVoid());
tracking.registerLintRule(AvoidShadowing());
tracking.registerLintRule(AvoidSimilarNames());
tracking.registerLintRule(AvoidSingleFieldDestructuring());
tracking.registerLintRule(AvoidSlowCollectionMethods());
tracking.registerLintRule(AvoidSubstring());
tracking.registerLintRule(AvoidThrow());
tracking.registerLintRule(AvoidThrowInCatchBlock());
tracking.registerLintRule(AvoidThrowObjectsWithoutTostring());
tracking.registerLintRule(AvoidTopLevelMembersInTests());
tracking.registerLintRule(AvoidTypeCasts());
tracking.registerLintRule(AvoidUnnecessaryBlock());
tracking.registerLintRule(AvoidUnnecessaryCall());
tracking.registerLintRule(AvoidUnnecessaryCollections());
tracking.registerLintRule(AvoidUnnecessaryCompareTo());
tracking.registerLintRule(AvoidUnnecessaryConstructor());
tracking.registerLintRule(AvoidUnnecessaryContinue());
tracking.registerLintRule(AvoidUnnecessaryDigitSeparators());
tracking.registerLintRule(AvoidUnnecessaryEnumArguments());
tracking.registerLintRule(AvoidUnnecessaryEnumPrefix());
tracking.registerLintRule(AvoidUnnecessaryExtends());
tracking.registerLintRule(AvoidUnnecessaryGetter());
tracking.registerLintRule(AvoidUnnecessaryLateFields());
tracking.registerLintRule(AvoidUnnecessaryLengthCheck());
tracking.registerLintRule(AvoidUnnecessaryLocalLate());
tracking.registerLintRule(AvoidUnnecessaryLocalVariable());
tracking.registerLintRule(AvoidUnnecessaryNullAwareElements());
tracking.registerLintRule(AvoidUnnecessaryNullableFields());
tracking.registerLintRule(AvoidUnnecessaryNullableReturnType());
tracking.registerLintRule(AvoidUnnecessaryPatterns());
tracking.registerLintRule(AvoidUnnecessaryReturn());
tracking.registerLintRule(AvoidUnnecessarySuper());
tracking.registerLintRule(AvoidUnusedGenerics());
tracking.registerLintRule(BanName());
tracking.registerLintRule(BannedUsage());
tracking.registerLintRule(BinaryExpressionOperandOrder());
tracking.registerLintRule(DoubleLiteralFormat());
tracking.registerLintRule(EnumConstantsOrdering());
tracking.registerLintRule(FormatComment());
tracking.registerLintRule(FormatTestName());
tracking.registerLintRule(HandleThrowingInvocations());
tracking.registerLintRule(MapKeysOrdering());
tracking.registerLintRule(MatchClassNamePattern());
tracking.registerLintRule(MaxImports());
tracking.registerLintRule(MemberOrdering());
tracking.registerLintRule(MoveRecordsToTypedefs());
tracking.registerLintRule(MoveVariableCloserToItsUsage());
tracking.registerLintRule(MoveVariableOutsideIteration());
tracking.registerLintRule(NewlineBeforeCase());
tracking.registerLintRule(NewlineBeforeConstructor());
tracking.registerLintRule(NewlineBeforeMethod());
tracking.registerLintRule(NewlineBeforeReturn());
tracking.registerLintRule(NoEmptyString());
tracking.registerLintRule(NoObjectDeclaration());
tracking.registerLintRule(ParametersOrdering());
tracking.registerLintRule(PassOptionalArgument());
tracking.registerLintRule(PatternFieldsOrdering());
tracking.registerLintRule(PreferAbstractFinalStaticClass());
tracking.registerLintRule(PreferAddAll());
tracking.registerLintRule(PreferAdditionSubtractionAssignments());
tracking.registerLintRule(PreferAnyOrEvery());
tracking.registerLintRule(PreferAssigningAwaitExpressions());
tracking.registerLintRule(PreferAsyncAwait());
tracking.registerLintRule(PreferBooleanPrefixes());
tracking.registerLintRule(PreferBothInliningAnnotations());
tracking.registerLintRule(PreferClassDestructuring());
tracking.registerLintRule(PreferCommentingFutureDelayed());
tracking.registerLintRule(PreferCompoundAssignmentOperators());
tracking.registerLintRule(PreferConditionalExpressions());
tracking.registerLintRule(PreferCorrectCallbackFieldName());
tracking.registerLintRule(PreferCorrectErrorName());
tracking.registerLintRule(PreferCorrectSetterParameterName());
tracking.registerLintRule(PreferCorrectSwitchLength());
tracking.registerLintRule(PreferCorrectTestFileName());
tracking.registerLintRule(PreferCorrectTypeName());
tracking.registerLintRule(PreferDeclaringConstConstructor());
tracking.registerLintRule(PreferDigitSeparators());
tracking.registerLintRule(PreferEarlyReturn());
tracking.registerLintRule(PreferEnumsByName());
tracking.registerLintRule(PreferExpectLater());
tracking.registerLintRule(PreferExplicitFunctionType());
tracking.registerLintRule(PreferExplicitParameterNames());
tracking.registerLintRule(PreferExplicitTypeArguments());
tracking.registerLintRule(PreferExtractingFunctionCallbacks());
tracking.registerLintRule(PreferFirst());
tracking.registerLintRule(PreferForIn());
tracking.registerLintRule(PreferGetterOverMethod());
tracking.registerLintRule(PreferImmediateReturn());
tracking.registerLintRule(PreferIterableOf());
tracking.registerLintRule(PreferLast());
tracking.registerLintRule(PreferMatchFileName());
tracking.registerLintRule(PreferMovingToVariable());
tracking.registerLintRule(PreferNamedBooleanParameters());
tracking.registerLintRule(PreferNamedImports());
tracking.registerLintRule(PreferNamedParameters());
tracking.registerLintRule(PreferNamedRecordFields());
tracking.registerLintRule(PreferNonNulls());
tracking.registerLintRule(PreferNullAwareElements());
tracking.registerLintRule(PreferNullAwareSpread());
tracking.registerLintRule(PreferPrefixedGlobalConstants());
tracking.registerLintRule(PreferPrivateExtensionTypeField());
tracking.registerLintRule(PreferPublicExceptionClasses());
tracking.registerLintRule(PreferPushingConditionalExpressions());
tracking.registerLintRule(PreferReturningCondition());
tracking.registerLintRule(PreferReturningConditionalExpressions());
tracking.registerLintRule(PreferReturningShorthands());
tracking.registerLintRule(PreferShorthandsWithConstructors());
tracking.registerLintRule(PreferShorthandsWithEnums());
tracking.registerLintRule(PreferShorthandsWithStaticFields());
tracking.registerLintRule(PreferSimplerBooleanExpressions());
tracking.registerLintRule(PreferSimplerPatternsNullCheck());
tracking.registerLintRule(PreferSingleDeclarationPerFile());
tracking.registerLintRule(PreferStaticMethod());
tracking.registerLintRule(PreferSwitchExpression());
tracking.registerLintRule(PreferSwitchWithEnums());
tracking.registerLintRule(PreferSwitchWithSealedClasses());
tracking.registerLintRule(PreferTestMatchers());
tracking.registerLintRule(PreferTestStructure());
tracking.registerLintRule(PreferTypeOverVar());
tracking.registerLintRule(PreferTypedefsForCallbacks());
tracking.registerLintRule(PreferUnwrappingFutureOr());
tracking.registerLintRule(PreferVisibleForTestingOnMembers());
tracking.registerLintRule(PreferWildcardPattern());
tracking.registerLintRule(RecordFieldsOrdering());
tracking.registerLintRule(TagName());
tracking.registerLintRule(UseExistingDestructuring());
tracking.registerLintRule(UseExistingVariable());
tracking.registerLintRule(AvoidMissingTr());
tracking.registerLintRule(AvoidMissingTrOnStrings());
tracking.registerLintRule(PreferEquatableMixin());
tracking.registerLintRule(AddCopyWith());
tracking.registerLintRule(AvoidBorderAll());
tracking.registerLintRule(AvoidExpandedAsSpacer());
tracking.registerLintRule(AvoidReturningWidgets());
tracking.registerLintRule(AvoidSingleChildColumnOrRow());
tracking.registerLintRule(AvoidUnnecessaryGestureDetector());
tracking.registerLintRule(AvoidUnnecessaryOverridesInState());
tracking.registerLintRule(AvoidUnnecessaryStatefulWidgets());
tracking.registerLintRule(AvoidWrappingInPadding());
tracking.registerLintRule(PreferActionButtonTooltip());
tracking.registerLintRule(PreferAlignOverContainer());
tracking.registerLintRule(PreferCenterOverAlign());
tracking.registerLintRule(PreferComputeOverIsolateRun());
tracking.registerLintRule(PreferConstBorderRadius());
tracking.registerLintRule(PreferConstrainedBoxOverContainer());
tracking.registerLintRule(PreferContainer());
tracking.registerLintRule(PreferCorrectEdgeInsetsConstructor());
tracking.registerLintRule(PreferExtractingCallbacks());
tracking.registerLintRule(PreferForLoopInChildren());
tracking.registerLintRule(PreferMediaQueryDirectAccess());
tracking.registerLintRule(PreferPaddingOverContainer());
tracking.registerLintRule(PreferSingleSetstate());
tracking.registerLintRule(PreferSingleWidgetPerFile());
tracking.registerLintRule(PreferSizedBoxSquare());
tracking.registerLintRule(PreferUsingListView());
tracking.registerLintRule(PreferWidgetPrivateMembers());
tracking.registerLintRule(UseClosestBuildContext());
tracking.registerLintRule(PreferDateFormat());
tracking.registerLintRule(PreferIntlName());
tracking.registerLintRule(PreferNumberFormat());
tracking.registerLintRule(PreferProvidingIntlDescription());
tracking.registerLintRule(PreferProvidingIntlExamples());
tracking.registerLintRule(ProvideCorrectIntlArgs());
tracking.registerLintRule(AvoidUnnecessaryConsumerWidgets());
// Registered last so it has the full set of known rule names.
tracking.registerLintRule(AvoidUnusedRuleIgnores(tracking.ruleNames));
}