diff options
author | Mathias Magnusson <mathias@magnusson.space> | 2025-07-30 16:30:48 +0200 |
---|---|---|
committer | Mathias Magnusson <mathias@magnusson.space> | 2025-07-30 16:30:48 +0200 |
commit | 69ecbca927d963311469f4634c002553d0c99bd4 (patch) | |
tree | c241e07e6c8238057d4d04b987cb393894382ebf /src/Lexer.zig | |
parent | 132a8da9a41a6303d40c8ec936a31c9481581cbe (diff) | |
download | huginn-69ecbca927d963311469f4634c002553d0c99bd4.tar.gz |
implement return expressions
Diffstat (limited to 'src/Lexer.zig')
-rw-r--r-- | src/Lexer.zig | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/Lexer.zig b/src/Lexer.zig index 64457bf..9be99aa 100644 --- a/src/Lexer.zig +++ b/src/Lexer.zig @@ -29,6 +29,7 @@ pub const Token = struct { @"else", @"while", proc, + @"return", }; }; @@ -144,7 +145,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", .@"else", .@"while", .proc => |t| t, + .@"if", .@"else", .@"while", .proc, .@"return" => |t| t, else => .identifier, }); } |