def _format_function_args(obj):
if inspect.isbuiltin(obj) or \
inspect.ismethoddescriptor(obj):
# cannot introspect arguments of a C function or method
return None
try:
argspec = getargspec(obj)
except TypeError:
# if a class should be documented as function (yay duck
# typing) we try to use the constructor signature as function
# signature without the first argument.
try:
argspec = getargspec(obj.__new__)
except TypeError:
argspec = getargspec(obj.__init__)
if argspec[0]:
del argspec[0][0]
args = inspect.formatargspec(*argspec)
# escape backslashes for reST
args = args.replace('\\', '\\\\')
return args
评论列表
文章目录