public class ConditionalExpression extends AstNode
Token.HOOK
.
ConditionalExpression : LogicalORExpression LogicalORExpression ? AssignmentExpression : AssignmentExpressionConditionalExpressionNoIn : LogicalORExpressionNoIn LogicalORExpressionNoIn ? AssignmentExpression : AssignmentExpressionNoIn
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, FUNCTION_PROP, GENERATOR_END_PROP, INCRDECR_PROP, ISNUMBER_PROP, JSDOC_PROP, LABEL_ID_PROP, LAST_PROP, LEFT, LOCAL_BLOCK_PROP, LOCAL_PROP, MEMBER_TYPE_PROP, NAME_PROP, NON_SPECIALCALL, OBJECT_IDS_PROP, PARENTHESIZED_PROP, POST_FLAG, PROPERTY_FLAG, REGEXP_PROP, RIGHT, SKIP_INDEXES_PROP, SPECIALCALL_EVAL, SPECIALCALL_PROP, SPECIALCALL_WITH, TARGETBLOCK_PROP, VARIABLE_PROP
Constructor and Description |
---|
ConditionalExpression() |
ConditionalExpression(int pos) |
ConditionalExpression(int pos,
int len) |
Modifier and Type | Method and Description |
---|---|
int |
getColonPosition()
Returns position of : token
|
AstNode |
getFalseExpression()
Returns expression to evaluate if test is false
|
int |
getQuestionMarkPosition()
Returns position of ? token
|
AstNode |
getTestExpression()
Returns test expression
|
AstNode |
getTrueExpression()
Returns expression to evaluate if test is true
|
boolean |
hasSideEffects() |
void |
setColonPosition(int colonPosition)
Sets position of : token
|
void |
setFalseExpression(AstNode falseExpression)
Sets expression to evaluate if test is false, and sets its
parent to this node.
|
void |
setQuestionMarkPosition(int questionMarkPosition)
Sets position of ? token
|
void |
setTestExpression(AstNode testExpression)
Sets test expression, and sets its parent.
|
void |
setTrueExpression(AstNode trueExpression)
Sets expression to evaluate if test is true, 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, then the test-expression, the true-expression,
and the false-expression.
|
addChild, codeBug, compareTo, debugPrint, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getLength, getLineno, getParent, getPosition, makeIndent, operatorToString, 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 ConditionalExpression()
public ConditionalExpression(int pos)
public ConditionalExpression(int pos, int len)
public AstNode getTestExpression()
public void setTestExpression(AstNode testExpression)
testExpression
- test expressionjava.lang.IllegalArgumentException
- if testExpression is null
public AstNode getTrueExpression()
public void setTrueExpression(AstNode trueExpression)
trueExpression
- expression to evaluate if test is truejava.lang.IllegalArgumentException
- if expression is null
public AstNode getFalseExpression()
public void setFalseExpression(AstNode falseExpression)
falseExpression
- expression to evaluate if test is falsejava.lang.IllegalArgumentException
- if falseExpression
is null
public int getQuestionMarkPosition()
public void setQuestionMarkPosition(int questionMarkPosition)
questionMarkPosition
- position of ? tokenpublic int getColonPosition()
public void setColonPosition(int colonPosition)
colonPosition
- position of : tokenpublic boolean hasSideEffects()
hasSideEffects
in class AstNode
public 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)
Copyright © 2010 - 2020 Adobe. All Rights Reserved