def disposal_result

bendvy-ecs-core@0.1.0.4 · system_cleanup.bend:13

import bendvy-ecs-core@0.1.0.4/system_cleanup.bend as SystemCleanup
import Base
import world.bend as W
import system.bend as Sys

13# The sole place which removes positions is the accepted existing Sys.Disposed arm.
14def disposal_result(~S: Data,~C: Type,~R: Type,~E: Data,~Args: Type,~Error: Data,~Output: Type,~run: W.World<S,C,R,E> -> Args -> Sys.Outcome<W.World<S,C,R,E>,Error,Output>,~Ports: Type,~remove: W.World<S,C,R,E> -> Ports -> W.World<S,C,R,E>,ports: Ports,result: Sys.Disposal<S,C,R,E,Args,Error,Output,run>) -> Cleanup<S,C,R,E,Args,Error,Output,run,Ports>:
15  match result:
16    case Sys.Disposed{world}: Cleaned{remove(world,ports)}
17    case Sys.DisposalRejected{world,registry}: CleanupRejected{world,Instance{registry,ports}}

Uses (5)

Used by (1)