当我有一个装饰器,其闭包定义如下:
def Decorator(arg):
class InnerDecorator:
"""Here i use the arg: {arg}"""
__doc__ = __doc__.format(arg=arg)
def __init__(self, func):
self.func = func
# make arg an instance attribute
self.arg = arg
def __call__(self):
return self.func()
return InnerDecorator
我使用的是这样的:
class MyClass(object):
@Decorator("ARG")
def foo(self):
pass
@Decorator("Other ARG")
def bar(self):
pass
我可以使用interactive-shell查看'foo'和'bar的正确文档字符串:
>>> help(MyClass)
我的问题是: 有没有办法用sphinx生成方法'foo'和'bar'的autodoc? 我试过了,
.. autoclass:: MyClass
:members:
但这不起作用。
到目前为止
答案 0 :(得分:0)
这个答案帮助我实现了目标:https://stackoverflow.com/a/15693082/1901330
作为我的示例代码的答案,我执行以下操作:
.. autoclass:: module.MyClass
.. automethod:: module.MyClass.foo(self)
.. automethod:: module.MyClass.bar(self)