def changed
bendvy-ecs-core@0.1.0.3 · execution_lifetime_scope_resource_dispatch.bend:21
import bendvy-ecs-core@0.1.0.3/execution_lifetime_scope_resource_dispatch.bend as ExecutionLifetimeScopeResourceDispatch
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_lifetime_scope_store.bend as Store
import bendvy-ecs-core@0.1.0.3/entity_allocator.bend as Allocator
import bendvy-ecs-core@0.1.0.3/change_tick.bend as Tick
import bendvy-ecs-core@0.1.0.3/lifecycle.bend as Life
21def changed(~S:Data,~key:String,~origin:Layout.Layout,written:Bool,tick:Tick.Tick,stamp:Life.Stamp,cache:Store.View<S>,allocator:Allocator.Allocator,owner:Store.Store<S>,result:Store.Outcome<S>) -> Allocator.Allocator & (Layout.ResourceSlot<S,Layout.Viewed<Store.Store<S>,Store.View<S>>,key,origin> & Outcome<S>):
22 match written:
23 case False{}:(allocator,(Layout.ResourceSlot{Layout.Viewed{owner,cache},stamp},Completed{result}))
24 case True{}:refreshed(~S,~key,~origin,allocator,Life.after_write(True{},True{},stamp,tick),result,Store.project(~S,owner))