Directed Acyclic Graph Tools (rever.dag)

Tools for dealing with activity DAGs.

rever.dag.find_path(dag, ends, done=frozenset({}), path=None, already_done=None)[source]

Returns a list that includes all end points for a given DAG.

Parameters
dagdict of names to activities

A DAG of all possible activities

endsset of str

End points to compute.

doneset of str, optional

The nodes that have already been computed

pathlist of str, optional

This is the return value of which activities to execute in which order.

already_donelist of str

The return value of the activities that have already been computed that would otherwise need to be computed.

Returns
pathlist of str

The path through the DAG.

already_donelist of str

Activities that have already been computed that would otherwise need to be computed.