parsePrimitiveToken function

Object? parsePrimitiveToken(
  1. String token
)

Parses a primitive token

Implementation

Object? parsePrimitiveToken(String token) {
  final trimmed = token.trim();

  // Empty token
  if (trimmed.isEmpty) {
    return '';
  }

  // Quoted string (if starts with quote, it MUST be properly quoted)
  if (trimmed.startsWith(doubleQuote)) {
    return _parseStringLiteral(trimmed);
  }

  // Boolean or null literals
  if (isBooleanOrNullLiteral(trimmed)) {
    if (trimmed == trueLiteral) return true;
    if (trimmed == falseLiteral) return false;
    if (trimmed == nullLiteral) return null;
  }

  // Numeric literal
  if (isNumericLiteral(trimmed)) {
    return num.parse(trimmed);
  }

  // Unquoted string
  return trimmed;
}