com.ibm.wala.demandpa.util
Class CallGraphMapUtil

java.lang.Object
  extended by com.ibm.wala.demandpa.util.CallGraphMapUtil

public class CallGraphMapUtil
extends java.lang.Object

utility methods for mapping various program entities from one call graph to the corresponding entity in another one


Constructor Summary
CallGraphMapUtil()
           
 
Method Summary
static CGNode mapCGNode(CGNode orig, CallGraph fromCG, CallGraph toCG)
          map a call graph node from one call graph to the corresponding node in another.
static InstanceKey mapInstKey(InstanceKey ik, CallGraph fromCG, CallGraph toCG, HeapModel heapModel)
           
static PointerKey mapPointerKey(PointerKey pk, CallGraph fromCG, CallGraph toCG, HeapModel heapModel)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CallGraphMapUtil

public CallGraphMapUtil()
Method Detail

mapCGNode

public static CGNode mapCGNode(CGNode orig,
                               CallGraph fromCG,
                               CallGraph toCG)
                        throws java.lang.IllegalArgumentException
map a call graph node from one call graph to the corresponding node in another. Note that the target call graph must be context-insensitive for the method, i.e., the only context for the method should be Everywhere.EVERYWHERE.

Returns:
the corresponding node, or null if the method is not in the target call graph
Throws:
java.lang.IllegalArgumentException - if fromCG == null

mapInstKey

public static InstanceKey mapInstKey(InstanceKey ik,
                                     CallGraph fromCG,
                                     CallGraph toCG,
                                     HeapModel heapModel)
                              throws UnimplementedError,
                                     java.lang.NullPointerException
Throws:
UnimplementedError
java.lang.NullPointerException

mapPointerKey

public static PointerKey mapPointerKey(PointerKey pk,
                                       CallGraph fromCG,
                                       CallGraph toCG,
                                       HeapModel heapModel)
                                throws UnimplementedError
Throws:
UnimplementedError