parse method

  1. @override
Tuple1<E>? parse(
  1. ParseState state
)
override

Parses input data actively and produces the result.

Returns Tuple1 of the result if parsing was successful; otherwise returns null.

final r1 = p.parse(state);

Implementation

@override
Tuple1<E>? parse(ParseState state) {
  final pos = state.pos;
  if (p1.fastParse(state)) {
    final r1 = p2.parse(state);
    if (r1 != null) {
      final v1 = r1.$0;
      return Tuple1(v1);
    }
  }

  state.pos = pos;
}