main: convert to use new iterator Lexer

This commit is contained in:
Antoine Viallon 2024-01-11 00:55:08 +01:00
parent a69788ca52
commit 9921d9fccd
Signed by: aviallon
GPG key ID: 186FC35EDEB25716

View file

@ -1,12 +1,12 @@
from __future__ import annotations
import argparse
import collections.abc
import sys
from pprint import pprint
from . import semantic, ir, optimizations
from .errors import CompilationError, CompilationWarning
from .lexer import Lexer, Tokens
from .lexer import Lexer, Tokens, Token
from .logger import rootLogger, LogLevel
from .parser import Parser
@ -36,11 +36,9 @@ def main():
data = sys.stdin.read().strip()
print("Source:\n", data)
tokens = Lexer(data)
tokens = [token for token in tokens if token.kind not in [Tokens.Blank, Tokens.Newline, Tokens.Comment]]
if rootLogger.level <= LogLevel.Debug:
pprint(tokens)
tokens: collections.abc.Iterator[Token] = \
Lexer(data,
token_filter=lambda token: token.kind not in [Tokens.Blank, Tokens.Newline, Tokens.Comment])
parser = Parser(tokens)
try: