Имеется несколько перегруженных функций:
@singledispatch
def get():
"""main docstring"""
...
@get.register(str)
def _get_str(s):
"""str docstring"""
print('str')\
@get.register(int)
def _get_int(i):
print('int')
get(1) # int
get('s') # str
Но help выводит только одну сигнатуру:
help(get)
Help on function get in module __main__:
get()
main docstring
Я могу скопировать сигнатуру одной реализации в другую:
get.__signature__ = inspect.signature(_get_str)
help(get)
Help on function get in module __main__:
get(s)
main docstring
Но я бы хотел видеть в help все сигнатуры и строки документации разом, примерно так:
Help on function get in module __main__:
get()
main docstring
get(s)
str docstring
get(i)
Как это можно сделать?