def read_rows

bendvy-ecs-core@0.1.0.3 · inspector_query_projection.bend:40

import bendvy-ecs-core@0.1.0.3/inspector_query_projection.bend as InspectorQueryProjection
import Base
import inspector.bend as I
import world.bend as W
import component.bend as C
import column.bend as Col

40def read_rows(~S:Data,~Store:Type,~R:Type,~E:Data,~Rest:Type,~C:Type,~V:Data,~Token:Data,~take:Store -> Rest & Col.Column<S,C>,~put:Rest -> Col.Column<S,C> -> Store,~project:C -> C & V,~family:C.Family<S,Store,Rest,C,V,Token,take,put,project>,~selection:Selection,handles:List<&2,W.Handle<S>>,frame:I.Frame<S,Store,R,E>,rows:List<&2,Row<S,V>>) -> I.Frame<S,Store,R,E> & List<&2,Row<S,V>>:
41  match handles:
42    case []:(frame,List.reverse(&2,Row<S,V>,rows))
43    case +target <> rest:read_row(~S,~Store,~R,~E,~V,~selection,target,rows,(frame => rows => read_rows(~S,~Store,~R,~E,~Rest,~C,~V,~Token,~take,~put,~project,~family,~selection,rest,frame,rows)),I.family_get(~S,~Store,~R,~E,~Rest,~C,~V,~Token,~take,~put,~project,~family,frame,target))

Uses (12)

Used by (1)