|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.mozilla.javascript.Node
org.mozilla.javascript.ast.AstNode
org.mozilla.javascript.ast.InfixExpression
public class InfixExpression
AST node representing an infix (binary operator) expression.
The operator is the node's Token
type.
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 | |
---|---|
protected AstNode |
left
|
protected int |
operatorPosition
|
protected AstNode |
right
|
Fields inherited from class org.mozilla.javascript.ast.AstNode |
---|
length, parent, position |
Constructor Summary | |
---|---|
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)
|
Method Summary | |
---|---|
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. |
Methods inherited from class org.mozilla.javascript.ast.AstNode |
---|
addChild, assertNotNull, codeBug, compareTo, debugPrint, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getLength, getLineno, getParent, getPosition, makeIndent, operatorToString, printList, setBounds, setLength, setParent, setPosition, setRelative, shortName, toSource |
Methods inherited from class org.mozilla.javascript.Node |
---|
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 |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected AstNode left
protected AstNode right
protected int operatorPosition
Constructor Detail |
---|
public InfixExpression()
public InfixExpression(int pos)
public InfixExpression(int pos, int len)
public InfixExpression(int pos, int len, AstNode left, AstNode right)
public InfixExpression(AstNode left, AstNode right)
InfixExpression
. Updates bounds to include
left and right nodes.
public InfixExpression(int operator, AstNode left, AstNode right, int operatorPos)
InfixExpression
.
operatorPos
- the absolute position of the operatorMethod Detail |
---|
public void setLeftAndRight(AstNode left, AstNode right)
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 expression
IllegalArgumentException}
- if left is null
public AstNode getRight()
AstNode
node, but can also be a FunctionNode
representing Function expressions.public void setRight(AstNode right)
IllegalArgumentException}
- if right is null
public int getOperatorPosition()
public void setOperatorPosition(int operatorPosition)
operatorPosition
- offset in parent of operator 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.
toSource
in class AstNode
depth
- the current recursion depth, typically beginning at 0
when called on the root node.public void visit(NodeVisitor v)
visit
in class AstNode
v
- the object to call with this node and its children
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |