public class ExtLit extends ExtExpr
Constructor and Description |
---|
ExtLit() |
Modifier and Type | Method and Description |
---|---|
<DFItem extends polyglot.visit.DataFlow.Item> |
flowDispatch(DataFlowDispatch<DFItem> dataflow,
DFItem dfIn,
polyglot.visit.FlowGraph<DFItem> graph,
polyglot.visit.FlowGraph.Peer<DFItem> peer)
Dispatch function.
|
boolean |
isUnitializedValue() |
int |
numArgumentsOnResultStack()
During a dataflow analysis, when this term is encountered, how many
arguments should there be on the expression result stack? For example,
for an addition (e1 + e2) there will be two, one for each operand.
|
void |
registerPointerStmts(StmtRegistrar registrar,
RegisterPointerStmtsVisitor v)
This method needs to ensure that: 1.
|
void |
setUnitializedValue() |
getConstructorContexts, getReferenceVariable, mayBeNull, mayBeNull, recordNullAnalysisResult, setNullResultsNoPeerValid, setReferenceVariable
flowDispatch, throwTypes
enclosingFinallyDepth, ext, getAnalysisResult, getAnalysisResult, getAnalysisResult, lang, recordAnalysisResult, recordAnalysisResult, recordAnalysisResult, removeAnalysisResult, removeAnalysisResult, removeAnalysisResult, setEnclosingFinallyDepth
addDecls, buildTypes, buildTypesEnter, checkConstants, childExpectedType, copy, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, ext, ext, extRewrite, extRewriteEnter, init, initPred, node, pred, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, print, printBlock, printSubStmt, superLang, throwTypes, toString, translate, typeCheck, typeCheckEnter, typeCheckOverride, visitChild, visitChildren, visitList
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
addDecls, buildTypes, buildTypesEnter, checkConstants, childExpectedType, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, extRewrite, extRewriteEnter, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, throwTypes, translate, typeCheck, typeCheckEnter, typeCheckOverride, visitChild, visitChildren, visitList
public void setUnitializedValue()
public boolean isUnitializedValue()
public void registerPointerStmts(StmtRegistrar registrar, RegisterPointerStmtsVisitor v)
ExtExpr
registerPointerStmts
in interface AccrueExt
registerPointerStmts
in class ExtExpr
public int numArgumentsOnResultStack()
AccrueExt
numArgumentsOnResultStack
in interface AccrueExt
numArgumentsOnResultStack
in class ExtExpr
VarContextDataFlow
public <DFItem extends polyglot.visit.DataFlow.Item> java.util.Map<polyglot.visit.FlowGraph.EdgeKey,DFItem> flowDispatch(DataFlowDispatch<DFItem> dataflow, DFItem dfIn, polyglot.visit.FlowGraph<DFItem> graph, polyglot.visit.FlowGraph.Peer<DFItem> peer)
ExtTerm
DataFlowDispatch d
.
This helps extensions implement and extend data flow analyses.flowDispatch
in class ExtTerm