9

doxygen スタイルの C++ コメント文字列を解析する Python モジュールを知っている人はいますか? 次のような文字列を意味します (単純な例):

  /**
   * A constructor.
   * A more elaborate description of the constructor.
   * @param param1 test1
   * @param param2 test2
   */

簡単な説明、長い説明、パラメーター、戻り値などを抽出したいと思います。現在、文字列メソッドと正規表現を使用してこれを行っていますが、私のソリューションはあまり堅牢ではありません。あるいは、すぐにセットアップできる使いやすい python パーサー ライブラリを推奨できる人はいますか?

前もって感謝します

4

2 に答える 2

5

SimpleParseモジュールを使用して何かをセットアップできるかもしれませんが、これには EBNF 文法を作成する必要があり、興味がある以上の投資になる可能性があります。

Sphinx/Doxygen ブリッジ ( Breathe ) は、Doxygen の xml 出力を使用し、代わりにそれに基づいて動作します。おそらく、同様のアプローチがここで機能する可能性があります。Doxygen を実行して xml 形式のドキュメントを抽出し、Breatheのコードの一部を利用して必要なデータを取得します。

于 2010-03-16T10:42:28.223 に答える
1

doxygenがどのように実装されているかを調べて、解析をどのように処理するかを確認する必要があります。私はそれが正規表現を使用していることを非常に疑っています。

于 2010-03-08T01:48:24.763 に答える