diff options
| author | mryouse | 2022-07-20 02:57:32 +0000 |
|---|---|---|
| committer | mryouse | 2022-07-20 02:57:32 +0000 |
| commit | ff9120b1e7777b001b02de3c5341f1af3e93d947 (patch) | |
| tree | 6a6e6327a0b7458c8d63a58d46f8e5350e07e337 /neb | |
| parent | c0f97f654f497d83b7861121d6e7e040884c8ea4 (diff) | |
WIP start adding multifunc to types
Diffstat (limited to 'neb')
| -rw-r--r-- | neb/std/types.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/neb/std/types.py b/neb/std/types.py index 0ce8b52..999b2c2 100644 --- a/neb/std/types.py +++ b/neb/std/types.py @@ -1,4 +1,4 @@ -from .. import TypeEnum, Environment, Arg, Builtin, evaluate, InterpretPanic, NebType, TypeWrap +from .. import TypeEnum, Environment, Arg, Builtin, evaluate, InterpretPanic, NebType, TypeWrap, MultiFunction from ..structs import * TYPES = Environment() @@ -71,7 +71,10 @@ def interpretToString(symbol, args, env, ns): else: return String(f"{item}") -TYPES.register("->string", Builtin("->string", interpretToString, [Arg("arg", TypeEnum.ANY)], return_type=Type(":string"))) +tostring_func = Builtin("->string", interpretToString, [Arg("arg", TypeEnum.ANY)], return_type=Type(":string")) +tostring_multi = MultiFunction("->string") +tostring_multi.register(tostring_func) +TYPES.register("->string", tostring_multi) def interpretTypeOf(symbol, args, env, ns): return Type(f"{args[0].type_}") |
