diff options
| -rw-r--r-- | neb/__init__.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/neb/__init__.py b/neb/__init__.py index 8ac8aeb..5602ebe 100644 --- a/neb/__init__.py +++ b/neb/__init__.py @@ -166,6 +166,21 @@ class MultiFunction(Callable): super().__init__(name, None, None) self.impls = {} + def __str__(self): + builtin_count = len(list(x for x in self.impls.values() if isinstance(x, Builtin))) + userfunc_count = len(list(x for x in self.impls.values() if isinstance(x, UserFunction))) + b = "" + uf = "" + if builtin_count != 0: + b = f"{builtin_count} builtin" + if userfunc_count != 0: + uf = f"{userfunc_count} user defined" + if b != "" and uf != "": + desc = f"{b}, {uf}" + else: + desc = b if b != "" else uf + return f"function {self.name} ({desc})" + def describe(self): return [i.describe() for i in self.impls.values()] |
