Module jdk.compiler
Package com.sun.source.tree
Provides interfaces to represent source code as abstract syntax
trees (AST).
- Since:
- 1.6
-
Interface Summary Interface Description AnnotatedTypeTree A tree node for an annotated type.AnnotationTree A tree node for an annotation.ArrayAccessTree A tree node for an array access expression.ArrayTypeTree A tree node for an array type.AssertTree A tree node for anassert
statement.AssignmentTree A tree node for an assignment expression.BinaryTree A tree node for a binary expression.BlockTree A tree node for a statement block.BreakTree A tree node for abreak
statement.CaseTree A tree node for acase
in aswitch
statement or expression.CatchTree A tree node for acatch
block in atry
statement.ClassTree A tree node for a class, interface, enum, or annotation type declaration.CompilationUnitTree Represents the abstract syntax tree for compilation units (source files) and package declarations (package-info.java).CompoundAssignmentTree A tree node for compound assignment operator.ConditionalExpressionTree A tree node for the conditional operator ?ContinueTree A tree node for acontinue
statement.DirectiveTree A super-type for all the directives in a ModuleTree.DoWhileLoopTree A tree node for ado
statement.EmptyStatementTree A tree node for an empty (skip) statement.EnhancedForLoopTree A tree node for an "enhanced"for
loop statement.ErroneousTree A tree node to stand in for a malformed expression.ExportsTree A tree node for an 'exports' directive in a module declaration.ExpressionStatementTree A tree node for an expression statement.ExpressionTree A tree node used as the base class for the different types of expressions.ForLoopTree A tree node for a basicfor
loop statement.IdentifierTree A tree node for an identifier expression.IfTree A tree node for anif
statement.ImportTree A tree node for an import declaration.InstanceOfTree A tree node for aninstanceof
expression.IntersectionTypeTree A tree node for an intersection type in a cast expression.LabeledStatementTree A tree node for a labeled statement.LambdaExpressionTree A tree node for a lambda expression.LineMap Provides methods to convert between character positions and line numbers for a compilation unit.LiteralTree A tree node for a literal expression.MemberReferenceTree A tree node for a member reference expression.MemberSelectTree A tree node for a member access expression.MethodInvocationTree A tree node for a method invocation expression.MethodTree A tree node for a method or annotation type element declaration.ModifiersTree A tree node for the modifiers, including annotations, for a declaration.ModuleTree A tree node for a module declaration.NewArrayTree A tree node for an expression to create a new instance of an array.NewClassTree A tree node to declare a new instance of a class.OpensTree A tree node for an 'opens' directive in a module declaration.PackageTree Represents the package declaration.ParameterizedTypeTree A tree node for a type expression involving type parameters.ParenthesizedTree A tree node for a parenthesized expression.PrimitiveTypeTree A tree node for a primitive type.ProvidesTree A tree node for a 'provides' directive in a module declaration.RequiresTree A tree node for a 'requires' directive in a module declaration.ReturnTree A tree node for areturn
statement.Scope Interface for determining locally available program elements, such as local variables and imports.StatementTree A tree node used as the base class for the different kinds of statements.SwitchExpressionTree Deprecated, for removal: This API element is subject to removal in a future version. This method is modeling switch expressions, which are part of a preview feature and may be removed if the preview feature is removed.SwitchTree A tree node for aswitch
statement.SynchronizedTree A tree node for asynchronized
statement.ThrowTree A tree node for athrow
statement.Tree 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.TryTree A tree node for atry
statement.TypeCastTree A tree node for a type cast expression.TypeParameterTree A tree node for a type parameter.UnaryTree A tree node for postfix and unary expressions.UnionTypeTree A tree node for a union type expression in a multicatch variable declaration.UsesTree A tree node for a 'uses' directive in a module declaration.VariableTree A tree node for a variable declaration.WhileLoopTree A tree node for awhile
loop statement.WildcardTree A tree node for a wildcard type argument.YieldTree Deprecated, for removal: This API element is subject to removal in a future version. This class is modeling yield from switch expressions, which are part of a preview feature and may be removed if the preview feature is removed. -
Enum Summary Enum Description CaseTree.CaseKind Deprecated, for removal: This API element is subject to removal in a future version. This enum is used to model a rule case, which is part of a preview feature and may be removed if the preview feature is removed.LambdaExpressionTree.BodyKind Lambda expressions come in two forms: expression lambdas, whose body is an expression, and statement lambdas, whose body is a blockMemberReferenceTree.ReferenceMode There are two kinds of member references: (i) method references and (ii) constructor referencesModuleTree.ModuleKind The kind of the module.Tree.Kind Enumerates all kinds of trees.