A traversal graph TG( S,G,N,B ) is constructed from an encapsulated strategy S, a class graph G, a name map N for S and G, and a constraint map B for S and G according to a modified version of Algorithm 1 in the paper "Traversals of Object Structures: Specification and Efficient Implementation" (the modifications allow G to be non-simple and N to be a relation instead of a function). TG is essentially a compilation (that is, a compact and efficient generator) of the set of paths through G that is selected by S. Conceptually, TG(S,G,N,B) consists of a graph G'' and a set Ts of start nodes in G'', where G'' is (a subset of) n copies of G, where n is the number of edges in S, with some extra edges to connect nodes in different copies. However, to keep the representation more compact, G'' is represented as two sets, NodeSet and EdgeSet:
-l->v, IM) where u
-l->v is an edge in G and IM is a set of pairs of indices (i,j) such that ui
-l->vj is in G''.
For a list of all members of this type, see TraversalGraph Members.
System.Object
TraversalBase
TraversalGraph
Public static (Shared in Visual Basic) members of this type are safe for multithreaded operations. Instance members are not guaranteed to be thread-safe.
Namespace: edu.neu.ccs.demeter.APRlib
Assembly: APRlib (in APRlib.dll)
TraversalGraph Members | edu.neu.ccs.demeter.APRlib Namespace