Package org.mozilla.javascript.ast
Class TryStatement
java.lang.Object
org.mozilla.javascript.Node
org.mozilla.javascript.ast.AstNode
org.mozilla.javascript.ast.TryStatement
- All Implemented Interfaces:
Comparable<AstNode>
,Iterable<Node>
Try/catch/finally statement. Node type is
Token.TRY
.
TryStatement : try Block Catch try Block Finally try Block Catch Finally Catch : catch ( Identifier ) Block Finally : finally Block
-
Nested Class Summary
Nested classes/interfaces inherited from class org.mozilla.javascript.ast.AstNode
AstNode.DebugPrintVisitor, AstNode.PositionComparator
Nested classes/interfaces inherited from class org.mozilla.javascript.Node
Node.NodeIterator
-
Field Summary
Fields inherited from class org.mozilla.javascript.ast.AstNode
inlineComment, length, parent, position
Fields inherited from class org.mozilla.javascript.Node
ARROW_FUNCTION_PROP, ATTRIBUTE_FLAG, BOTH, CASEARRAY_PROP, CATCH_SCOPE_PROP, CONTROL_BLOCK_PROP, DECR_FLAG, DESCENDANTS_FLAG, DESTRUCTURING_ARRAY_LENGTH, DESTRUCTURING_NAMES, DESTRUCTURING_PARAMS, DIRECTCALL_PROP, END_DROPS_OFF, END_RETURNS, END_RETURNS_VALUE, END_UNREACHED, END_YIELDS, EXPRESSION_CLOSURE_PROP, first, FUNCTION_PROP, GENERATOR_END_PROP, INCRDECR_PROP, ISNUMBER_PROP, JSDOC_PROP, LABEL_ID_PROP, last, LAST_PROP, LEFT, lineno, LOCAL_BLOCK_PROP, LOCAL_PROP, MEMBER_TYPE_PROP, NAME_PROP, next, NON_SPECIALCALL, OBJECT_IDS_PROP, OBJECT_LITERAL_DESTRUCTURING, OPTIONAL_CHAINING, PARENTHESIZED_PROP, POST_FLAG, PROPERTY_FLAG, propListHead, REGEXP_PROP, RIGHT, SKIP_INDEXES_PROP, SPECIALCALL_EVAL, SPECIALCALL_PROP, SPECIALCALL_WITH, TARGETBLOCK_PROP, TEMPLATE_LITERAL_PROP, TRAILING_COMMA, type, VARIABLE_PROP
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addCatchClause
(CatchClause clause) Add a catch-clause to the end of the list, and sets its parent to this node.Returns list ofCatchClause
nodes.Returns finally block, ornull
if not presentint
Returns position offinally
keyword, if present, or -1void
setCatchClauses
(List<CatchClause> catchClauses) Sets list ofCatchClause
nodes.void
setFinallyBlock
(AstNode finallyBlock) Sets finally block, and sets its parent to this node.void
setFinallyPosition
(int finallyPosition) Sets position offinally
keyword, if present, or -1void
setTryBlock
(AstNode tryBlock) Sets try block.toSource
(int depth) Emits source code for this node.void
visit
(NodeVisitor v) Visits this node, then the try-block, then any catch clauses, and then any finally block.Methods inherited from class org.mozilla.javascript.ast.AstNode
addChild, assertNotNull, codeBug, compareTo, debugPrint, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getInlineComment, getLength, getLineno, getParent, getPosition, hasSideEffects, makeIndent, operatorToString, printList, setBounds, setInlineComment, setLength, setParent, setPosition, setRelative, shortName, toSource
Methods inherited from class org.mozilla.javascript.Node
addChildAfter, addChildBefore, addChildrenToBack, addChildrenToFront, addChildToBack, addChildToFront, getBigInt, getChildBefore, getColumn, getDouble, getExistingIntProp, getFirstChild, getIntProp, getJsDoc, getJsDocNode, getLastChild, getLastSibling, getNext, getProp, getScope, getString, getType, hasChildren, hasConsistentReturnUsage, iterator, labelId, labelId, newNumber, newString, newString, newTarget, putIntProp, putProp, removeChild, removeChildren, removeProp, replaceChild, replaceChildAfter, resetTargets, setBigInt, setDouble, setJsDocNode, setLineColumnNumber, setScope, setString, setType, toString, toStringTree
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
TryStatement
public TryStatement() -
TryStatement
public TryStatement(int pos) -
TryStatement
public TryStatement(int pos, int len)
-
-
Method Details
-
getTryBlock
-
setTryBlock
Sets try block. Also sets its parent to this node.- Throws:
IllegalArgumentException
- } iftryBlock
isnull
-
getCatchClauses
Returns list ofCatchClause
nodes. If there are no catch clauses, returns an immutable empty list. -
setCatchClauses
Sets list ofCatchClause
nodes. Also sets their parents to this node. May benull
. Replaces any existing catch clauses for this node. -
addCatchClause
Add a catch-clause to the end of the list, and sets its parent to this node.- Throws:
IllegalArgumentException
- } ifclause
isnull
-
getFinallyBlock
Returns finally block, ornull
if not present -
setFinallyBlock
Sets finally block, and sets its parent to this node. May benull
. -
getFinallyPosition
public int getFinallyPosition()Returns position offinally
keyword, if present, or -1 -
setFinallyPosition
public void setFinallyPosition(int finallyPosition) Sets position offinally
keyword, if present, or -1 -
toSource
Description copied from class:AstNode
Emits source code for this node. Callee is responsible for calling this function recursively on children, incrementing indent as appropriate.Note: if the parser was in error-recovery mode, some AST nodes may have
null
children that are expected to be non-null
when no errors are present. In this situation, the behavior of thetoSource
method is undefined:toSource
implementations may assume that the AST node is error-free, since it is intended to be invoked only at runtime after a successful parse. -
visit
Visits this node, then the try-block, then any catch clauses, and then any finally block.
-