def selected

bendvy-ecs-core@0.1.0.3 · execution_relation_resource_snapshot.bend:20

import bendvy-ecs-core@0.1.0.3/execution_relation_resource_snapshot.bend as ExecutionRelationResourceSnapshot
import Base
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout
import bendvy-ecs-core@0.1.0.3/execution_relation_resource_publication.bend as Cast
import bendvy-ecs-core@0.1.0.3/execution_relation_store.bend as Store
import bendvy-ecs-core@0.1.0.3/relation_types.bend as T

20def selected(~S:Data,~resources:Layout.Layout,~route:Layout.Route,~descriptor:T.Descriptor<S>,~payload:{Layout.payload(resources,route) == Store.Store<S,descriptor> : Type},~view:{Layout.view(resources,route) == Store.View<S,descriptor> : Data},previous:List<&2,GraphView<S>>,result:Layout.resource_rest(~S,resources,route) & Layout.ResourceSlot<S,Layout.stored(resources,route),Layout.key(resources,route),Layout.origin(resources,route)>) -> Layout.resources(~S,resources) & List<&2,GraphView<S>>:
21  match result:
22    case (rest,slot):restored(~S,~resources,~route,~descriptor,~payload,~view,previous,rest,observed(~S,~descriptor,~Layout.key(resources,route),~Layout.origin(resources,route),route,Cast.slot(~S,~Layout.key(resources,route),~Layout.origin(resources,route),~Layout.payload(resources,route),~Store.Store<S,descriptor>,~Layout.view(resources,route),~Store.View<S,descriptor>,payload,view,slot)))

Uses (20)

Used by (1)