reorganized code
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
Sebastian Frank
2019-03-18 13:34:52 +01:00
parent 6b34509d9a
commit b2e0d78a2c
120 changed files with 1034 additions and 1067 deletions

View File

@@ -2,9 +2,6 @@ package config
import (
"fmt"
"reflect"
"github.com/imdario/mergo"
)
// MapString is a map[string]interface{} which always unmarsahls yaml to map[string]interface{}
@@ -149,24 +146,3 @@ type PathConfigTree struct {
Config *PathConfig
Sub []*PathConfigTree
}
type ptrTransformer struct{}
func (t ptrTransformer) Transformer(typ reflect.Type) func(dst, src reflect.Value) error {
if typ.Kind() == reflect.Ptr {
return func(dst, src reflect.Value) error {
if dst.CanSet() {
if dst.IsNil() {
dst.Set(src)
}
}
return nil
}
}
return nil
}
// Merge merges 2 objects or maps
func Merge(dst, src interface{}) error {
return mergo.Merge(dst, src, mergo.WithTransformers(ptrTransformer{}))
}