def rebuilt
bendvy-ecs-core@0.1.0.4 · event_notice_runtime.bend:82
import bendvy-ecs-core@0.1.0.4/event_notice_runtime.bend as EventNoticeRuntime
import Base
import bendvy-ecs-core@0.1.0.4/relation_commands.bend as Notice
82def rebuilt(~S:Data,~P:Data,notices:List<&2,Notice.Notice<S,P>>,slots:List<&2,List<&2,P>>) -> List<&2,Notice.Notice<S,P>>:
83 match notices slots:
84 case Nil{} _:[]
85 case Con{Notice.Original{_},rest} Nil{}:rebuilt(~S,~P,rest,[])
86 case Con{Notice.Original{_},rest} Con{head,tail}:List.append(&2,Notice.Notice<S,P>,original_notices(~S,~P,head),rebuilt(~S,~P,rest,tail))
87 case Con{Notice.RelationFailed{failure},rest} slots:Notice.RelationFailed{failure} <> rebuilt(~S,~P,rest,slots)
88 case Con{Notice.ComponentRemoved{id},rest} slots:Notice.ComponentRemoved{id} <> rebuilt(~S,~P,rest,slots)
89 case Con{Notice.CleanupPaused{frames},rest} slots:Notice.CleanupPaused{frames} <> rebuilt(~S,~P,rest,slots)