今回は、Understand API の概要をご紹介します。
例えば…
- 「Understand の解析結果を独自に加工して、カスタムレポートを生成したい」
- 「Understand の解析結果を、自作のツールにインポートしたい」
などの使い方を検討される場合、Understand API が非常に便利です。

Understand API は、Understand が解析したデータベース(UDBファイル)から、任意の情報を抽出するための仕組みです。例えば、以下のような情報を抽出することができます。
- 各要素のクロスリファレンス情報
- 各要素のグラフィカルビュー
- 各要素のメトリクス情報
- 各要素のコード内のコメント
Understand API は、Perl 用と C 言語用が用意されており、その仕様やサンプルについては、以下で確認することができます。
Perl API リファレンス
ツールメニュー[ヘルプ]-[Perl API ヘルプ]
Perlサンプル スクリプト
%Understandインストールディレクトリ%samplescripts に格納されています。
以下は、サンプルスクリプト「ac_complexitymetrics.p」(全ての関数の複雑度に関するメトリクスを出力する)の実行例と結果のイメージです。
Function/Procedure Complexity Essential Knots EssentialKnots regmatch 51 30 335 335 main 44 4 88 5 regatom 27 17 94 94 chimaera 18 10 14 14 gotamatch 15 4 8 4 multiple 14 1 1 0 alternate 14 8 9 9 reg 14 9 12 12 regexec 13 13 15 15 regsub 12 7 12 10 regcomp 12 6 6 5
Understand APIを使いこなすことができれば、応用の幅がいっきに広がります。是非とも一度、お試しください。