remove compile error for nested grids

This commit is contained in:
Gavin Nishizawa 2023-09-27 17:04:39 -07:00
parent 6deac9b5bd
commit ceaf2fb681
No known key found for this signature in database
GPG key ID: AE3B177777CE55CD

View file

@ -1092,18 +1092,20 @@ func (c *compiler) validateEdges(g *d2graph.Graph) {
srcGrid := edge.Src.Parent.ClosestGridDiagram()
dstGrid := edge.Dst.Parent.ClosestGridDiagram()
if srcGrid != nil || dstGrid != nil {
if top := srcGrid.TopGridDiagram(); srcGrid != top {
// valid: grid.child1 -> grid.child2
// invalid: grid.childGrid.child1 -> grid.childGrid.child2
c.errorf(edge.GetAstEdge(), "edge must be on direct child of grid diagram %#v", top.AbsID())
continue
}
if top := dstGrid.TopGridDiagram(); dstGrid != top {
// valid: grid.child1 -> grid.child2
// invalid: grid.childGrid.child1 -> grid.childGrid.child2
c.errorf(edge.GetAstEdge(), "edge must be on direct child of grid diagram %#v", top.AbsID())
continue
}
// TODO cleanup
// if top := srcGrid.TopGridDiagram(); srcGrid != top {
// // valid: grid.child1 -> grid.child2
// // invalid: grid.childGrid.child1 -> grid.childGrid.child2
// c.errorf(edge.GetAstEdge(), "edge must be on direct child of grid diagram %#v", top.AbsID())
// continue
// }
// if top := dstGrid.TopGridDiagram(); dstGrid != top {
// // valid: grid.child1 -> grid.child2
// // invalid: grid.childGrid.child1 -> grid.childGrid.child2
// c.errorf(edge.GetAstEdge(), "edge must be on direct child of grid diagram %#v", top.AbsID())
// continue
// }
if srcGrid != dstGrid {
// valid: a -> grid
// invalid: a -> grid.child