I guess it’s saying “text” is nil, even though I’m setting its value.
function lexer.new(source : string)
local self = setmetatable({
text = source:split(""),
pos = 1,
char = nil
}, lexer)
return self
end
function lexer:advance()
if (self.pos == #self.text) then --where the error is
self.token = nil
return
end
self.pos += 1
self.text = self.text[self.position]
end