Class TreeMaker
java.lang.Object
io.github.potjerodekool.nabu.tree.TreeMaker
Utility methods of creating trees.
-
Method Summary
Modifier and TypeMethodDescriptionstatic AnnotatedTypeTreeannotatedTypeTree(List<AnnotationTree> annotations, ExpressionTree clazz, List<ExpressionTree> arguments, int lineNumber, int columnNumber) static AnnotationTreeannotationTree(IdentifierTree name, List<ExpressionTree> arguments, int lineNumber, int columnNumber) @MyAnnotation
TreeMaker.annotationTree( IdentifierTree.create("MyAnnotation"), Collections.emptyList(), 5, 0);
@Deprecated(since = "4.8")
TreeMaker.annotationTree( IdentifierTree.create("Deprecated"), List.of( TreeMaker.assignmentExpression( IdentifierTree.create("since"), TreeMaker.literalExpressionTree("4.0", 5, 0), 5, 0 ) ), 5, 0);static ArrayTypeTreearrayTypeTree(Tree componentType, List<Dimension> dimensions, int lineNumber, int columnNumber) static AssignmentExpressionTreeassignmentExpression(ExpressionTree left, ExpressionTree right, int lineNumber, int columnNumber) static BinaryExpressionTreebinaryExpressionTree(ExpressionTree left, Tag tag, ExpressionTree right, int lineNumber, int columnNumber) static BlockStatementTreeblockStatement(List<StatementTree> statements, int lineNumber, int columnNumber) static CastExpressionTreecastExpressionTree(ExpressionTree targetType, ExpressionTree expression, int lineNumber, int columnNumber) static ClassDeclarationclassDeclaration(Kind kind, NestingKind nestingKind, Modifiers modifiers, String simpleName, List<Tree> enclosedElements, List<TypeParameterTree> typeParameters, List<ExpressionTree> implementations, ExpressionTree extending, List<IdentifierTree> permits, int lineNumber, int columnNumber) static FieldAccessExpressionTreeclassLiteralTree(ExpressionTree type, int lineNumber, int columnNumber) static CompilationUnitcompilationUnit(FileObject fileObject, List<ImportItem> importItems, List<Tree> declarations, int lineNumber, int columnNumber) static DoWhileStatementTreedoWhileStatement(StatementTree body, ExpressionTree condition, int lineNumber, int columnNumber) static EmptyStatementTreeemptyStatementTree(int lineNumber, int columnNumber) static EnhancedForStatementTreeenhancedForStatement(VariableDeclaratorTree localVariable, ExpressionTree expression, StatementTree statement, int lineNumber, int columnNumber) static ErrorTreeerrorTree(int lineNumber, int columnNumber) static ExpressionStatementTreeexpressionStatement(ExpressionTree expression, int line, int columnNumber) static FieldAccessExpressionTreefieldAccessExpressionTree(ExpressionTree target, IdentifierTree field, int lineNumber, int columnNumber) static ForStatementTreeforStatement(List<StatementTree> forInit, ExpressionTree expression, List<StatementTree> forUpdate, StatementTree statement, int lineNumber, int columnNumber) static Functionfunction(String simpleName, Kind kind, Modifiers modifiers, List<TypeParameterTree> typeParameters, VariableDeclaratorTree receiveParameter, List<VariableDeclaratorTree> parameters, ExpressionTree returnType, List<Tree> thrownTypes, BlockStatementTree body, ExpressionTree defaultValue, int lineNumber, int columnNumber) static IdentifierTreeidentifier(String identifier, int line, int columnNumber) static IfStatementTreeifStatementTree(ExpressionTree expression, StatementTree thenStatement, StatementTree elseStatement, int lineNumber, int columnNumber) static ImportItemimportItem(FieldAccessExpressionTree qualified, boolean isStatic, int lineNumber, int columnNumber) static InstanceOfExpressioninstanceOfExpression(ExpressionTree expression, Tree typeExpression, int lineNumber, int columnNumber) static LambdaExpressionTreelambdaExpressionTree(List<VariableDeclaratorTree> parameters, StatementTree body, int lineNumber, int columnNumber) static LiteralExpressionTreeliteralExpressionTree(Object literal, int lineNumber, int columnNumber) static MethodInvocationTreemethodInvocationTree(ExpressionTree methodSelector, List<IdentifierTree> typeArguments, List<ExpressionTree> arguments, int lineNumber, int columnNumber) static NewArrayExpressionnewArrayExpression(ExpressionTree type, List<ExpressionTree> dimensions, List<ExpressionTree> elements, int lineNumber, int columnNumber) static NewClassExpressionnewClassExpression(ExpressionTree name, List<ExpressionTree> typeArguments, List<ExpressionTree> arguments, ClassDeclaration classDeclaration, int lineNumber, int columnNumber) static PackageDeclarationpackageDeclaration(List<AnnotationTree> annotations, ExpressionTree identifier, int line, int columnNumber) static PrimitiveTypeTreeprimitiveTypeTree(PrimitiveTypeTree.Kind kind, int lineNumber, int columnNumber) static ReturnStatementTreereturnStatement(ExpressionTree expression, int lineNumber, int columnNumber) static TypeApplyTreetypeApplyTree(ExpressionTree clazz, List<? extends ExpressionTree> typeParameters, int lineNumber, int columnNumber) static TypeParameterTreetypeParameterTree(List<AnnotationTree> annotations, IdentifierTree identifier, List<ExpressionTree> typeBound, int lineNumber, int columnNumber) static TypeVariableTreetypeVariableTree(List<AnnotationTree> annotations, IdentifierTree identifier, int lineNumber, int columnNumber) static UnaryExpressionTreeunaryExpressionTree(Tag tag, ExpressionTree expression, int lineNumber, int columnNumber) static VariableDeclaratorTreevariableDeclarator(Kind kind, Modifiers modifiers, ExpressionTree type, IdentifierTree name, ExpressionTree nameExpression, Tree value, int lineNumber, int columnNumber) static VariableTypeTreevariableTypeTree(int lineNumber, int columnNumber) static WhileStatementTreewhileStatement(ExpressionTree condition, StatementTree body, int lineNumber, int columnNumber) static WildcardExpressionTreewildcardExpressionTree(BoundKind boundKind, ExpressionTree bound, int lineNumber, int columnNumber)
-
Method Details
-
identifier
-
packageDeclaration
public static PackageDeclaration packageDeclaration(List<AnnotationTree> annotations, ExpressionTree identifier, int line, int columnNumber) -
importItem
public static ImportItem importItem(FieldAccessExpressionTree qualified, boolean isStatic, int lineNumber, int columnNumber) -
variableDeclarator
public static VariableDeclaratorTree variableDeclarator(Kind kind, Modifiers modifiers, ExpressionTree type, IdentifierTree name, ExpressionTree nameExpression, Tree value, int lineNumber, int columnNumber) -
returnStatement
public static ReturnStatementTree returnStatement(ExpressionTree expression, int lineNumber, int columnNumber) -
lambdaExpressionTree
public static LambdaExpressionTree lambdaExpressionTree(List<VariableDeclaratorTree> parameters, StatementTree body, int lineNumber, int columnNumber) -
expressionStatement
public static ExpressionStatementTree expressionStatement(ExpressionTree expression, int line, int columnNumber) -
binaryExpressionTree
public static BinaryExpressionTree binaryExpressionTree(ExpressionTree left, Tag tag, ExpressionTree right, int lineNumber, int columnNumber) -
instanceOfExpression
public static InstanceOfExpression instanceOfExpression(ExpressionTree expression, Tree typeExpression, int lineNumber, int columnNumber) -
unaryExpressionTree
public static UnaryExpressionTree unaryExpressionTree(Tag tag, ExpressionTree expression, int lineNumber, int columnNumber) -
castExpressionTree
public static CastExpressionTree castExpressionTree(ExpressionTree targetType, ExpressionTree expression, int lineNumber, int columnNumber) -
fieldAccessExpressionTree
public static FieldAccessExpressionTree fieldAccessExpressionTree(ExpressionTree target, IdentifierTree field, int lineNumber, int columnNumber) -
methodInvocationTree
public static MethodInvocationTree methodInvocationTree(ExpressionTree methodSelector, List<IdentifierTree> typeArguments, List<ExpressionTree> arguments, int lineNumber, int columnNumber) -
primitiveTypeTree
public static PrimitiveTypeTree primitiveTypeTree(PrimitiveTypeTree.Kind kind, int lineNumber, int columnNumber) -
typeApplyTree
public static TypeApplyTree typeApplyTree(ExpressionTree clazz, List<? extends ExpressionTree> typeParameters, int lineNumber, int columnNumber) -
variableTypeTree
-
literalExpressionTree
public static LiteralExpressionTree literalExpressionTree(Object literal, int lineNumber, int columnNumber) -
classLiteralTree
public static FieldAccessExpressionTree classLiteralTree(ExpressionTree type, int lineNumber, int columnNumber) -
wildcardExpressionTree
public static WildcardExpressionTree wildcardExpressionTree(BoundKind boundKind, ExpressionTree bound, int lineNumber, int columnNumber) -
ifStatementTree
public static IfStatementTree ifStatementTree(ExpressionTree expression, StatementTree thenStatement, StatementTree elseStatement, int lineNumber, int columnNumber) -
blockStatement
public static BlockStatementTree blockStatement(List<StatementTree> statements, int lineNumber, int columnNumber) -
emptyStatementTree
-
forStatement
public static ForStatementTree forStatement(List<StatementTree> forInit, ExpressionTree expression, List<StatementTree> forUpdate, StatementTree statement, int lineNumber, int columnNumber) -
annotatedTypeTree
public static AnnotatedTypeTree annotatedTypeTree(List<AnnotationTree> annotations, ExpressionTree clazz, List<ExpressionTree> arguments, int lineNumber, int columnNumber) -
enhancedForStatement
public static EnhancedForStatementTree enhancedForStatement(VariableDeclaratorTree localVariable, ExpressionTree expression, StatementTree statement, int lineNumber, int columnNumber) -
annotationTree
public static AnnotationTree annotationTree(IdentifierTree name, List<ExpressionTree> arguments, int lineNumber, int columnNumber) @MyAnnotation
TreeMaker.annotationTree( IdentifierTree.create("MyAnnotation"), Collections.emptyList(), 5, 0);
@Deprecated(since = "4.8")
TreeMaker.annotationTree( IdentifierTree.create("Deprecated"), List.of( TreeMaker.assignmentExpression( IdentifierTree.create("since"), TreeMaker.literalExpressionTree("4.0", 5, 0), 5, 0 ) ), 5, 0);- Parameters:
name- annotation namearguments- annotation arguments.lineNumber- lineNumbercolumnNumber- columnNumber- Returns:
- Returns an annotation tree.
-
newClassExpression
public static NewClassExpression newClassExpression(ExpressionTree name, List<ExpressionTree> typeArguments, List<ExpressionTree> arguments, ClassDeclaration classDeclaration, int lineNumber, int columnNumber) -
whileStatement
public static WhileStatementTree whileStatement(ExpressionTree condition, StatementTree body, int lineNumber, int columnNumber) -
doWhileStatement
public static DoWhileStatementTree doWhileStatement(StatementTree body, ExpressionTree condition, int lineNumber, int columnNumber) -
assignmentExpression
public static AssignmentExpressionTree assignmentExpression(ExpressionTree left, ExpressionTree right, int lineNumber, int columnNumber) -
typeParameterTree
public static TypeParameterTree typeParameterTree(List<AnnotationTree> annotations, IdentifierTree identifier, List<ExpressionTree> typeBound, int lineNumber, int columnNumber) -
typeVariableTree
public static TypeVariableTree typeVariableTree(List<AnnotationTree> annotations, IdentifierTree identifier, int lineNumber, int columnNumber) -
arrayTypeTree
public static ArrayTypeTree arrayTypeTree(Tree componentType, List<Dimension> dimensions, int lineNumber, int columnNumber) -
newArrayExpression
public static NewArrayExpression newArrayExpression(ExpressionTree type, List<ExpressionTree> dimensions, List<ExpressionTree> elements, int lineNumber, int columnNumber) -
compilationUnit
public static CompilationUnit compilationUnit(FileObject fileObject, List<ImportItem> importItems, List<Tree> declarations, int lineNumber, int columnNumber) -
classDeclaration
public static ClassDeclaration classDeclaration(Kind kind, NestingKind nestingKind, Modifiers modifiers, String simpleName, List<Tree> enclosedElements, List<TypeParameterTree> typeParameters, List<ExpressionTree> implementations, ExpressionTree extending, List<IdentifierTree> permits, int lineNumber, int columnNumber) -
function
public static Function function(String simpleName, Kind kind, Modifiers modifiers, List<TypeParameterTree> typeParameters, VariableDeclaratorTree receiveParameter, List<VariableDeclaratorTree> parameters, ExpressionTree returnType, List<Tree> thrownTypes, BlockStatementTree body, ExpressionTree defaultValue, int lineNumber, int columnNumber) -
errorTree
-