parse method
Implementation
@override
Result<String>? parse(State<StringReader> state) {
final pos = state.pos;
final r1 = p1.parse(state);
if (r1 != null) {
final r2 = p2.parse(state);
if (r2 != null) {
return state.pos != pos
? Result(state.input.substring(pos, state.pos))
: const Result('');
}
}
state.pos = pos;
return null;
}