Package org.mozilla.javascript.ast
Class ForInLoop
- java.lang.Object
- 
- org.mozilla.javascript.Node
- 
- org.mozilla.javascript.ast.AstNode
- 
- org.mozilla.javascript.ast.Jump
- 
- org.mozilla.javascript.ast.Scope
- 
- org.mozilla.javascript.ast.Loop
- 
- org.mozilla.javascript.ast.ForInLoop
 
 
 
 
 
 
- 
- Direct Known Subclasses:
- ArrayComprehensionLoop,- GeneratorExpressionLoop
 
 public class ForInLoop extends Loop For-in or for-each-in or for-of statement. Node type isToken.FOR.for [each] ( LeftHandSideExpression in Expression ) Statement for [each] ( var VariableDeclarationNoIn in Expression ) Statement for ( LeftHandSideExpression of Expression ) Statement for ( ForDeclaration of Expression ) Statement 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class org.mozilla.javascript.ast.AstNodeAstNode.DebugPrintVisitor, AstNode.PositionComparator
 - 
Nested classes/interfaces inherited from class org.mozilla.javascript.NodeNode.NodeIterator
 
- 
 - 
Field SummaryFields Modifier and Type Field Description protected inteachPositionprotected intinPositionprotected booleanisForEachprotected booleanisForOfprotected AstNodeiteratedObjectprotected AstNodeiterator- 
Fields inherited from class org.mozilla.javascript.ast.ScopeparentScope, symbolTable, top
 - 
Fields inherited from class org.mozilla.javascript.ast.AstNodeinlineComment, length, parent, position
 - 
Fields inherited from class org.mozilla.javascript.NodeARROW_FUNCTION_PROP, ATTRIBUTE_FLAG, BOTH, CASEARRAY_PROP, CATCH_SCOPE_PROP, CONTROL_BLOCK_PROP, DECR_FLAG, DESCENDANTS_FLAG, DESTRUCTURING_ARRAY_LENGTH, DESTRUCTURING_NAMES, DESTRUCTURING_PARAMS, 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, SHORTHAND_PROPERTY_NAME, SKIP_INDEXES_PROP, SPECIALCALL_EVAL, SPECIALCALL_PROP, SPECIALCALL_WITH, TARGETBLOCK_PROP, TEMPLATE_LITERAL_PROP, TRAILING_COMMA, type, VARIABLE_PROP
 
- 
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetEachPosition()Returns position of "each" keywordintgetInPosition()Returns position of "in" or "of" keywordAstNodegetIteratedObject()Returns object being iterated overAstNodegetIterator()Returns loop iterator expressionbooleanisForEach()Returns whether the loop is a for-each loopbooleanisForOf()Returns whether the loop is a for-of loopvoidsetEachPosition(int eachPosition)Sets position of "each" keywordvoidsetInPosition(int inPosition)Sets position of "in" or "of" keywordvoidsetIsForEach(boolean isForEach)Sets whether the loop is a for-each loopvoidsetIsForOf(boolean isForOf)Sets whether the loop is a for-each loopvoidsetIteratedObject(AstNode object)Sets object being iterated over, and sets its parent to this node.voidsetIterator(AstNode iterator)Sets loop iterator expression: the part before the "in" or "of" keyword.java.lang.StringtoSource(int depth)Emits source code for this node.voidvisit(NodeVisitor v)Visits this node, the iterator, the iterated object, and the body.- 
Methods inherited from class org.mozilla.javascript.ast.LoopgetBody, getLp, getRp, setBody, setLp, setParens, setRp
 - 
Methods inherited from class org.mozilla.javascript.ast.ScopeaddChildScope, clearParentScope, getChildScopes, getDefiningScope, getParentScope, getStatements, getSymbol, getSymbolTable, getTop, joinScopes, putSymbol, replaceWith, setParentScope, setSymbolTable, setTop, splitScope
 - 
Methods inherited from class org.mozilla.javascript.ast.JumpgetContinue, getDefault, getFinally, getJumpStatement, getLoop, setContinue, setDefault, setFinally, setJumpStatement, setLoop
 - 
Methods inherited from class org.mozilla.javascript.ast.AstNodeaddChild, assertNotNull, codeBug, compareTo, debugPrint, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getInlineComment, getLength, getLineno, getParent, getPosition, hasSideEffects, makeIndent, operatorToString, printList, setBounds, setInlineComment, setLength, setParent, setPosition, setRelative, shortName, toSource
 - 
Methods inherited from class org.mozilla.javascript.NodeaddChildAfter, addChildBefore, addChildrenToBack, addChildrenToFront, addChildToBack, addChildToFront, getBigInt, 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, setBigInt, setDouble, setJsDocNode, setLineno, setScope, setString, setType, toString, toStringTree
 
- 
 
- 
- 
- 
Method Detail- 
getIteratorpublic AstNode getIterator() Returns loop iterator expression
 - 
setIteratorpublic void setIterator(AstNode iterator) Sets loop iterator expression: the part before the "in" or "of" keyword. Also sets its parent to this node.- Throws:
- java.lang.IllegalArgumentException- if- iteratoris- null
 
 - 
getIteratedObjectpublic AstNode getIteratedObject() Returns object being iterated over
 - 
setIteratedObjectpublic void setIteratedObject(AstNode object) Sets object being iterated over, and sets its parent to this node.- Throws:
- java.lang.IllegalArgumentException- if- objectis- null
 
 - 
isForEachpublic boolean isForEach() Returns whether the loop is a for-each loop
 - 
setIsForEachpublic void setIsForEach(boolean isForEach) Sets whether the loop is a for-each loop
 - 
isForOfpublic boolean isForOf() Returns whether the loop is a for-of loop
 - 
setIsForOfpublic void setIsForOf(boolean isForOf) Sets whether the loop is a for-each loop
 - 
getInPositionpublic int getInPosition() Returns position of "in" or "of" keyword
 - 
setInPositionpublic void setInPosition(int inPosition) Sets position of "in" or "of" keyword- Parameters:
- inPosition- position of "in" or "of" keyword, or -1 if not present (e.g. in presence of a syntax error)
 
 - 
getEachPositionpublic int getEachPosition() Returns position of "each" keyword
 - 
setEachPositionpublic void setEachPosition(int eachPosition) Sets position of "each" keyword- Parameters:
- eachPosition- position of "each" keyword, or -1 if not present.
 
 - 
toSourcepublic java.lang.String toSource(int depth) Description copied from class:AstNodeEmits 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 nullchildren that are expected to be non-nullwhen no errors are present. In this situation, the behavior of thetoSourcemethod is undefined:toSourceimplementations may assume that the AST node is error-free, since it is intended to be invoked only at runtime after a successful parse.
 - 
visitpublic void visit(NodeVisitor v) Visits this node, the iterator, the iterated object, and the body.
 
- 
 
-