Class RuleSets


  • @Deprecated
    @InternalApi
    public class RuleSets
    extends Object
    Deprecated.
    Internal API
    Grouping of Rules per Language in a RuleSet.
    Author:
    pieter_van_raemdonck - Application Engineers NV/SA - www.ae.be
    • Constructor Detail

      • RuleSets

        public RuleSets()
        Deprecated.
        Public constructor.
      • RuleSets

        public RuleSets​(RuleSets ruleSets)
        Deprecated.
        Copy constructor. Deep copies RuleSets.
        Parameters:
        ruleSets - The RuleSets to copy.
      • RuleSets

        public RuleSets​(RuleSet ruleSet)
        Deprecated.
        Public constructor. Add the given rule set.
        Parameters:
        ruleSet - the RuleSet
      • RuleSets

        public RuleSets​(List<RuleSet> ruleSet)
        Deprecated.
        Aggregate the given rulesets.
    • Method Detail

      • addRuleSet

        @Deprecated
        public void addRuleSet​(RuleSet ruleSet)
        Deprecated.
        Use RuleSets(List) and don't mutate RuleSets after creation
        Add a ruleset for a language. Only one ruleset can be added for a specific language. If ruleSet.getLanguage() is null, it is assumed to be a RuleSet of java rules.
        Parameters:
        ruleSet - the RuleSet
      • getAllRuleSets

        public RuleSet[] getAllRuleSets()
        Deprecated.
        Get all the RuleSets.
        Returns:
        RuleSet[]
      • getRuleSetsIterator

        public Iterator<RuleSet> getRuleSetsIterator()
        Deprecated.
      • getAllRules

        public Set<Rule> getAllRules()
        Deprecated.
        Return all rules from all rulesets.
        Returns:
        Set
      • applies

        public boolean applies​(File file)
        Deprecated.
        Check if a given source file should be checked by rules in this RuleSets.
        Parameters:
        file - the source file to check
        Returns:
        true if the file should be checked, false otherwise
      • start

        public void start​(RuleContext ctx)
        Deprecated.
        Notify all rules of the start of processing.
      • apply

        public void apply​(List<Node> acuList,
                          RuleContext ctx,
                          Language language)
        Deprecated.
        Apply all applicable rules to the compilation units. Applicable means the language of the rules must match the language of the source (@see applies).
        Parameters:
        acuList - the List of compilation units; the type these must have, depends on the source language
        ctx - the RuleContext
        language - the Language of the source
      • end

        public void end​(RuleContext ctx)
        Deprecated.
        Notify all rules of the end of processing.
      • usesDFA

        @Deprecated
        public boolean usesDFA​(Language language)
        Deprecated.
        Check if the rules that apply to a source of the given language use DFA.
        Parameters:
        language - the language of a source
        Returns:
        true if any rule in the RuleSet needs the DFA layer
      • getRuleByName

        public Rule getRuleByName​(String ruleName)
        Deprecated.
        Returns the first Rule found with the given name. Note: Since we support multiple languages, rule names are not expected to be unique within any specific ruleset.
        Parameters:
        ruleName - the exact name of the rule to find
        Returns:
        the rule or null if not found
      • ruleCount

        public int ruleCount()
        Deprecated.
        Determines the total count of rules that are used in all rule sets.
        Returns:
        the count
      • usesTypeResolution

        @Deprecated
        public boolean usesTypeResolution​(Language language)
        Deprecated.
        Does any Rule for the given Language use Type Resolution?
        Parameters:
        language - The Language.
        Returns:
        true if a Rule for the Language uses Type Resolution, false otherwise.
      • usesMultifile

        @Deprecated
        public boolean usesMultifile​(Language language)
        Deprecated.
        Does any Rule for the given Language use multi-file analysis?
        Parameters:
        language - The Language.
        Returns:
        true if a Rule for the Language uses multi file analysis, false otherwise.
      • removeDysfunctionalRules

        public void removeDysfunctionalRules​(Collection<Rule> collector)
        Deprecated.
        Remove and collect any rules that report problems.
        Parameters:
        collector -
      • getChecksum

        public long getChecksum()
        Deprecated.
        Retrieves a checksum of the rulesets being used. Any change to any rule of any ruleset should trigger a checksum change.
        Returns:
        The checksum for this ruleset collection.