def select

bendvy-ecs-core@0.1.0.4 · decode_frame.bend:49

import bendvy-ecs-core@0.1.0.4/decode_frame.bend as DecodeFrame
import Base
import bendvy-ecs-core@0.1.0.4/decode_requests.bend as Request
import bendvy-ecs-core@0.1.0.4/decode_data.bend as D
import bendvy-ecs-core@0.1.0.4/compose.bend as Query
import bendvy-ecs-core@0.1.0.4/bundle_batch.bend as Batch
import bendvy-ecs-core@0.1.0.4/ordinary_declaration.bend as Identity

49# Membership is evaluated on the current transaction for every row, never on a
50# separate pre-scan world. The closed selector comes from the query declaration.
51def select(~S:Data,~C:Type,~R:Type,~E:Data,~P:Type,~Q:Type,~identity:Identity.Declaration<S,P>,~project:P -> P & D.Raw,~selector:Query.Frame<S,C,R,E> -> Query.Frame<S,C,R,E> & Bool,frame:Frame<S,C,R,E,P,Q,identity,project>) -> Frame<S,C,R,E,P,Q,identity,project> & Bool:
52  match frame:
53    case Frame{Request.Owner{Batch.Batch{tx,prepared},declaration},handle,error,cursor,receipts,pending}:selected_join(~S,~C,~R,~E,~P,~Q,~identity,~project,declaration,prepared,receipts,pending,selector(Query.Frame{tx,handle,error,cursor}))

Uses (9)

Used by (0)

No other definition uses this definition.