const Token = @import("token.zig").Token;
const TokenType = @import("token.zig").TokenType;
const std = @import("std");
pub const Lexer = struct {
input: []const u8 = undefined,
position: usize = 0,
read_position: usize = 0,
char: u8 = '\0', -- invalid escape sequence
const Self = @This();
pub fn new(input: []const u8) Self {
return Self{
.input = input,
.position = 0,
.read_position = 0,
.char = '\0',
};
}
pub fn read_char(self: *Self) void {
if (self.read_position >= self.input.len) {
self.char = 0;
} else {
self.ch = self.input[self.read_position];
}
self.position = self.read_position;
self.read_position += 1;
}
};
= '\x00'
or just simply = 0
5 Likes