Class IntraproceduralExceptionAnalysis

java.lang.Object
com.ibm.wala.analysis.exceptionanalysis.IntraproceduralExceptionAnalysis

public class IntraproceduralExceptionAnalysis extends Object
  • Constructor Details

  • Method Details

    • newDummy

      public static IntraproceduralExceptionAnalysis newDummy()
    • getPossiblyCaughtExceptions

      public Set<TypeReference> getPossiblyCaughtExceptions()
      Return all exceptions that could be returned from getCaughtExceptions
      Returns:
      all exceptions that could be returned from getCaughtExceptions
    • collectThrownExceptions

      public Set<TypeReference> collectThrownExceptions(SSAInstruction throwingInstruction)
      Returns a set of exceptions, which might be thrown from this instruction within this method.

      This does include exceptions dispatched by throw instructions, but not exceptions from method calls.

      Returns:
      a set of exceptions, which might be thrown from this instruction within this method
    • getThrowingInstruction

      public static SSAInstruction getThrowingInstruction(ISSABasicBlock block)
      Returns:
      an instruction which may throw exceptions, or null if this block can't throw exceptions
    • getCaughtExceptions

      public Set<TypeReference> getCaughtExceptions(CallSiteReference callsite)
      Returns all exceptions for the given call site in the given call graph node, which will be caught.
      Returns:
      caught exceptions
    • hasUncaughtExceptions

      public boolean hasUncaughtExceptions(SSAInstruction instruction)
    • getExceptions

      public Set<TypeReference> getExceptions()
      Returns all exceptions which might be created and thrown but not caught or filtered. (So this does not contain exceptions from invoked methods.)

      If constructed without points-to-analysis, it does not contain exceptions thrown by throw statements.

      Returns:
      all exceptions created and thrown intraprocedural