parse method
Parses the input and returns a result wrapped in Result if successful,
null
otherwise.
Implementation
@override
Result<(O1, O2, O3, O4, O5, O6, O7, O8, O9)>? parse(State<I> 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 r5 = p5.parse(state);
if (r5 != null) {
final r6 = p6.parse(state);
if (r6 != null) {
final r7 = p7.parse(state);
if (r7 != null) {
final r8 = p8.parse(state);
if (r8 != null) {
final r9 = p9.parse(state);
if (r9 != null) {
return Result((
r1.value,
r2.value,
r3.value,
r4.value,
r5.value,
r6.value,
r7.value,
r8.value,
r9.value,
));
}
}
}
}
}
}
}
}
}
state.pos = pos;
return null;
}