def next_ready
bendvy-ecs-core@0.1.0.3 · dependency_plan.bend:76
import bendvy-ecs-core@0.1.0.3/dependency_plan.bend as DependencyPlan
import Base
76def next_ready(~Requirement:Data,candidates:List<&2,Node<Requirement>>,+pending:List<&2,Node<Requirement>>,+edges:List<&2,Edge>) -> Maybe<&2,Node<Requirement>>:
77 match candidates:
78 case []:None{}
79 case +first <> rest:choose(~Requirement,predecessor_pending(~Requirement,edges,pending,node_id(~Requirement,first)),first,next_ready(~Requirement,rest,pending,edges))