Pair<Node> v$g$2 = yyRepValue1.reverse();
yyValue = GNode.create("FunTypeInCaseClause", v$g$1, v$g$2);
yyValue.setLocation(location(yyStart));
return new SemanticValue(yyValue, yyRepetition1, yyError);
} // End scope for v$g$2.
} else {
yyError = yyError.select("'=>' expected", yyBase);
}
} else {
yyError = yyError.select("')' expected", yyBase);
}
} // End scope for v$g$1.
}
// Alternative 2.
yyResult = pInfixType(yyStart);
yyError = yyResult.select(yyError);
if (yyResult.hasValue()) {
Node v$g$3 = yyResult.semanticValue();
yyBase = yyResult.index;
yyResult = pkey(yyBase);
if (yyResult.hasValue("=>")) {
yyRepetition1 = yyResult.index;
yyRepValue1 = Pair.empty();
while (true) {
yyResult = pNotFunType(yyRepetition1);
yyError = yyResult.select(yyError, yyRepetition1);
if (yyResult.hasValue()) {
Node v$el$3 = yyResult.semanticValue();
yyBase = yyResult.index;
yyResult = pkey(yyBase);
if (yyResult.hasValue("=>")) {
yyRepetition1 = yyResult.index;
yyRepValue1 = new Pair<Node>(v$el$3, yyRepValue1);
continue;
} else {
yyError = yyError.select("'=>' expected", yyBase);
}
}
break;
}
{ // Start scope for v$g$4.
Pair<Node> v$g$4 = yyRepValue1.reverse();
yyValue = GNode.create("FunTypeInCaseClause", v$g$3, v$g$4);
yyValue.setLocation(location(yyStart));
return new SemanticValue(yyValue, yyRepetition1, yyError);
} // End scope for v$g$4.
} else {
yyError = yyError.select("'=>' expected", yyBase);
}
}