Package pascal.taie.analysis.pta.plugin
Class ReferenceHandler
java.lang.Object
pascal.taie.analysis.pta.plugin.ReferenceHandler
- All Implemented Interfaces:
Plugin
Models GC behavior that it assigns every reference to Reference.pending.
As a result, Reference.pending can point to every reference.
The ReferenceHandler takes care of enqueueing the references in a
reference queue. If we do not model this GC behavior, Reference.pending
points to nothing, and finalize() methods won't get invoked.
TODO: update it for Java 9+ (current model doesn't work for Java 9+).
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
onNewCSMethod
(CSMethod csMethod) Invoked when a new reachable context-sensitive method is discovered.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
onFinish, onNewCallEdge, onNewMethod, onNewPointsToSet, onNewStmt, onPhaseFinish, onStart, onUnresolvedCall
-
Constructor Details
-
ReferenceHandler
public ReferenceHandler()
-
-
Method Details
-
setSolver
Description copied from interface:Plugin
Sets pointer analysis solver which will be used later by the plugin. -
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
-