Module jdk.compiler
Package com.sun.source.tree
package com.sun.source.tree
Provides interfaces to represent source code as abstract syntax
trees (AST).
- Since:
- 1.6
-
InterfaceDescriptionA tree node for an annotated type.A tree node for an annotation.A tree node for an array access expression.A tree node for an array type.A tree node for an
assert
statement.A tree node for an assignment expression.A tree node for a binary expression.A binding pattern treeA tree node for a statement block.A tree node for abreak
statement.A tree node for acase
in aswitch
statement or expression.A tree node for acatch
block in atry
statement.A tree node for a class, interface, enum, record, or annotation type declaration.Represents the abstract syntax tree for compilation units (source files) and package declarations (package-info.java).A tree node for compound assignment operator.A tree node for the conditional operator? :
.A tree node for acontinue
statement.A super-type for all the directives in a ModuleTree.A tree node for ado
statement.A tree node for an empty (skip) statement.A tree node for an "enhanced"for
loop statement.A tree node to stand in for a malformed expression.A tree node for an 'exports' directive in a module declaration.A tree node for an expression statement.A tree node used as the base class for the different types of expressions.A tree node for a basicfor
loop statement.A tree node for an identifier expression.A tree node for anif
statement.A tree node for an import declaration.A tree node for aninstanceof
expression.A tree node for an intersection type in a cast expression.A tree node for a labeled statement.A tree node for a lambda expression.Provides methods to convert between character positions and line numbers for a compilation unit.A tree node for a literal expression.A tree node for a member reference expression.A tree node for a member access expression.A tree node for a method invocation expression.A tree node for a method or annotation type element declaration.A tree node for the modifiers, including annotations, for a declaration.A tree node for a module declaration.A tree node for an expression to create a new instance of an array.A tree node to declare a new instance of a class.A tree node for an 'opens' directive in a module declaration.Represents the package declaration.A tree node for a type expression involving type parameters.A tree node for a parenthesized expression.A tree node used as the base class for the different kinds of patterns.A tree node for a primitive type.A tree node for a 'provides' directive in a module declaration.A tree node for a 'requires' directive in a module declaration.A tree node for areturn
statement.Interface for determining locally available program elements, such as local variables and imports.A tree node used as the base class for the different kinds of statements.A tree node for aswitch
expression.A tree node for aswitch
statement.A tree node for asynchronized
statement.A tree node for athrow
statement.Common interface for all nodes in an abstract syntax tree.TreeVisitor<R,P>A visitor of trees, in the style of the visitor design pattern.A tree node for atry
statement.A tree node for a type cast expression.A tree node for a type parameter.A tree node for postfix and unary expressions.A tree node for a union type expression in a multicatch variable declaration.A tree node for a 'uses' directive in a module declaration.A tree node for a variable declaration.A tree node for awhile
loop statement.A tree node for a wildcard type argument.A tree node for ayield
statement. -
Enum ClassDescriptionThe syntactic form of this case: STATEMENT:
case <expression>: <statements>
RULE:case <expression> -> <expression>/<statement>
Lambda expressions come in two forms: expression lambdas, whose body is an expression, and statement lambdas, whose body is a blockThere are two kinds of member references: (i) method references and (ii) constructor referencesThe kind of the module.Enumerates all kinds of trees.