У меня встроенный и расширенный python внутри моего приложения C, и теперь я хочу документировать это. Я определил модуль с использованием API C, поэтому инструмент pydoc не увидит его (правильно?).
До сих пор лучшим способом, который я могу думать, является использование модуля pydoc в моем модуле во время выполнения (поэтому будет указан модуль расширения, который я определил). Это должно позволить мне выплевывать HTML и текстовые версии документов для моего API.
Что-то вроде (с моей головы):
import pydoc
import sys
d = pydoc.HTMLDoc()
print(d.page("my api", d.docmodule(sys.modules["mymodule"])))
Есть ли лучший способ?
Я точно не знаю, как вы используете API C- (так как вы только что сказали, что встраивали и расширили Python в своем приложении C).
Однако pydoc импортирует модуль и использует интроспекцию для создания документации для модуля, поэтому, если вы запустили его на своем компилированном модуле, он все равно будет работать. Дело в том, что он не смотрит на источник.