Cycle#
One simple directed dependency cycle in the project. You don't build it yourself. Read it from ScheduleResult::cycles, which holds one Cycle per unique cycle. A cycle is data in the result, not an error. For what a cyclic run does to dates and updates, see ScheduleResult.
Declaration#
With the serde feature, it also implements Serialize and Deserialize.
Fields#
| Name | Type | Description |
|---|---|---|
tasks |
Vec<Id> |
Ids of the tasks on the cycle, in the order the cycle passes through them. |
links |
Vec<Id> |
Ids of the links that form the cycle, in path order. Each link id appears once. A cycle closed through summary containment rather than a link has fewer links than tasks. |
Each rotation of a cycle is reported once. Two cycles over the same tasks through different parallel links are separate entries. Fixed and completed tasks are included.
Serialization#
With the serde feature, a Cycle serializes as:
Example#
Link two tasks in both directions and print the cycle.
use ;
Related#
ScheduleResult- lists the cycles of a runAnalyticsStatus- reportsInvalidanalytics on a cyclic projectLinkData- the input links a cycle'slinksrefer to- Links, constraints and summaries - reports and breaks a cycle
- Reading results - handles cycles in a result