soot
Class TrapManager
java.lang.Object
|
+--soot.TrapManager
- public class TrapManager
- extends java.lang.Object
Utility methods for dealing with traps.
Method Summary |
static java.util.List |
getExceptionTypesOf(Unit u,
Body body)
Given a body and a unit handling an exception,
returns the list of exception types possibly caught
by the handler. |
static java.util.Set |
getTrappedUnitsOf(Body b)
Returns a set of units which lie inside the range of any trap. |
static java.util.List |
getTrapsAt(Unit unit,
Body b)
Returns the list of traps caught at Unit u in Body b. |
static boolean |
isExceptionCaughtAt(SootClass e,
Unit u,
Body b)
If exception e is caught at unit u in body b, return true;
otherwise, return false. |
static void |
splitTrapsAgainst(Body b,
Unit rangeStart,
Unit rangeEnd)
Splits all traps so that they do not cross the range rangeStart - rangeEnd. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
TrapManager
public TrapManager()
isExceptionCaughtAt
public static boolean isExceptionCaughtAt(SootClass e,
Unit u,
Body b)
- If exception e is caught at unit u in body b, return true;
otherwise, return false.
getTrapsAt
public static java.util.List getTrapsAt(Unit unit,
Body b)
- Returns the list of traps caught at Unit u in Body b.
getTrappedUnitsOf
public static java.util.Set getTrappedUnitsOf(Body b)
- Returns a set of units which lie inside the range of any trap.
splitTrapsAgainst
public static void splitTrapsAgainst(Body b,
Unit rangeStart,
Unit rangeEnd)
- Splits all traps so that they do not cross the range rangeStart - rangeEnd.
Note that rangeStart is inclusive, rangeEnd is exclusive.
getExceptionTypesOf
public static java.util.List getExceptionTypesOf(Unit u,
Body body)
- Given a body and a unit handling an exception,
returns the list of exception types possibly caught
by the handler.