1

Python コードの文書化に doxygen を使用しています。これは、プロジェクトのほとんどのコードが C++ で書かれており、doxygen が C++ でうまく機能するためです。

C++ 拡張機能で動的に作成された関数/クラスを文書化したいと考えています。この場合、Docstring はオプションではありません (実行時に作成されます)。したがって、唯一の方法は、インポート後に明示的に文書化することです (これは、ユーザーにとっても最も理にかなっています)。しかし、doxygen は、Python でインポートされたエンティティがスコープのメンバーになることを認識していないようです。質問は次のとおりです。

Python でインポートされたシンボルを文書化するにはどうすればよいですか?

ドキュメントに従ってみました:

## @package test
#  test module

## foo - before
def foo():
    pass

def bar():
    pass
## @fn bar
#  bar - after

from ext import baz
## @fn baz
#  baz - imported

foobar適切に文書化されています:

output_doc

...しかし、doxygenは行方不明を報告しますbaz:

./test.py:14: warning: documented symbol 'test::baz' was not declared or defined.

も試し@varましたが、使用されているコマンドは問題ではないと思います。では、Python のインポートを文書化するにはどうすればよいでしょうか? 出来ますか?


注: 最先端の doxygen 1.8.3.1 を使用しました。

4

0 に答える 0