def undo_checked
bendvy-ecs-core@0.1.0.4 · recoverable_component_family.bend:35
import bendvy-ecs-core@0.1.0.4/recoverable_component_family.bend as RecoverableComponentFamily
import Base
import bendvy-ecs-core@0.1.0.4/world.bend as W
import bendvy-ecs-core@0.1.0.4/column.bend as Col
import bendvy-ecs-core@0.1.0.4/recoverable_component.bend as RC
35def undo_checked(~S:Data,~Store:Type,~R:Type,~E:Data,~Rest:Type,~P:Type,~V:Data,~Token:Data,~take:Store -> Rest & Col.Column<S,P>,~put:Rest -> Col.Column<S,P> -> Store,~view:P -> P & V,record:RC.Record<S,P>,checked:W.World<S,Store,R,E> & Bool) -> W.World<S,Store,R,E> & RC.Record<S,P>:
36 match checked:
37 case (world,False{}):(world,record)
38 case (world,True{}):undo_valid(~S,~Store,~R,~E,~Rest,~P,~V,~Token,~take,~put,~view,record,world)