(n: int)
| 35 | ordered: list[PlanStep] = [] |
| 36 | |
| 37 | def visit(n: int) -> None: |
| 38 | if n in seen: |
| 39 | return |
| 40 | step = self.get_step(n) |
| 41 | if step is None: |
| 42 | return |
| 43 | for dep in step.dependencies: |
| 44 | visit(dep) |
| 45 | seen.add(n) |
| 46 | ordered.append(step) |
| 47 | |
| 48 | for step in self.steps: |
| 49 | visit(step.step_number) |