diff --git a/go.mod b/go.mod index f717b8c..2f9fd4f 100644 --- a/go.mod +++ b/go.mod @@ -2,4 +2,4 @@ module github.com/wrfly/gua go 1.12 -require github.com/wrfly/ecp v0.1.1-0.20190725160759-97269b9e95f0 +require github.com/wrfly/ecp v0.1.3 diff --git a/go.sum b/go.sum index f7938d5..dbd0d47 100644 --- a/go.sum +++ b/go.sum @@ -1,8 +1,2 @@ -github.com/wrfly/ecp v0.0.0-20190321163603-bbc550e18246 h1:DZkmqllKFxC++nqcKKYZgO2U1pZJzwQw+8n7fEhOJfk= -github.com/wrfly/ecp v0.0.0-20190321163603-bbc550e18246/go.mod h1:lTrjsp9nYtempzKMd5XzGjU1MraaXFrhPTs8WhC3DFU= -github.com/wrfly/ecp v0.0.0-20190321181722-563aa2b61fa2 h1:sZ96zRMTzmnhft2+iACUlzWzF4CtlA1uTkLN7xLznOQ= -github.com/wrfly/ecp v0.0.0-20190321181722-563aa2b61fa2/go.mod h1:lTrjsp9nYtempzKMd5XzGjU1MraaXFrhPTs8WhC3DFU= -github.com/wrfly/ecp v0.1.0 h1:btwZO5LGlM5SNykaUXGkJIjwckpjPU2MjFatehSCmY8= -github.com/wrfly/ecp v0.1.0/go.mod h1:cmmFTD+MLlrDa3/EO3gjeKLKUhHiYP3cgaaJamIS1NU= -github.com/wrfly/ecp v0.1.1-0.20190725160759-97269b9e95f0 h1:Zy3Chk4CvwAqJ6YgQym6hJQEk4JE7iPbHRfxkru6Zn0= -github.com/wrfly/ecp v0.1.1-0.20190725160759-97269b9e95f0/go.mod h1:cmmFTD+MLlrDa3/EO3gjeKLKUhHiYP3cgaaJamIS1NU= +github.com/wrfly/ecp v0.1.3 h1:xu7fjaU05sFHe+3giB4R+mwSUNCiB2Kk8QvQy8OawcI= +github.com/wrfly/ecp v0.1.3/go.mod h1:cmmFTD+MLlrDa3/EO3gjeKLKUhHiYP3cgaaJamIS1NU= diff --git a/gua.go b/gua.go index 96256da..41d6c1e 100644 --- a/gua.go +++ b/gua.go @@ -55,11 +55,6 @@ func (g *gua) getFlagValue(field reflect.Value, key string) (string, bool) { return "", false } -func init() { - // reset lookup key function - ecp.LookupKey = func(original, _, _ string) string { return original } -} - type key struct { name string value *string @@ -102,8 +97,10 @@ func ParseWithFlagSet(c interface{}, f *flag.FlagSet) error { frog := gua{make(map[string]key, 20), f} + ecp := ecp.New() ecp.GetKey = frog.getKey ecp.LookupValue = frog.getFlagValue + ecp.LookupKey = func(original, _, _ string) string { return original } if err := ecp.Parse(c, ""); err != nil { return err