1 import Base 2 import ./entity_key.bend as Key 3 import ./snapshot_data.bend as Basic 4 import ./decode_data.bend as D 5 import ./relation_types.bend as G 6 7 type Group is Data: 8 Group{target:Key.Key,sources:List<&2,Key.Key>} 9 type Relation is Data: 10 Relation{name:String,groups:List<&2,Group>} 11 type Snapshot is Data: 12 Snapshot{basic:Basic.Snapshot,relations:List<&2,Relation>,machines:List<&2,D.Field>} 13 type Error is Data: 14 UnknownRelation{name:String} 15 InvalidRelation{name:String,source:Key.Key,target:Key.Key} 16 UnknownMachine{name:String} 17 InvalidMachineState{name:String,value:D.Raw} 18 type GraphResult is Data: 19 Accepted{graph:G.Graph} 20 Rejected{error:Error}