aboutsummaryrefslogtreecommitdiff
path: root/src/Lexer.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/Lexer.zig')
-rw-r--r--src/Lexer.zig6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/Lexer.zig b/src/Lexer.zig
index c85979d..c8f19c6 100644
--- a/src/Lexer.zig
+++ b/src/Lexer.zig
@@ -11,12 +11,13 @@ pub const Token = struct {
plus,
minus,
semicolon,
+ equal,
invalid,
eof,
identifier,
// Keywords
- @"if",
+ let,
};
};
@@ -72,6 +73,7 @@ fn getNext(self: *Self) Token {
'+' => self.create(.plus),
'-' => self.create(.minus),
';' => self.create(.semicolon),
+ '=' => self.create(.equal),
' ', '\n' => {
self.start = self.pos;
continue :s (self.eatChar() orelse return self.create(.eof));
@@ -111,7 +113,7 @@ fn identifierOrKeyword(self: *Self) Token {
}
const value = self.source[self.start..self.pos];
return self.create(switch (std.meta.stringToEnum(Token.Type, value) orelse .invalid) {
- .@"if" => .@"if",
+ .let => .let,
else => .identifier,
});
}