|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
LE
- Analysis information being tracked.N
- Nodes our lattice information is computed overpublic interface IAbstractLatticeOperations<LE,N>
Analysis writers do not implement this interface directly; instead, they implement
an extending interface that instantiates the node type parameter, N
of
this interface.
This interface allows implementing a worklist algorithm independently from the type
of node being transferred over.
Implementers of flow analyses over concrete node types should create a sub-interface
that instantiates the node type parameter.
ILatticeOperations
is such a sub-interface for flow analyses over Eclise AST nodes.
WorklistTemplate
can be used as the basis for
flow analyses over other kinds of nodes.
WorklistTemplate
,
ILatticeOperations
Method Summary | |
---|---|
boolean |
atLeastAsPrecise(LE info,
LE reference,
N node)
Compares analysis information for precision; more precisely, determines whether the first argument is at least as precise as the second. |
LE |
bottom()
Responsible for returning a lattice that represents no knowledge. |
LE |
copy(LE original)
Creates a new deep copy of the given analysis information. |
LE |
join(LE someInfo,
LE otherInfo,
N node)
Carries out a join on this lattice and another lattice. |
Method Detail |
---|
LE bottom()
LE join(LE someInfo, LE otherInfo, N node)
someInfo
- LE to join with otherInfo
.otherInfo
- The other LE to join with, do not modify.node
- ASTNode where the two paths were originally forked apart (e.g., if,
while, try, switch, etc.) or null
if this join occurs on a "dummy" node.
boolean atLeastAsPrecise(LE info, LE reference, N node)
info
- Analysis information to be compared against reference
reference
- the other LE to compare info
with.node
- ASTNode where the two paths were originally forked apart (e.g., if,
while, try, switch, etc.) or null
if this comparison occurs on a "dummy" node.
true
if the first argument is at least as precise as the
second; false
otherwise, including if the two arguments are incomparable.LE copy(LE original)
original
- analysis information to be copied.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |