edu.cmu.cs.crystal.flow.worklist
Class AnalysisResult<LE,N,OP extends IAbstractLatticeOperations<LE,N>>

java.lang.Object
  extended by edu.cmu.cs.crystal.flow.worklist.AnalysisResult<LE,N,OP>

public class AnalysisResult<LE,N,OP extends IAbstractLatticeOperations<LE,N>>
extends Object

Encapsulates the results of running an analysis. Package private, because we'd like to avoid this being referenced throughout Crystal, but different flow analysis library classes might potentially want to use this.

Author:
Nels Beckman

Constructor Summary
AnalysisResult(Map<N,Set<ICFGNode<N>>> _nm, Map<ICFGNode<N>,IResult<LE>> _lra, Map<ICFGNode<N>,IResult<LE>> _lrb, OP _l, ICFGNode<N> _startNode, ICFGNode<N> _endNode)
          Creates copies of the given maps to encapsulate a new, un-modifiable result of an analysis.
 
Method Summary
 ICFGNode<N> getCfgEndNode()
           
 ICFGNode<N> getCfgStartNode()
           
 Map<ICFGNode<N>,IResult<LE>> getLabeledResultsAfter()
           
 Map<ICFGNode<N>,IResult<LE>> getLabeledResultsBefore()
           
 OP getLattice()
           
 Map<N,Set<ICFGNode<N>>> getNodeMap()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AnalysisResult

public AnalysisResult(Map<N,Set<ICFGNode<N>>> _nm,
                      Map<ICFGNode<N>,IResult<LE>> _lra,
                      Map<ICFGNode<N>,IResult<LE>> _lrb,
                      OP _l,
                      ICFGNode<N> _startNode,
                      ICFGNode<N> _endNode)
Creates copies of the given maps to encapsulate a new, un-modifiable result of an analysis.

Parameters:
_nm -
_lra -
_lrb -
_l -
Method Detail

getNodeMap

public Map<N,Set<ICFGNode<N>>> getNodeMap()

getLabeledResultsAfter

public Map<ICFGNode<N>,IResult<LE>> getLabeledResultsAfter()

getLabeledResultsBefore

public Map<ICFGNode<N>,IResult<LE>> getLabeledResultsBefore()

getLattice

public OP getLattice()

getCfgStartNode

public ICFGNode<N> getCfgStartNode()

getCfgEndNode

public ICFGNode<N> getCfgEndNode()