diff options
author | Mathias Magnusson <mathias@magnusson.space> | 2025-06-03 00:34:15 +0200 |
---|---|---|
committer | Mathias Magnusson <mathias@magnusson.space> | 2025-06-03 00:34:15 +0200 |
commit | 5a421bb91780e74404d83df2e99d7469b3cb8b90 (patch) | |
tree | e0b4fdf996701d7f143a59201f227c7013313e75 /src/Lexer.zig | |
parent | e2e77b4b06e51c7f7d3ea187defaf1ad08e513c1 (diff) | |
download | huginn-5a421bb91780e74404d83df2e99d7469b3cb8b90.tar.gz |
add { blocks } with scoped local variables
Diffstat (limited to 'src/Lexer.zig')
-rw-r--r-- | src/Lexer.zig | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/Lexer.zig b/src/Lexer.zig index c8f19c6..f5d8e95 100644 --- a/src/Lexer.zig +++ b/src/Lexer.zig @@ -7,6 +7,8 @@ pub const Token = struct { pub const Type = enum { left_paren, right_paren, + left_curly, + right_curly, integer_literal, plus, minus, @@ -69,6 +71,8 @@ fn getNext(self: *Self) Token { return s: switch (self.eatChar() orelse return self.create(.eof)) { '(' => self.create(.left_paren), ')' => self.create(.right_paren), + '{' => self.create(.left_curly), + '}' => self.create(.right_curly), '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' => self.integerLiteral(), '+' => self.create(.plus), '-' => self.create(.minus), |