use of soot.dava.internal.asg.AugmentedStmt in project soot by Sable.
the class ExceptionNode method dump.
public void dump() {
logger.debug("try {");
for (AugmentedStmt au : get_TryBody()) logger.debug("\t" + au);
logger.debug("}");
for (IterableSet<AugmentedStmt> catchBody : get_CatchList()) {
logger.debug("catch " + get_ExceptionMap().get(catchBody) + " {");
for (AugmentedStmt au : catchBody) logger.debug("\t" + au);
logger.debug("}");
}
}
use of soot.dava.internal.asg.AugmentedStmt in project soot by Sable.
the class MonitorConverter method convert.
public void convert(DavaBody body) {
for (AugmentedStmt mas : body.get_MonitorFacts()) {
MonitorStmt ms = (MonitorStmt) mas.get_Stmt();
body.addToImportList("soot.dava.toolkits.base.DavaMonitor.DavaMonitor");
ArrayList arg = new ArrayList();
arg.add(ms.getOp());
if (ms instanceof EnterMonitorStmt)
mas.set_Stmt(new GInvokeStmt(new DVirtualInvokeExpr(new DStaticInvokeExpr(v.makeRef(), new ArrayList()), enter.makeRef(), arg, new HashSet<Object>())));
else
mas.set_Stmt(new GInvokeStmt(new DVirtualInvokeExpr(new DStaticInvokeExpr(v.makeRef(), new ArrayList()), exit.makeRef(), arg, new HashSet<Object>())));
}
}
Aggregations