From f4c9c77ad8ff29a0473670b919ef0205656adab3 Mon Sep 17 00:00:00 2001 From: weckyy702 Date: Mon, 5 Apr 2021 23:29:50 +0200 Subject: [PATCH] turned SourceLocation class into a dataclass --- interpreter/_token.py | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/interpreter/_token.py b/interpreter/_token.py index ab9899b..bb8af19 100644 --- a/interpreter/_token.py +++ b/interpreter/_token.py @@ -32,17 +32,14 @@ class Token_type(IntEnum): STRING_LITERAL=17 TYPE_NAME=18 +@dataclass(frozen=True) class SourceLocation: - - __slots__ = ["filename", "line", "column"] - - def __init__(self, filename: str, line: int, column: int) -> None: - self.filename = filename - self.line = line - self.column = column + file: str + line: int + column: int def __str__(self) -> str: - return f"File {self.filename}, {self.line}:{self.column}" + return f"File {self.file} {self.line}:{self.column}" @dataclass(frozen=True, eq=True) class Token: