Documentation ¶
Overview ¶
The `graph` package contains the annotation functions for graph-based tracking of program flow. This representation uses graphviz as an underlying data model, and exports to .gz files. Representation capacity is limited, so only simple data relations are modelled
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // Local pointer to global state, can be reset for testing StateManager = &store.StateManager )
Functions ¶
Types ¶
type Collection ¶
type Collection = collections.GraphCollector[VertexStyle, EdgeStyle]
Collector object for shared state
type Constructor ¶
type Constructor = tracker.GraphConstructor[VertexStyle, EdgeStyle]
Collector object for shared state
type EdgeStyle ¶
type EdgeStyle struct {
Colour string
}
Edge styling parameters for graph conversion
func StandardEdge ¶
func StandardEdge() EdgeStyle
Standard black edge for conventional program links
type Node ¶
type Node = tracker.Node[Constructor]
Tracking data object
func End ¶
func End(tracker *Tracker, inputs []Node, name, description string, isReturned, isError bool) (node Node)
Action annotation for marking the endpoints of a process flow
type Singleton ¶
type Singleton = store.GlobalState[Collection]
Shared memory format for graph tracker
type Tracker ¶
type Tracker = tracker.GraphTracker[VertexStyle, EdgeStyle]
String node-based flow tracker
func RegisterTracker ¶
Initialises graphviz-based graph tracking object with required params
type Vertex ¶
type Vertex = topo.Vertex[VertexStyle]
Vertex format required for graphviz constructor
func EndingVertex ¶
Final circular vertex with no child nodes
func StartingVertex ¶
Initial circular vertex with no corresponding edge
func TaskVertex ¶
Intermediate task node denoting process activity