Crate heron_rebuild_traverse

Source
Expand description

The functions in this mod traverse the tasks in a Workflow, returning an ordered list of tasks that can be run by structs in the exec mod.

The traversal is created in 3 steps:

  1. Perform a BFS search backwards from the goal node(s), adding all necessary antecedent tasks.
  2. Reverse the list of tasks, correcting inter-task links.
  3. Step forward through the tasks, removing branchpoints that have been grafted out.

In the end, you will have an ordered traversal of tasks With only the minimal set of branchpoints required to uniquely identify each task. The traversal may contain duplicate tasks, which will be removed in a later step. Along the way, we partially resolve task variables (inputs, outputs, and params). We only partially resolve them because we still don’t know the actual paths to task execution directories on disk; those paths will be provided by structs in [crate::prep].

Structs§

Node
Resolved task exported to run subsystem
Traversal
Represents a specific traversal through the tasks in the workflow.
ValueContext
for more helpful error messages

Enums§

Error
RealInput
A fully-realized input value
RealOutputOrParam
A fully-realized output or param value.

Type Aliases§

RealOutput
RealParam