Currently, StdLib's Iterable.zs defines the Iterator-Member like so:
for(item as T) as Iterator<T> => iterate();
However, the parser expects:
for(T) {
// What to do in here?
}Defined in ParsedDefinitionMember:
caseK_FOR: {
tokens.next();
tokens.required(T_BROPEN, "( expected");
List<IParsedType> loopVariableTypes = newArrayList<>();
if (tokens.optional(T_BRCLOSE) == null) {
do {
loopVariableTypes.add(IParsedType.parse(tokens));
} while (tokens.optional(T_COMMA) != null);
tokens.required(T_BRCLOSE, ") expected");
}
ParsedFunctionBodybody = ParsedStatement.parseFunctionBody(tokens);
returnnewParsedIterator(start, modifiers, annotations, loopVariableTypes, body);
}We need to define how the iterator members should look like and how it should behave.
Acceptance Criteria:
Currently, StdLib's Iterable.zs defines the Iterator-Member like so:
However, the parser expects:
Defined in ParsedDefinitionMember:
We need to define how the iterator members should look like and how it should behave.
Acceptance Criteria: