def inventory_enabled

bendvy-ecs-core@0.1.0.4 · event_family_runtime.bend:61

import bendvy-ecs-core@0.1.0.4/event_family_runtime.bend as EventFamilyRuntime
import Base
import bendvy-ecs-core@0.1.0.4/event_family_routing.bend as Route

61# Return actual Runtime and optional detached family inventory. Disabled bypasses
62# the inventory callback; enabled threads actual F through it. No synchronization,
63# trim, frame or reader acknowledgement is performed by this observation.
64def inventory_enabled(~S:Data,~C:Type,~R:Type,~P:Data,~F:Type,~H:Type,~inventory:F -> F & List<&2,String>,enabled:Bool,runtime:Route.Runtime<S,C,R,P,State<P,F,H>>) -> Route.Runtime<S,C,R,P,State<P,F,H>> & Maybe<&2,List<&2,String>>:
65  match enabled runtime:
66    case False{} runtime:(runtime,None{})
67    case True{} Route.Runtime{world,State{family,owners,journal,frameStart},tick}:inventory_optional(~S,~C,~R,~P,~F,~H,inventory_returned(~S,~C,~R,~P,~F,~H,world,owners,journal,frameStart,tick,inventory(family)))

Uses (10)

Used by (1)