public interface ProgramDependenceGraph extends MutableEdgeLabelledDirectedGraph<PDGNode,String>
Modifier and Type | Method and Description |
---|---|
boolean |
dependentOn(PDGNode node1,
PDGNode node2)
This method determines if node1 is control-dependent on node2 in this PDG.
|
BlockGraph |
getBlockGraph() |
List<PDGNode> |
getDependents(PDGNode node)
This method returns the list of all dependents of a node in the PDG.
|
PDGNode |
getPDGNode(Object cfgNode)
This method returns the PDGNode in the PDG corresponding to the given
CFG node.
|
List<PDGRegion> |
getPDGRegions()
This method returns the list of PDGRegions computed by the construction method.
|
PDGNode |
GetStartNode() |
IRegion |
GetStartRegion() |
List<Region> |
getStrongRegions() |
List<Region> |
getWeakRegions() |
String |
toString() |
addEdge, addNode, containsAnyEdge, containsAnyEdge, containsEdge, containsNode, getEdgesForLabel, getLabelsForEdges, getNodes, removeAllEdges, removeAllEdges, removeEdge, removeNode
getHeads, getPredsOf, getSuccsOf, getTails, iterator, size
forEach, spliterator
List<Region> getWeakRegions()
List<Region> getStrongRegions()
List<PDGRegion> getPDGRegions()
IRegion GetStartRegion()
BlockGraph getBlockGraph()
PDGNode GetStartNode()
boolean dependentOn(PDGNode node1, PDGNode node2)
node1
- node2
- List<PDGNode> getDependents(PDGNode node)
node
- is the PDG node whose dependents are desired.PDGNode getPDGNode(Object cfgNode)
cfgNode
- is expected to be a node in CFG (currently only Block).