From 0eaa2a420cb699cdb23ce9b1573560a5d9e59a31 Mon Sep 17 00:00:00 2001 From: Nathan Reiner Date: Wed, 5 Aug 2026 09:08:24 +0200 Subject: add regex literals --- src/z/parser/lexer.zig | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/z/parser/lexer.zig') diff --git a/src/z/parser/lexer.zig b/src/z/parser/lexer.zig index 66d4211..5beefde 100644 --- a/src/z/parser/lexer.zig +++ b/src/z/parser/lexer.zig @@ -43,6 +43,7 @@ pub fn Lexer(TokenKind: type) type { last_buffer: []const u8, tokens: []const Token(TokenKind) = &.{}, context: TokenKind.Context = .{}, + last_context: TokenKind.Context = .{}, pub fn init(buffer: []const u8) Self { return .{ @@ -114,11 +115,13 @@ pub fn Lexer(TokenKind: type) type { pub fn revert(self: *Self) void { self.buffer = self.last_buffer; + self.context = self.last_context; } pub fn commit(self: *Self, tok: Token(TokenKind)) void { self.tokens = self.tokens ++ [_]Token(TokenKind){tok.stop(self)}; self.last_buffer = self.buffer; + self.last_context = self.context; } }; } -- cgit v1.2.3-70-g09d2