public final class ForEachStatement extends LoopStatement implements IForEachStatement
for...in-statement for ( <identifier> in <expression> [ index <identifier> ] ) <statement>
IGosuParser| Modifier and Type | Field and Description |
|---|---|
protected Expression |
_expression |
protected Symbol |
_identifier |
protected Symbol |
_indexIdentifier |
protected IStackProvider |
_stackProvider |
protected Statement |
_statement |
VOID_RETURN_VALUE_tokens, UNDEF_FILE, UNDEF_FUNCTION, UNDEF_MODULE| Constructor and Description |
|---|
ForEachStatement(ISymbolTable stackProvider)
Constructs a ForEachStatement given an ISymbolTable instance.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
declares(String identifierName) |
Object |
execute() |
String[] |
getDeclarations() |
IExpression |
getExpression() |
Symbol |
getIdentifier() |
Symbol |
getIndexIdentifier() |
Expression |
getInExpression() |
Symbol |
getIteratorIdentifier() |
protected ITerminalStatement |
getLeastSignificantTerminalStatement_internal(boolean[] bAbsolute) |
int |
getNameOffset(String identifierName) |
Statement |
getStatement() |
boolean |
isStructuralIterable() |
void |
setIdentifier(Symbol identifier) |
void |
setIndexIdentifier(Symbol indexIdentifier) |
void |
setIndexNameOffset(int iOffset) |
void |
setInExpression(Expression expression) |
void |
setIteratorIdentifier(Symbol iterIdentifier) |
void |
setIterNameOffset(int iOffset) |
void |
setNameOffset(int iOffset,
String identifierName) |
void |
setStatement(Statement statement) |
void |
setStructuralIterable(boolean bStructuralIterable) |
String |
toString()
Subclasses should return a String representing the parsed statement.
|
getArrayComponentType, getArrayLength, isConditionLiteralTrue, isIteratorType, makeIteratorexecute, getExcludedReturnTypeElements, getLeastSignificant, getLeastSignificantTerminalStatement, getReturnType, hasContent, isNoOp, setParentaddExceptionsFrom, addParseException, addParseException, addParseException, addParseExceptions, addParseIssues, addParseWarning, addParseWarning, addParseWarnings, addToken, adjustColumn, adjustLineNum, assignTokens, clearParseExceptions, clearParseTreeInformation, clearParseWarnings, compactParseTree, findAncestorParsedElementByType, findDeclaringStatement, findLineNumberOfDeclaration, findRootParsedElement, getAnnotations, getColumn, getContainedParsedElementsByType, getContainedParsedElementsByTypes, getContainedParsedElementsByTypesWithIgnoreSet, getEnclosingFeatureInfo, getFunctionName, getGosuClass, getGosuProgram, getImmediateParseIssue, getImmediateParseIssues, getLineNum, getLocation, getModule, getParent, getParseExceptions, getParseIssues, getParseWarnings, getQualifyingEnclosingTypeInfo, getTokens, hasImmediateParseIssue, hasImmediateParseWarning, hasImmediateParseWarnings, hasParseException, hasParseExceptions, hasParseIssue, hasParseIssues, hasParseWarning, hasParseWarnings, initEmptyParseTree, initLocation, isCompileTimeConstant, isSuppressed, isSuppressed, isSynthetic, makeDoubleValue, makeFloatValue, makeInteger, makeLong, removeParseException, removeParseWarning, removeParseWarningRecursively, setGosuProgram, setLineNum, setLocation, setSynthetic, shouldClearParseInfo, visitclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitisConditionLiteralTrueexecute, getLeastSignificantTerminalStatement, hasContentaddExceptionsFrom, addParseException, addParseException, addParseWarning, addParseWarning, clearParseExceptions, clearParseTreeInformation, clearParseWarnings, findAncestorParsedElementByType, findDeclaringStatement, findRootParsedElement, getColumn, getContainedParsedElementsByType, getContainedParsedElementsByTypes, getContainedParsedElementsByTypesWithIgnoreSet, getFunctionName, getGosuClass, getGosuProgram, getImmediateParseIssue, getImmediateParseIssues, getLineNum, getLocation, getModule, getParent, getParseExceptions, getParseIssues, getParseWarnings, getReturnType, getTokens, hasImmediateParseIssue, hasImmediateParseWarnings, hasParseException, hasParseExceptions, hasParseIssue, hasParseIssues, hasParseWarning, hasParseWarnings, isCompileTimeConstant, isSuppressed, isSynthetic, setLocation, setParent, visitprotected Symbol _identifier
protected Expression _expression
protected Symbol _indexIdentifier
protected Statement _statement
protected IStackProvider _stackProvider
public ForEachStatement(ISymbolTable stackProvider)
public Symbol getIdentifier()
getIdentifier in interface IForEachStatementpublic void setIdentifier(Symbol identifier)
identifier - public Symbol getIndexIdentifier()
getIndexIdentifier in interface IForEachStatementpublic void setIndexIdentifier(Symbol indexIdentifier)
indexIdentifier - public Symbol getIteratorIdentifier()
public void setIteratorIdentifier(Symbol iterIdentifier)
public IExpression getExpression()
getExpression in interface ILoopStatementpublic Expression getInExpression()
getInExpression in interface IForEachStatementpublic void setInExpression(Expression expression)
expression - The In Expression.public Statement getStatement()
getStatement in interface IForEachStatementgetStatement in interface ILoopStatementpublic void setStatement(Statement statement)
statement - The statement to execute in the interation.public Object execute()
execute in interface IStatementexecute in class Statementprotected ITerminalStatement getLeastSignificantTerminalStatement_internal(boolean[] bAbsolute)
getLeastSignificantTerminalStatement_internal in class Statementpublic String toString()
Statementpublic int getNameOffset(String identifierName)
getNameOffset in interface IParsedElementWithAtLeastOneDeclarationpublic void setNameOffset(int iOffset,
String identifierName)
setNameOffset in interface IParsedElementWithAtLeastOneDeclarationpublic void setIndexNameOffset(int iOffset)
public void setIterNameOffset(int iOffset)
public boolean declares(String identifierName)
declares in interface IParsedElementWithAtLeastOneDeclarationpublic String[] getDeclarations()
getDeclarations in interface IParsedElementWithAtLeastOneDeclarationpublic boolean isStructuralIterable()
public void setStructuralIterable(boolean bStructuralIterable)
Copyright © 2018. All rights reserved.