@Override public ThrowableSet getThrowables() { if (null == throwables) { throwables = ThrowableSet.Manager.v().EMPTY; for (Unit unit : b) { throwables = throwables.add(throwAnalysis.mightThrow(unit)); } } return throwables; } };
@Override public void caseThrowInst(ThrowInst i) { result = mightThrowImplicitly(i); result = result.add(mightThrowExplicitly(i)); }
@Override public void caseVirtualInvokeInst(VirtualInvokeInst i) { result = result.add(mgr.RESOLVE_METHOD_ERRORS); result = result.add(mgr.NULL_POINTER_EXCEPTION); result = result.add(mightThrow(i.getMethodRef())); }
public static UnitThrowAnalysis interproc() { if (interproceduralAnalysis == null) { interproceduralAnalysis = new UnitThrowAnalysis(true); } return interproceduralAnalysis; }
/** * Returns the set of all <code>Throwable</code>s as the set of types that the specified unit might throw, regardless of * the unit's identity. * * @param u * {@link Unit} whose exceptions are to be returned. * * @return the set of all <code>Throwable</code>s. */ public ThrowableSet mightThrow(Unit u) { return ThrowableSet.Manager.v().ALL_THROWABLES; }
public soot.toolkits.exceptions.ThrowableSet.Manager soot_toolkits_exceptions_ThrowableSet_Manager() { if (instance_soot_toolkits_exceptions_ThrowableSet_Manager == null) { synchronized (this) { if (instance_soot_toolkits_exceptions_ThrowableSet_Manager == null) instance_soot_toolkits_exceptions_ThrowableSet_Manager = new soot.toolkits.exceptions.ThrowableSet.Manager(g); } } return instance_soot_toolkits_exceptions_ThrowableSet_Manager; } protected void release_soot_toolkits_exceptions_ThrowableSet_Manager() {
public soot.toolkits.exceptions.TrapTightener soot_toolkits_exceptions_TrapTightener() { if (instance_soot_toolkits_exceptions_TrapTightener == null) { synchronized (this) { if (instance_soot_toolkits_exceptions_TrapTightener == null) instance_soot_toolkits_exceptions_TrapTightener = new soot.toolkits.exceptions.TrapTightener(g); } } return instance_soot_toolkits_exceptions_TrapTightener; } protected void release_soot_toolkits_exceptions_TrapTightener() {
public soot.toolkits.exceptions.PedanticThrowAnalysis soot_toolkits_exceptions_PedanticThrowAnalysis() { if (instance_soot_toolkits_exceptions_PedanticThrowAnalysis == null) { synchronized (this) { if (instance_soot_toolkits_exceptions_PedanticThrowAnalysis == null) instance_soot_toolkits_exceptions_PedanticThrowAnalysis = new soot.toolkits.exceptions.PedanticThrowAnalysis(g); } } return instance_soot_toolkits_exceptions_PedanticThrowAnalysis; } protected void release_soot_toolkits_exceptions_PedanticThrowAnalysis() {
public soot.toolkits.exceptions.DuplicateCatchAllTrapRemover soot_toolkits_exceptions_DuplicateCatchAllTrapRemover() { if (instance_soot_toolkits_exceptions_DuplicateCatchAllTrapRemover == null) { synchronized (this) { if (instance_soot_toolkits_exceptions_DuplicateCatchAllTrapRemover == null) instance_soot_toolkits_exceptions_DuplicateCatchAllTrapRemover = new soot.toolkits.exceptions.DuplicateCatchAllTrapRemover(g); } } return instance_soot_toolkits_exceptions_DuplicateCatchAllTrapRemover; } protected void release_soot_toolkits_exceptions_DuplicateCatchAllTrapRemover() {
@Override public void caseThrowStmt(ThrowStmt s) { result = mightThrowImplicitly(s); result = result.add(mightThrowExplicitly(s)); }
public void caseArrayRef(ArrayRef ref) { result = result.add(mgr.NULL_POINTER_EXCEPTION); result = result.add(mgr.ARRAY_INDEX_OUT_OF_BOUNDS_EXCEPTION); result = result.add(mightThrow(ref.getBase())); result = result.add(mightThrow(ref.getIndex())); }
public soot.toolkits.exceptions.UnitThrowAnalysis soot_toolkits_exceptions_UnitThrowAnalysis() { if (instance_soot_toolkits_exceptions_UnitThrowAnalysis == null) { synchronized (this) { if (instance_soot_toolkits_exceptions_UnitThrowAnalysis == null) instance_soot_toolkits_exceptions_UnitThrowAnalysis = new soot.toolkits.exceptions.UnitThrowAnalysis(g); } } return instance_soot_toolkits_exceptions_UnitThrowAnalysis; } protected void release_soot_toolkits_exceptions_UnitThrowAnalysis() {