|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjpaul.Graphs.DiGraph<HMethod>
harpoon.Analysis.CallGraph
public abstract class CallGraph
CallGraph
is a general IR-independant interface that
for a call graph. IR-specific subclasses (see
harpoon.Analysis.Quads.CallGraph
) can provide
call-site information.
Field Summary | |
---|---|
protected jpaul.Graphs.BiDiNavigator<HMethod> |
navigator
cached bi-directional navigator |
Fields inherited from class jpaul.Graphs.DiGraph |
---|
CACHING |
Constructor Summary | |
---|---|
CallGraph()
|
Method Summary | |
---|---|
abstract Set<HMethod> |
callableMethods()
Returns the set of all the methods that can be called in the execution of the program. |
abstract HMethod[] |
calls(HMethod hm)
Returns an array containing all possible methods called by method m . |
jpaul.Graphs.BiDiNavigator<HMethod> |
getBiDiNavigator()
Returns a bi-directional top-down graph navigator through this callgraph. |
jpaul.Graphs.ForwardNavigator<HMethod> |
getForwardNavigator()
Returns a forward-only top-down graph navigator through this callgraph. |
Set<HMethod> |
getRoots()
|
Set |
getRunMethods()
|
Methods inherited from class jpaul.Graphs.DiGraph |
---|
constructBiDiNavigator, dfs, dfs2, diGraph, diGraph, findPath, findPath, forAllVertices, getComponentDiGraph, numArcs, numVertices, reverseDiGraph, subDiGraph, toString, transitivePred, transitivePred, transitiveSucc, transitiveSucc, union, vertices |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected jpaul.Graphs.BiDiNavigator<HMethod> navigator
Constructor Detail |
---|
public CallGraph()
Method Detail |
---|
public abstract HMethod[] calls(HMethod hm)
m
. If hm
doesn't call any
method, return an array of length 0
.
public abstract Set<HMethod> callableMethods()
public Set getRunMethods()
run()
methods that may
be the bodies of a thread started by the program (optional operation).
UnsupportedOperationException
- if getRunMethods
is not implemented by this
.public Set<HMethod> getRoots()
getRoots
in class jpaul.Graphs.DiGraph<HMethod>
public jpaul.Graphs.BiDiNavigator<HMethod> getBiDiNavigator()
this
callgraph. Result is internally cached.
getBiDiNavigator
in class jpaul.Graphs.DiGraph<HMethod>
public jpaul.Graphs.ForwardNavigator<HMethod> getForwardNavigator()
this
callgraph.
getForwardNavigator
in class jpaul.Graphs.DiGraph<HMethod>
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |