Package org.eclipse.jdt.core.dom
The Java DOM/AST is the set of classes that model the source code of a Java program
as a structured document.
Package Specification
This package contains the Java DOM/AST classes. An API for manipulating the
source code of a Java program as a structured document. In particular, it provides
a full abstract syntax tree for a Java compilation unit, which can be queried for
resolved type information, and modified.
The principal classes are AST
ASTNode
, and
ASTParser
.
-
Interface Summary Interface Description IAnnotationBinding Represents a resolved annotation.IBinding A binding represents a named entity in the Java language.IDocElement Common marker interface for AST nodes that represent fragments in doc elements.IExtendedModifier Common interface for AST nodes that represent modifiers or annotations.IMemberValuePairBinding Represents a resolved instance of an annotation's member value pair.IMethodBinding A method binding represents a method or constructor of a class or interface.IModuleBinding A module binding represents a module (added in JLS9 API).IPackageBinding A package binding represents a named or unnamed package.ITypeBinding A type binding represents a fully-resolved type.IVariableBinding A variable binding represents either a field of a class or interface, or a local variable declaration (including formal parameters, local variables, and exception variables). -
Class Summary Class Description AbstractTypeDeclaration Abstract subclass for type declaration, enum declaration, and annotation type declaration AST node types.AnnotatableType Abstract base class of AST nodes that represent an annotatable type (added in JLS8 API).Annotation Abstract base class of AST nodes that represent annotations.AnnotationTypeDeclaration Annotation type declaration AST node type (added in JLS3 API).AnnotationTypeMemberDeclaration Annotation type member declaration AST node type (added in JLS3 API).AnonymousClassDeclaration Anonymous class declaration AST node type.ArrayAccess Array access expression AST node type.ArrayCreation Array creation expression AST node type.ArrayInitializer Array initializer AST node type.ArrayType Type node for an array type.AssertStatement Assert statement AST node type.Assignment Assignment expression AST node type.Assignment.Operator Assignment operators (typesafe enumeration).AST Umbrella owner and abstract syntax tree node factory.ASTMatcher Concrete superclass and default implementation of an AST subtree matcher.ASTNode Abstract superclass of all Abstract Syntax Tree (AST) node types.ASTParser A Java language parser for creating abstract syntax trees (ASTs).ASTRequestor An AST requestor handles ASTs for compilation units passed toASTParser.createASTs
.ASTVisitor A visitor for abstract syntax trees.Block Block statement AST node type.BlockComment Block comment AST node type.BodyDeclaration Abstract base class of all AST nodes that represent body declarations that may appear in the body of some kind of class or interface declaration, including anonymous class declarations, enumeration declarations, and enumeration constant declarations.BooleanLiteral Boolean literal node.BreakStatement Break statement AST node type.CastExpression Cast expression AST node type.CatchClause Catch clause AST node type.CharacterLiteral Character literal nodes.ChildListPropertyDescriptor Descriptor for a child list property of an AST node.ChildPropertyDescriptor Descriptor for a child property of an AST node.ClassInstanceCreation Class instance creation expression AST node type.Comment Abstract base class for all AST nodes that represent comments.CompilationUnit Java compilation unit AST node type.ConditionalExpression Conditional expression AST node type.ConstructorInvocation Alternate constructor invocation statement AST node type.ContinueStatement Continue statement AST node type.CreationReference Creation reference expression AST node type (added in JLS8 API).Dimension AST node for an array dimension (added in JLS8 API).DoStatement Do statement AST node type.EmptyStatement Null statement AST node type.EnhancedForStatement Enhanced For statement AST node type (added in JLS3 API).EnumConstantDeclaration Enumeration constant declaration AST node type (added in JLS3 API).EnumDeclaration Enum declaration AST node type (added in JLS3 API).ExportsDirective Exports directive AST node type (added in JLS9 API).Expression Abstract base class of AST nodes that represent expressions.ExpressionMethodReference Expression method reference AST node type (added in JLS8 API).ExpressionStatement Expression statement AST node type.FieldAccess Field access expression AST node type.FieldDeclaration Field declaration node type.FileASTRequestor An AST requestor handles ASTs for compilation units passed toASTParser.createASTs
.ForStatement For statement AST node type.IfStatement If statement AST node type.ImportDeclaration Import declaration AST node type.InfixExpression Infix expression AST node type.InfixExpression.Operator Infix operators (typesafe enumeration).Initializer Static or instance initializer AST node type.InstanceofExpression Instanceof expression AST node type.IntersectionType Type node for an intersection type in a cast expression (added in JLS8 API).Javadoc AST node for a Javadoc-style doc comment.LabeledStatement Labeled statement AST node type.LambdaExpression Lambda expression AST node type (added in JLS8 API).LineComment End-of-line comment AST node type.MarkerAnnotation Marker annotation node (added in JLS3 API).MemberRef AST node for a member reference within a doc comment (Javadoc
).MemberValuePair Member value pair node (added in JLS3 API).Message Error message used to report potential errors found during the AST parsing or name resolution.MethodDeclaration Method declaration AST node type.MethodInvocation Method invocation expression AST node type.MethodRef AST node for a method or constructor reference within a doc comment (Javadoc
).MethodReference Abstract base class of all AST node types that represent a method reference expression (added in JLS8 API).MethodRefParameter AST node for a parameter within a method reference (MethodRef
).Modifier Modifier node.Modifier.ModifierKeyword Modifier keywords (typesafe enumeration).ModuleDeclaration Module declaration AST node type representing the module descriptor file (added in JLS9 API).ModuleDirective Abstract base class of AST nodes that represent module directives (added in JLS9 API).ModuleModifier Module Modifier node - represents the modifiers for the requires directive in module declaration (added in JLS9 API).ModuleModifier.ModuleModifierKeyword Module Modifier keywords (typesafe enumeration).ModulePackageAccess Abstract base class of AST nodes that represent exports and opens directives (added in JLS9 API).Name Abstract base class for all AST nodes that represent names.NameQualifiedType Node for a name-qualified type (added in JLS8 API).NodeFinder For a given selection range, finds the covered node and the covering node.NormalAnnotation Normal annotation node (added in JLS3 API).NullLiteral Null literal node.NumberLiteral Number literal nodes.OpensDirective Opens directive AST node type (added in JLS9 API).PackageDeclaration Package declaration AST node type.ParameterizedType Type node for a parameterized type (added in JLS3 API).ParenthesizedExpression Parenthesized expression AST node type.PostfixExpression Postfix expression AST node type.PostfixExpression.Operator Postfix operators (typesafe enumeration).PrefixExpression Prefix expression AST node type.PrefixExpression.Operator Prefix operators (typesafe enumeration).PrimitiveType Primitive type nodes.PrimitiveType.Code Primitive type codes (typesafe enumeration).ProvidesDirective Provides directive AST node type (added in JLS9 API).QualifiedName AST node for a qualified name.QualifiedType Type node for a qualified type (added in JLS3 API).RequiresDirective Requires directive AST node type (added in JLS9 API).ReturnStatement Return statement AST node type.SimpleName AST node for a simple name.SimplePropertyDescriptor Descriptor for a simple property of an AST node.SimpleType Type node for a named class type, a named interface type, or a type variable.SingleMemberAnnotation Single member annotation node (added in JLS3 API).SingleVariableDeclaration Single variable declaration AST node type.Statement Abstract base class of AST nodes that represent statements.StringLiteral String literal nodes.StructuralPropertyDescriptor Abstract base class for property descriptors of AST nodes.SuperConstructorInvocation Super constructor invocation statement AST node type.SuperFieldAccess Simple or qualified "super" field access expression AST node type.SuperMethodInvocation Simple or qualified "super" method invocation expression AST node type.SuperMethodReference Super method reference AST node type (added in JLS8 API).SwitchCase Switch case AST node type.SwitchStatement Switch statement AST node type.SynchronizedStatement Synchronized statement AST node type.TagElement AST node for a tag within a doc comment.TextElement AST node for a text element within a doc comment.ThisExpression Simple or qualified "this" AST node type.ThrowStatement Throw statement AST node type.TryStatement Try statement AST node type.Type Abstract base class of all type reference AST node types.TypeDeclaration Type declaration AST node type.TypeDeclarationStatement Local type declaration statement AST node type.TypeLiteral Type literal AST node type.TypeMethodReference Type method reference expression AST node type (added in JLS8 API).TypeParameter Type parameter declaration node (added in JLS3 API).UnionType Type node for an union type (added in JLS4 API).UsesDirective Uses directive AST node type (added in JLS9 API).VariableDeclaration Abstract base class of all AST node types that declare a single variable.VariableDeclarationExpression Local variable declaration expression AST node type.VariableDeclarationFragment Variable declaration fragment AST node type, used in field declarations, local variable declarations,ForStatement
initializers, andLambdaExpression
parameters.VariableDeclarationStatement Local variable declaration statement AST node type.WhileStatement While statement AST node type.WildcardType Type node for a wildcard type (added in JLS3 API).