Вы можете использовать макросы.
В моем проекте у меня есть заголовочный файл, который содержит все «важные» классы и глобальные функции и их аббревиатуру. Две строки примера:
.. |PostItem| replace:: :class:`PostItem <hklib.PostItem>`
.. |PostNotFoundError| replace:: :class:`PostNotFoundError <hklib.PostNotFoundError>`
В мои rst
файлы я включаю этот заголовочный файл. Тогда я могу использовать макросы в любом rst
файле:
.. include:: defs.hrst
|PostItem| is a nice class. |PostNotFoundError|, on the other hand is not.
(Вы также можете включить строки документации из исходных файлов Python, используя расширение autogen
. Макросы в них также будут заменены.)
О вашем примере: я бы добавил Foo
в заголовочный файл и написал бы строку документации следующим образом:
'''This class contains a bunch of |Foo| objects'''