def swap
bendvy-ecs-core@0.1.0.3 · column.bend:344
import bendvy-ecs-core@0.1.0.3/column.bend as Column
import Base
344def swap(~S: Data, ~C: Type, column: Column<S,C>, +id: U32, incoming: Maybe<&1,C>) -> SwapOutcome<S,C>:
345 match column:
346 case Column{values,stamps}: swap_sized(~S,~C,id,incoming,stamps,Array.size(Maybe<&1,C>,values))
347 case Prepared{carrier}: swap_state(~S,~C,id,incoming,unseal(~S,~C,carrier))
348 case Indexed{carrier}: indexed_swap_state(~S,~C,id,incoming,indexed_unseal(~S,~C,carrier))
349 case PreparedIndexed{carrier}: indexed_prepared_swap_state(~S,~C,id,incoming,indexed_prepared_unseal(~S,~C,carrier))