parse method
Parses the input and returns a result wrapped in Result if successful,
null
otherwise.
Implementation
@override
Result<int>? parse(State<StringReader> state) {
if (char < 0 || char > 0x10ffff) {
throw RangeError.range(char, 0, 0x10ffff);
}
final input = state.input;
if (state.pos < input.length) {
if (input.readChar(state.pos) == char) {
state.pos += input.count;
return Result(char);
}
}
return state.fail(ErrorExpectedCharacter(char));
}