From 00623f24a8e80e1ec4d88ce3e27a3a262dccfb88 Mon Sep 17 00:00:00 2001 From: "hui.wang" Date: Fri, 11 Mar 2022 16:43:07 +0800 Subject: [PATCH] fix: rm IsNil --- merge.go | 37 ------------------------------------- 1 file changed, 37 deletions(-) diff --git a/merge.go b/merge.go index c6a8225..552681a 100644 --- a/merge.go +++ b/merge.go @@ -197,40 +197,3 @@ func keyExists(k string, m map[string]interface{}) string { } return "" } - -func isNil(value interface{}, traceSource ...bool) bool { - if value == nil { - return true - } - var rv reflect.Value - if v, ok := value.(reflect.Value); ok { - rv = v - } else { - rv = reflect.ValueOf(value) - } - switch rv.Kind() { - case reflect.Chan, - reflect.Map, - reflect.Slice, - reflect.Func, - reflect.Interface, - reflect.UnsafePointer: - return !rv.IsValid() || rv.IsNil() - - case reflect.Ptr: - if len(traceSource) > 0 && traceSource[0] { - for rv.Kind() == reflect.Ptr { - rv = rv.Elem() - } - if !rv.IsValid() { - return true - } - if rv.Kind() == reflect.Ptr { - return rv.IsNil() - } - } else { - return !rv.IsValid() || rv.IsNil() - } - } - return false -}