Package soot.toolkits.exceptions
Interface ThrowAnalysis
-
- All Known Implementing Classes:
AbstractThrowAnalysis,DalvikThrowAnalysis,DotnetThrowAnalysis,PedanticThrowAnalysis,UnitThrowAnalysis
public interface ThrowAnalysisA source of information about the exceptions that
Units might throw.The
Units corresponding toathrowinstructions may throw exceptions either explicitly—because the exception is theathrow's argument— or implicitly—because some error arises in the course of executing the instruction (only implicit exceptions are possible for bytecode instructions other thanathrow). ThemightThrowExplicitly()andmightThrowImplicitly()methods allow analyses to exploit any extra precision that may be gained by distinguishing between anathrow's implicit and explicit exceptions.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ThrowableSetmightThrow(Unit u)Returns a set representing theThrowabletypes that the specified unit might throw.ThrowableSetmightThrowExplicitly(ThrowInst t)Returns a set representing theThrowabletypes that the specified throw instruction might throw explicitly, that is, the possible types for itsThrowableargument.ThrowableSetmightThrowExplicitly(ThrowStmt t)Returns a set representing theThrowabletypes that the specified throw statement might throw explicitly, that is, the possible types for itsThrowableargument.ThrowableSetmightThrowImplicitly(ThrowInst t)Returns a set representing theThrowabletypes that the specified throw instruction might throw implicitly, that is, the possible types of errors which might arise in the course of executing thethrowinstruction, rather than the type of thethrow's operand.ThrowableSetmightThrowImplicitly(ThrowStmt t)Returns a set representing theThrowabletypes that the specified throw statement might throw implicitly, that is, the possible types of errors which might arise in the course of executing thethrowstatement, rather than the type of thethrow's operand.
-
-
-
Method Detail
-
mightThrow
ThrowableSet mightThrow(Unit u)
Returns a set representing theThrowabletypes that the specified unit might throw.- Parameters:
u-Unitwhose exceptions are to be returned.- Returns:
- a representation of the
Throwabletypes thatumight throw.
-
mightThrowExplicitly
ThrowableSet mightThrowExplicitly(ThrowInst t)
Returns a set representing theThrowabletypes that the specified throw instruction might throw explicitly, that is, the possible types for itsThrowableargument.- Parameters:
t-ThrowInstwhose explicit exceptions are to be returned.- Returns:
- a representation of the possible types of
t'sThrowableoperand.
-
mightThrowExplicitly
ThrowableSet mightThrowExplicitly(ThrowStmt t)
Returns a set representing theThrowabletypes that the specified throw statement might throw explicitly, that is, the possible types for itsThrowableargument.- Parameters:
t-ThrowStmtwhose explicit exceptions are to be returned.- Returns:
- a representation of the possible types of
t'sThrowableoperand.
-
mightThrowImplicitly
ThrowableSet mightThrowImplicitly(ThrowInst t)
Returns a set representing theThrowabletypes that the specified throw instruction might throw implicitly, that is, the possible types of errors which might arise in the course of executing thethrowinstruction, rather than the type of thethrow's operand.- Parameters:
t-ThrowStmtwhose implicit exceptions are to be returned.- Returns:
- a representation of the types of exceptions that
tmight throw implicitly.
-
mightThrowImplicitly
ThrowableSet mightThrowImplicitly(ThrowStmt t)
Returns a set representing theThrowabletypes that the specified throw statement might throw implicitly, that is, the possible types of errors which might arise in the course of executing thethrowstatement, rather than the type of thethrow's operand.- Parameters:
t-ThrowStmtwhose implicit exceptions are to be returned.- Returns:
- a representation of the types of exceptions that
tmight throw implicitly.
-
-