|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ITACFlowAnalysis<LE>
This interface defines methods to map AST data structures to TAC variables. These methods can for instance be used by TAC analysis transfer functions. NEB: This used to be called ITACAnalysisContext, but I renamed it and added a common method getNode which was not previously part of this interface.
ITACTransferFunction
,
ITACBranchSensitiveTransferFunction
Method Summary | |
---|---|
ThisVariable |
getImplicitThisVariable(IBinding accessedElement)
Returns the implicit this variable for accessing a given method or field after previously analyzing the method surrounding the access. It is the caller's responsibility to make sure to call this method only when analysis results for the method surrounding the access are available. |
IResult<LE> |
getLabeledResultsAfter(TACInstruction instr)
Retrieves the analysis state that exists after analyzing the instruction. |
IResult<LE> |
getLabeledResultsBefore(TACInstruction instr)
Retrieves the analysis state that exists before analyzing the instruction. |
ASTNode |
getNode(Variable x,
TACInstruction instruction)
Returns for error-reporting purposes a AST node that surrounds or is represented by a variable mentioned in a given instruction. |
LE |
getResultsAfter(TACInstruction instr)
Retrieves the analysis state that exists after analyzing the instruction. |
LE |
getResultsBefore(TACInstruction instr)
Retrieves the analysis state that exists before analyzing the instruction. |
SourceVariable |
getSourceVariable(IVariableBinding varBinding)
Returns the variable for a given parameter or local. |
ThisVariable |
getThisVariable(MethodDeclaration methodDecl)
Returns the this variable for a given method. |
Variable |
getVariable(ASTNode node)
Returns the TAC variable for a given ASTNode. |
Methods inherited from interface edu.cmu.cs.crystal.flow.IFlowAnalysis |
---|
getEndResults, getLabeledEndResult, getLabeledResultsAfter, getLabeledResultsBefore, getLabeledStartResult, getResultsAfter, getResultsBefore, getStartResults |
Method Detail |
---|
LE getResultsBefore(TACInstruction instr)
instr
- the TACInstruction
of interest
LE getResultsAfter(TACInstruction instr)
instr
- the TACInstruction
of interest
IResult<LE> getLabeledResultsBefore(TACInstruction instr)
instr
- the TACInstruction
of interest
IResult<LE> getLabeledResultsAfter(TACInstruction instr)
instr
- the TACInstruction
of interest
Variable getVariable(ASTNode node)
node
- AST node in the previously analyzed method.
ThisVariable getThisVariable(MethodDeclaration methodDecl)
methodDecl
- The method for which this is requested.
ThisVariable getImplicitThisVariable(IBinding accessedElement)
accessedElement
-
SourceVariable getSourceVariable(IVariableBinding varBinding)
varBinding
- Binding of a local or parameter.
ASTNode getNode(Variable x, TACInstruction instruction)
x
- A variable.instruction
- Instruction that mentions x
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |