From 5cf0bfbad4b251a35bcc2f8fa15ca5477bbc7985 Mon Sep 17 00:00:00 2001 From: Celestino Amoroso Date: Sat, 4 May 2024 00:33:38 +0200 Subject: [PATCH] func-math.go: use of ExtIterator to perform clean operation --- func-math.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/func-math.go b/func-math.go index 566d4b2..383d79d 100644 --- a/func-math.go +++ b/func-math.go @@ -28,8 +28,8 @@ func doAdd(ctx ExprContext, name string, it Iterator) (result any, err error) { if v, err = doAdd(ctx, name, subIter); err != nil { break } - if subIter.HasOperation(cleanName) { - if _, err = subIter.CallOperation(cleanName, nil); err != nil { + if extIter, ok := v.(ExtIterator); ok && extIter.HasOperation(cleanName) { + if _, err = extIter.CallOperation(cleanName, nil); err != nil { return } } @@ -103,8 +103,8 @@ func doMul(ctx ExprContext, name string, it Iterator) (result any, err error) { if v, err = doMul(ctx, name, subIter); err != nil { break } - if subIter.HasOperation(cleanName) { - if _, err = subIter.CallOperation(cleanName, nil); err != nil { + if extIter, ok := v.(ExtIterator); ok && extIter.HasOperation(cleanName) { + if _, err = extIter.CallOperation(cleanName, nil); err != nil { return } }