From 22b020225ae77ca1cf9f9984817df9b7fd1aaa12 Mon Sep 17 00:00:00 2001 From: Marc Vertes Date: Thu, 27 Nov 2025 14:50:07 +0100 Subject: fix: improve parser, compiler and interpreter APIs Pass a language spec as an argument when create a new parser, compiler or interpreter. Also move the REPL code in interpreter package. --- interpreter/interpreter_test.go | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'interpreter/interpreter_test.go') diff --git a/interpreter/interpreter_test.go b/interpreter/interpreter_test.go index 800ace5..71c7dd1 100644 --- a/interpreter/interpreter_test.go +++ b/interpreter/interpreter_test.go @@ -7,7 +7,6 @@ import ( "github.com/mvertes/parscan/interpreter" "github.com/mvertes/parscan/lang/golang" - "github.com/mvertes/parscan/scanner" ) type etest struct { @@ -15,19 +14,17 @@ type etest struct { skip bool } -var GoScanner *scanner.Scanner - func init() { log.SetFlags(log.Lshortfile) - GoScanner = scanner.NewScanner(golang.GoSpec) } func gen(test etest) func(*testing.T) { return func(t *testing.T) { + t.Parallel() if test.skip { t.Skip() } - interp := interpreter.NewInterpreter(GoScanner) + interp := interpreter.NewInterpreter(golang.GoSpec) errStr := "" r, e := interp.Eval(test.src) t.Log(r, e) -- cgit v1.2.3