Class ReflectionAnalysis

java.lang.Object
pascal.taie.analysis.pta.plugin.reflection.ReflectionAnalysis
All Implemented Interfaces:
Plugin

public class ReflectionAnalysis extends Object implements Plugin
  • Constructor Details

    • ReflectionAnalysis

      public ReflectionAnalysis()
  • Method Details

    • setSolver

      public void setSolver(Solver solver)
      Description copied from interface: Plugin
      Sets pointer analysis solver which will be used later by the plugin.
      Specified by:
      setSolver in interface Plugin
    • onNewStmt

      public void onNewStmt(Stmt stmt, JMethod container)
      Description copied from interface: Plugin
      Invoked when a new reachable stmt is discovered.
      Specified by:
      onNewStmt in interface Plugin
      Parameters:
      stmt - new reachable stmt
      container - container method of stmt
    • onNewPointsToSet

      public void onNewPointsToSet(CSVar csVar, PointsToSet pts)
      Description copied from interface: Plugin
      Invoked when set of new objects flow to a context-sensitive variable.
      Specified by:
      onNewPointsToSet in interface Plugin
      Parameters:
      csVar - variable whose points-to set changes
      pts - set of new objects
    • onNewCSMethod

      public void onNewCSMethod(CSMethod csMethod)
      Description copied from interface: Plugin
      Invoked when a new reachable context-sensitive method is discovered.
      Specified by:
      onNewCSMethod in interface Plugin
      Parameters:
      csMethod - new reachable context-sensitive method
    • onUnresolvedCall

      public void onUnresolvedCall(CSObj recv, Context context, Invoke invoke)
      Description copied from interface: Plugin
      Invoked when pointer analysis failed to resolve callee (i.e., resolve to null) on a receiver object. Some plugins take over such cases to do their analyses.
      Specified by:
      onUnresolvedCall in interface Plugin
      Parameters:
      recv - the receiver object
      context - the context of the invocation
      invoke - the invocation site
    • onNewCallEdge

      public void onNewCallEdge(Edge<CSCallSite,CSMethod> edge)
      Description copied from interface: Plugin
      Invoked when a new call graph edge is discovered.
      Specified by:
      onNewCallEdge in interface Plugin
      Parameters:
      edge - new call graph edge
    • onFinish

      public void onFinish()
      Description copied from interface: Plugin
      Invoked when pointer analysis finishes. Pointer analysis is supposed to have been finished at this stage, thus this call back should NOT modify pointer analysis results.
      Specified by:
      onFinish in interface Plugin