def indexed_swap_checked
bendvy-ecs-core@0.1.0.3 · column.bend:93
import bendvy-ecs-core@0.1.0.3/column.bend as Column
import Base
import indexed_lifecycle.bend as M
93def indexed_swap_checked(~S:Data,~C:Type,+id:U32,incoming:Maybe<&1,C>,metadata:M.Metadata,values:Array<Maybe<&1,C>>,valid:Bool) -> SwapOutcome<S,C>:
94 match valid:
95 case False{}: Rejected{indexed_wrap(~S,~C,values,metadata),incoming}
96 case True{}: indexed_swapped(~S,~C,metadata,Array.swap(Maybe<&1,C>,values,U32.sub(id,1),incoming))