diff options
| author | mryouse | 2022-06-18 02:45:04 +0000 |
|---|---|---|
| committer | mryouse | 2022-06-18 02:45:04 +0000 |
| commit | d1a1c1592e610526c4a0432f93bd9ea6ae96d6e8 (patch) | |
| tree | df4c78f3ce5dfb1369d5fc6c155ca43e8bfc729f /typeclass.py | |
| parent | 065d138ca3013a4d1ef1aa3d7c48982d8bee5de2 (diff) | |
refactor: make neb a module
Diffstat (limited to 'typeclass.py')
| -rw-r--r-- | typeclass.py | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/typeclass.py b/typeclass.py deleted file mode 100644 index eae412c..0000000 --- a/typeclass.py +++ /dev/null @@ -1,34 +0,0 @@ -from enum import Enum, auto - -class TypeEnum(Enum): - ANY = auto() - STRING = auto() - INT = auto() - FLOAT = auto() - NUMBER = auto() - LIST = auto() - LITERAL = auto() - BOOL = auto() - - def __str__(self): - return f":{self.name.lower()}" - -HIERARCHY = { TypeEnum.ANY: None, - TypeEnum.LITERAL: TypeEnum.ANY, - TypeEnum.LIST: TypeEnum.ANY, - TypeEnum.STRING: TypeEnum.LITERAL, - TypeEnum.BOOL: TypeEnum.LITERAL, - TypeEnum.NUMBER: TypeEnum.LITERAL, - TypeEnum.INT: TypeEnum.NUMBER, - TypeEnum.FLOAT: TypeEnum.NUMBER } - -def is_subtype_of(candidate, expected): - if candidate == expected: - return True - parent = HIERARCHY[candidate] - while parent is not None: - if parent == expected: - return True - parent = HIERARCHY[parent] - return False - |
