- PR -

CodeDomでコードを作るのではなく解析したい。

1
投稿者投稿内容
会議室デビュー日: 2006/12/29
投稿数: 1
投稿日時: 2006-12-29 12:12
今DTEのCodeElementsを辿っていってプログラム構造を解析できるようになりました。
しかし大まかな構造でありメソッド内部には複雑なプログラムコードがあり、これを解析したいのです。
CodeDomはそういった複雑なコードを構築することが出来る多数のメソッド、プロパティが用意してあります。
そうではなく現在読み込まれているプロジェクトのプログラムコードからCodeDomインスタンスを生成する方法はないでしょうか?
目的はプログラムの完全な構造を解析するのを自動化したいということです。
未記入
会議室デビュー日: 2006/12/29
投稿数: 1
投稿日時: 2006-12-29 16:11
初めまして。以前EnvDTE等で開発補助ツール等を作っていた者です。

CodeElementsでプログラム解析ができているという事は、既に他のプログラム等に
アクセスする手段はあるはずです。(IDEに組み込まれていれば…)
私の場合は、変数や関数の命名規約等のチェックを自動化するために、IDEに含んだ
ソースをDocumentで開きつつDOMを構築していました。
#素のプログラムコードからElementsのツリーを構築する方法は分かりません。
#やり方があれば私も教えて欲しいです。

余談ですが、使っていれば分かる事ですが、このCodeElementsらは時々ウソをつきます。(VC++6.0当時)
開発者同士ならば制約と見なしてファジーな判断ができますが、何らかの成果物として
外に出すならば気をつけた方が良いです。
(特にElement同士の前後関連は殆ど信用できませんでした。)

yacc+lex等(最近はBoost.Spiritや、PythonのPLY等が主流?)で自前で用意した方がいい時もあります。


1

スキルアップ/キャリアアップ(JOB@IT)