From 336789c93fbdd6e7b6fc6c06a6f97a9df9ad54f5 Mon Sep 17 00:00:00 2001 From: Alexander Wang Date: Sun, 24 Dec 2023 21:48:14 -0800 Subject: [PATCH] expose import stack --- d2compiler/compile.go | 2 +- d2ir/compile.go | 6 +++--- d2ir/compile_test.go | 2 +- d2oracle/edit.go | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/d2compiler/compile.go b/d2compiler/compile.go index 3d4d1fcb15..0063b8552e 100644 --- a/d2compiler/compile.go +++ b/d2compiler/compile.go @@ -40,7 +40,7 @@ func Compile(p string, r io.Reader, opts *CompileOptions) (*d2graph.Graph, *d2ta return nil, nil, err } - ir, err := d2ir.Compile(ast, &d2ir.CompileOptions{ + ir, _, err := d2ir.Compile(ast, &d2ir.CompileOptions{ UTF16Pos: opts.UTF16Pos, FS: opts.FS, }) diff --git a/d2ir/compile.go b/d2ir/compile.go index 4a061db072..fa68afbf9d 100644 --- a/d2ir/compile.go +++ b/d2ir/compile.go @@ -53,7 +53,7 @@ func (c *compiler) errorf(n d2ast.Node, f string, v ...interface{}) { c.err.Errors = append(c.err.Errors, d2parser.Errorf(n, f, v...).(d2ast.Error)) } -func Compile(ast *d2ast.Map, opts *CompileOptions) (*Map, error) { +func Compile(ast *d2ast.Map, opts *CompileOptions) (*Map, []string, error) { if opts == nil { opts = &CompileOptions{} } @@ -78,9 +78,9 @@ func Compile(ast *d2ast.Map, opts *CompileOptions) (*Map, error) { c.compileSubstitutions(m, nil) c.overlayClasses(m) if !c.err.Empty() { - return nil, c.err + return nil, nil, c.err } - return m, nil + return m, c.importStack, nil } func (c *compiler) overlayClasses(m *Map) { diff --git a/d2ir/compile_test.go b/d2ir/compile_test.go index 7979a63e0b..aa0f8f56d8 100644 --- a/d2ir/compile_test.go +++ b/d2ir/compile_test.go @@ -66,7 +66,7 @@ func compileFS(t testing.TB, path string, mfs map[string]string) (*d2ir.Map, err err = fs.Close() assert.Success(t, err) }) - m, err := d2ir.Compile(ast, &d2ir.CompileOptions{ + m, _, err := d2ir.Compile(ast, &d2ir.CompileOptions{ FS: fs, }) if err != nil { diff --git a/d2oracle/edit.go b/d2oracle/edit.go index e953a731d2..a2cccce2bc 100644 --- a/d2oracle/edit.go +++ b/d2oracle/edit.go @@ -453,7 +453,7 @@ func _set(g *d2graph.Graph, baseAST *d2ast.Map, key string, tag, value *string) return nil } } - ir, err := d2ir.Compile(g.AST, &d2ir.CompileOptions{ + ir, _, err := d2ir.Compile(g.AST, &d2ir.CompileOptions{ FS: g.FS, }) if err != nil {