def requirements

bendvy-ecs-core@0.1.0.4 · schedule_provision.bend:64

import bendvy-ecs-core@0.1.0.4/schedule_provision.bend as ScheduleProvision
import Base

64# Collect authored requirements left before right, retaining duplicates.
65# build deduplicates this list for its provisioned schedule.
66def requirements(~S: Data,plan: Plan<S>) -> List<&2,Requirement<S>>:
67  match plan:
68    case Empty{}: []
69    case Entry{_,needs}: needs
70    case Sequence{left,right}: List.append(&2,Requirement<S>,requirements(~S,left),requirements(~S,right))

Uses (4)

Used by (3)