ここではJavaを解析した際の PointerAnalysis から取得できる情報について説明する
(ここで扱う PointerAnalysis は従来の PointerAnalysis<InstanceKey> である)
基本的なクラスの説明
PointerAnalysis クラス
ポインタ解析結果を保持するクラス
PointerKey クラス
抽象的なポインタを表すオブジェクト
オブジェクトの種類によって、表現する派生クラスが異なる
LocalPointerKey クラス
ローカル変数のポインタを表す
CGNode と ValueNumber の情報を持つ
LocalPointerKeyWithFilter クラス (LocalPointerKey の派生クラス)
type filterを持つ LocalPointerKey
InstanceFieldKey クラス
TODO
StaticFieldKey クラス
静的フィールドのポインタを表す
IField の情報を持つ
ReturnValueKey クラス
返り値のポインタを示す
CGNode の情報を持つ
ReturnValueKeyWithFilter クラス (ReturnValueKey の派生クラス)
type filterを持つ ReturnValueKey
ExceptionReturnValueKey クラス (ReturnValueKey の派生クラス)
TODO
ArrayContentsKey クラス
TODO
InstanceKey クラス
抽象的なheap locationを表すオブジェクト
オブジェクトの種類によって、派生クラスが異なる
HeapGraph クラス: ポインタ関係のグラフ情報
TODO