Package net.walend.digraph.path

This package contains a kit for working with paths on directed graphs.

See:
          Description

Interface Summary
CEPath CEPath is an interface for represtenting paths through CEDigraph.
DigraphOfCEPaths DigraphOfCEPaths is a CEDigraph containing the nodes from a base digraph and edges that are paths through the base digraph between these nodes.
DigraphOfGEPaths DigraphOfGEPaths is a CEDigraph containing the nodes from a base digraph and edges that are paths through the base digraph between these nodes.
GEPath GEPath is an interface for represtenting paths through GEDigraph.
MutableCEPath MutableCEPath is an interface for represtenting mutable paths through CEDigraph.
MutableDigraphOfCEPaths This class contains mutator methods for a DigraphOfCEPaths.
MutableDigraphOfGEPaths This class contains mutator methods for a DigraphOfCEPaths.
MutableGEPath MutableGEPath is an interface for represtenting mutable paths through GEDigraph.
MutableUEPath MutableUEPath is an interface for represtenting mutable paths through UEDigraph.
Path Path is an interface for representing paths through Digraphs.
UEPath UEPath is an interface for represtenting paths through UEDigraph.
 

Class Summary
AbstractDelegateDigraphOfCEPaths This class implements the DigraphOfCEPaths by delegating to an underlying IndexedMutableCEDigraph.
AbstractDelegateDigraphOfCEPaths.DigraphCEPath  
AbstractDelegateDigraphOfCEPaths.Edge  
AbstractDelegateDigraphOfGEPaths This class implements the DigraphOfGEPaths by delegating to an underlying IndexedMutableCEDigraph.
AbstractDelegateDigraphOfGEPaths.DigraphGEPath  
AbstractDelegateDigraphOfGEPaths.Edge  
AbstractListCEPath This abstract class implements the CEPath interface using a List of nodes and a List of Edges.
AbstractListGEPath This abstract class implements the GEPath interface using a List of nodes.
AbstractListUEPath This abstract class implements the UEPath interface using a List of nodes and a List of Edges.
CEPathAlgebra Algebra for CEPath Operations.
GEPathAlgebra Algebra for GEPath Operations.
ListCEPath This class implements the CEPath interface using two lists.
ListGEPath This class implements the GEPath interface using two lists.
ListUEPath This class implements the UEPath interface using two lists.
MutableListCEPath This class implements the MutableCEPath interface using two lists.
MutableListGEPath This class implements the MutableGEPath interface using a list.
MutableListUEPath This class implements the MutableUEPath interface using two lists.
UEPathAlgebra Algebra for UEPath Operations.
 

Exception Summary
InvalidPathException  
InvalidSpliceException  
LastNodeException  
PathException  
 

Package net.walend.digraph.path Description

This package contains a kit for working with paths on directed graphs.

The main interfaces are CEPath and GEPath. Someday there may be a UEPath. Each of these is a subinterface of Path.

Each of the main interfaces has a companion mutable path interface.

Digraphs that have no mutator methods and are final should implement the net.walend.collection.Immutable interface.

Even though nodes (and edges in UEDigraphs) are unique in Digraphs, they may appear many times in a Path. Nodes appearing multiple times in a path indicates a cyclical path.

The package also includes a small hierarchy of exceptions to provide reasonable responses to corner cases.

This package currently contains List-based implementations of CEPath and GEPath.



Copyright (c) 2001, 2002, David Walend