From 0d01afcc9f06cc1bf684d45dd3ffd4dde2750d83 Mon Sep 17 00:00:00 2001 From: Celestino Amoroso Date: Fri, 7 Jun 2024 09:03:42 +0200 Subject: [PATCH] member ctx removed from struct parser because it is unused --- helpers.go | 8 ++++---- parser.go | 7 ++----- t_dict_test.go | 2 +- t_parser_test.go | 2 +- 4 files changed, 8 insertions(+), 11 deletions(-) diff --git a/helpers.go b/helpers.go index 9b0472d..671f240 100644 --- a/helpers.go +++ b/helpers.go @@ -16,10 +16,10 @@ func EvalString(ctx ExprContext, source string) (result any, err error) { r := strings.NewReader(source) scanner := NewScanner(r, DefaultTranslations()) - parser := NewParser(ctx) + parser := NewParser() if tree, err = parser.Parse(scanner); err == nil { - result, err = tree.eval(ctx, true) + result, err = tree.Eval(ctx) } return } @@ -41,7 +41,7 @@ func EvalStringV(source string, args []Arg) (result any, err error) { functor := NewGolangFunctor(f) // ctx.RegisterFunc(arg.Name, functor, 0, -1) ctx.RegisterFunc(arg.Name, functor, TypeAny, []ExprFuncParam{ - NewFuncParamFlagDef(paramValue, PfOptional|PfRepeat, 0), + NewFuncParamFlagDef(paramValue, PfDefault|PfRepeat, 0), }) } else { err = fmt.Errorf("invalid function specification: %q", arg.Name) @@ -68,7 +68,7 @@ func EvalStringV(source string, args []Arg) (result any, err error) { func EvalStream(ctx ExprContext, r io.Reader) (result any, err error) { var tree *ast scanner := NewScanner(r, DefaultTranslations()) - parser := NewParser(ctx) + parser := NewParser() if tree, err = parser.Parse(scanner); err == nil { result, err = tree.Eval(ctx) diff --git a/parser.go b/parser.go index 0e9342a..e4e5634 100644 --- a/parser.go +++ b/parser.go @@ -11,13 +11,10 @@ import ( //-------- parser type parser struct { - ctx ExprContext } -func NewParser(ctx ExprContext) (p *parser) { - p = &parser{ - ctx: ctx, - } +func NewParser() (p *parser) { + p = &parser{} return p } diff --git a/t_dict_test.go b/t_dict_test.go index 054691d..e2be1e8 100644 --- a/t_dict_test.go +++ b/t_dict_test.go @@ -49,7 +49,7 @@ func TestDictParser(t *testing.T) { ctx.SetVar("var1", int64(123)) ctx.SetVar("var2", "abc") ImportMathFuncs(ctx) - parser := NewParser(ctx) + parser := NewParser() logTest(t, i+1, "Dict", input.source, input.wantResult, input.wantErr) diff --git a/t_parser_test.go b/t_parser_test.go index 9b9dd00..1f4752a 100644 --- a/t_parser_test.go +++ b/t_parser_test.go @@ -188,7 +188,7 @@ func doTest(t *testing.T, section string, input *inputType, count int) (good boo var gotErr error ctx := NewSimpleStore() - parser := NewParser(ctx) + parser := NewParser() logTest(t, count, section, input.source, input.wantResult, input.wantErr)