Interface CheckConformance.Rule

All Known Implementing Classes:
ConformanceRules.AbstractRule, ConformanceRules.BanCreateDom, ConformanceRules.BanCreateElement, ConformanceRules.BanElementSetAttribute, ConformanceRules.BanExecCommand, ConformanceRules.BanForOf, ConformanceRules.BanGlobalVars, ConformanceRules.BannedEnhance, ConformanceRules.BannedModsRegex, ConformanceRules.BanNonLiteralArgsToGoogStringConstFrom, ConformanceRules.BanNullDeref, ConformanceRules.BanSettingAttributes, ConformanceRules.BanStaticThis, ConformanceRules.BanThrowOfNonErrorTypes, ConformanceRules.BanUnknownDirectThisPropsReferences, ConformanceRules.BanUnknownThis, ConformanceRules.BanUnknownTypedClassPropsReferences, ConformanceRules.BanUnresolvedType, ConformanceRules.RequireUseStrict, ConformanceRules.StrictBanUnresolvedType
Enclosing class:
CheckConformance

public static interface CheckConformance.Rule
A rule that can be checked for conformance.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    check(NodeTraversal t, Node n, com.google.javascript.jscomp.ConformanceConfig.LibraryLevelNonAllowlistedConformanceViolationsBehavior behavior)
    Perform conformance check
    Return a precondition for this rule.
  • Method Details

    • getPrecondition

      default @Nullable CheckConformance.Precondition getPrecondition()
      Return a precondition for this rule.

      This method will only be called once (per rule) during the creation of the CheckConformance pass. Therefore, the return must be constant.

      Returning null means that there is no precondition. This is convenient, but can be a major performance hit.

    • check

      void check(NodeTraversal t, Node n, com.google.javascript.jscomp.ConformanceConfig.LibraryLevelNonAllowlistedConformanceViolationsBehavior behavior)
      Perform conformance check