From aebfbb3895a81b1a285f6e9aa9877e16a87d7ec2 Mon Sep 17 00:00:00 2001 From: mryouse Date: Sat, 18 Jun 2022 02:00:11 +0000 Subject: remove extra token types --- lexer.py | 17 ++--------------- structs.py | 27 ++------------------------- 2 files changed, 4 insertions(+), 40 deletions(-) diff --git a/lexer.py b/lexer.py index 7fa8d19..fa3db90 100644 --- a/lexer.py +++ b/lexer.py @@ -14,25 +14,12 @@ types = { ":bool": TokenType.BOOL_TYPE } keywords = { - "print": TokenType.PRINT, - "+": TokenType.PLUS, - "-": TokenType.DASH, - "*": TokenType.STAR, - "/": TokenType.SLASH, - ">": TokenType.GREATER, - ">=": TokenType.GREATER_EQUAL, - "<": TokenType.LESS, - "<=": TokenType.LESS_EQUAL, - "eq?": TokenType.EQUAL, - "not": TokenType.NOT, - "and": TokenType.AND, - "or": TokenType.OR, "if": TokenType.IF, "for-count": TokenType.FOR_COUNT, - "|": TokenType.PIPE, "def": TokenType.DEF, "lambda": TokenType.LAMBDA, - "&": TokenType.MANY } + "&": TokenType.MANY, + "func": TokenType.FUNC } WHITESPACE = [" ", "\n", "\t"] diff --git a/structs.py b/structs.py index 02693be..1956c4b 100644 --- a/structs.py +++ b/structs.py @@ -7,8 +7,6 @@ from typeclass import TypeEnum # NOTE: this can probably be simplified class TokenType(Enum): - PRINT = auto() - OPEN_PAREN = auto() CLOSE_PAREN = auto() @@ -21,33 +19,12 @@ class TokenType(Enum): TRUE = auto() FALSE = auto() - # arithmetic - PLUS = auto() - DASH = auto() - STAR = auto() - SLASH = auto() - - # strings - DOUBLE_QUOTE = auto() - - # comparison - GREATER = auto() - GREATER_EQUAL = auto() - LESS = auto() - LESS_EQUAL = auto() - EQUAL = auto() - NOT = auto() - AND = auto() - OR = auto() - - # flow + # keywords IF = auto() FOR_COUNT = auto() - PIPE = auto() - - # keywords DEF = auto() LAMBDA = auto() + FUNC = auto() # symbols SYMBOL = auto() -- cgit v1.2.3