def cycle_checked

bendvy-ecs-core@0.1.0.4 · restore_graph_validation.bend:40

import bendvy-ecs-core@0.1.0.4/restore_graph_validation.bend as RestoreGraphValidation
import Base
import bendvy-ecs-core@0.1.0.4/restore_graph_data.bend as R
import bendvy-ecs-core@0.1.0.4/entity_key.bend as Key
import bendvy-ecs-core@0.1.0.4/relation_types.bend as G
import bendvy-ecs-core@0.1.0.4/relation_graph.bend as Graph

40def cycle_checked(~S:Data,cyclic:Bool,descriptor:G.Descriptor<S>,source:Key.Key,target:Key.Key,next:Unit -> R.GraphResult<S>) -> R.GraphResult<S>:
41  match cyclic:
42    case True{}:R.Rejected{R.InvalidRelation{Graph.name(~S,descriptor),source,target}}
43    case False{}:next(Unit{})

Uses (7)

Used by (1)