summaryrefslogtreecommitdiff
path: root/lib/sly/ast.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sly/ast.py')
-rw-r--r--lib/sly/ast.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/sly/ast.py b/lib/sly/ast.py
index 7b79ac5..05802bd 100644
--- a/lib/sly/ast.py
+++ b/lib/sly/ast.py
@@ -1,25 +1,24 @@
# sly/ast.py
import sys
+
class AST(object):
-
@classmethod
def __init_subclass__(cls, **kwargs):
mod = sys.modules[cls.__module__]
- if not hasattr(cls, '__annotations__'):
+ if not hasattr(cls, "__annotations__"):
return
hints = list(cls.__annotations__.items())
def __init__(self, *args, **kwargs):
if len(hints) != len(args):
- raise TypeError(f'Expected {len(hints)} arguments')
+ raise TypeError(f"Expected {len(hints)} arguments")
for arg, (name, val) in zip(args, hints):
if isinstance(val, str):
val = getattr(mod, val)
if not isinstance(arg, val):
- raise TypeError(f'{name} argument must be {val}')
+ raise TypeError(f"{name} argument must be {val}")
setattr(self, name, arg)
cls.__init__ = __init__
-