From 9a25c0f65ba05b0d227bc575c2b7fcbd51dabed2 Mon Sep 17 00:00:00 2001 From: guoguangwu Date: Tue, 30 May 2023 22:26:06 +0800 Subject: [PATCH 1/2] fix: code optimization --- internal/encoding/dotenv/map_utils.go | 4 ++-- internal/encoding/ini/map_utils.go | 4 ++-- internal/encoding/javaproperties/map_utils.go | 4 ++-- overrides_test.go | 4 ++-- util.go | 6 +++--- viper.go | 8 ++++---- 6 files changed, 15 insertions(+), 15 deletions(-) diff --git a/internal/encoding/dotenv/map_utils.go b/internal/encoding/dotenv/map_utils.go index ce6e6efa3..bc9564efc 100644 --- a/internal/encoding/dotenv/map_utils.go +++ b/internal/encoding/dotenv/map_utils.go @@ -24,9 +24,9 @@ func flattenAndMergeMap(shadow map[string]interface{}, m map[string]interface{}, } for k, val := range m { fullKey := prefix + k - switch val.(type) { + switch val :=val.(type) { case map[string]interface{}: - m2 = val.(map[string]interface{}) + m2 = val case map[interface{}]interface{}: m2 = cast.ToStringMap(val) default: diff --git a/internal/encoding/ini/map_utils.go b/internal/encoding/ini/map_utils.go index 8329856b5..f39e95de4 100644 --- a/internal/encoding/ini/map_utils.go +++ b/internal/encoding/ini/map_utils.go @@ -57,9 +57,9 @@ func flattenAndMergeMap(shadow map[string]interface{}, m map[string]interface{}, } for k, val := range m { fullKey := prefix + k - switch val.(type) { + switch val := val.(type) { case map[string]interface{}: - m2 = val.(map[string]interface{}) + m2 = val case map[interface{}]interface{}: m2 = cast.ToStringMap(val) default: diff --git a/internal/encoding/javaproperties/map_utils.go b/internal/encoding/javaproperties/map_utils.go index 93755cac1..673bb700b 100644 --- a/internal/encoding/javaproperties/map_utils.go +++ b/internal/encoding/javaproperties/map_utils.go @@ -57,9 +57,9 @@ func flattenAndMergeMap(shadow map[string]interface{}, m map[string]interface{}, } for k, val := range m { fullKey := prefix + k - switch val.(type) { + switch val := val.(type) { case map[string]interface{}: - m2 = val.(map[string]interface{}) + m2 = val case map[interface{}]interface{}: m2 = cast.ToStringMap(val) default: diff --git a/overrides_test.go b/overrides_test.go index 8048204cf..4491ea232 100644 --- a/overrides_test.go +++ b/overrides_test.go @@ -156,11 +156,11 @@ func deepCheckValue(assert *assert.Assertions, v *Viper, l layer, keys []string, } // deep scan of the map to get the final value - switch val.(type) { + switch val := val.(type) { case map[interface{}]interface{}: m = cast.ToStringMap(val) case map[string]interface{}: - m = val.(map[string]interface{}) + m = val default: assert.Fail(fmt.Sprintf("%s is not a map[string]interface{}", ms)) return diff --git a/util.go b/util.go index 95009a147..8236d3aa8 100644 --- a/util.go +++ b/util.go @@ -70,17 +70,17 @@ func copyAndInsensitiviseMap(m map[string]interface{}) map[string]interface{} { } func insensitiviseVal(val interface{}) interface{} { - switch val.(type) { + switch v := val.(type) { case map[interface{}]interface{}: // nested map: cast and recursively insensitivise val = cast.ToStringMap(val) insensitiviseMap(val.(map[string]interface{})) case map[string]interface{}: // nested map: recursively insensitivise - insensitiviseMap(val.(map[string]interface{})) + insensitiviseMap(v) case []interface{}: // nested array: recursively insensitivise - insensitiveArray(val.([]interface{})) + insensitiveArray(v) } return val } diff --git a/viper.go b/viper.go index 7fb1e1913..6537cb418 100644 --- a/viper.go +++ b/viper.go @@ -666,13 +666,13 @@ func (v *Viper) searchMap(source map[string]interface{}, path []string) interfac } // Nested case - switch next.(type) { + switch next := next.(type) { case map[interface{}]interface{}: return v.searchMap(cast.ToStringMap(next), path[1:]) case map[string]interface{}: // Type assertion is safe here since it is only reached // if the type of `next` is the same as the type being asserted - return v.searchMap(next.(map[string]interface{}), path[1:]) + return v.searchMap(next, path[1:]) default: // got a value but nested key expected, return "nil" for not found return nil @@ -2051,9 +2051,9 @@ func (v *Viper) flattenAndMergeMap(shadow map[string]bool, m map[string]interfac } for k, val := range m { fullKey := prefix + k - switch val.(type) { + switch val := val.(type) { case map[string]interface{}: - m2 = val.(map[string]interface{}) + m2 = val case map[interface{}]interface{}: m2 = cast.ToStringMap(val) default: From 0b824ab41103a184ae874c8b0c1c5398139e9528 Mon Sep 17 00:00:00 2001 From: guoguangwu Date: Wed, 26 Jul 2023 17:49:03 +0800 Subject: [PATCH 2/2] fix: golangci-lint --- internal/encoding/dotenv/map_utils.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/encoding/dotenv/map_utils.go b/internal/encoding/dotenv/map_utils.go index bc9564efc..e880c95aa 100644 --- a/internal/encoding/dotenv/map_utils.go +++ b/internal/encoding/dotenv/map_utils.go @@ -24,7 +24,7 @@ func flattenAndMergeMap(shadow map[string]interface{}, m map[string]interface{}, } for k, val := range m { fullKey := prefix + k - switch val :=val.(type) { + switch val := val.(type) { case map[string]interface{}: m2 = val case map[interface{}]interface{}: