Class IRModelPlugin
java.lang.Object
pascal.taie.analysis.pta.plugin.util.SolverHolder
pascal.taie.analysis.pta.plugin.util.IRModelPlugin
- All Implemented Interfaces:
Plugin
- Direct Known Subclasses:
ArrayModel
,DoPriviledgedModel
,UnsafeModel
Provides common functionalities for implementing the plugins which
model the APIs by generating semantically-equivalent IR (Stmt).
The invoke handler method (annotated by
InvokeHandler
)
should follow such declaration:
public void name(Invoke)- See Also:
-
Field Summary
Fields inherited from class pascal.taie.analysis.pta.plugin.util.SolverHolder
csManager, emptyContext, heapModel, hierarchy, selector, solver, typeSystem
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
onNewCSMethod
(CSMethod csMethod) Invoked when a new reachable context-sensitive method is discovered.void
Invoked when a new reachable stmt is discovered.void
onStart()
Invoked when pointer analysis starts.protected void
registerHandler
(InvokeHandler invokeHandler, Method handler) protected void
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, onPhaseFinish, onUnresolvedCall, setSolver
-
Field Details
-
handlers
-
method2GenStmts
-
-
Constructor Details
-
IRModelPlugin
-
-
Method Details
-
registerHandler
-
onStart
public void onStart()Description copied from interface:Plugin
Invoked when pointer analysis starts. -
onNewStmt
Description copied from interface:Plugin
Invoked when a new reachable stmt is discovered.- Parameters:
stmt
- new reachable stmtcontainer
- container method ofstmt
-
onNewCSMethod
Description copied from interface:Plugin
Invoked when a new reachable context-sensitive method is discovered.- Parameters:
csMethod
- new reachable context-sensitive method
-
registerHandlers
protected void registerHandlers()
-