execution_reservation_bundle.bend

bendvy-ecs-core@0.1.0.3 · 18 lines · 3 definitions

1import Base
2import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout
3import bendvy-ecs-core@0.1.0.3/world.bend as W
4import bendvy-ecs-core@0.1.0.3/execution_command_removed.bend as Removed
5
6# Closed component-layout traversal: each family appears once, with its own
7# actual affine payload type. None omits that family. Resources are separate.
8def Payload(layout:Layout.Layout) -> Type:Removed.Removed(layout)
9type Refusal is Data:
10  InvalidPending{error:W.WorldError}
11  PermissionDenied{}
12  DuplicateFamily{}
13  PhysicalIndex{}
14  MalformedColumn{key:String}
15  OccupiedFamily{key:String}
16type Publication<-S:Data,-C:Type,-R:Type,-E:Data,-layout:Layout.Layout> is Type:
17  Materialized{world:W.World<S,C,R,E>,handle:W.Handle<S>,previous:Payload(layout)}
18  RefusedPublication{world:W.World<S,C,R,E>,handle:W.Handle<S>,bundle:Payload(layout),reason:Refusal}