char function
Returns a parser that accepts a specific character value.
messagedefines a custom error message.- If
ignoreCaseistrue, the character is matched in a case-insensitive manner. - If
unicodeistrue, the character is matched using full unicode character parsing (as opposed to UTF-16 code units).
Implementation
@useResult
Parser<String> char(
String value, {
String? message,
bool ignoreCase = false,
bool unicode = false,
}) {
final charCode = toCharCode(value, unicode: unicode);
final predicate = ignoreCase
? optimizedString(value, ignoreCase: ignoreCase, unicode: unicode)
: SingleCharPredicate(charCode);
message ??=
'"${toReadableString(value, unicode: unicode)}"'
'${ignoreCase ? ' (case-insensitive)' : ''} expected';
return CharacterParser(predicate, message, unicode: unicode);
}