|
|||||||||
| 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
harpoon.Analysis.Quads.CallGraph
harpoon.Analysis.Quads.CallGraphImpl
public class CallGraphImpl
CallGraphImpl constructs a simple directed call graph.
This is the most conservative implementation of CallGraph.
| Field Summary | |
|---|---|
protected HCodeFactory |
hcf
|
| Fields inherited from class harpoon.Analysis.CallGraph |
|---|
navigator |
| Fields inherited from class jpaul.Graphs.DiGraph |
|---|
CACHING |
| Constructor Summary | |
|---|---|
CallGraphImpl(ClassHierarchy ch,
HCodeFactory hcf)
Creates a CallGraph using the specified
ClassHierarchy. |
|
| Method Summary | |
|---|---|
Set<HMethod> |
callableMethods()
Returns the set of all the methods that can be called in the execution of the program. |
HMethod[] |
calls(HMethod m)
Return a list of all possible methods called by this method. |
HMethod[] |
calls(HMethod m,
CALL cs)
Return an array containing all possible methods called by this method at a particular call site. |
CALL[] |
getCallSites(HMethod hm)
Returns a list of all CALLs quads in the code
of hm. |
Set<HMethod> |
getRunMethods()
Safe implementation of getRunMethods: returns the
set of callable methods named "run", with no
argument and declared by a subclass of
java.lang.Thread. |
| Methods inherited from class harpoon.Analysis.CallGraph |
|---|
getBiDiNavigator, getForwardNavigator, getRoots |
| 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 HCodeFactory hcf
| Constructor Detail |
|---|
public CallGraphImpl(ClassHierarchy ch,
HCodeFactory hcf)
CallGraph using the specified
ClassHierarchy. hcf must be a code
factory that generates quad-ssi or quad-no-ssa form.
| Method Detail |
|---|
public HMethod[] calls(HMethod m)
calls in class CallGraph
public HMethod[] calls(HMethod m,
CALL cs)
calls in class CallGraphpublic Set<HMethod> callableMethods()
callableMethods in class CallGraphpublic CALL[] getCallSites(HMethod hm)
CALLs quads in the code
of hm.
getCallSites in class CallGraphpublic Set<HMethod> getRunMethods()
getRunMethods: returns the
set of callable methods named "run", with no
argument and declared by a subclass of
java.lang.Thread.
getRunMethods in class CallGraphrun() methods that may
be the bodies of a thread started by the program (optional operation).
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||