Я хотел бы задокументировать атрибут модуля, который содержит вызываемый объект, а точнее тип. Этот атрибут предназначен для хранения некоторого типа, а не псевдонима типа.
Когда я документирую атрибут, Sphinx по умолчанию отображает сигнатуру вызова связанного с ним типа.
Я бы хотел, чтобы он просто показывал тип.
Поэтому я немного покопался и создал этот MWE. Кажется, все сводится к двум факторам: использование autodoc-typehints
и наличие параметра с подсказкой типа в конструкторе класса. Удаление любого из них дает правильную форму выше.
# package.py
class Foo:
def __init__(self, baz: int):
pass
bar_type = Foo
# documentation
.. currentmodule:: package
.. autoclass:: Foo
.. autodata:: bar_type
# Sphinx conf.py
extensions = [
'sphinx.ext.autodoc',
'sphinx_autodoc_typehints',
]
Я использую autodoc-typehints
по другим причинам, поэтому мне будет трудно от него избавиться. Как я мог не показывать подпись в bar_type
?