## Uses of Class
org.thewonderlemming.c4plantuml.linter.rules.AbstractLintingRule

- Packages that use AbstractLintingRule
  Package | Description
  --- | ---
  org.thewonderlemming.c4plantuml.linter | Contains the linting engine and its main dependencies.
  org.thewonderlemming.c4plantuml.linter.builder | Contains the `LinterBuilder` dependencies.
  org.thewonderlemming.c4plantuml.linter.rules.builtin | Contains built-in `AbstractLintingRule` implementations.
  org.thewonderlemming.c4plantuml.mojo.linting | Contains the `LintingMojo` and its dependencies used to type the parameters in the pom.xml configuration..
  org.thewonderlemming.c4plantuml.mojo.linting.rules.builtin | Contains a set of factory classes to integrate `AbstractLintingRule` to the plugin.
  org.thewonderlemming.c4plantuml.mojo.linting.rules.custom | Contains the foundation to build custom `AbstractLintingRule` - i.e.

- - ### Uses of AbstractLintingRule in org.thewonderlemming.c4plantuml.linter

    Methods in org.thewonderlemming.c4plantuml.linter that return types with arguments of type AbstractLintingRule
    Modifier and Type | Method and Description
    --- | ---
    `Set<AbstractLintingRule>` | Linter.`getActiveRules()` Returns the set of active `AbstractLintingRule` to be used on parsed files.

    Methods in org.thewonderlemming.c4plantuml.linter with parameters of type AbstractLintingRule
    Modifier and Type | Method and Description
    --- | ---
    `void` | LinterSyntaxErrorListener.`registerRule(AbstractLintingRule rule)` registers an `AbstractLintingRule` so that it can be notified of syntax errors.
    `void` | LinterSyntaxErrorListener.`unregisterRule(AbstractLintingRule rule)` Unregister a `AbstractLintingRule` so that it won't be notified of syntax errors anymore.

    Constructor parameters in org.thewonderlemming.c4plantuml.linter with type arguments of type AbstractLintingRule
    Constructor and Description
    `Linter(org.thewonderlemming.c4plantuml.commons.Reporter reporter, Set<AbstractLintingRule> activeRules)` Default constructor.

  - ### Uses of AbstractLintingRule in org.thewonderlemming.c4plantuml.linter.builder

    Methods in org.thewonderlemming.c4plantuml.linter.builder with parameters of type AbstractLintingRule
    Modifier and Type | Method and Description
    --- | ---
    `AddLintingRule` | AddLintingRule.`addLintingRule(AbstractLintingRule lintingRule)` Adds a `AbstractLintingRule` to the set of active rules.

    Method parameters in org.thewonderlemming.c4plantuml.linter.builder with type arguments of type AbstractLintingRule
    Modifier and Type | Method and Description
    --- | ---
    `default AddLintingRule` | AddLintingRule.`addLintingRules(Set<AbstractLintingRule> lintingRules)` Adds a set of `AbstractLintingRule` to the set of active rules.

  - ### Uses of AbstractLintingRule in org.thewonderlemming.c4plantuml.linter.rules.builtin

    Subclasses of AbstractLintingRule in org.thewonderlemming.c4plantuml.linter.rules.builtin
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractC4Rule` A base implementation of `AbstractLintingRule` that provides default support for C4 levels 1 to 3.
    `class` | `AliasesShouldBeListedInDictionaryRule` A linting rule that verifies that every alias is referenced in a given dictionary file.
    `class` | `AliasesShouldBeUniqueRule` A linting rule that checks that aliases are not declared more than once.
    `class` | `AliasesShouldFollowStandardConventionRule` A linting rule that checks that the aliases comply to a given regular expression.
    `class` | `NoDuplicateRelationshipsRule` A linting rule that checks that relationships are not declared more than once.
    `class` | `NoOrphanAliasInBoundariesRule` A linting rule that checks that the aliases used in a boundary are declared in the same source file as part of any entity.
    `class` | `NoOrphanAliasInLayoutsRule` A linting rule that checks that the aliases used in a layout are declared in the same source file as part of any entity.
    `class` | `NoOrphanAliasInRelationshipsRule` A linting rule that checks that the aliases used in a relationship are declared in the same source file as part of any entity.

  - ### Uses of AbstractLintingRule in org.thewonderlemming.c4plantuml.mojo.linting

    Methods in org.thewonderlemming.c4plantuml.mojo.linting that return types with arguments of type AbstractLintingRule
    Modifier and Type | Method and Description
    --- | ---
    `static Set<Class<? extends AbstractLintingRule>>` | LintingRulesFinder.`findBuiltInLintingRules()` Finds and returns every non-abstract child class of `AbstractLintingRule` in the classpath, including within the dependencies.

  - ### Uses of AbstractLintingRule in org.thewonderlemming.c4plantuml.mojo.linting.rules.builtin

    Methods in org.thewonderlemming.c4plantuml.mojo.linting.rules.builtin that return types with arguments of type AbstractLintingRule
    Modifier and Type | Method and Description
    --- | ---
    `static Optional<AbstractLintingRule>` | BuiltInLintingRulesFactory.`createInstanceForName(String ruleName, BuiltInRules parameters)` Builds a `AbstractLintingRule` instance, given its name and the `BuiltInRules` parameters POJO.
    `Class<? extends AbstractLintingRule>` | BuiltInLintingRulesFactory.`getRuleType()` Returns the `AbstractLintingRule` type of the current mapping.

    Method parameters in org.thewonderlemming.c4plantuml.mojo.linting.rules.builtin with type arguments of type AbstractLintingRule
    Modifier and Type | Method and Description
    --- | ---
    `static Optional<String>` | BuiltInLintingRulesFactory.`getRuleNameForType(Class<? extends AbstractLintingRule> ruleType)` Returns the mapped name of a `AbstractLintingRule`, given its type.
    `static boolean` | BuiltInLintingRulesFactory.`isBuiltInLintingRule(Class<? extends AbstractLintingRule> lintingRuleType)` Tells whether or not the given `AbstractLintingRule` is a built-in rule, or a custom one, which requires a different building process.

  - ### Uses of AbstractLintingRule in org.thewonderlemming.c4plantuml.mojo.linting.rules.custom

    Subclasses of AbstractLintingRule in org.thewonderlemming.c4plantuml.mojo.linting.rules.custom
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractCustomLintingRule` A base class to build custom `AbstractLintingRule`.

Copyright © 2020. All rights reserved.