Class ReflectionAnalysis
java.lang.Object
pascal.taie.analysis.pta.plugin.reflection.ReflectionAnalysis
- All Implemented Interfaces:
Plugin
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
onFinish()
Invoked when pointer analysis finishes.void
onNewCallEdge
(Edge<CSCallSite, CSMethod> edge) Invoked when a new call graph edge is discovered.void
onNewCSMethod
(CSMethod csMethod) Invoked when a new reachable context-sensitive method is discovered.void
onNewPointsToSet
(CSVar csVar, PointsToSet pts) Invoked when set of new objects flow to a context-sensitive variable.void
Invoked when a new reachable stmt is discovered.void
onUnresolvedCall
(CSObj recv, Context context, Invoke invoke) Invoked when pointer analysis failed to resolve callee (i.e., resolve to null) on a receiver object.void
Sets pointer analysis solver which will be used later by the plugin.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface pascal.taie.analysis.pta.plugin.Plugin
onNewMethod, onStart
-
Constructor Details
-
ReflectionAnalysis
public ReflectionAnalysis()
-
-
Method Details
-
setSolver
Description copied from interface:Plugin
Sets pointer analysis solver which will be used later by the plugin. -
onNewStmt
Description copied from interface:Plugin
Invoked when a new reachable stmt is discovered. -
onNewPointsToSet
Description copied from interface:Plugin
Invoked when set of new objects flow to a context-sensitive variable.- Specified by:
onNewPointsToSet
in interfacePlugin
- Parameters:
csVar
- variable whose points-to set changespts
- set of new objects
-
onNewCSMethod
Description copied from interface:Plugin
Invoked when a new reachable context-sensitive method is discovered.- Specified by:
onNewCSMethod
in interfacePlugin
- Parameters:
csMethod
- new reachable context-sensitive method
-
onUnresolvedCall
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 interfacePlugin
- Parameters:
recv
- the receiver objectcontext
- the context of the invocationinvoke
- the invocation site
-
onNewCallEdge
Description copied from interface:Plugin
Invoked when a new call graph edge is discovered.- Specified by:
onNewCallEdge
in interfacePlugin
- 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.
-