From f12f9ca69de2546597ff5b066b63b00ff362de16 Mon Sep 17 00:00:00 2001 From: Alexander Wang Date: Thu, 13 Jul 2023 14:34:33 -0700 Subject: [PATCH] move edge check --- d2compiler/compile.go | 10 +++++----- d2ir/compile.go | 4 ++++ 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/d2compiler/compile.go b/d2compiler/compile.go index 3c0946bfa..0b7469f9f 100644 --- a/d2compiler/compile.go +++ b/d2compiler/compile.go @@ -278,11 +278,11 @@ func (c *compiler) compileField(obj *d2graph.Object, f *d2ir.Field) { } return } else if f.Name == "vars" { - if f.Map() != nil { - if len(f.Map().Edges) > 0 { - c.errorf(f.Map().Edges[0].LastRef().AST(), "vars cannot contain an edge") - } - } + // if f.Map() != nil { + // if len(f.Map().Edges) > 0 { + // c.errorf(f.Map().Edges[0].LastRef().AST(), "vars cannot contain an edge") + // } + // } return } else if isReserved { c.compileReserved(&obj.Attributes, f) diff --git a/d2ir/compile.go b/d2ir/compile.go index ffa5a96ae..724294e52 100644 --- a/d2ir/compile.go +++ b/d2ir/compile.go @@ -523,6 +523,10 @@ func (c *compiler) compileLink(refctx *RefContext) { } func (c *compiler) compileEdges(refctx *RefContext) { + if IsVar(refctx.ScopeMap) { + c.errorf(refctx.Key, "vars cannot contain an edge") + return + } if refctx.Key.Key != nil { f, err := refctx.ScopeMap.EnsureField(refctx.Key.Key, refctx) if err != nil {