charIgnoringCase function
Returns a parser that accepts a case-insensitive specific character only.
Implementation
@useResult
Parser<String> charIgnoringCase(String char, [String? message]) {
final lowerCase = toCharCode(char.toLowerCase());
final upperCase = toCharCode(char.toUpperCase());
return SingleCharacterParser(
optimizedRanges([
RangeCharPredicate(lowerCase, lowerCase),
RangeCharPredicate(upperCase, upperCase),
]),
message ?? '"${toReadableString(char)}" (case-insensitive) expected');
}