started working on string literals
This commit is contained in:
13
lexer.py
13
lexer.py
@@ -146,6 +146,8 @@ class Lexer:
|
||||
tok = self.__new_token(TokenType.COLON, self.current_char)
|
||||
case ",":
|
||||
tok = self.__new_token(TokenType.COMMA, self.current_char)
|
||||
case '"':
|
||||
tok = self.__new_token(TokenType.STRING, self.__read_string())
|
||||
case None:
|
||||
tok = self.__new_token(TokenType.EOF, "")
|
||||
case _:
|
||||
@@ -162,4 +164,13 @@ class Lexer:
|
||||
tok = self.__new_token(TokenType.ILLEGAL, self.current_char)
|
||||
|
||||
self.__read_char()
|
||||
return tok
|
||||
return tok
|
||||
|
||||
def __read_string(self):
|
||||
position: int = self.position + 1
|
||||
while True:
|
||||
self.__read_char()
|
||||
if self.current_char == '"' or self.current_char is None:
|
||||
break
|
||||
|
||||
|
||||
Reference in New Issue
Block a user