def deferred
bendvy-ecs-core@0.1.0.4 · trace_world.bend:15
import bendvy-ecs-core@0.1.0.4/trace_world.bend as TraceWorld
import Base
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/trace_facts.bend as Facts
15def deferred(~S:Data,state:Facts.State,key:String,operation:Facts.Operation,target:W.Handle<S>,result:Facts.FactResult) -> Facts.State:
16 match state:
17 case Facts.Off{}:Facts.Off{}
18 case Facts.On{facts}:Facts.On{Facts.Fact{Facts.DeferredCommand{},key,operation,Some{handle(~S,target)},Facts.OpaqueValue{},Facts.OpaqueValue{},result} <> facts}