decParser property
Parser for a decimal TOML integer value.
dec-int = [ minus / plus ] unsigned-dec-int
minus = %x2D ; -
plus = %x2B ; +
unsigned-dec-int = DIGIT / digit1-9 1*( DIGIT / underscore DIGIT )
underscore = %x5F ; _
digit1-9 = %x31-39 ; 1-9
DIGIT = %x30-39 ; 0-9
Implementation
static final Parser<TomlInteger> decParser = (() {
var digits = digit().plus().plusSeparated(char('_'));
var decimal = anyOf('+-').optional() & ChoiceParser([char('0'), digits]);
return decimal.flatten('Decimal integer expected').map(
(str) => TomlInteger.dec(BigInt.parse(
str.replaceAll('_', ''),
radix: TomlIntegerFormat.dec.base,
)),
);
})();