From 623fbc866a01e8700689f09081bcea23d8fb441c Mon Sep 17 00:00:00 2001 From: Moath Almallahi Date: Mon, 9 Mar 2026 19:21:20 +0100 Subject: [PATCH] adding support for json/map rule for any,all,none operators --- rulesengine.go | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/rulesengine.go b/rulesengine.go index fab7662..49d8db4 100644 --- a/rulesengine.go +++ b/rulesengine.go @@ -1,6 +1,7 @@ package rulesengine import ( + "encoding/json" "errors" "reflect" "regexp" @@ -80,12 +81,9 @@ func Evaluate( evaluation.Error = newError(errType, node.Field) return evaluation } - ruleVal, ok := node.Value.(Rule) - if !ok { - evaluation.Result = false - evaluation.Error = newError(errType, node.Value) - return evaluation - } + jsB, _ := json.Marshal(node.Value) + ruleVal := Rule{} + _ = json.Unmarshal(jsB, &ruleVal) dataLen := len(arr) var passCount int