def described_components

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

import bendvy-ecs-core@0.1.0.3/execution_resource_admission.bend as ExecutionResourceAdmission
import Base
import bendvy-ecs-core@0.1.0.3/execution_builder.bend as Build
import bendvy-ecs-core@0.1.0.3/execution_declaration.bend as D
import bendvy-ecs-core@0.1.0.3/execution_resource_description.bend as Description
import bendvy-ecs-core@0.1.0.3/execution_query_schema.bend as Schema
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as L
import bendvy-ecs-core@0.1.0.3/world.bend as W
import bendvy-ecs-core@0.1.0.3/entity_allocator.bend as Allocator
import bendvy-ecs-core@0.1.0.3/deferred_command.bend as Deferred
import bendvy-ecs-core@0.1.0.3/clock_state.bend as Clock
import bendvy-ecs-core@0.1.0.3/execution_lifecycle_notices.bend as Notice

40def described_components(~S:Data,~components:L.Layout,~resources:L.Layout,~C:Type,~R:Type,~E:Data,~Ops:Data -> (Type -> Type) -> Type -> Type,~program:Build.FrameworkProgram(~S,~L.columns(~S,components),~C,~R,~Ops),compilation:D.Compilation<S,L.columns(~S,components),C,R,Ops>,namespace:U32,allocator:Allocator.Allocator,owners:L.resources(~S,resources),events:List<&2,E>,pending:List<Deferred.Command<W.World<S,L.columns(~S,components),L.resources(~S,resources),E>>>,registrations:List<&2,W.RegistrationMeta>,next:U32,clock:Clock.State,lifecycle:Notice.Journal<S>,handles:List<&2,W.Handle<S>>,result:Schema.Description<S,components>) -> Inspection<S,components,resources,C,R,E,Ops,program>:
41  match result:
42    case Schema.Description{columns,info,valid}:described_resources(~S,~components,~resources,~C,~R,~E,~Ops,~program,compilation,namespace,allocator,columns,events,pending,registrations,next,clock,lifecycle,handles,info,valid,Description.describe(~S,resources,L.AtLeaf{},owners))

Uses (19)

Used by (1)