使用sphinx autodoc
扩展名创建文档时如何将类实例(不是类本身)记录为函数?类定义了一个__call__
方法。将类实例记录为函数
0
A
回答
1
有可能使用的狮身人面像的扩展来解决这个问题。对我来说,以下是足够:
在
conf.py
:- 添加适当的路径
sys.path
在conf.py
- 在
extensions
列表
- 添加适当的路径
与新的模块名称替换
sphinx.ext.autodoc
新模块:- 进口
sphinx.ext.autodoc
- 创建的
.autodoc.FunctionDocumenter
- 一个子类创建
setup(app)
函数调用.autodoc.setup()
,然后调用app.add_autodocumenter(SubclassName)
- 进口
注意,这将取代文档管理器功能,因此您需要使它对他们有用。通过定义objtype
类常量和唯一的字符串作为值可以避免该问题,但这需要更多的工作。关心常规功能更容易。如果有人感兴趣,代码是here。
0
我不熟悉autodoc
特别,但你可以试试这个:
class MyClass(object):
...
def __call__(self):
...
c = MyClass()
"""
this is a function-like object.
"""
c2 = MyClass()
"""
this is another function-like object.
"""
或者这样:
#: this is a function-like object.
c = MyClass()
相关问题
- 1. 将记录器实例传递给类
- 2. 在函数中将类/实例函数作为参数传递
- 3. 作为类型类实例的函数?
- 4. 从参数化记录类型实例化Clojurescript中的记录?
- 5. 将记录集存储为一个类的实例?
- 6. 将实例作为函数参数
- 7. 类型实例函数
- 8. 为什么新实例使用旧实例的记录器?
- 9. 日志记录实例数据
- 10. 不动点函数类型类实例
- 11. c#将一个linq数据库记录转换成一个类实例
- 12. 如何将类实例传递给基类构造函数
- 13. 指针作为函数参数实例
- 14. jPlayer - 为倍数实例简化函数
- 15. 如何使用swig将python类实例作为C++函数的参数传递?
- 16. JavaScript类实例是否克隆函数?
- 17. NodeJS对象实例 - 类或函数
- 18. 重载Singleton类的实例函数
- 19. 如何从非实例类运行实例的方法/函数?
- 20. 斯卡拉案例类:为类型构造函数生成实例吗?
- 21. 记录bash函数
- 22. SWIG:Lua - 将C++实例作为lua函数参数传递
- 23. Erlang:将记录传递给函数?
- 24. 将连续的类似记录折叠为单个记录
- 25. 将类实例序列化为JSON
- 26. 将C++接口实例化为子类
- 27. 将类实例部署为Web服务
- 28. Hibernate将实例转换为子类
- 29. 将函数应用于类的所有实例
- 30. 将方法的类实例传递给一个函数PHP
然而,当使用'sphinx.ext.autosummary'时要小心:自Sphinx 1.2.1以来,它[覆盖自定义文档](https://github.com/sphinx-doc/sphinx/commit/574a796)与默认的。一种解决方案是将文档设置为“env-before-read-docs”事件,该事件在自动摘要覆盖后调用。一个例子可以看到[这里](https://github.com/F30/salt/blob/autodoc-fix/doc/_ext/saltautodoc.py)。 – F30 2016-09-07 11:42:20