Class JavaAstScanner

java.lang.Object
org.sonar.java.ast.JavaAstScanner

public class JavaAstScanner extends Object
  • Constructor Details

    • JavaAstScanner

      public JavaAstScanner(@Nullable SonarComponents sonarComponents)
  • Method Details

    • getClasspath

      public List<File> getClasspath()
    • scanWithoutParsing

      public Map<Boolean,List<org.sonar.api.batch.fs.InputFile>> scanWithoutParsing(Iterable<? extends org.sonar.api.batch.fs.InputFile> inputFiles)
      Attempt to scan files without parsing, using the raw input file and cached information.
      Parameters:
      inputFiles - The list of files to analyze
      Returns:
      A map with 2 lists of inputFiles. Under the true key, files that have successfully been scanned without parsing and, under the false key, files that need to be parsed for further analysis.
    • scan

      public void scan(Iterable<? extends org.sonar.api.batch.fs.InputFile> inputFiles)
    • scanForTesting

      public void scanForTesting(Iterable<? extends org.sonar.api.batch.fs.InputFile> inputFiles, Consumer<CompilationUnitTree> modifyCompilationUnit)
      Scan the given files and modify
      Parameters:
      inputFiles - The list of files to analyze
      modifyCompilationUnit - allow you to modify the ast before running the analysis on it, for example to remove semantic information
    • filterModuleInfo

      public <T extends org.sonar.api.batch.fs.InputFile> Stream<T> filterModuleInfo(Iterable<T> inputFiles)
    • endOfAnalysis

      public void endOfAnalysis()
    • simpleScan

      public void simpleScan(org.sonar.api.batch.fs.InputFile inputFile, JParserConfig.Result result, Consumer<JavaTree.CompilationUnitTreeImpl> cleanUp)
    • simpleScan

      public void simpleScan(org.sonar.api.batch.fs.InputFile inputFile, JParserConfig.Result result, Consumer<JavaTree.CompilationUnitTreeImpl> cleanUp, Consumer<CompilationUnitTree> modifyCompilationUnit)
    • shouldFailAnalysis

      public boolean shouldFailAnalysis()
    • checkInterrupted

      public void checkInterrupted(Exception e)
    • setVisitorBridge

      public void setVisitorBridge(VisitorsBridge visitor)
    • scanSingleFileForTests

      public static void scanSingleFileForTests(org.sonar.api.batch.fs.InputFile file, VisitorsBridge visitorsBridge)
    • scanSingleFileForTests

      public static void scanSingleFileForTests(org.sonar.api.batch.fs.InputFile inputFile, VisitorsBridge visitorsBridge, @Nullable SonarComponents sonarComponents)