aboutsummaryrefslogtreecommitdiff
path: root/src/Lexer.zig
diff options
context:
space:
mode:
authorMathias Magnusson <mathias@magnusson.space>2025-06-02 15:17:22 +0200
committerMathias Magnusson <mathias@magnusson.space>2025-06-02 15:17:22 +0200
commita39f75cae1d74d89efc0a871bba953c1f1af3b1b (patch)
treed7ff616ba70aea4424d93be17c885e202904ce8e /src/Lexer.zig
parent939ee7606fbfe3afa6b6a008fb617120a6dd8114 (diff)
downloadhuginn-a39f75cae1d74d89efc0a871bba953c1f1af3b1b.tar.gz
add statements ending in ; and allow parsing multiple of them
Diffstat (limited to 'src/Lexer.zig')
-rw-r--r--src/Lexer.zig4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/Lexer.zig b/src/Lexer.zig
index 8c23b26..c85979d 100644
--- a/src/Lexer.zig
+++ b/src/Lexer.zig
@@ -10,6 +10,7 @@ pub const Token = struct {
integer_literal,
plus,
minus,
+ semicolon,
invalid,
eof,
identifier,
@@ -70,7 +71,8 @@ fn getNext(self: *Self) Token {
'0', '1', '2', '3', '4', '5', '6', '7', '8', '9' => self.integerLiteral(),
'+' => self.create(.plus),
'-' => self.create(.minus),
- ' ' => {
+ ';' => self.create(.semicolon),
+ ' ', '\n' => {
self.start = self.pos;
continue :s (self.eatChar() orelse return self.create(.eof));
},