parseOn method

  1. @override
Result<(R1, R2)> parseOn(
  1. Context context
)
override

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)> 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;
  return result2.success((result1.value, result2.value));
}