Use pflag.ShorthandLookup

This commit is contained in:
Albert Nigmatzianov 2017-05-05 08:08:38 +02:00
parent 8f0203be89
commit 4061f41c9a
1 changed files with 13 additions and 12 deletions

View File

@ -369,8 +369,8 @@ func (c *Command) HelpTemplate() string {
{{end}}{{if or .Runnable .HasSubCommands}}{{.UsageString}}{{end}}` {{end}}{{if or .Runnable .HasSubCommands}}{{.UsageString}}{{end}}`
} }
func hasNoOptDefVal(name string, f *flag.FlagSet) bool { func hasNoOptDefVal(name string, fs *flag.FlagSet) bool {
flag := f.Lookup(name) flag := fs.Lookup(name)
if flag == nil { if flag == nil {
return false return false
} }
@ -378,14 +378,15 @@ func hasNoOptDefVal(name string, f *flag.FlagSet) bool {
} }
func shortHasNoOptDefVal(name string, fs *flag.FlagSet) bool { func shortHasNoOptDefVal(name string, fs *flag.FlagSet) bool {
result := false if len(name) == 0 {
fs.VisitAll(func(flag *flag.Flag) { return false
if flag.Shorthand == name && flag.NoOptDefVal != "" {
result = true
return
} }
})
return result flag := fs.ShorthandLookup(name[:1])
if flag == nil {
return false
}
return flag.NoOptDefVal != ""
} }
func stripFlags(args []string, c *Command) []string { func stripFlags(args []string, c *Command) []string {