public final class JavaParser extends Object
Constructor and Description |
---|
JavaParser()
Instantiate the parser with default configuration.
|
JavaParser(ParserConfiguration configuration)
Instantiate the parser.
|
Modifier and Type | Method and Description |
---|---|
static CompilationUnit |
parse(File file)
Parses the Java code contained in a
File and returns a
CompilationUnit that represents it.Note: Uses UTF-8 encoding |
static CompilationUnit |
parse(File file,
Charset encoding)
Parses the Java code contained in a
File and returns a
CompilationUnit that represents it. |
static CompilationUnit |
parse(InputStream in)
Parses the Java code contained in the
InputStream and returns a
CompilationUnit that represents it.Note: Uses UTF-8 encoding |
static CompilationUnit |
parse(InputStream in,
Charset encoding)
Parses the Java code contained in the
InputStream and returns a
CompilationUnit that represents it. |
<N extends Node> |
parse(ParseStart<N> start,
Provider provider)
Parses source code.
|
static CompilationUnit |
parse(Path path)
Parses the Java code contained in a file and returns a
CompilationUnit that represents it.Note: Uses UTF-8 encoding |
static CompilationUnit |
parse(Path path,
Charset encoding)
Parses the Java code contained in a file and returns a
CompilationUnit that represents it. |
static CompilationUnit |
parse(Reader reader)
Parses Java code from a Reader and returns a
CompilationUnit that represents it. |
static CompilationUnit |
parse(String code)
Parses the Java code contained in code and returns a
CompilationUnit that represents it. |
static AnnotationExpr |
parseAnnotation(String annotation)
Parses the Java annotation contained in a
String and returns a
AnnotationExpr that represents it. |
static BodyDeclaration<?> |
parseAnnotationBodyDeclaration(String body)
Parses the Java annotation body declaration(e.g fields or methods) contained in a
String and returns a BodyDeclaration that represents it. |
static BlockStmt |
parseBlock(String blockStatement)
|
static BodyDeclaration<?> |
parseClassBodyDeclaration(String body)
Parses a Java class body declaration(e.g fields or methods) and returns a
BodyDeclaration that represents it. |
static ClassOrInterfaceType |
parseClassOrInterfaceType(String type)
Parses a Java type name and returns a
ClassOrInterfaceType that represents it. |
static ExplicitConstructorInvocationStmt |
parseExplicitConstructorInvocationStmt(String statement)
Parses the this(...) and super(...) statements that may occur at the start of a constructor.
|
static <T extends Expression> |
parseExpression(String expression)
Parses the Java expression contained in a
String and returns a
Expression that represents it. |
static ImportDeclaration |
parseImport(String importDeclaration)
Parses the Java import contained in a
String and returns a
ImportDeclaration that represents it. |
static BodyDeclaration |
parseInterfaceBodyDeclaration(String body)
Parses a Java interface body declaration(e.g fields or methods) and returns a
BodyDeclaration that represents it. |
static Javadoc |
parseJavadoc(String content)
Parses the content of a JavadocComment and returns a
Javadoc that
represents it. |
static Name |
parseName(String qualifiedName)
Parses a qualified name (one that can have "."s in it) and returns it as a Name.
|
static Parameter |
parseParameter(String parameter)
Parses a single parameter (a type and a name) and returns it as a Parameter.
|
static CompilationUnit |
parseResource(ClassLoader classLoader,
String path,
Charset encoding)
Parses the Java code contained in a resource and returns a
CompilationUnit that represents it. |
static CompilationUnit |
parseResource(String path)
Parses the Java code contained in a resource and returns a
CompilationUnit that represents it.Note: Uses UTF-8 encoding |
static CompilationUnit |
parseResource(String path,
Charset encoding)
Parses the Java code contained in a resource and returns a
CompilationUnit that represents it. |
static Statement |
parseStatement(String statement)
|
static VariableDeclarationExpr |
parseVariableDeclarationExpr(String declaration)
Parses a variable declaration expression and returns a
VariableDeclarationExpr
that represents it. |
public JavaParser()
public JavaParser(ParserConfiguration configuration)
public <N extends Node> ParseResult<N> parse(ParseStart<N> start, Provider provider)
N
- the subclass of Node that is the result of parsing in the start.start
- refer to the constants in ParseStart to see what can be parsed.provider
- refer to Providers to see how you can read source.public static CompilationUnit parse(InputStream in, Charset encoding)
InputStream
and returns a
CompilationUnit
that represents it.in
- InputStream
containing Java source codeencoding
- encoding of the source codeParseProblemException
- if the source code has parser errorspublic static CompilationUnit parse(InputStream in)
InputStream
and returns a
CompilationUnit
that represents it.in
- InputStream
containing Java source codeParseProblemException
- if the source code has parser errorspublic static CompilationUnit parse(File file, Charset encoding) throws FileNotFoundException
File
and returns a
CompilationUnit
that represents it.file
- File
containing Java source codeencoding
- encoding of the source codeParseProblemException
- if the source code has parser errorsFileNotFoundException
- the file was not foundpublic static CompilationUnit parse(File file) throws FileNotFoundException
File
and returns a
CompilationUnit
that represents it.file
- File
containing Java source codeParseProblemException
- if the source code has parser errorsFileNotFoundException
- the file was not foundpublic static CompilationUnit parse(Path path, Charset encoding) throws IOException
CompilationUnit
that represents it.path
- path to a file containing Java source codeencoding
- encoding of the source codeIOException
- the path could not be accessedParseProblemException
- if the source code has parser errorspublic static CompilationUnit parse(Path path) throws IOException
CompilationUnit
that represents it.path
- path to a file containing Java source codeParseProblemException
- if the source code has parser errorsIOException
- the path could not be accessedpublic static CompilationUnit parseResource(String path) throws IOException
CompilationUnit
that represents it.path
- path to a resource containing Java source code. As resource is accessed through a class loader, a
leading "/" is not allowed in pathToResourceParseProblemException
- if the source code has parser errorsIOException
- the path could not be accessedpublic static CompilationUnit parseResource(String path, Charset encoding) throws IOException
CompilationUnit
that represents it.path
- path to a resource containing Java source code. As resource is accessed through a class loader, a
leading "/" is not allowed in pathToResourceencoding
- encoding of the source codeParseProblemException
- if the source code has parser errorsIOException
- the path could not be accessedpublic static CompilationUnit parseResource(ClassLoader classLoader, String path, Charset encoding) throws IOException
CompilationUnit
that represents it.classLoader
- the classLoader that is asked to load the resourcepath
- path to a resource containing Java source code. As resource is accessed through a class loader, a
leading "/" is not allowed in pathToResourceParseProblemException
- if the source code has parser errorsIOException
- the path could not be accessedpublic static CompilationUnit parse(Reader reader)
CompilationUnit
that represents it.reader
- the reader containing Java source codeParseProblemException
- if the source code has parser errorspublic static CompilationUnit parse(String code)
CompilationUnit
that represents it.code
- Java source codeParseProblemException
- if the source code has parser errorspublic static BlockStmt parseBlock(String blockStatement)
blockStatement
- String
containing Java block codeParseProblemException
- if the source code has parser errorspublic static Statement parseStatement(String statement)
statement
- String
containing Java statement codeParseProblemException
- if the source code has parser errorspublic static ImportDeclaration parseImport(String importDeclaration)
String
and returns a
ImportDeclaration
that represents it.importDeclaration
- String
containing Java import codeParseProblemException
- if the source code has parser errorspublic static <T extends Expression> T parseExpression(String expression)
String
and returns a
Expression
that represents it.expression
- String
containing Java expressionParseProblemException
- if the source code has parser errorspublic static AnnotationExpr parseAnnotation(String annotation)
String
and returns a
AnnotationExpr
that represents it.annotation
- String
containing Java annotationParseProblemException
- if the source code has parser errorspublic static BodyDeclaration<?> parseAnnotationBodyDeclaration(String body)
String
and returns a BodyDeclaration
that represents it.body
- String
containing Java body declarationParseProblemException
- if the source code has parser errorspublic static BodyDeclaration<?> parseClassBodyDeclaration(String body)
BodyDeclaration
that represents it.body
- the body of a classParseProblemException
- if the source code has parser errorspublic static BodyDeclaration parseInterfaceBodyDeclaration(String body)
BodyDeclaration
that represents it.body
- the body of an interfaceParseProblemException
- if the source code has parser errorspublic static ClassOrInterfaceType parseClassOrInterfaceType(String type)
ClassOrInterfaceType
that represents it.type
- the type name like a.b.c.X or YParseProblemException
- if the source code has parser errorspublic static VariableDeclarationExpr parseVariableDeclarationExpr(String declaration)
VariableDeclarationExpr
that represents it.declaration
- a variable declaration like int x=2;
ParseProblemException
- if the source code has parser errorspublic static Javadoc parseJavadoc(String content)
Javadoc
that
represents it.content
- a variable declaration like content of my javadoc\n * second line\n * third line
ParseProblemException
- if the source code has parser errorspublic static ExplicitConstructorInvocationStmt parseExplicitConstructorInvocationStmt(String statement)
statement
- a statement like super("hello");ParseProblemException
- if the source code has parser errorspublic static Name parseName(String qualifiedName)
qualifiedName
- a name like "com.laamella.parameter_source"ParseProblemException
- if the source code has parser errorspublic static Parameter parseParameter(String parameter)
parameter
- a parameter like "int[] x"ParseProblemException
- if the source code has parser errorsCopyright © 2007–2017. All rights reserved.