DecodeLocal.traversal: def of bendvy-ecs-core@0.1.0.4 Import: import bendvy-ecs-core@0.1.0.4/decode_local.bend as DecodeLocal Lines 38-44 of bendvy-ecs-core@0.1.0.4/decode_local.bend: https://jend.leeeet.dev/read.txt?path=bendvy-ecs-core@0.1.0.4/decode_local.bend&start_line=38&end_line=44 import Base import bendvy-ecs-core@0.1.0.4/decode_frame.bend as F import bendvy-ecs-core@0.1.0.4/decode_requests.bend as Request import bendvy-ecs-core@0.1.0.4/decode_owned_journal.bend as Journal import bendvy-ecs-core@0.1.0.4/ordinary_declaration.bend as Identity import bendvy-ecs-core@0.1.0.4/decode_data.bend as D import bendvy-ecs-core@0.1.0.4/world.bend as W import bendvy-ecs-core@0.1.0.4/local.bend as Local import bendvy-ecs-core@0.1.0.4/transaction.bend as T import bendvy-ecs-core@0.1.0.4/commands.bend as Commands import bendvy-ecs-core@0.1.0.4/bundle_batch.bend as Batch # Non-empty deferred packets require the separate deferred completion route. # Pending is never silently accepted as a completed rollback. def traversal(~S:Data,~C:Type,~R:Type,~E:Data,~P:Type,~Q:Type,~identity:Identity.Declaration,~project:P -> P & D.Raw,~L:Type,~A:Type,~Rows:Data,~Error:Data,~Out:Type,~success:L -> A -> Rows -> L & Out,~failure:L -> A -> L,~recover:L -> A -> List> -> List> -> L,rejected:Error,local:L,result:F.Frame & (A & (T.Outcome & Rows))) -> Local.Outcome,L,Error,Out>: match result: case (F.Frame{Request.Owner{Batch.Batch{tx,[]},_},_,_,_,_,[]},(args,(T.Success{},rows))):committed(~W.World,~L,~A,~Rows,~Error,~Out,~success,~failure,local,args,rows,Commands.tx_finish(~S,~C,~R,~E,~Error,tx,T.Success{})) case (frame,(args,(T.Success{},_))):abort(~S,~C,~R,~E,~P,~Q,~identity,~project,~L,~A,~Error,~Out,~recover,rejected,local,args,frame) case (frame,(args,(T.Failure{error},_))):abort(~S,~C,~R,~E,~P,~Q,~identity,~project,~L,~A,~Error,~Out,~recover,error,local,args,frame) Uses (16): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Sigma https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/bundle_batch.bend&name=Batch https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/commands.bend&name=tx_finish https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/decode_data.bend&name=Raw https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/decode_frame.bend&name=Frame https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/decode_local.bend&name=abort https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/decode_local.bend&name=committed https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/decode_owned_journal.bend&name=Pending https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/decode_requests.bend&name=Owner https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/decode_requests.bend&name=Packet https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/local.bend&name=Outcome https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/ordinary_declaration.bend&name=Declaration https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/transaction.bend&name=Outcome https://jend.leeeet.dev/definition.txt?path=bendvy-ecs-core@0.1.0.4/world.bend&name=World