org.mozilla.javascript.ast
Class Yield
java.lang.Object
org.mozilla.javascript.Node
org.mozilla.javascript.ast.AstNode
org.mozilla.javascript.ast.Yield
- All Implemented Interfaces:
- java.lang.Comparable<AstNode>, java.lang.Iterable<Node>
public class Yield
- extends AstNode
AST node for JavaScript 1.7 yield
expression or statement.
Node type is Token.YIELD
.
Yield :
yield [no LineTerminator here] [non-paren Expression] ;
Fields inherited from class org.mozilla.javascript.Node |
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 |
Method Summary |
AstNode |
getValue()
Returns yielded expression, null if none |
void |
setValue(AstNode expr)
Sets yielded 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, and if present, the yielded value. |
Methods inherited from class org.mozilla.javascript.ast.AstNode |
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 |
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 |
Yield
public Yield()
Yield
public Yield(int pos)
Yield
public Yield(int pos,
int len)
Yield
public Yield(int pos,
int len,
AstNode value)
getValue
public AstNode getValue()
- Returns yielded expression,
null
if none
setValue
public void setValue(AstNode expr)
- Sets yielded expression, and sets its parent to this node.
- Parameters:
expr
- the value to yield. Can be null
.
toSource
public java.lang.String toSource(int depth)
- Description copied from class:
AstNode
- Emits source code for this node. Callee is responsible for calling this
function recursively on children, incrementing indent as appropriate.
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.
- Specified by:
toSource
in class AstNode
- Parameters:
depth
- the current recursion depth, typically beginning at 0
when called on the root node.
visit
public void visit(NodeVisitor v)
- Visits this node, and if present, the yielded value.
- Specified by:
visit
in class AstNode
- Parameters:
v
- the object to call with this node and its children