diff options
| author | mryouse | 2022-07-21 20:32:20 +0000 |
|---|---|---|
| committer | mryouse | 2022-07-21 20:32:20 +0000 |
| commit | f459a278783601af03311dfefcedaafb0fecdad6 (patch) | |
| tree | 9282c9ade8a38ab9f9dfc945f591088619a9744e /neb | |
| parent | 6374dfe7cd7af01a5270d49f5e314941c36090a5 (diff) | |
do better at describing function implementations
Diffstat (limited to 'neb')
| -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()] |
