aboutsummaryrefslogtreecommitdiff
path: root/src/tokenizer.cpp
diff options
context:
space:
mode:
authorDylan <boss@tehbox.org>2026-06-11 22:11:09 +1200
committerDylan <boss@tehbox.org>2026-06-11 22:11:09 +1200
commit49a8dae0f3a6e589dfad65cbbf230137a7b67f4a (patch)
tree12eb15246e6e53911a91fde2d715c5d3a78dc614 /src/tokenizer.cpp
parent79a977bc3bea7777de861e4c1adda6d9f9feec99 (diff)
downloadtehjson-49a8dae0f3a6e589dfad65cbbf230137a7b67f4a.tar.gz
tehjson-49a8dae0f3a6e589dfad65cbbf230137a7b67f4a.zip
feat: Started to add arrays
Only supports arrays of ints so far
Diffstat (limited to 'src/tokenizer.cpp')
-rw-r--r--src/tokenizer.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/tokenizer.cpp b/src/tokenizer.cpp
index ac7c215..a32879e 100644
--- a/src/tokenizer.cpp
+++ b/src/tokenizer.cpp
@@ -9,6 +9,8 @@ namespace TehJSON
{
case TokenType::LBrace: return "LBrace";
case TokenType::RBrace: return "RBrace";
+ case TokenType::LSquare: return "LSquare";
+ case TokenType::RSquare: return "RSquare";
case TokenType::Colon: return "Colon";
case TokenType::Comma: return "Comma";
case TokenType::StringLit: return "StringLit";
@@ -78,6 +80,8 @@ namespace TehJSON
}
case '{': tokens.push_back({TokenType::LBrace, std::string{c}}); break;
case '}': tokens.push_back({TokenType::RBrace, std::string{c}}); break;
+ case '[': tokens.push_back({TokenType::LSquare, std::string{c}}); break;
+ case ']': tokens.push_back({TokenType::RSquare, std::string{c}}); break;
case ':': tokens.push_back({TokenType::Colon, std::string{c}}); break;
case ',': tokens.push_back({TokenType::Comma, std::string{c}}); break;
default: throw std::runtime_error("Unexpected character: '" + std::string{c} + "'");