Violation#
The bound of a task's dates that its links and its constraint disagree on. A Violation arrives in the violation field of Conflict::ConstraintViolation, next to the ConstraintType that set the bound.
Declaration#
Variants#
| Variant | Description |
|---|---|
EarliestStart |
The links want the task to start before the earliest start its constraint allows (Snet, Mso). Reported in backward scheduling. |
LatestStart |
The links want the task to start after the latest start its constraint allows (Snlt, Mso). Reported in forward scheduling. |
EarliestEnd |
The links want the task to end before the earliest end its constraint allows (Fnet, Mfo). Reported in backward scheduling. |
LatestEnd |
The links want the task to end after the latest end its constraint allows (Fnlt, Mfo). Reported in forward scheduling. |
What required and actual hold for each variant is described on Conflict.
Serialization#
With the serde feature, Violation serializes as a kebab-case string: "earliest-start", "latest-start", "earliest-end", "latest-end". See Serialize results to JSON.
Example#
use ;
Related#
Conflict- carries the violationConstraintType- the constraint whose bound is violated- Links, constraints and summaries - triggers and reads a violation
- Reading results - handles conflicts in a result