def notices

bendvy-ecs-core@0.1.0.3 · execution_command_removed.bend:58

import bendvy-ecs-core@0.1.0.3/execution_command_removed.bend as ExecutionCommandRemoved
import Base
import bendvy-ecs-core@0.1.0.3/execution_lifecycle_notices.bend as Notice
import bendvy-ecs-core@0.1.0.3/change_tick.bend as Tick
import bendvy-ecs-core@0.1.0.3/execution_composer_layout.bend as Layout

58def notices(~S:Data,layout:Layout.Layout) -> Notice.Identity<S> -> Tick.Tick -> Notice.Journal<S> -> Removed(layout) -> Notice.Journal<S> & Removed(layout):
59  match layout:
60    case Layout.EmptyLayout{}:entity => tick => journal => removed => (journal,removed)
61    case Layout.LayoutLeaf{P,_,_,key,_}:noticed_leaf(~S,P,key)
62    case Layout.ClassifiedLayoutLeaf{P,_,_,key,_,_}:noticed_leaf(~S,P,key)
63    case Layout.LayoutPair{left,right}:entity => tick => journal => removed => noticed_pair(~S,left,right,notices(~S,left),notices(~S,right),entity,tick,journal,removed)

Uses (9)

Used by (1)