public class WorkQueueVarContext<T extends AbstractValue<T>> extends WorkQueue<VarContext<T>>
| Modifier and Type | Class and Description |
|---|---|
static class |
WorkQueueVarContext.AnalysisUnitRecordLocs<T extends AbstractValue<T>> |
WorkQueue.AnalysisUnitRecord<T extends Ordered<T>>| Constructor and Description |
|---|
WorkQueueVarContext(Registrar registrar,
polyglot.frontend.ExtensionInfo extInfo,
AnalysisFactory<VarContext<T>> factory,
polyglot.frontend.Pass pass) |
callGraph, clearDependees, createExitMap, dumpQueue, emptyExitMap, extensionInfo, getAnalysisResult, getDependees, isEmpty, maybeRecursiveCall, pass, processQueue, recordResult, registrarpublic WorkQueueVarContext(Registrar registrar, polyglot.frontend.ExtensionInfo extInfo, AnalysisFactory<VarContext<T>> factory, polyglot.frontend.Pass pass)
protected boolean existingResultSuitable(VarContext<T> input, WorkQueue.AnalysisUnitRecord<VarContext<T>> rec)
existingResultSuitable in class WorkQueue<VarContext<T extends AbstractValue<T>>>protected ExitMap<VarContext<T>> restoreCallingFrame(ExitMap<VarContext<T>> output, VarContext<T> input, WorkQueue.AnalysisUnitRecord<VarContext<T>> rec)
restoreCallingFrame in class WorkQueue<VarContext<T extends AbstractValue<T>>>protected boolean isOutputChanged(ExitMap<VarContext<T>> output, WorkQueue.AnalysisUnitRecord<VarContext<T>> rec, AnalysisUtil<VarContext<T>> autil)
isOutputChanged in class WorkQueue<VarContext<T extends AbstractValue<T>>>protected void updateOutput(WorkQueue.AnalysisUnitRecord<VarContext<T>> rec, ExitMap<VarContext<T>> output, AnalysisUtil<VarContext<T>> autil)
updateOutput in class WorkQueue<VarContext<T extends AbstractValue<T>>>public AnalysisFactoryVarContext<T> factory()
factory in class WorkQueue<VarContext<T extends AbstractValue<T>>>protected void updateCallerRecordAfterCalleeProcessing(WorkQueue.AnalysisUnitRecord<VarContext<T>> callerRec, WorkQueue.AnalysisUnitRecord<VarContext<T>> rec)
updateCallerRecordAfterCalleeProcessing in class WorkQueue<VarContext<T extends AbstractValue<T>>>public WorkQueueVarContext.AnalysisUnitRecordLocs<T> getAnalysisUnitRecord(AnalysisUnit unit)
getAnalysisUnitRecord in class WorkQueue<VarContext<T extends AbstractValue<T>>>protected FinalVarContext<T> initialAnalysisUnitOutput(AnalysisUnit callee, VarContext<T> input)
initialAnalysisUnitOutput in class WorkQueue<VarContext<T extends AbstractValue<T>>>protected WorkQueue.AnalysisUnitRecord<VarContext<T>> createAnalysisUnitRecord()
createAnalysisUnitRecord in class WorkQueue<VarContext<T extends AbstractValue<T>>>protected WorkQueue.AnalysisUnitRecord<VarContext<T>> createAnalysisUnitRecord(VarContext<T> initialInput, ExitMap<VarContext<T>> initialOutput)
createAnalysisUnitRecord in class WorkQueue<VarContext<T extends AbstractValue<T>>>