Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Compil3r.Dataflow
Class Solver  view Solver download Solver.java

java.lang.Object
  extended byCompil3r.Dataflow.Solver
Direct Known Subclasses:
IterativeSolver, WorklistSolver

public abstract class Solver
extends java.lang.Object

Solver

Version:
$Id: Solver.java,v 1.1 2003/06/17 02:37:51 joewhaley Exp $

Field Summary
protected  java.util.Map dataflowValues
          Map from locations to dataflow values.
protected  Util.Collections.MapFactory factory
          Map factory to create map from locations to dataflow values.
protected  Problem problem
          The dataflow problem to solve.
 
Constructor Summary
protected Solver()
           
protected Solver(Util.Collections.MapFactory factory)
           
 
Method Summary
abstract  java.util.Iterator allLocations()
          Returns an iteration of all graph locations.
abstract  java.util.Iterator boundaryLocations()
          Returns an iteration of all boundary locations.
 boolean direction()
          Returns the direction of the dataflow problem that we are solving.
 Fact getDataflowValue(java.lang.Object c)
          Get the dataflow value associated with the given location.
 void initialize(Problem p, Util.Graphs.Graph graph)
          Initializes the solver to prepare to solve the dataflow problem on the given graph.
protected  void initializeDataflowValueMap()
          (Re-)initialize the map from locations to dataflow values.
 void reset()
          Frees the memory associated with this solver.
abstract  void solve()
          Solves this dataflow problem.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

problem

protected Problem problem
The dataflow problem to solve.


factory

protected final Util.Collections.MapFactory factory
Map factory to create map from locations to dataflow values.


dataflowValues

protected java.util.Map dataflowValues
Map from locations to dataflow values.

Constructor Detail

Solver

protected Solver(Util.Collections.MapFactory factory)

Solver

protected Solver()
Method Detail

direction

public boolean direction()
Returns the direction of the dataflow problem that we are solving.


allLocations

public abstract java.util.Iterator allLocations()
Returns an iteration of all graph locations.


boundaryLocations

public abstract java.util.Iterator boundaryLocations()
Returns an iteration of all boundary locations.


initialize

public void initialize(Problem p,
                       Util.Graphs.Graph graph)
Initializes the solver to prepare to solve the dataflow problem on the given graph.


solve

public abstract void solve()
Solves this dataflow problem.


reset

public void reset()
Frees the memory associated with this solver.


initializeDataflowValueMap

protected void initializeDataflowValueMap()
(Re-)initialize the map from locations to dataflow values.


getDataflowValue

public Fact getDataflowValue(java.lang.Object c)
Get the dataflow value associated with the given location.