Class AstValidator

java.lang.Object
com.google.javascript.jscomp.AstValidator
All Implemented Interfaces:
CompilerPass

public final class AstValidator extends Object implements CompilerPass
This class walks the AST and validates that the structure is correct.
  • Constructor Details Link icon

  • Method Details Link icon

    • setTypeValidationMode Link icon

      @CanIgnoreReturnValue public AstValidator setTypeValidationMode(com.google.javascript.jscomp.AstValidator.TypeInfoValidation mode)
      Enable or disable validation of type information.

      TODO(b/74537281): Currently only expressions are checked for type information. Do we need to do more?

    • process Link icon

      public void process(Node externs, Node root)
      Description copied from interface: CompilerPass
      Process the JS with root node root. Can modify the contents of each Node tree
      Specified by:
      process in interface CompilerPass
      Parameters:
      externs - Top of external JS tree
      root - Top of JS tree
    • validateRoot Link icon

      public void validateRoot(Node n)
    • validateCodeRoot Link icon

      public void validateCodeRoot(Node n)
    • validateScript Link icon

      public void validateScript(Node n)
    • validateModuleContents Link icon

      public void validateModuleContents(Node n)
    • validateStatements Link icon

      public void validateStatements(Node n)
    • validateStatement Link icon

      public void validateStatement(Node n)
    • validateStatement Link icon

      public void validateStatement(Node n, boolean isAmbient)
      Validates a statement node and its children.
      Parameters:
      isAmbient - whether this statement comes from TS ambient `declare [...]`
    • validateExpression Link icon

      public void validateExpression(Node n)