Package soot.toolkits.exceptions
Class ThrowableSet.Manager
- java.lang.Object
-
- soot.toolkits.exceptions.ThrowableSet.Manager
-
- Enclosing class:
- ThrowableSet
public static class ThrowableSet.Manager extends Object
Singleton class for fields and initializers common to all ThrowableSet objects (i.e., these would be static fields and initializers, in the absence of soot'sGandSingletonsclasses).
-
-
Field Summary
Fields Modifier and Type Field Description RefTypeARITHMETIC_EXCEPTIONRefTypeARRAY_INDEX_OUT_OF_BOUNDS_EXCEPTIONRefTypeARRAY_STORE_EXCEPTIONRefTypeCLASS_CAST_EXCEPTIONThrowableSetEMPTYThrowableSetcontaining no exception classes.RefTypeILLEGAL_MONITOR_STATE_EXCEPTIONRefTypeINDEX_OUT_OF_BOUNDS_EXCEPTIONRefTypeINSTANTIATION_ERRORRefTypeNEGATIVE_ARRAY_SIZE_EXCEPTIONRefTypeNULL_POINTER_EXCEPTIONThrowableSetRESOLVE_CLASS_ERRORSThrowableSetcontaining all the exceptions that may be thrown in the course of resolving a reference to another class, including the process of loading, preparing, and verifying the referenced class.RefTypeRUNTIME_EXCEPTION
-
Constructor Summary
Constructors Constructor Description Manager(Singletons.Global g)Constructs aThrowableSet.Managerfor inclusion in Soot's global variable manager,G.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ThrowableSetregisterSetIfNew(Set<RefLikeType> include, Set<AnySubType> exclude)Returns aThrowableSetrepresenting the set of exceptions included inincludeminus the set of exceptions included inexclude.StringreportInstrumentation()Report the counts collected by instrumentation (for now, at least, there is no need to provide access to the individual values as numbers).static ThrowableSet.Managerv()Returns the single instance ofThrowableSet.Manager.
-
-
-
Field Detail
-
EMPTY
public final ThrowableSet EMPTY
ThrowableSetcontaining no exception classes.
-
RESOLVE_CLASS_ERRORS
public final ThrowableSet RESOLVE_CLASS_ERRORS
ThrowableSetcontaining all the exceptions that may be thrown in the course of resolving a reference to another class, including the process of loading, preparing, and verifying the referenced class.
-
RUNTIME_EXCEPTION
public final RefType RUNTIME_EXCEPTION
-
ARITHMETIC_EXCEPTION
public final RefType ARITHMETIC_EXCEPTION
-
ARRAY_STORE_EXCEPTION
public final RefType ARRAY_STORE_EXCEPTION
-
CLASS_CAST_EXCEPTION
public final RefType CLASS_CAST_EXCEPTION
-
ILLEGAL_MONITOR_STATE_EXCEPTION
public final RefType ILLEGAL_MONITOR_STATE_EXCEPTION
-
INDEX_OUT_OF_BOUNDS_EXCEPTION
public final RefType INDEX_OUT_OF_BOUNDS_EXCEPTION
-
ARRAY_INDEX_OUT_OF_BOUNDS_EXCEPTION
public final RefType ARRAY_INDEX_OUT_OF_BOUNDS_EXCEPTION
-
NEGATIVE_ARRAY_SIZE_EXCEPTION
public final RefType NEGATIVE_ARRAY_SIZE_EXCEPTION
-
NULL_POINTER_EXCEPTION
public final RefType NULL_POINTER_EXCEPTION
-
INSTANTIATION_ERROR
public final RefType INSTANTIATION_ERROR
-
-
Constructor Detail
-
Manager
public Manager(Singletons.Global g)
Constructs aThrowableSet.Managerfor inclusion in Soot's global variable manager,G.- Parameters:
g- guarantees that the constructor may only be called fromSingletons.
-
-
Method Detail
-
v
public static ThrowableSet.Manager v()
Returns the single instance ofThrowableSet.Manager.- Returns:
- Soot's
ThrowableSet.Manager.
-
registerSetIfNew
protected ThrowableSet registerSetIfNew(Set<RefLikeType> include, Set<AnySubType> exclude)
Returns a
ThrowableSetrepresenting the set of exceptions included inincludeminus the set of exceptions included inexclude. Creates a newThrowableSetonly if there was not already one whose contents correspond toinclude-exclude.- Parameters:
include- A set ofRefLikeTypeobjects representing exception types included in the result; may benullif there are no included types.exclude- A set ofAnySubTypeobjects representing exception types excluded from the result; may benullif there are no excluded types.- Returns:
- a
ThrowableSetrepresenting the set of exceptions corresponding toinclude-exclude.
-
reportInstrumentation
public String reportInstrumentation()
Report the counts collected by instrumentation (for now, at least, there is no need to provide access to the individual values as numbers).- Returns:
- a string listing the counts.
-
-