def effect_allowed
bendvy-ecs-core@0.1.0.3 · chunk_query.bend:69
import bendvy-ecs-core@0.1.0.3/chunk_query.bend as ChunkQuery
import Base
import bendvy-ecs-core@0.1.0.3/execution_effects.bend as Effects
import bendvy-ecs-core@0.1.0.3/lifecycle.bend as L
import bendvy-ecs-core@0.1.0.3/change_tick.bend as Tick
69def effect_allowed(~F:Type -> Type,~effects:Effects.Effects<F>,~A:Type,~B:Type,~O:Type,~V:Data,~K:Data,~E:Data,~project:A -> A & V,~body:effect_Body(~F,~K,~V,~B,~O,~E),context:K,read:A,write:B,output:O,index:U32,stamp:L.Stamp,tick:Tick.Tick,selected:Bool) -> F(OutputRow<A,B,O,E>):
70 match selected:
71 case False{}:Effects.pure(~F,OutputRow<A,B,O,E>,effects,OutputRow{Some{read},Some{write},stamp,output,[]})
72 case True{}:effect_projected(~F,~effects,~A,~B,~O,~V,~K,~E,~body,context,write,output,index,stamp,tick,project(read))