// 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 }}