public class InfixExpression extends AstNode
Token type.AstNode.DebugPrintVisitor, AstNode.PositionComparatorNode.NodeIterator| Modifier and Type | Field and Description | 
|---|---|
| protected AstNode | left | 
| protected int | operatorPosition | 
| protected AstNode | right | 
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, 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 | 
|---|
| InfixExpression() | 
| InfixExpression(AstNode left,
               AstNode right)Constructs a new  InfixExpression. | 
| InfixExpression(int pos) | 
| InfixExpression(int operator,
               AstNode left,
               AstNode right,
               int operatorPos)Constructs a new  InfixExpression. | 
| InfixExpression(int pos,
               int len) | 
| InfixExpression(int pos,
               int len,
               AstNode left,
               AstNode right) | 
| Modifier and Type | Method and Description | 
|---|---|
| AstNode | getLeft()Returns the left-hand side of the expression | 
| int | getOperator()Returns operator token – alias for  Node.getType() | 
| int | getOperatorPosition()Returns relative offset of operator token | 
| AstNode | getRight()Returns the right-hand side of the expression | 
| boolean | hasSideEffects() | 
| void | setLeft(AstNode left)Sets the left-hand side of the expression, and sets its
 parent to this node. | 
| void | setLeftAndRight(AstNode left,
               AstNode right) | 
| void | setOperator(int operator)Sets operator token – like  Node.setType(int), but throws
 an exception if the operator is invalid. | 
| void | setOperatorPosition(int operatorPosition)Sets operator token's relative offset | 
| void | setRight(AstNode right)Sets the right-hand side of the expression, 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 left operand, and the right operand. | 
addChild, assertNotNull, codeBug, compareTo, debugPrint, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getLength, getLineno, getParent, getPosition, makeIndent, operatorToString, printList, setBounds, setLength, setParent, setPosition, setRelative, shortName, toSourceaddChildAfter, 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, toStringTreeprotected AstNode left
protected AstNode right
protected int operatorPosition
public InfixExpression()
public InfixExpression(int pos)
public InfixExpression(int pos,
                       int len)
public InfixExpression(AstNode left, AstNode right)
InfixExpression.  Updates bounds to include
 left and right nodes.public int getOperator()
Node.getType()public void setOperator(int operator)
Node.setType(int), but throws
 an exception if the operator is invalid.java.lang.IllegalArgumentException - if operator is not a valid token
 codepublic AstNode getLeft()
public void setLeft(AstNode left)
left - the left-hand side of the expressionIllegalArgumentException} - if left is nullpublic AstNode getRight()
AstNode node, but can also be a FunctionNode
 representing Function expressions.public void setRight(AstNode right)
IllegalArgumentException} - if right is nullpublic int getOperatorPosition()
public void setOperatorPosition(int operatorPosition)
operatorPosition - offset in parent of operator tokenpublic boolean hasSideEffects()
hasSideEffects in class AstNodepublic 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)