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))

Uses (10)

Used by (1)