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.PositionComparatorNested 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, positionFields 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCatchClause(CatchClause clause) Add a catch-clause to the end of the list, and sets its parent to this node.Returns list ofCatchClausenodes.Returns finally block, ornullif not presentintReturns position offinallykeyword, if present, or -1voidsetCatchClauses(List<CatchClause> catchClauses) Sets list ofCatchClausenodes.voidsetFinallyBlock(AstNode finallyBlock) Sets finally block, and sets its parent to this node.voidsetFinallyPosition(int finallyPosition) Sets position offinallykeyword, if present, or -1voidsetTryBlock(AstNode tryBlock) Sets try block.toSource(int depth) Emits source code for this node.voidvisit(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, toSourceMethods 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, toStringTreeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods 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- } iftryBlockisnull
-
getCatchClauses
Returns list ofCatchClausenodes. If there are no catch clauses, returns an immutable empty list. -
setCatchClauses
Sets list ofCatchClausenodes. 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- } ifclauseisnull
-
getFinallyBlock
Returns finally block, ornullif not present -
setFinallyBlock
Sets finally block, and sets its parent to this node. May benull. -
getFinallyPosition
public int getFinallyPosition()Returns position offinallykeyword, if present, or -1 -
setFinallyPosition
public void setFinallyPosition(int finallyPosition) Sets position offinallykeyword, if present, or -1 -
toSource
Description copied from class:AstNodeEmits 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
nullchildren that are expected to be non-nullwhen no errors are present. In this situation, the behavior of thetoSourcemethod is undefined:toSourceimplementations 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.
-