parseOn method
Primitive method doing the actual parsing.
The method is overridden in concrete subclasses to implement the
parser specific logic. The methods takes a parse context
and
returns the resulting context, which is either a Success or
Failure context.
Implementation
@override
Result<(R1, R2, R3, R4, R5, R6)> parseOn(Context context) {
final result1 = parser1.parseOn(context);
if (result1 is Failure) return result1;
final result2 = parser2.parseOn(result1);
if (result2 is Failure) return result2;
final result3 = parser3.parseOn(result2);
if (result3 is Failure) return result3;
final result4 = parser4.parseOn(result3);
if (result4 is Failure) return result4;
final result5 = parser5.parseOn(result4);
if (result5 is Failure) return result5;
final result6 = parser6.parseOn(result5);
if (result6 is Failure) return result6;
return result6.success((
result1.value,
result2.value,
result3.value,
result4.value,
result5.value,
result6.value
));
}