def available
import bendvy-ecs-core@0.1.0.4/ordinary_service_declaration.bend as OrdinaryServiceDeclarationimport Base
import bendvy-ecs-core@0.1.0.4/schedule_provision.bend as SP
81# Convert provided statuses to ordered service requirements; absent slots add none.
82# This is a metadata conversion, not a host capability invocation.
83def available(~S:Data,statuses:List<&2,Status<S>>) -> List<&2,SP.Requirement<S>>:
84 match statuses:
85 case []:[]
86 case Status{id,_,provided} <> rest:available_next(~S,provided,id,available(~S,rest))