def next_desc

bendvy-ecs-core@0.1.0.4 · hierarchy_traversal.bend:26

import bendvy-ecs-core@0.1.0.4/hierarchy_traversal.bend as HierarchyTraversal
import Base
import entity_key.bend as K
import bendvy-ecs-core@0.1.0.4/relation_types.bend as G
import bendvy-ecs-core@0.1.0.4/relation_graph.bend as Graph

26def next_desc(~S:Data,graph:G.Graph<S>,descriptor:G.Descriptor<S>,order:Order,state:List<&2,K.Key> & List<&2,K.Key>) -> List<&2,K.Key> & List<&2,K.Key>:
27  match state:
28    case ([],acc): ([],acc)
29    case (+id <> rest,acc): (enqueue(order,Graph.inverse(~S,graph,descriptor,id),rest),id <> acc)

Uses (9)

Used by (1)