parse method
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<Tuple4<E1, E2, E3, E4>>? parse(ParseState state) {
final pos = state.pos;
final r1 = p1.parse(state);
if (r1 != null) {
final r2 = p2.parse(state);
if (r2 != null) {
final r3 = p3.parse(state);
if (r3 != null) {
final r4 = p4.parse(state);
if (r4 != null) {
final v1 = Tuple4(r1.$0, r2.$0, r3.$0, r4.$0);
return Tuple1(v1);
}
}
}
}
state.pos = pos;
}