java.lang.Object
com.google.javascript.jscomp.parsing.parser.trees.ParseTree
Direct Known Subclasses:
ArgumentListTree, ArrayLiteralExpressionTree, ArrayPatternTree, AwaitExpressionTree, BinaryOperatorTree, BlockTree, BreakStatementTree, CallExpressionTree, CaseClauseTree, CatchTree, ClassDeclarationTree, CommaExpressionTree, ComprehensionForTree, ComprehensionIfTree, ComprehensionTree, ComputedPropertyDefinitionTree, ComputedPropertyFieldTree, ComputedPropertyGetterTree, ComputedPropertyMethodTree, ComputedPropertySetterTree, ConditionalExpressionTree, ContinueStatementTree, DebuggerStatementTree, DefaultClauseTree, DefaultParameterTree, DoWhileStatementTree, DynamicImportTree, EmptyStatementTree, ExportDeclarationTree, ExportSpecifierTree, ExpressionStatementTree, FieldDeclarationTree, FinallyTree, ForAwaitOfStatementTree, ForInStatementTree, FormalParameterListTree, ForOfStatementTree, ForStatementTree, FunctionDeclarationTree, GetAccessorTree, IdentifierExpressionTree, IfStatementTree, ImportDeclarationTree, ImportMetaExpressionTree, ImportSpecifierTree, IterRestTree, IterSpreadTree, LabelledStatementTree, LiteralExpressionTree, MemberExpressionTree, MemberLookupExpressionTree, MissingPrimaryExpressionTree, NewExpressionTree, NewTargetExpressionTree, NullTree, ObjectLiteralExpressionTree, ObjectPatternTree, ObjectRestTree, ObjectSpreadTree, OptChainCallExpressionTree, OptionalMemberExpressionTree, OptionalMemberLookupExpressionTree, ParenExpressionTree, ProgramTree, PropertyNameAssignmentTree, ReturnStatementTree, SetAccessorTree, SuperExpressionTree, SwitchStatementTree, TemplateLiteralExpressionTree, TemplateLiteralPortionTree, TemplateSubstitutionTree, ThisExpressionTree, ThrowStatementTree, TryStatementTree, UnaryExpressionTree, UpdateExpressionTree, VariableDeclarationListTree, VariableDeclarationTree, VariableStatementTree, WhileStatementTree, WithStatementTree, YieldExpressionTree

public class ParseTree extends Object
An abstract syntax tree for JavaScript parse trees. Immutable. A plain old data structure. Should include data members and simple accessors only. Derived classes should have a 'Tree' suffix. Each concrete derived class should have a ParseTreeType whose name matches the derived class name. A parse tree derived from source should have a non-null location. A parse tree that is synthesized by the compiler may have a null location. When adding a new subclass of ParseTree you must also do the following: - add a new entry to ParseTreeType - add ParseTree.asXTree()