У меня есть трехуровневая структура класса:
class Super(object):
"""This class is documented."""
class Intermediate(Super):
pass
class Sub(Intermediate):
"""This is also documented."""
Мой файл index.rst
выглядит следующим образом:
.. automodule:: mymodule
:show-inheritance:
:inherited-members:
Sphinx создает для меня хорошую документацию по API. Он включает классы Super
и Sub
с соответствующими комментариями. Он не включает Intermediate
, потому что в нем нет комментария, а я не указал флаг undoc-members
. Это потому, что я не хочу, чтобы Intermediate
отображалось в документации.
Моя проблема заключается в следующем: поскольку я указываю флаг show-inheritance
, Sphinx отображает базы для каждого класса; object
вместо Super
и Intermediate
вместо Sub
. Поскольку Intermediate
недокументирован, я не хочу, чтобы он отображался в списке базовых классов. Вместо этого я бы хотел, чтобы Sphinx отображал следующий задокументированный класс в дереве наследования, Super
. Другими словами: я хочу, чтобы Sphinx отображал Super
, а не Intermediate
в качестве базового класса Sub
.
Кто-нибудь знает, как это сделать?
pyserial
. Я расширилserial.Serial
, который является лишь прикрытием для одной из конкретных реализаций для каждой поддерживаемой платформы. Я хотел, чтобы документы отображалиserial.Serial
в качестве моей базы, но вместо этого он показывает что-то вродеserial.posixserial.Serial
без ссылки, так как это официально не задокументировано. - person Mad Physicist   schedule 16.08.2017:exclude-members: Intermediate
? - person Mad Physicist   schedule 31.05.2018