Class ParseResult<T>

java.lang.Object
com.github.javaparser.ParseResult<T>

public class ParseResult<T> extends Object
The results given when parsing with an instance of JavaParser.
  • Field Details

    • result

      private final T result
    • problems

      private final List<Problem> problems
    • commentsCollection

      private final CommentsCollection commentsCollection
    • sourcePath

      private Path sourcePath
      Optional source path associated with this parse operation. This may be set by higher-level utilities (e.g., SourceRoot) to allow callers to correlate parse problems with the originating file path even when no CompilationUnit is produced.

      Contract: - If present, it's expected to be an absolute Path to the source input used for this parse. - This value should be set immediately after parsing is performed and treated as effectively immutable thereafter.

  • Constructor Details

    • ParseResult

      public ParseResult(T result, List<Problem> problems, CommentsCollection commentsCollection)
      General constructor.
      Parameters:
      result - the AST, or empty if it wasn't created.
      problems - a list of encountered parsing problems.
  • Method Details

    • isSuccessful

      public boolean isSuccessful()
      Returns:
      if parsing was successful, meaning no errors of any kind were encountered.
    • ifSuccessful

      public void ifSuccessful(Consumer<T> consumer)
      Calls the consumer with the result if parsing was succesful.
    • setSourcePath

      public ParseResult<T> setSourcePath(Path sourcePath)
      Associates a source path with this parse result. Returns this for chaining.

      Notes: - Intended for use by infrastructure (e.g., SourceRoot) to publish the originating file path. - Should be called immediately after parsing and not modified afterwards to avoid surprises in concurrent contexts. - The provided path is expected to be absolute.

    • getProblems

      public List<Problem> getProblems()
      Returns:
      the list of encountered parsing problems. Empty when no problems were encountered.
    • getProblem

      public Problem getProblem(int i)
      Returns:
      the i'th encountered parsing problem. May throw IndexOutOfBoundsException.
    • getCommentsCollection

      public Optional<CommentsCollection> getCommentsCollection()
      Returns:
      the complete collection of comments encountered while parsing.
    • getResult

      public Optional<T> getResult()
      Returns:
      the AST of the parsed source code, or empty if parsing failed completely.
    • getSourcePath

      public Optional<Path> getSourcePath()
      Returns:
      the absolute path to the source file this parse result originates from, or empty if no file parsing.
    • toString

      public String toString()
      Overrides:
      toString in class Object