|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjoeq.Compiler.Dataflow.Solver
joeq.Compiler.Dataflow.WorklistSolver
joeq.Compiler.Dataflow.PriorityQueueSolver
public class PriorityQueueSolver
PriorityQueueSolver
| Field Summary | |
|---|---|
protected Map |
nodesToPriorities
Map from nodes to their (integer) priorities. |
protected jwutil.collections.MaxPriorityQueue |
worklist
Priority-queue implementation of the worklist. |
| Fields inherited from class joeq.Compiler.Dataflow.WorklistSolver |
|---|
boundaries, graphNavigator |
| Fields inherited from class joeq.Compiler.Dataflow.Solver |
|---|
dataflowValues, factory, problem |
| Constructor Summary | |
|---|---|
PriorityQueueSolver()
|
|
PriorityQueueSolver(jwutil.collections.MapFactory f)
|
|
| Method Summary | |
|---|---|
Iterator |
allLocations()
Returns an iteration of all graph locations. |
protected boolean |
hasNext()
Returns true if the worklist is not empty, false otherwise. |
void |
initialize(Problem p,
jwutil.graphs.Graph graph)
Initializes the solver to prepare to solve the dataflow problem on the given graph. |
void |
initialize(Problem p,
jwutil.graphs.Graph graph,
List traversalOrder)
Initializes this solver with the given dataflow problem, graph, and traversal order. |
protected void |
initializeTraversalOrder(List order)
|
protected void |
initializeWorklist()
(Re-)initialize the worklist. |
protected Object |
pull()
Pull the next location off of the worklist. |
protected void |
pushAll(Collection c)
Push all of the given locations onto the worklist. |
| Methods inherited from class joeq.Compiler.Dataflow.WorklistSolver |
|---|
boundaryLocations, getPredecessors, getSuccessors, solve |
| Methods inherited from class joeq.Compiler.Dataflow.Solver |
|---|
compareResults, direction, dumpResults, getDataflowValue, initializeDataflowValueMap, reset |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected Map nodesToPriorities
protected jwutil.collections.MaxPriorityQueue worklist
| Constructor Detail |
|---|
public PriorityQueueSolver(jwutil.collections.MapFactory f)
public PriorityQueueSolver()
| Method Detail |
|---|
public void initialize(Problem p,
jwutil.graphs.Graph graph)
Solver
initialize in class WorklistSolver
public void initialize(Problem p,
jwutil.graphs.Graph graph,
List traversalOrder)
Solver.initialize(joeq.Compiler.Dataflow.Problem, jwutil.graphs.Graph)protected void initializeTraversalOrder(List order)
public Iterator allLocations()
Solver
allLocations in class Solverprotected void initializeWorklist()
WorklistSolver
initializeWorklist in class WorklistSolverprotected boolean hasNext()
WorklistSolver
hasNext in class WorklistSolverprotected Object pull()
WorklistSolver
pull in class WorklistSolverprotected void pushAll(Collection c)
WorklistSolver
pushAll in class WorklistSolver
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||