|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjpaul.Graphs.DiGraph<MetaMethod>
harpoon.Analysis.MetaMethods.MetaCallGraph
harpoon.Analysis.MetaMethods.MetaCallGraphAbstr
harpoon.Analysis.MetaMethods.FakeMetaCallGraph
public class FakeMetaCallGraph
FakeMetaCallGraph
converts a classic CallGraph
to
a MetaCallGraph
. Basically, it offers a MetaMethods-view
of the call graph, without doing any specialization. This is possible because
there is an obvious mapping from each method of the program to an
unspecialized meta-method consisting of that method plus its declared
parameter types (marked as polymorphic to cope with all the possible ways
that method could be called).
Although it doesn't offer any additional power,
FakeMetaCallGraph
allows the use of the components that require
"meta methods" even without specializing methods to meta-methods.
For example, if you need to use the PointerAnalysis
stuff, but
don't feel very comfortable with meta-methods, just pass it a
FakeMetaCallGraph
.
Field Summary |
---|
Fields inherited from class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr |
---|
all_meta_methods, callees1_cmpct, callees2_cmpct, run_mms |
Fields inherited from class harpoon.Analysis.MetaMethods.MetaCallGraph |
---|
navigator |
Fields inherited from class jpaul.Graphs.DiGraph |
---|
CACHING |
Constructor Summary | |
---|---|
FakeMetaCallGraph(CallGraph cg)
|
|
FakeMetaCallGraph(CallGraph cg,
Set runs)
Creates a FakeMetaCallGraph . |
Method Summary |
---|
Methods inherited from class harpoon.Analysis.MetaMethods.MetaCallGraphAbstr |
---|
getAllMetaMethods, getCallees, getCallees, getCallSites, getRunMetaMethods, getSplitRelation, getTransCallees, print |
Methods inherited from class harpoon.Analysis.MetaMethods.MetaCallGraph |
---|
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 |
Constructor Detail |
---|
public FakeMetaCallGraph(CallGraph cg, Set runs)
FakeMetaCallGraph
. Receives as parameters
a CallGraph
object.
The resulting FakeMetaCallGraph
object is just a
MetaMethod
view of the data contained into cg
.
public FakeMetaCallGraph(CallGraph cg)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |