public class PhaseDumper extends Object
bodyDumpingPhases list, then the intermediate representation of the bodies being manipulated by the phase is
dumped before and after the phase is applied. If a phase is on the cfgDumpingPhases list, then whenever a CFG
is constructed during the phase, a dot file is dumped representing the CFG constructed.| Constructor and Description |
|---|
PhaseDumper(Singletons.Global g) |
| Modifier and Type | Method and Description |
|---|---|
void |
dumpAfter(Body b,
String phaseName)
Tells the
PhaseDumper that a Body transforming phase has ended, so that it can dump the phases's
“after” file. |
void |
dumpAfter(String phaseName)
Tells the
PhaseDumper that a Scene transforming phase has ended, so that it can dump the phases's
“after” files. |
void |
dumpBefore(Body b,
String phaseName)
Tells the
PhaseDumper that a Body transforming phase has started, so that it can dump the phases's
“before” file. |
void |
dumpBefore(String phaseName)
Tells the
PhaseDumper that a Scene transforming phase has started, so that it can dump the phases's
“before” files. |
void |
dumpBody(Body b,
String baseName) |
void |
dumpGraph(DirectedGraph g,
Body b)
Asks the
PhaseDumper to dump the passed DirectedGraph if the current phase is being dumped. |
void |
dumpGraph(ExceptionalGraph g)
Asks the
PhaseDumper to dump the passed ExceptionalGraph if the current phase is being dumped. |
void |
printCurrentStackTrace()
Prints the current stack trace, as a brute force tool for program understanding.
|
static PhaseDumper |
v()
Returns the single instance of
PhaseDumper. |
public PhaseDumper(Singletons.Global g)
public static PhaseDumper v()
PhaseDumper.PhaseDumper.public void dumpBefore(Body b, String phaseName)
PhaseDumper that a Body transforming phase has started, so that it can dump the phases's
“before” file. If the phase is to be dumped, dumpBefore deletes any old graph files dumped
during previous runs of the phase.b - the Body being transformed.phaseName - the name of the phase that has just started.public void dumpAfter(Body b, String phaseName)
PhaseDumper that a Body transforming phase has ended, so that it can dump the phases's
“after” file.b - the Body being transformed.phaseName - the name of the phase that has just ended.IllegalArgumentException - if phaseName does not match the PhaseDumper's record of the current phase.public void dumpBefore(String phaseName)
PhaseDumper that a Scene transforming phase has started, so that it can dump the phases's
“before” files. If the phase is to be dumped, dumpBefore deletes any old graph files dumped
during previous runs of the phase.phaseName - the name of the phase that has just started.public void dumpAfter(String phaseName)
PhaseDumper that a Scene transforming phase has ended, so that it can dump the phases's
“after” files.phaseName - the name of the phase that has just ended.IllegalArgumentException - if phaseName does not match the PhaseDumper's record of the current phase.public void dumpGraph(DirectedGraph g, Body b)
PhaseDumper to dump the passed DirectedGraph if the current phase is being dumped.g - the graph to dump.body - the Body represented by g.public void dumpGraph(ExceptionalGraph g)
PhaseDumper to dump the passed ExceptionalGraph if the current phase is being dumped.g - the graph to dump.public void printCurrentStackTrace()
Copyright © 2020 Soot OSS. All rights reserved.