Compare commits

...

4 Commits

Author SHA1 Message Date
yangheng c6ed40d26b
Merge 4ff42e3b4b into 76d3bebef5 2024-10-17 16:05:24 +02:00
yangheng 4ff42e3b4b add comment 2018-06-06 15:07:10 +08:00
yangheng 0648a0fafe remove 2018-06-06 15:03:55 +08:00
yangheng 81806461a8 add sub viper list 2018-06-06 15:00:40 +08:00
1 changed files with 19 additions and 0 deletions

View File

@ -781,6 +781,25 @@ func (v *Viper) Sub(key string) *Viper {
return nil
}
//Sub list returns new Viper instance List representing a sub tree of this instance.
func SubList(key string) []*Viper { return v.SubList(key) }
func (v *Viper) SubList(key string) []*Viper {
data := v.Get(key)
if data == nil {
return nil
}
var vList []*Viper
if reflect.TypeOf(data).Kind() == reflect.Slice {
for _, item := range data.([]interface{}) {
subv := New()
subv.config = cast.ToStringMap(item)
vList = append(vList, subv)
}
return vList
}
return nil
}
// GetString returns the value associated with the key as a string.
func GetString(key string) string { return v.GetString(key) }