From 28e89dff46b23b2fd73704d46db96b86e7e35e3c Mon Sep 17 00:00:00 2001 From: mryouse Date: Sun, 22 May 2022 20:34:02 +0000 Subject: refactor: structs into their own file --- parser.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'parser.py') diff --git a/parser.py b/parser.py index 7916a97..a781d50 100644 --- a/parser.py +++ b/parser.py @@ -1,3 +1,5 @@ +from structs import TokenType, Literal, Symbol, Type, List +''' from lexer import TokenType class Expr: @@ -34,6 +36,7 @@ class Expr: visitor.visitNary(self) def __str__(self): return "(" + " ".join(f"{arg}" for arg in self.args) + ")" +''' def parseExpression(token, prev, tokens): idx = 0 @@ -57,16 +60,16 @@ def parseExpression(token, prev, tokens): idx += inc prev = token - return Expr.List(args), idx + 2 # parens + return List(args), idx + 2 # parens def parseSymbol(token, prev, tokens): - return Expr.Symbol(token.text), 1 + return Symbol(token.text), 1 def parseLiteral(token, prev, tokens): - return Expr.Literal(token.value), 1 + return Literal(token.value), 1 def parseType(token, prev, tokens): - return Expr.Type(token.text), 1 + return Type(token.text), 1 def parse(tokens): idx = 0 -- cgit v1.2.3