Class 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's G and Singletons classes).
    • Field Detail

      • EMPTY

        public final ThrowableSet EMPTY
        ThrowableSet containing no exception classes.
      • RESOLVE_CLASS_ERRORS

        public final ThrowableSet RESOLVE_CLASS_ERRORS
        ThrowableSet containing 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 a ThrowableSet.Manager for inclusion in Soot's global variable manager, G.
        Parameters:
        g - guarantees that the constructor may only be called from Singletons.
    • Method Detail

      • v

        public static ThrowableSet.Manager v()
        Returns the single instance of ThrowableSet.Manager.
        Returns:
        Soot's ThrowableSet.Manager.
      • registerSetIfNew

        protected ThrowableSet registerSetIfNew​(Set<RefLikeType> include,
                                                Set<AnySubType> exclude)

        Returns a ThrowableSet representing the set of exceptions included in include minus the set of exceptions included in exclude. Creates a new ThrowableSet only if there was not already one whose contents correspond to include - exclude.

        Parameters:
        include - A set of RefLikeType objects representing exception types included in the result; may be null if there are no included types.
        exclude - A set of AnySubType objects representing exception types excluded from the result; may be null if there are no excluded types.
        Returns:
        a ThrowableSet representing the set of exceptions corresponding to include - 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.