public class CatchClause extends AstNode
Token.CATCH
.
CatchClause : catch ( Identifier [if Expression] ) Block
AstNode.DebugPrintVisitor, AstNode.PositionComparator
Node.NodeIterator
ATTRIBUTE_FLAG, BOTH, CASEARRAY_PROP, CATCH_SCOPE_PROP, CONTROL_BLOCK_PROP, DECR_FLAG, DESCENDANTS_FLAG, DESTRUCTURING_ARRAY_LENGTH, DESTRUCTURING_NAMES, DESTRUCTURING_PARAMS, DESTRUCTURING_SHORTHAND, 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, PARENTHESIZED_PROP, POST_FLAG, PROPERTY_FLAG, propListHead, REGEXP_PROP, RIGHT, SKIP_INDEXES_PROP, SPECIALCALL_EVAL, SPECIALCALL_PROP, SPECIALCALL_WITH, TARGETBLOCK_PROP, type, VARIABLE_PROP
Constructor and Description |
---|
CatchClause() |
CatchClause(int pos) |
CatchClause(int pos,
int len) |
Modifier and Type | Method and Description |
---|---|
Block |
getBody()
Returns catch body
|
AstNode |
getCatchCondition()
Returns catch condition node, if present
|
int |
getIfPosition()
Returns position of "if" keyword
|
int |
getLp()
Returns left paren position
|
int |
getRp()
Returns right paren position
|
Name |
getVarName()
Returns catch variable node
|
void |
setBody(Block body)
Sets catch body, and sets its parent to this node.
|
void |
setCatchCondition(AstNode catchCondition)
Sets catch condition node, and sets its parent to this node.
|
void |
setIfPosition(int ifPosition)
Sets position of "if" keyword
|
void |
setLp(int lp)
Sets left paren position
|
void |
setParens(int lp,
int rp)
Sets both paren positions
|
void |
setRp(int rp)
Sets right paren position
|
void |
setVarName(Name varName)
Sets catch variable node, and sets its parent to this node.
|
java.lang.String |
toSource(int depth)
Emits source code for this node.
|
void |
visit(NodeVisitor v)
Visits this node, the catch var name node, the condition if
non-
null , and the catch body. |
addChild, assertNotNull, codeBug, compareTo, debugPrint, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getLength, getLineno, getParent, getPosition, hasSideEffects, makeIndent, operatorToString, printList, setBounds, setLength, setParent, setPosition, setRelative, shortName, toSource
addChildAfter, addChildBefore, addChildrenToBack, addChildrenToFront, addChildToBack, addChildToFront, getChildBefore, 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, setDouble, setJsDocNode, setLineno, setScope, setString, setType, toString, toStringTree
public CatchClause()
public CatchClause(int pos)
public CatchClause(int pos, int len)
public Name getVarName()
public void setVarName(Name varName)
varName
- catch variablejava.lang.IllegalArgumentException
- if varName is null
public AstNode getCatchCondition()
null
if not presentpublic void setCatchCondition(AstNode catchCondition)
catchCondition
- catch condition node. Can be null
.public Block getBody()
public void setBody(Block body)
java.lang.IllegalArgumentException
- if body is null
public int getLp()
public void setLp(int lp)
public int getRp()
public void setRp(int rp)
public void setParens(int lp, int rp)
public int getIfPosition()
public void setIfPosition(int ifPosition)
ifPosition
- position of "if" keyword, if present, or -1public java.lang.String toSource(int depth)
AstNode
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 the
toSource
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.
public void visit(NodeVisitor v)
null
, and the catch body.