mirror of
https://github.com/spf13/viper
synced 2025-05-06 04:07:17 +00:00
Merge 888e1e5f0b
into 90734830d1
This commit is contained in:
commit
0926c9179c
1 changed files with 9 additions and 14 deletions
23
viper.go
23
viper.go
|
@ -322,23 +322,10 @@ func (v *viper) MarshalKey(key string, rawVal interface{}) error {
|
|||
// Marshals the config into a Struct
|
||||
func Marshal(rawVal interface{}) error { return v.Marshal(rawVal) }
|
||||
func (v *viper) Marshal(rawVal interface{}) error {
|
||||
err := mapstructure.Decode(v.defaults, rawVal)
|
||||
err := mapstructure.WeakDecode(v.AllSettings(), rawVal)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = mapstructure.Decode(v.config, rawVal)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = mapstructure.Decode(v.override, rawVal)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = mapstructure.Decode(v.kvstore, rawVal)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
v.insensativiseMaps()
|
||||
|
||||
return nil
|
||||
|
@ -655,6 +642,14 @@ func (v *viper) AllKeys() []string {
|
|||
m[key] = struct{}{}
|
||||
}
|
||||
|
||||
for key, _ := range v.env {
|
||||
m[key] = struct{}{}
|
||||
}
|
||||
|
||||
for key, _ := range v.pflags {
|
||||
m[key] = struct{}{}
|
||||
}
|
||||
|
||||
for key, _ := range v.override {
|
||||
m[key] = struct{}{}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue