From 0760141caf38fc1848ddec14da7e6ede624acf58 Mon Sep 17 00:00:00 2001 From: Celestino Amoroso Date: Tue, 25 Jun 2024 10:48:31 +0200 Subject: [PATCH] utils.go: Removed CloneMap(). fromGenericAny(): check v against nil --- utils.go | 44 +++++++++++++++++++++++--------------------- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/utils.go b/utils.go index 9b6b7e7..7dbeecf 100644 --- a/utils.go +++ b/utils.go @@ -135,23 +135,25 @@ func anyInteger(v any) (i int64, ok bool) { } func fromGenericAny(v any) (exprAny any, ok bool) { - if exprAny, ok = v.(bool); ok { - return - } - if exprAny, ok = v.(string); ok { - return - } - if exprAny, ok = anyInteger(v); ok { - return - } - if exprAny, ok = anyFloat(v); ok { - return - } - if exprAny, ok = v.(*DictType); ok { - return - } - if exprAny, ok = v.(*ListType); ok { - return + if v != nil { + if exprAny, ok = v.(bool); ok { + return + } + if exprAny, ok = v.(string); ok { + return + } + if exprAny, ok = anyInteger(v); ok { + return + } + if exprAny, ok = anyFloat(v); ok { + return + } + if exprAny, ok = v.(*DictType); ok { + return + } + if exprAny, ok = v.(*ListType); ok { + return + } } return } @@ -176,10 +178,10 @@ func CopyMap[K comparable, V any](dest, source map[K]V) map[K]V { return dest } -func CloneMap[K comparable, V any](source map[K]V) map[K]V { - dest := make(map[K]V, len(source)) - return CopyMap(dest, source) -} +// func CloneMap[K comparable, V any](source map[K]V) map[K]V { +// dest := make(map[K]V, len(source)) +// return CopyMap(dest, source) +// } func CopyFilteredMap[K comparable, V any](dest, source map[K]V, filter func(key K) (accept bool)) map[K]V { // fmt.Printf("--- Clone with filter %p\n", filter)