parseOn method
Parses the given context.
Overridden in concrete subclasses to implement the parser-specific logic.
Takes a parse context and returns the resulting context, which is either
a Success or Failure context.
Implementation
@override
Result<R> parseOn(Context context) {
final beforeContext = before.parseOn(context);
if (beforeContext is Failure) return beforeContext;
final resultContext = delegate.parseOn(beforeContext);
if (resultContext is Failure) return resultContext;
final afterContext = after.parseOn(resultContext);
if (afterContext is Failure) return afterContext;
return afterContext.success(resultContext.value);
}