使用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. 將實例方法的參數限制爲實例的類型
- 12. 記錄將函數作爲參數的JS函數
- 13. 如何在WebStorm的回調函數中記錄'this'實例?
- 14. 日誌記錄實例數據
- 15. 不動點函數類型類實例
- 16. 是否將F#記錄類型實現爲結構體或類?
- 17. Python。啓用從類別實例導入的類實例日誌記錄
- 18. 繼承:將基類實例轉換爲子類實例
- 19. c#將一個linq數據庫記錄轉換成一個類實例
- 20. 如何將類實例傳遞給基類構造函數
- 21. Python:將函數名和參數列表傳遞給類實例
- 22. 將實體記錄設置爲活動
- 23. jPlayer - 爲倍數實例簡化函數
- 24. 指針作爲函數參數實例
- 25. 如何使用swig將python類實例作爲C++函數的參數傳遞?
- 26. 類中的函數實例變量
- 27. NodeJS對象實例 - 類或函數
- 28. JavaScript類實例是否克隆函數?
- 29. 使用函數創建類的實例。
- 30. 重載Singleton類的實例函數
然而,當使用'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