|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.mozilla.javascript.Node org.mozilla.javascript.ast.AstNode org.mozilla.javascript.ast.ExpressionStatement
public class ExpressionStatement
AST node representing an expression in a statement context. The node type is
Token.EXPR_VOID
if inside a function, or else
Token.EXPR_RESULT
if inside a script.
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 |
---|
Fields inherited from class org.mozilla.javascript.ast.AstNode |
---|
length, parent, position |
Constructor Summary | |
---|---|
ExpressionStatement()
|
|
ExpressionStatement(AstNode expr)
Constructs a new ExpressionStatement wrapping
the specified expression. |
|
ExpressionStatement(AstNode expr,
boolean hasResult)
Constructs a new ExpressionStatement wrapping
the specified expression. |
|
ExpressionStatement(int pos,
int len)
|
|
ExpressionStatement(int pos,
int len,
AstNode expr)
Constructs a new ExpressionStatement |
Method Summary | |
---|---|
AstNode |
getExpression()
Returns the wrapped expression |
boolean |
hasSideEffects()
Returns true if this node has side effects |
void |
setExpression(AstNode expression)
Sets the wrapped expression, and sets its parent to this node. |
void |
setHasResult()
Called by the parser to set node type to EXPR_RESULT if this node is not within a Function. |
java.lang.String |
toSource(int depth)
Emits source code for this node. |
void |
visit(NodeVisitor v)
Visits this node, then the wrapped statement. |
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 |
Constructor Detail |
---|
public ExpressionStatement()
public ExpressionStatement(AstNode expr, boolean hasResult)
ExpressionStatement
wrapping
the specified expression. Sets this node's position to the
position of the wrapped node, and sets the wrapped node's
position to zero. Sets this node's length to the length of
the wrapped node.
expr
- the wrapped expressionhasResult
- true
if this expression has side
effects. If true, sets node type to EXPR_RESULT, else to EXPR_VOID.public ExpressionStatement(AstNode expr)
ExpressionStatement
wrapping
the specified expression. Sets this node's position to the
position of the wrapped node, and sets the wrapped node's
position to zero. Sets this node's length to the length of
the wrapped node.
expr
- the wrapped expressionpublic ExpressionStatement(int pos, int len)
public ExpressionStatement(int pos, int len, AstNode expr)
ExpressionStatement
expr
- the wrapped AstNode
.
The ExpressionStatement
's bounds are set to those of expr,
and expr's parent is set to this node.
java.lang.IllegalArgumentException
- if expr
is nullMethod Detail |
---|
public void setHasResult()
public AstNode getExpression()
public void setExpression(AstNode expression)
IllegalArgumentException}
- if expression is null
public boolean hasSideEffects()
hasSideEffects
in class AstNode
java.lang.IllegalStateException
- if expression has not yet
been set.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 |