devMetrics
プログラムをしていると、時々メトリクスを測定したくなりますが(・∀・)
海外には有償の製品で良いのとかありそうですが、とりあえずdevMetricsのCommunity Editionは入れていたり。
出力がHTMLなのがちょっとというか、加工できるようにCSVがありがたいですけど(´Д`)
で、ソースがあるので、後学のためにちょっと除いてみたり。
とりあえず厳密名キーのファイルが無いとビルド時に怒られるので、AssemblyKeyNameAttributeのあたりをコメントアウト。
実行時にSecurityExceptionが出るので、StrongNameIdentityPermissionAttributeもコメントアウト(・∀・)
CSharpParserプロジェクトの、CSharpParser、CSharpTokenizerクラスあたりがパーサですね。
CSharpTokenStream.ToArray()クラスでソースが分割されたトークン配列が返ってきますけど。
CSharpParser.Parse()メソッドの戻り値のCodeCompileUnitが分析結果なんでしょうけど、内部の階層とかがよく分からなかったり。
classの定義が合った場合、CodeCompileUnit.Namespace.NestedNamespaces[ 0 ].DeclaredTypes[ 0 ]とかにAnticipatingMinds.Genesis.CodeDOM.CodeClassDeclarationが入ってくるのかしら(´ω`)?
CSharpParserとかCSharpTokenStreamを見てるとかなりちゃんとしたパーサっぽいですが。
いちゃもんみたいに処理は適当(失礼)でも良いんで、手軽に弄れるパーサの方がありがたいかな〜(´Д`)
開発用のアドインとか、英語版や有償製品も含めていろいろ使いたいんですが、貧乏な底辺ぷろぐらまには厳しいところもあったりして。
Visual Studio 2005 Team Systemで日本語版FxCopを使っている人が羨まスィとか思ってみたり(´ω`)