diff options
| author | Baitinq <[email protected]> | 2025-03-24 00:57:07 +0100 |
|---|---|---|
| committer | Baitinq <[email protected]> | 2025-03-24 00:57:07 +0100 |
| commit | 0852417019c6129dc356d84d3bd6cb61d78ba7db (patch) | |
| tree | f685d41db3175c716fd1f302bc27366067bd028c /src/parser.zig | |
| parent | Feature: Add support for strings (diff) | |
| download | interpreter-0852417019c6129dc356d84d3bd6cb61d78ba7db.tar.gz interpreter-0852417019c6129dc356d84d3bd6cb61d78ba7db.tar.bz2 interpreter-0852417019c6129dc356d84d3bd6cb61d78ba7db.zip | |
Feature: Add initial support for pointers
Diffstat (limited to 'src/parser.zig')
| -rw-r--r-- | src/parser.zig | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/parser.zig b/src/parser.zig index 9d40c65..d7c54f8 100644 --- a/src/parser.zig +++ b/src/parser.zig @@ -556,13 +556,15 @@ pub const Parser = struct { var parameters = std.ArrayList(*Node).init(self.arena); var first = true; - while (self.accept_parse(parse_type)) |type_annotation| { + while (true) { if (!first) { - _ = try self.parse_token(tokenizer.TokenType.COMMA); + _ = self.accept_token(tokenizer.TokenType.COMMA); } - try parameters.append(type_annotation); first = false; + const type_annotation = self.accept_parse(parse_type) orelse break; + try parameters.append(type_annotation); } + _ = try self.parse_token(tokenizer.TokenType.RPAREN); _ = try self.parse_token(tokenizer.TokenType.ARROW); |