Encapsulate a graph as an array of vertices, each storing dependency information
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | private, | allocatable | :: | order(:) | |||
| type(vertex_t), | private, | allocatable | :: | vertices(:) |
Construct a dag_t object from an array of (unsorted) vertex_t objects (result contains a topologically sorted index array)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(vertex_t), | intent(in) | :: | vertices(:) |
Construct a dag_t object from a JSON object (result contains a topologically sorted index array)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(json_object_t), | intent(in) | :: | json_object |
Result is an array of the ids on which vertex_id depends
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dag_t), | intent(in) | :: | self | |||
| integer, | intent(in) | :: | vertex_id |
Result is an array of the vertex numbers that depend on on vertex vertex_num
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dag_t), | intent(in) | :: | self | |||
| integer, | intent(in) | :: | vertex_num |
Result contains a Graphviz .dot file descriptoin of the dag_t object
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dag_t), | intent(in) | :: | self |
Result is true if dag%order contains a topological sorting of vertex identifiers
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dag_t), | intent(in) | :: | self |
Result is the size of the vertex array
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dag_t), | intent(in) | :: | self |
Result is a JSON representation of the dag_t object
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dag_t), | intent(in) | :: | self |