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<R> parseOn(Context context) {
Failure<R>? failure;
for (var i = 0; i < children.length; i++) {
final result = children[i].parseOn(context);
if (result is Failure<R>) {
failure = failure == null ? result : failureJoiner(failure, result);
} else {
return result;
}
}
return failure!;
}