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 |
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(:) |
| private pure, module function construct_from_components (vertices) | Construct a dag_t object from an array of (unsorted) vertex_t objects (result contains a topologically sorted index array) |
| private module function construct_from_json (json_object) | Construct a dag_t object from a JSON object (result contains a topologically sorted index array) |
| procedure , public , :: dependencies_for Interface | |
| procedure , public , :: depends_on Interface | |
| procedure , public , :: graphviz_digraph Interface | |
| procedure , public , :: is_sorted_and_acyclic Interface | |
| procedure , public , :: num_vertices Interface | |
| procedure , public , :: to_json Interface |