def get_checked_fields

bendvy-ecs-core@0.1.0.4 · component.bend:81

import bendvy-ecs-core@0.1.0.4/component.bend as Component
import Base
import bendvy-ecs-core@0.1.0.4/clock_state.bend as Clock
import bendvy-ecs-core@0.1.0.4/deferred_command.bend as Deferred
import column.bend as Col
import world.bend as W
import entity_key.bend as K
import entity_allocator.bend as A

81def get_checked_fields(~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,checked: A.Allocator & Bool,key: K.Key,namespace: U32,store: Store,resource: R,events: List<&2,E>,pending: List<Deferred.Command<W.World<S,Store,R,E>>>,registrations: List<&2,W.RegistrationMeta>,nextSystemId: U32,clock: Clock.State) -> W.World<S,Store,R,E> & Access<V>:
82  match checked key:
83    case (allocator,False{}) _: (W.World{namespace,allocator,store,resource,events,pending,registrations,nextSystemId,clock},MissingEntity{})
84    case (allocator,True{}) K.EntityKey{+id,_}:
85      W.with_store_finish(~S,~Store,~R,~E,~Access<V>,get_store(~S,~Store,~R,~E,~Rest,~C,~V,~Token,~take,~put,~project,id,take(store)),namespace,allocator,resource,events,pending,registrations,nextSystemId,clock)

Uses (15)

Used by (1)