From ff9120b1e7777b001b02de3c5341f1af3e93d947 Mon Sep 17 00:00:00 2001 From: mryouse Date: Wed, 20 Jul 2022 02:57:32 +0000 Subject: WIP start adding multifunc to types --- neb/std/types.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'neb') 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_}") -- cgit v1.2.3