urfave-cli/flag-gen/templates/cli_flags_generated.gotpl
Ajitem Sahasrabuddhe c676ed4caa
indentation fixes in template
regeneration test
2019-08-04 11:04:23 +05:30

69 lines
2.2 KiB
Plaintext

// Code generated by fg; DO NOT EDIT.
package {{ .PackageName }}
import (
"flag"
"strconv"
"time"
)
{{ range $i, $flag := .Flags }}
// {{ $flag.Name }}Flag is a flag with type {{ $flag.Type }}{{ $flag.Doctail }}
type {{ $flag.Name }}Flag struct {
Name string
Usage string
EnvVar string
FilePath string
Required bool
Hidden bool
{{- if eq $flag.Value true }}
Value {{ $flag.Type }}
{{- end }}
{{- if eq $flag.Destination true }}
Destination *{{ $flag.Type }}
{{- end }}
}
// String returns a readable representation of this value
// (for usage defaults)
func (f {{ $flag.Name }}Flag) String() string {
return FlagStringer(f)
}
// GetName returns the name of the flag
func (f {{ $flag.Name }}Flag) GetName() string {
return f.Name
}
// IsRequired returns whether or not the flag is required
func (f {{ $flag.Name }}Flag) IsRequired() bool {
return f.Required
}
// {{ $flag.Name }} looks up the value of a local {{ $flag.Name }}Flag, returns
// {{ $flag.ContextDefault }} if not found
func (c *Context) {{ $flag.Name }}(name string){{ if ne .ContextType "" }} {{ $flag.ContextType }} {{ else }} {{ $flag.Type }} {{- end }} {
return lookup{{ $flag.Name }}(name, c.flagSet)
}
// Global{{ $flag.Name }} looks up the value of a global {{ $flag.Name }}Flag, returns
// {{ $flag.ContextDefault }} if not found
func (c *Context) Global{{ $flag.Name }}(name string){{ if ne .ContextType "" }} {{ $flag.ContextType }} {{ else }} {{ $flag.Type }} {{- end }} {
if fs := lookupGlobalFlagSet(name, c); fs != nil {
return lookup{{ $flag.Name }}(name, fs)
}
return {{ $flag.ContextDefault }}
}
func lookup{{ $flag.Name }}(name string, set *flag.FlagSet){{ if ne .ContextType "" }} {{ $flag.ContextType }} {{ else }} {{ $flag.Type }} {{- end }} {
f := set.Lookup(name)
if f != nil {
{{ if ne .Parser "" }}parsed, err := {{ $flag.Parser }}{{ else }}parsed, err := f.Value, error(nil){{ end }}
if err != nil {
return {{ $flag.ContextDefault }}
}
{{ if ne .ParserCast "" }}return {{ $flag.ParserCast }}{{ else }}return parsed{{ end }}
}
return {{ $flag.ContextDefault }}
}
{{ end }}