def indexed_prepared_checked
bendvy-ecs-core@0.1.0.4 · captured_column.bend:92
import bendvy-ecs-core@0.1.0.4/captured_column.bend as CapturedColumn
import Base
import column.bend as Col
import owner_handoff.bend as H
import indexed_lifecycle.bend as M
92def indexed_prepared_checked(~S:Data,~C:Type,+id:U32,values:Array<Maybe<&1,C>>,metadata:M.Metadata,+capacity:U32,+current:U32,owner:Maybe<&1,C>,remaining:H.PrototypeHandoffRows<S,C>,past:Col.History<S,C>,valid:Bool,same:Bool,backwards:Bool) -> Capture<S,C>:
93 match valid same backwards:
94 case False{} _ _: Unavailable{Col.PreparedIndexed{Col.IndexedPreparedOwned{Col.IndexedPreparedState{values,metadata,capacity,current,owner,remaining,past}}}}
95 case True{} True{} _: indexed_captured_prepared(~S,~C,id,values,metadata,capacity,owner,remaining,past)
96 case True{} False{} True{}: recovered_capture(~S,~C,id,Col.recover(~S,~C,Col.PreparedIndexed{Col.IndexedPreparedOwned{Col.IndexedPreparedState{values,metadata,capacity,current,owner,remaining,past}}}))
97 case True{} False{} False{}: indexed_capture_seek(~S,~C,U32.to_nat(U32.add(U32.add(capacity,capacity),1)),values,metadata,capacity,id,remaining,Col.past_current(~S,~C,current,owner,past,U32.is_gt(current,0)),Col.Inspect{})