def effect_checked

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

import bendvy-ecs-core@0.1.0.3/execution_query_column.bend as ExecutionQueryColumn
import Base
import bendvy-ecs-core@0.1.0.3/chunk_column.bend as Col
import bendvy-ecs-core@0.1.0.3/chunk_shape.bend as Part
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as L
import bendvy-ecs-core@0.1.0.3/change_tick.bend as Tick
import bendvy-ecs-core@0.1.0.3/execution_effects.bend as E

40def effect_checked(~S:Data,~F:Type -> Type,~effects:E.Effects<F>,~layout:L.Layout,~route:L.Route,-O:Type,shape:Part.Shape,column:Col.Column<S,L.stored(layout,route)>,index:U32,tick:Tick.Tick,state:O,operation:L.payload(layout,route) -> O -> F(L.payload(layout,route) & O),valid:Bool) -> F(Update<S,L.stored(layout,route),O>):
41  match valid:
42    case False{}:E.pure(~F,Update<S,L.stored(layout,route),O>,effects,Updated{column,state,False{}})
43    case True{}:effect_tree(~S,~F,~effects,~layout,~route,O,shape,column,index,tick,state,operation)

Uses (14)

Used by (1)