diff options
| author | mryouse | 2022-06-16 20:04:50 +0000 |
|---|---|---|
| committer | mryouse | 2022-06-16 20:04:50 +0000 |
| commit | 49cdaca7fc0df62e6582806b4a44169deb1bdc80 (patch) | |
| tree | dfecfb8d25ebb303e198f9e3045f1771ecebfb79 | |
| parent | a072842248fe7324574bc7733a8c4255af56c855 (diff) | |
implement typeof
| -rw-r--r-- | interpreter.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/interpreter.py b/interpreter.py index e66deab..171fbb1 100644 --- a/interpreter.py +++ b/interpreter.py @@ -893,3 +893,8 @@ def interpretFilter(symbol, args, env, ns): return List(out, True) GLOBALS.register("filter", Builtin(interpretFilter, [Arg("func", TypeEnum.ANY, False, False), Arg("list", TypeEnum.LIST, False, False)])) + +def interpretTypeOf(symbol, args, env, ns): + return Type(f"{args[0].type_}") + +GLOBALS.register("typeof", Builtin(interpretTypeOf, [Arg("candidate", TypeEnum.ANY, False, False)])) |
