Documentation ¶
Index ¶
- type FlagConfig
- func (f *FlagConfig) CLIOnly(fields ...string)
- func (f *FlagConfig) DisallowConfig()
- func (f *FlagConfig) DontPrintUsage()
- func (f *FlagConfig) FlagParam(name, descr string, def bool)
- func (f *FlagConfig) GetFlag(name string) bool
- func (f *FlagConfig) GetInt(name string) int
- func (f *FlagConfig) GetInts(name string) []int
- func (f *FlagConfig) GetPositionals() []string
- func (f *FlagConfig) GetStr(name string) string
- func (f *FlagConfig) GetStrs(name string) []string
- func (f *FlagConfig) Help() string
- func (f *FlagConfig) IgnoreMissingConfigFile()
- func (f *FlagConfig) IntParam(name, descr string, def int)
- func (f *FlagConfig) IntParams(name, descr string, defaults ...int)
- func (f *FlagConfig) Parse() error
- func (f *FlagConfig) RequiredIntParam(name, descr string)
- func (f *FlagConfig) RequiredStrParam(name, descr string)
- func (f *FlagConfig) SetDefaultConfigFile(file string)
- func (f *FlagConfig) SetDelimiter(delim string)
- func (f *FlagConfig) SetDescription(descr string)
- func (f *FlagConfig) SetExtraHelp(help string)
- func (f *FlagConfig) StrParam(name, descr, def string)
- func (f *FlagConfig) StrParams(name, descr string, defaults ...string)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type FlagConfig ¶
type FlagConfig struct {
// contains filtered or unexported fields
}
func New ¶
func New(projname string) *FlagConfig
New returns a FlagConfig struct. Usage of this struct is: * Tell it what params to look for with StrParam, IntParam, etc... * Call Parse() * Get found parameters using GetStr, GetInt, etc...
func (*FlagConfig) CLIOnly ¶ added in v0.5.0
func (f *FlagConfig) CLIOnly(fields ...string)
Sets the given field names to be cli-only. They will not be shown in the -example output. Can be called multiple times
func (*FlagConfig) DisallowConfig ¶
func (f *FlagConfig) DisallowConfig()
If called then flagconfig won't have the ability to read in a configuration file. The --config and --example options won't be present in the --help menu.
func (*FlagConfig) DontPrintUsage ¶ added in v0.5.0
func (f *FlagConfig) DontPrintUsage()
Don't print a Usage line when printing help. Use this if you want to define your own usage line in SetDescription or SetExtraHelp.
func (*FlagConfig) FlagParam ¶
func (f *FlagConfig) FlagParam(name, descr string, def bool)
FlagParam tells flagconfig to look for a param called name on the command line or in the config file. Passing the flag on the command-line indicates a value of whatever the opposite of the default is (so if the default is false, passing it on the command-line would mean true). In the configuration file the value can be either "true" or "false".
func (*FlagConfig) GetFlag ¶
func (f *FlagConfig) GetFlag(name string) bool
GetFlag looks for a configuration parameter of the given name and returns its value (assuming the parameter is a flag).
func (*FlagConfig) GetInt ¶
func (f *FlagConfig) GetInt(name string) int
GetInt looks for a configuration parameter of the given name and returns its value (assuming the parameter is an integer)
func (*FlagConfig) GetInts ¶
func (f *FlagConfig) GetInts(name string) []int
GetInts looks for a configuration parameter of the given name and returns its value (assuming the parameter is a list of strings)
func (*FlagConfig) GetPositionals ¶
func (f *FlagConfig) GetPositionals() []string
GetPositionals returns all positional arguments found after Parse'ing. Will return empty slice if none were found, and nil if Parse hasn't been called yet
func (*FlagConfig) GetStr ¶
func (f *FlagConfig) GetStr(name string) string
GetStr looks for a configuration parameter of the given name and returns its value (assuming the parameter is a string)
func (*FlagConfig) GetStrs ¶
func (f *FlagConfig) GetStrs(name string) []string
GetStrs looks for a configuration parameter of the given name and returns its value (assuming the parameter is a list of strings)
func (*FlagConfig) Help ¶
func (f *FlagConfig) Help() string
Returns a formatted help string for the parameters that have been given so far
func (*FlagConfig) IgnoreMissingConfigFile ¶ added in v0.5.0
func (f *FlagConfig) IgnoreMissingConfigFile()
If called then flagconfig won't stop execution if it's given a configuration file to read but there isn't a file there. Instead it will act as if the file was empty.
func (*FlagConfig) IntParam ¶
func (f *FlagConfig) IntParam(name, descr string, def int)
IntParam tells flagconfig to look for a param called name of type int in either the config file or on the command line, or use the given default instead
func (*FlagConfig) IntParams ¶
func (f *FlagConfig) IntParams(name, descr string, defaults ...int)
IntParams tells flagconfig to look for zero or more parameters of type int in either the config file or on the command line, or use the given default instead. If any are defined in one location they overwrite all from the other. For example, if there are three defined in the config file and one defined on the command-line, that one will be the only one in the returned value.
func (*FlagConfig) Parse ¶
func (f *FlagConfig) Parse() error
Parse loads flagconfig's runtime configuration, using both command-line arguments and a possible configuration file
func (*FlagConfig) RequiredIntParam ¶
func (f *FlagConfig) RequiredIntParam(name, descr string)
RequiredIntParam tells flagconfig to look for a param called name of type int in either the config file or on the command line, or return an error from Parse if it's not specified anywhere
func (*FlagConfig) RequiredStrParam ¶
func (f *FlagConfig) RequiredStrParam(name, descr string)
RequiredStrParam tells flagconfig to look for a param called name of type string in either the config file or on the command line, or return an error from Parse if it's not specified anywhere
func (*FlagConfig) SetDefaultConfigFile ¶ added in v0.5.0
func (f *FlagConfig) SetDefaultConfigFile(file string)
If set, this will become the default value for the --config parameter. Note that this will still generate an error if it's set but the file doesn't exist. Use IgnoreMissingConfigFile to have this not be the case.
func (*FlagConfig) SetDelimiter ¶ added in v0.5.0
func (f *FlagConfig) SetDelimiter(delim string)
Set the argument delimiter which identifies and argument as being a flag. Default is -- (--username, for example).
func (*FlagConfig) SetDescription ¶
func (f *FlagConfig) SetDescription(descr string)
SetDescription sets the description which will be shown above the flag usage when --help is called on the command-line. This is optional.
func (*FlagConfig) SetExtraHelp ¶
func (f *FlagConfig) SetExtraHelp(help string)
SetExtraHelp sets a string which will show up at the tail end of the --help message, after all flags are defined. This is optional.
func (*FlagConfig) StrParam ¶
func (f *FlagConfig) StrParam(name, descr, def string)
StrParam tells flagconfig to look for a param called name of type string in either the config file or on the command line, or use the given default instead
func (*FlagConfig) StrParams ¶
func (f *FlagConfig) StrParams(name, descr string, defaults ...string)
StrParams tells flagconfig to look for zero or more parameters of type string in either the config file or on the command line, or use the given default instead. If any are defined in one location they overwrite all from the other. For example, if there are three defined in the config file and one defined on the command-line, that one will be the only one in the returned value.