public class ReadWriteSetsAnalysisUtil extends AnalysisUtil<ReadWriteSet>
AnalysisUtil
for an analysis that gathers the set of locations read
and written by an analysis unit.extInfo, instanceInitializersChecked, workQueue
Constructor and Description |
---|
ReadWriteSetsAnalysisUtil(WorkQueue<ReadWriteSet> workQueue,
AnalysisUnit currentAnalysisUnit,
AccrueExtensionInfo extInfo)
Make a new analysis helper class
|
Modifier and Type | Method and Description |
---|---|
ExitMap<ReadWriteSet> |
analyze(polyglot.ast.CodeNode n,
ReadWriteSet before)
Analyze the given code with the given current analysis results
|
ReadWriteSet |
call(polyglot.types.ConstructorInstance ci,
polyglot.ast.New n)
Process a constructor call from a new expression
|
ReadWriteSet |
call(polyglot.types.MethodInstance mi,
polyglot.ast.Call n)
Analyze a method call
|
ReadWriteSet |
constructorCall(polyglot.types.ConstructorInstance ci,
polyglot.ast.ConstructorCall n)
Process a constructor call to this() or super(), i.e., from within a constructor.
|
abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocationsForArray, abstractLocationsForArray, abstractLocationsForArray, abstractLocationsImplicitTarget, analysisName, analyzeInitializers, analyzeStaticInitializers, createExitMap, currentAnalysisUnit, currentClass, currentContext, extensionInfo, instanceInitializers, leq, maybeRecursiveCall, pointsTo, pointsTo, pointsTo, pointsTo, pointsTo, pointsTo, pointsTo, pointsTo, pointsTo, pointsToGraph, pointsToThis, process, recordMissingCode, typeSystem, upperBound, workQueue
public ReadWriteSetsAnalysisUtil(WorkQueue<ReadWriteSet> workQueue, AnalysisUnit currentAnalysisUnit, AccrueExtensionInfo extInfo)
workQueue
- Work queue for the analysiscurrentAnalysisUnit
- Method and context currently being analyzedextInfo
- Accrue extension informationpublic ExitMap<ReadWriteSet> analyze(polyglot.ast.CodeNode n, ReadWriteSet before) throws polyglot.types.SemanticException
AnalysisUtil
analyze
in class AnalysisUtil<ReadWriteSet>
n
- Code to analyzebefore
- analysis result before analyzing the given codepolyglot.types.SemanticException
- thrown if the analysis failspublic ReadWriteSet call(polyglot.types.MethodInstance mi, polyglot.ast.Call n)
mi
- method being analyzedn
- AST node for the method callpublic ReadWriteSet call(polyglot.types.ConstructorInstance ci, polyglot.ast.New n)
ci
- constructor being calledn
- AST node for the constructor callpublic ReadWriteSet constructorCall(polyglot.types.ConstructorInstance ci, polyglot.ast.ConstructorCall n)
ci
- constructor being calledn
- AST node for the constructor call