- java.lang.Object
-
- jdk.nashorn.api.tree.SimpleTreeVisitorES5_1<R,P>
-
- Type Parameters:
R
- the return type of this visitor's methods. UseVoid
for visitors that do not need to return results.P
- the type of the additional parameter to this visitor's methods. UseVoid
for visitors that do not need an additional parameter.
- All Implemented Interfaces:
TreeVisitor<R,P>
- Direct Known Subclasses:
SimpleTreeVisitorES6
public class SimpleTreeVisitorES5_1<R,P> extends Object implements TreeVisitor<R,P>
A simple implementation of the TreeVisitor for ECMAScript edition 5.1.The visit methods corresponding to ES 5.1 language constructs walk the "components" of the given tree by calling accept method passing the current visitor and the additional parameter.
For constructs introduced in later versions,
visitUnknown
is called instead which throwsUnknownTreeException
.Methods in this class may be overridden subject to their general contract. Note that annotating methods in concrete subclasses with
@Override
will help ensure that methods are overridden as intended.
-
-
Constructor Summary
Constructors Constructor Description SimpleTreeVisitorES5_1()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description R
visitClassDeclaration(ClassDeclarationTree node, P p)
Visits aClassDeclarationTree
tree by callingvisitUnknown
.R
visitClassExpression(ClassExpressionTree node, P p)
Visits aClassExpressionTree
tree by callingvisitUnknown
.R
visitExportEntry(ExportEntryTree node, P p)
Visits anExportEntryTree
tree by callingvisitUnknown
.R
visitForOfLoop(ForOfLoopTree node, P p)
Visits aForOfLoopTree
tree by callingvisitUnknown
.R
visitImportEntry(ImportEntryTree node, P p)
Visits anImportEntryTree
tree by callingvisitUnknown
.R
visitModule(ModuleTree node, P p)
Visits aModuleTree
tree by callingvisitUnknown
.R
visitSpread(SpreadTree node, P p)
Visits aSpreadTree
tree by callingvisitUnknown
.R
visitTemplateLiteral(TemplateLiteralTree node, P p)
Visits aTemplateLiteralTree
tree by callingvisitUnknown
.R
visitUnknown(Tree node, P p)
Visit unknown expression/statement tree.R
visitYield(YieldTree node, P p)
Visits aYieldTree
tree by callingvisitUnknown
.-
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods declared in interface jdk.nashorn.api.tree.TreeVisitor
visitArrayAccess, visitArrayLiteral, visitAssignment, visitBinary, visitBlock, visitBreak, visitCase, visitCatch, visitCompilationUnit, visitCompoundAssignment, visitConditionalExpression, visitContinue, visitDebugger, visitDoWhileLoop, visitEmptyStatement, visitErroneous, visitExpressionStatement, visitForInLoop, visitForLoop, visitFunctionCall, visitFunctionDeclaration, visitFunctionExpression, visitIdentifier, visitIf, visitInstanceOf, visitLabeledStatement, visitLiteral, visitMemberSelect, visitNew, visitObjectLiteral, visitParenthesized, visitProperty, visitRegExpLiteral, visitReturn, visitSwitch, visitThrow, visitTry, visitUnary, visitVariable, visitWhileLoop, visitWith
-
-
-
-
Method Detail
-
visitModule
public R visitModule(ModuleTree node, P p)
Visits aModuleTree
tree by callingvisitUnknown
.- Specified by:
visitModule
in interfaceTreeVisitor<R,P>
- Parameters:
node
- node being visitedp
- extra parameter passed to the visitor- Returns:
- the result of
visitUnknown
-
visitExportEntry
public R visitExportEntry(ExportEntryTree node, P p)
Visits anExportEntryTree
tree by callingvisitUnknown
.- Specified by:
visitExportEntry
in interfaceTreeVisitor<R,P>
- Parameters:
node
- node being visitedp
- extra parameter passed to the visitor- Returns:
- the result of
visitUnknown
-
visitImportEntry
public R visitImportEntry(ImportEntryTree node, P p)
Visits anImportEntryTree
tree by callingvisitUnknown
.- Specified by:
visitImportEntry
in interfaceTreeVisitor<R,P>
- Parameters:
node
- node being visitedp
- extra parameter passed to the visitor- Returns:
- the result of
visitUnknown
-
visitClassDeclaration
public R visitClassDeclaration(ClassDeclarationTree node, P p)
Visits aClassDeclarationTree
tree by callingvisitUnknown
.- Specified by:
visitClassDeclaration
in interfaceTreeVisitor<R,P>
- Parameters:
node
- node being visitedp
- extra parameter passed to the visitor- Returns:
- the result of
visitUnknown
-
visitClassExpression
public R visitClassExpression(ClassExpressionTree node, P p)
Visits aClassExpressionTree
tree by callingvisitUnknown
.- Specified by:
visitClassExpression
in interfaceTreeVisitor<R,P>
- Parameters:
node
- node being visitedp
- extra parameter passed to the visitor- Returns:
- the result of
visitUnknown
-
visitForOfLoop
public R visitForOfLoop(ForOfLoopTree node, P p)
Visits aForOfLoopTree
tree by callingvisitUnknown
.- Specified by:
visitForOfLoop
in interfaceTreeVisitor<R,P>
- Parameters:
node
- node being visitedp
- extra parameter passed to the visitor- Returns:
- the result of
visitUnknown
-
visitTemplateLiteral
public R visitTemplateLiteral(TemplateLiteralTree node, P p)
Visits aTemplateLiteralTree
tree by callingvisitUnknown
.- Specified by:
visitTemplateLiteral
in interfaceTreeVisitor<R,P>
- Parameters:
node
- node being visitedp
- extra parameter passed to the visitor- Returns:
- the result of
visitUnknown
-
visitSpread
public R visitSpread(SpreadTree node, P p)
Visits aSpreadTree
tree by callingvisitUnknown
.- Specified by:
visitSpread
in interfaceTreeVisitor<R,P>
- Parameters:
node
- node being visitedp
- extra parameter passed to the visitor- Returns:
- the result of
visitUnknown
-
visitYield
public R visitYield(YieldTree node, P p)
Visits aYieldTree
tree by callingvisitUnknown
.- Specified by:
visitYield
in interfaceTreeVisitor<R,P>
- Parameters:
node
- node being visitedp
- extra parameter passed to the visitor- Returns:
- the result of
visitUnknown
-
visitUnknown
public R visitUnknown(Tree node, P p)
Visit unknown expression/statement tree. This fallback will be called if new Tree subtypes are introduced in future. A specific implementation may throw {unknown tree exception if the visitor implementation was for an older language version.- Specified by:
visitUnknown
in interfaceTreeVisitor<R,P>
- Implementation Requirements:
- The default implementation of this method in
SimpleTreeVisitorES5_1
will always throwUnknownTypeException
. This behavior is not required of a subclass. - Parameters:
node
- node being visitedp
- extra parameter passed to the visitor- Returns:
- abnormal return by throwing exception always
- Throws:
UnknownTreeException
- a visitor implementation may optionally throw this exception
-
-