numericLiteral function

Parser numericLiteral()

Implementation

Parser numericLiteral() {
  return (char('-').optional() &
          (digit().plus() & (char('.') & digit().plus()).optional()))
      .flatten()
      .map((value) {
    if (value.contains('.')) {
      return Literal(double.parse(value), LiteralType.number);
    } else {
      return Literal(int.parse(value), LiteralType.number);
    }
  }).labeled('numericLiteral');
}