public class PreciseExAnalysisUtil extends AnalysisUtil<PreciseExAbsVal>
extInfo, instanceInitializersChecked, workQueue
Constructor and Description |
---|
PreciseExAnalysisUtil(WorkQueue<PreciseExAbsVal> workQueue,
AnalysisUnit currentAnalysisUnit,
AccrueExtensionInfo extInfo) |
Modifier and Type | Method and Description |
---|---|
ExitMap<PreciseExAbsVal> |
analyze(polyglot.ast.CodeNode n,
PreciseExAbsVal before)
Analyze the given code with the given current analysis results
|
ExitMap<PreciseExAbsVal> |
analyzeInitializers(PreciseExAbsVal input)
Analyze the initializers for the current analysis unit given the current
analysis results
|
PreciseExAbsVal |
call(polyglot.types.ConstructorInstance ci,
polyglot.ast.New n)
Process a constructor call from a new expression
|
PreciseExAbsVal |
call(polyglot.types.MethodInstance mi,
polyglot.ast.Call n) |
PreciseExAbsVal |
constructorCall(polyglot.types.ConstructorInstance ci,
polyglot.ast.ConstructorCall n)
Process a constructor call to this() or super(), i.e., from within a constructor.
|
protected PreciseExLibrarySignature |
getSignatureForMissingCode(polyglot.types.ProcedureInstance pi) |
abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocations, abstractLocationsForArray, abstractLocationsForArray, abstractLocationsForArray, abstractLocationsImplicitTarget, analysisName, 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 PreciseExAnalysisUtil(WorkQueue<PreciseExAbsVal> workQueue, AnalysisUnit currentAnalysisUnit, AccrueExtensionInfo extInfo)
public ExitMap<PreciseExAbsVal> analyze(polyglot.ast.CodeNode n, PreciseExAbsVal before) throws polyglot.types.SemanticException
AnalysisUtil
analyze
in class AnalysisUtil<PreciseExAbsVal>
n
- Code to analyzebefore
- analysis result before analyzing the given codepolyglot.types.SemanticException
- thrown if the analysis failspublic ExitMap<PreciseExAbsVal> analyzeInitializers(PreciseExAbsVal input) throws polyglot.types.SemanticException
AnalysisUtil
analyzeInitializers
in class AnalysisUtil<PreciseExAbsVal>
input
- current analysis resultspolyglot.types.SemanticException
- thrown if the analysis failspublic PreciseExAbsVal call(polyglot.types.MethodInstance mi, polyglot.ast.Call n)
public PreciseExAbsVal call(polyglot.types.ConstructorInstance ci, polyglot.ast.New n)
ci
- n
- public PreciseExAbsVal constructorCall(polyglot.types.ConstructorInstance ci, polyglot.ast.ConstructorCall n)
ci
- protected PreciseExLibrarySignature getSignatureForMissingCode(polyglot.types.ProcedureInstance pi)