いくつかの大きなC++プロジェクトを分析しています。本当に必要な機能は、関数呼び出しを見つけることだけです。C++コードの解析 - CSCope
これは私が今はcscope
を使用していますが、大きな問題が1つ見つかりました。つまり、cscope
はメソッドを見つけることができません。 object.function()
。
cscope
の設定を何とか変更することはできますか?あるいは、C++をcscope
で実現可能な方法で解析できない場合は、他のパーサーをお勧めしますか?これは「優れた」ものですか?
私はこのように、単にできるだけcscope
を使用しています:私は別にデータベースを作成していないよ
cscope -k -L3importantFunc path_to_some_file
、私はそれがある特定のファイルについては、この方法で十分であるべきだと思います。
私はすでにクランを試みたが、条件付きコンパイルブロックで囲まれた機能を探すことはできませんので、それは、はるかに良いではなかったです。
https://github.com/Andersbakken/rtags –
野生の推測として、問題はcscopeのは、C言語ではなくCを解析するためであることが考えられ++? –
ソースコードを解析する前にプリプロセッサを実行すると、プリプロセッサの条件ブロックが不安定になります。無効なPP条件ブロック内で関数呼び出しを探したいですか?条件付きブロックが関数のヘッダー行に折り返された場合はどうなりますか?それが引数リストの一部にラップされるとどうなりますか? –