edu.neu.ccs.demeter.aplib
Class TraversalCombination

java.lang.Object
  |
  +--edu.neu.ccs.demeter.aplib.Traversal
        |
        +--edu.neu.ccs.demeter.aplib.TraversalCombination
Direct Known Subclasses:
TraversalIntersection

public abstract class TraversalCombination
extends Traversal

A combination of two traversals.


Nested Class Summary
 class TraversalCombination.EdgeSet
           
 class TraversalCombination.NodeSet
           
 
Nested classes inherited from class edu.neu.ccs.demeter.aplib.Traversal
 
Constructor Summary
protected TraversalCombination(Traversal l, Traversal r)
           
 
Method Summary
protected abstract  List combineEdgeSetLists(List l, List r)
           
protected abstract  Traversal.EdgeSet combineEdgeSets(Traversal.EdgeSet l, Traversal.EdgeSet r)
           
protected abstract  List combineNodeSetLists(List l, List r)
           
protected abstract  Traversal.NodeSet combineNodeSets(Traversal.NodeSet l, Traversal.NodeSet r)
           
 Traversal.EdgeSet getEdgeSet(String key)
          The set of copies of the class graph edge with the given key in the traversal, or null if there are none.
 List getEdgeSets()
          An unmodifiable list of EdgeSet objects representing the edges in the traversal.
 List getFinishSet()
          An unmodifiable List of NodeSet objects representing the finish set of the traversal (Tf).
 Traversal.NodeSet getFinishSet(Object v)
          A NodeSet representing the finish set of tokens (indices) for the class graph node v, or null if v has no finish tokens in the traversal.
 Traversal getLeftTraversal()
           
 Traversal.NodeSet getNodeSet(Object v)
          The set of copies of class graph node v in the traversal, or null if there are none.
 List getNodeSets()
          An unmodifiable list of NodeSet objects representing the nodes in the traversal.
 Traversal getRightTraversal()
           
 List getStartSet()
          An unmodifiable List of NodeSet objects representing the start set of the traversal (Ts).
 Traversal.NodeSet getStartSet(Object v)
          A NodeSet representing the start set of tokens (indices) for the class graph node v, or null if v has no start tokens in the traversal.
 
Methods inherited from class edu.neu.ccs.demeter.aplib.Traversal
compute, compute, edgeKey, getAlternationEdgeSet, getClassGraph, getConstructionEdgeSet, getEdgeSet, getInheritanceEdgeSet, getVersion, intersect, toCompactString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TraversalCombination

protected TraversalCombination(Traversal l,
                               Traversal r)
                        throws IncompatibleClassGraphsException
Method Detail

getLeftTraversal

public Traversal getLeftTraversal()

getRightTraversal

public Traversal getRightTraversal()

combineNodeSetLists

protected abstract List combineNodeSetLists(List l,
                                            List r)

combineNodeSets

protected abstract Traversal.NodeSet combineNodeSets(Traversal.NodeSet l,
                                                     Traversal.NodeSet r)

combineEdgeSetLists

protected abstract List combineEdgeSetLists(List l,
                                            List r)

combineEdgeSets

protected abstract Traversal.EdgeSet combineEdgeSets(Traversal.EdgeSet l,
                                                     Traversal.EdgeSet r)

getNodeSets

public List getNodeSets()
Description copied from class: Traversal
An unmodifiable list of NodeSet objects representing the nodes in the traversal.

Specified by:
getNodeSets in class Traversal
See Also:
Traversal.NodeSet

getNodeSet

public Traversal.NodeSet getNodeSet(Object v)
Description copied from class: Traversal
The set of copies of class graph node v in the traversal, or null if there are none.

Specified by:
getNodeSet in class Traversal

getStartSet

public List getStartSet()
Description copied from class: Traversal
An unmodifiable List of NodeSet objects representing the start set of the traversal (Ts).

Specified by:
getStartSet in class Traversal

getStartSet

public Traversal.NodeSet getStartSet(Object v)
Description copied from class: Traversal
A NodeSet representing the start set of tokens (indices) for the class graph node v, or null if v has no start tokens in the traversal.

Specified by:
getStartSet in class Traversal

getFinishSet

public List getFinishSet()
Description copied from class: Traversal
An unmodifiable List of NodeSet objects representing the finish set of the traversal (Tf).

Specified by:
getFinishSet in class Traversal

getFinishSet

public Traversal.NodeSet getFinishSet(Object v)
Description copied from class: Traversal
A NodeSet representing the finish set of tokens (indices) for the class graph node v, or null if v has no finish tokens in the traversal.

Specified by:
getFinishSet in class Traversal

getEdgeSets

public List getEdgeSets()
Description copied from class: Traversal
An unmodifiable list of EdgeSet objects representing the edges in the traversal.

Specified by:
getEdgeSets in class Traversal
See Also:
Traversal.EdgeSet

getEdgeSet

public Traversal.EdgeSet getEdgeSet(String key)
Description copied from class: Traversal
The set of copies of the class graph edge with the given key in the traversal, or null if there are none.

Specified by:
getEdgeSet in class Traversal