cli
packagemoduleThis package is not in the latest version of its module.
Details
Validgo.mod file
The Go module system was introduced in Go 1.11 and is the official dependency management solution for Go.
Redistributable license
Redistributable licenses place minimal restrictions on how software can be used, modified, and redistributed.
Tagged version
Modules with tagged versions give importers more predictable builds.
Stable version
When a project reaches major version v1 it is considered stable.
- Learn more about best practices
Repository
Links
README¶
cli
cli is a simple, fast, and fun package for building command line apps in Go. Thegoal is to enable developers to write fast and distributable command lineapplications in an expressive way.
Usage Documentation
Usage documentation forv1
is availableat the docssite or in-tree at./docs/v1/manual.md
Installation
Make sure you have a working Go environment. Go version 1.18+ is supported.
Supported platforms
cli is tested against multiple versions of Go on Linux, and against the latest releasedversion of Go on OS X and Windows. For full details, see./.github/workflows/cli.yml.
Build tags
You can use the following build tags:
urfave_cli_no_docs
When set, this removesToMarkdown
andToMan
methods, so your applicationwon't be able to call those. This reduces the resulting binary size by about300-400 KB (measured using Go 1.18.1 on Linux/amd64), due to less dependencies.
Usingv1
releases
$ go get github.com/urfave/cli
...import ( "github.com/urfave/cli")...
Documentation¶
Overview¶
Package cli provides a minimal framework for creating and organizing command lineGo applications. cli is designed to be easy to understand and write, the most simplecli application can be written as follows:
func main() { cli.NewApp().Run(os.Args)}
Of course this application does not do much, so let's make this an actual application:
func main() { app := cli.NewApp() app.Name = "greet" app.Usage = "say a greeting" app.Action = func(c *cli.Context) error { println("Greetings") return nil } app.Run(os.Args)}
Index¶
- Variables
- func DefaultAppComplete(c *Context)
- func DefaultCompleteWithFlags(cmd *Command) func(c *Context)
- func HandleAction(action interface{}, context *Context) (err error)
- func HandleExitCoder(err error)
- func ShowAppHelp(c *Context) error
- func ShowAppHelpAndExit(c *Context, exitCode int)
- func ShowCommandCompletions(ctx *Context, command string)
- func ShowCommandHelp(ctx *Context, command string) error
- func ShowCommandHelpAndExit(c *Context, command string, code int)
- func ShowCompletions(c *Context)
- func ShowSubcommandHelp(c *Context) error
- func ShowVersion(c *Context)
- type ActionFunc
- type AfterFunc
- type App
- func (a *App) Categories() CommandCategories
- func (a *App) Command(name string) *Command
- func (a *App) Run(arguments []string) (err error)
- func (a *App) RunAndExitOnError()deprecated
- func (a *App) RunAsSubcommand(ctx *Context) (err error)
- func (a *App) Setup()
- func (a *App) ToFishCompletion() (string, error)
- func (a *App) ToMan() (string, error)
- func (a *App) ToMarkdown() (string, error)
- func (a *App) VisibleCategories() []*CommandCategory
- func (a *App) VisibleCommands() []Command
- func (a *App) VisibleFlags() []Flag
- type Args
- type Author
- type BashCompleteFunc
- type BeforeFunc
- type BoolFlag
- func (f BoolFlag) Apply(set *flag.FlagSet)
- func (f BoolFlag) ApplyWithError(set *flag.FlagSet) error
- func (f BoolFlag) GetName() string
- func (f BoolFlag) GetUsage() string
- func (f BoolFlag) GetValue() string
- func (f BoolFlag) IsRequired() bool
- func (f BoolFlag) String() string
- func (f BoolFlag) TakesValue() bool
- type BoolTFlag
- func (f BoolTFlag) Apply(set *flag.FlagSet)
- func (f BoolTFlag) ApplyWithError(set *flag.FlagSet) error
- func (f BoolTFlag) GetName() string
- func (f BoolTFlag) GetUsage() string
- func (f BoolTFlag) GetValue() string
- func (f BoolTFlag) IsRequired() bool
- func (f BoolTFlag) String() string
- func (f BoolTFlag) TakesValue() bool
- type Command
- type CommandCategories
- type CommandCategory
- type CommandNotFoundFunc
- type Commands
- type CommandsByName
- type Context
- func (c *Context) Args() Args
- func (c *Context) Bool(name string) bool
- func (c *Context) BoolT(name string) bool
- func (c *Context) Duration(name string) time.Duration
- func (c *Context) FlagNames() (names []string)
- func (c *Context) Float64(name string) float64
- func (c *Context) Generic(name string) interface{}
- func (c *Context) GlobalBool(name string) bool
- func (c *Context) GlobalBoolT(name string) bool
- func (c *Context) GlobalDuration(name string) time.Duration
- func (c *Context) GlobalFlagNames() (names []string)
- func (c *Context) GlobalFloat64(name string) float64
- func (c *Context) GlobalGeneric(name string) interface{}
- func (c *Context) GlobalInt(name string) int
- func (c *Context) GlobalInt64(name string) int64
- func (c *Context) GlobalInt64Slice(name string) []int64
- func (c *Context) GlobalIntSlice(name string) []int
- func (c *Context) GlobalIsSet(name string) bool
- func (c *Context) GlobalSet(name, value string) error
- func (c *Context) GlobalString(name string) string
- func (c *Context) GlobalStringSlice(name string) []string
- func (c *Context) GlobalUint(name string) uint
- func (c *Context) GlobalUint64(name string) uint64
- func (c *Context) Int(name string) int
- func (c *Context) Int64(name string) int64
- func (c *Context) Int64Slice(name string) []int64
- func (c *Context) IntSlice(name string) []int
- func (c *Context) IsSet(name string) bool
- func (c *Context) NArg() int
- func (c *Context) NumFlags() int
- func (c *Context) Parent() *Context
- func (c *Context) Set(name, value string) error
- func (c *Context) String(name string) string
- func (c *Context) StringSlice(name string) []string
- func (c *Context) Uint(name string) uint
- func (c *Context) Uint64(name string) uint64
- type DocGenerationFlag
- type DurationFlag
- func (f DurationFlag) Apply(set *flag.FlagSet)
- func (f DurationFlag) ApplyWithError(set *flag.FlagSet) error
- func (f DurationFlag) GetName() string
- func (f DurationFlag) GetUsage() string
- func (f DurationFlag) GetValue() string
- func (f DurationFlag) IsRequired() bool
- func (f DurationFlag) String() string
- func (f DurationFlag) TakesValue() bool
- type ErrorFormatter
- type ExitCoder
- type ExitErrHandlerFunc
- type ExitError
- type Flag
- type FlagEnvHintFunc
- type FlagFileHintFunc
- type FlagNamePrefixFunc
- type FlagStringFunc
- type FlagsByName
- type Float64Flag
- func (f Float64Flag) Apply(set *flag.FlagSet)
- func (f Float64Flag) ApplyWithError(set *flag.FlagSet) error
- func (f Float64Flag) GetName() string
- func (f Float64Flag) GetUsage() string
- func (f Float64Flag) GetValue() string
- func (f Float64Flag) IsRequired() bool
- func (f Float64Flag) String() string
- func (f Float64Flag) TakesValue() bool
- type Generic
- type GenericFlag
- func (f GenericFlag) Apply(set *flag.FlagSet)
- func (f GenericFlag) ApplyWithError(set *flag.FlagSet) error
- func (f GenericFlag) GetName() string
- func (f GenericFlag) GetUsage() string
- func (f GenericFlag) GetValue() string
- func (f GenericFlag) IsRequired() bool
- func (f GenericFlag) String() string
- func (f GenericFlag) TakesValue() bool
- type Int64Flag
- func (f Int64Flag) Apply(set *flag.FlagSet)
- func (f Int64Flag) ApplyWithError(set *flag.FlagSet) error
- func (f Int64Flag) GetName() string
- func (f Int64Flag) GetUsage() string
- func (f Int64Flag) GetValue() string
- func (f Int64Flag) IsRequired() bool
- func (f Int64Flag) String() string
- func (f Int64Flag) TakesValue() bool
- type Int64Slice
- type Int64SliceFlag
- func (f Int64SliceFlag) Apply(set *flag.FlagSet)
- func (f Int64SliceFlag) ApplyWithError(set *flag.FlagSet) error
- func (f Int64SliceFlag) GetName() string
- func (f Int64SliceFlag) GetUsage() string
- func (f Int64SliceFlag) GetValue() string
- func (f Int64SliceFlag) IsRequired() bool
- func (f Int64SliceFlag) String() string
- func (f Int64SliceFlag) TakesValue() bool
- type IntFlag
- type IntSlice
- type IntSliceFlag
- func (f IntSliceFlag) Apply(set *flag.FlagSet)
- func (f IntSliceFlag) ApplyWithError(set *flag.FlagSet) error
- func (f IntSliceFlag) GetName() string
- func (f IntSliceFlag) GetUsage() string
- func (f IntSliceFlag) GetValue() string
- func (f IntSliceFlag) IsRequired() bool
- func (f IntSliceFlag) String() string
- func (f IntSliceFlag) TakesValue() bool
- type MultiError
- type OnUsageErrorFunc
- type RequiredFlag
- type StringFlag
- func (f StringFlag) Apply(set *flag.FlagSet)
- func (f StringFlag) ApplyWithError(set *flag.FlagSet) error
- func (f StringFlag) GetName() string
- func (f StringFlag) GetUsage() string
- func (f StringFlag) GetValue() string
- func (f StringFlag) IsRequired() bool
- func (f StringFlag) String() string
- func (f StringFlag) TakesValue() bool
- type StringSlice
- type StringSliceFlag
- func (f StringSliceFlag) Apply(set *flag.FlagSet)
- func (f StringSliceFlag) ApplyWithError(set *flag.FlagSet) error
- func (f StringSliceFlag) GetName() string
- func (f StringSliceFlag) GetUsage() string
- func (f StringSliceFlag) GetValue() string
- func (f StringSliceFlag) IsRequired() bool
- func (f StringSliceFlag) String() string
- func (f StringSliceFlag) TakesValue() bool
- type Uint64Flag
- func (f Uint64Flag) Apply(set *flag.FlagSet)
- func (f Uint64Flag) ApplyWithError(set *flag.FlagSet) error
- func (f Uint64Flag) GetName() string
- func (f Uint64Flag) GetUsage() string
- func (f Uint64Flag) GetValue() string
- func (f Uint64Flag) IsRequired() bool
- func (f Uint64Flag) String() string
- func (f Uint64Flag) TakesValue() bool
- type UintFlag
- func (f UintFlag) Apply(set *flag.FlagSet)
- func (f UintFlag) ApplyWithError(set *flag.FlagSet) error
- func (f UintFlag) GetName() string
- func (f UintFlag) GetUsage() string
- func (f UintFlag) GetValue() string
- func (f UintFlag) IsRequired() bool
- func (f UintFlag) String() string
- func (f UintFlag) TakesValue() bool
Examples¶
Constants¶
This section is empty.
Variables¶
var AppHelpTemplate = ``/* 1055-byte string literal not displayed */
AppHelpTemplate is the text template for the Default help topic.cli.go uses text/template to render templates. You canrender custom help text by setting this variable.
var CommandHelpTemplate = ``/* 404-byte string literal not displayed */
CommandHelpTemplate is the text template for the command help topic.cli.go uses text/template to render templates. You canrender custom help text by setting this variable.
var ErrWriterio.Writer =os.Stderr
ErrWriter is used to write errors to the user. This can be anythingimplementing the io.Writer interface and defaults to os.Stderr.
var FishCompletionTemplate = ``/* 358-byte string literal not displayed */
var HelpPrinter helpPrinter = printHelp
HelpPrinter is a function that writes the help output. If not set explicitly,this calls HelpPrinterCustom using only the default template functions.
If custom logic for printing help is required, this function can beoverridden. If the ExtraInfo field is defined on an App, this functionshould not be modified, as HelpPrinterCustom will be used directly in orderto capture the extra information.
var HelpPrinterCustom helpPrinterCustom = printHelpCustom
HelpPrinterCustom is a function that writes the help output. It is used asthe default implementation of HelpPrinter, and may be called directly ifthe ExtraInfo field is set on an App.
var MarkdownDocTemplate = `% {{ .App.Name }}(8) {{ .App.Description }}% {{ .App.Author }}# NAME{{ .App.Name }}{{ if .App.Usage }} - {{ .App.Usage }}{{ end }}# SYNOPSIS{{ .App.Name }}{{ if .SynopsisArgs }}` + "```" + `{{ range $v := .SynopsisArgs }}{{ $v }}{{ end }}` + "```" + `{{ end }}{{ if .App.UsageText }}# DESCRIPTION{{ .App.UsageText }}{{ end }}**Usage**:` + "```" + `{{ .App.Name }} [GLOBAL OPTIONS] command [COMMAND OPTIONS] [ARGUMENTS...]` + "```" + `{{ if .GlobalArgs }}# GLOBAL OPTIONS{{ range $v := .GlobalArgs }}{{ $v }}{{ end }}{{ end }}{{ if .Commands }}# COMMANDS{{ range $v := .Commands }}{{ $v }}{{ end }}{{ end }}`
var OsExiter =os.Exit
OsExiter is the function used when the app exits. If not set defaults to os.Exit.
var SubcommandHelpTemplate = ``/* 591-byte string literal not displayed */
SubcommandHelpTemplate is the text template for the subcommand help topic.cli.go uses text/template to render templates. You canrender custom help text by setting this variable.
var VersionPrinter = printVersion
VersionPrinter prints the version for the App
Functions¶
funcDefaultAppComplete¶added inv1.1.0
func DefaultAppComplete(c *Context)
DefaultAppComplete prints the list of subcommands as the default app completion method
funcDefaultCompleteWithFlags¶added inv1.22.0
funcHandleAction¶added inv1.15.0
HandleAction attempts to figure out which Action signature was used. Ifit's an ActionFunc or a func with the legacy signature for Action, the funcis run!
funcHandleExitCoder¶added inv1.15.0
func HandleExitCoder(errerror)
HandleExitCoder checks if the error fulfills the ExitCoder interface, and ifso prints the error to stderr (if it is non-empty) and calls OsExiter with thegiven exit code. If the given error is a MultiError, then this func iscalled on all members of the Errors slice and calls OsExiter with the last exit code.
funcShowAppHelp¶added inv1.0.0
ShowAppHelp is an action that displays the help.
funcShowAppHelpAndExit¶added inv1.20.0
ShowAppHelpAndExit - Prints the list of subcommands for the app and exits with exit code.
funcShowCommandCompletions¶added inv1.1.0
ShowCommandCompletions prints the custom completions for a given command
funcShowCommandHelp¶added inv1.0.0
ShowCommandHelp prints help for the given command
funcShowCommandHelpAndExit¶added inv1.20.0
ShowCommandHelpAndExit - exits with code after showing help
funcShowCompletions¶added inv1.1.0
func ShowCompletions(c *Context)
ShowCompletions prints the lists of commands within a given context
funcShowSubcommandHelp¶added inv1.1.0
ShowSubcommandHelp prints help for the given subcommand
funcShowVersion¶added inv1.0.0
func ShowVersion(c *Context)
ShowVersion prints the version number of the App
Types¶
typeActionFunc¶added inv1.15.0
ActionFunc is the action to execute when no subcommands are specified
typeAfterFunc¶added inv1.15.0
AfterFunc is an action to execute after any subcommands are run, but after thesubcommand has finished it is run even if Action() panics
typeApp¶
type App struct {// The name of the program. Defaults to path.Base(os.Args[0])Namestring// Full name of command for help, defaults to NameHelpNamestring// Description of the program.Usagestring// Text to override the USAGE section of helpUsageTextstring// Description of the program argument format.ArgsUsagestring// Version of the programVersionstring// Description of the programDescriptionstring// List of commands to executeCommands []Command// List of flags to parseFlags []Flag// Boolean to enable bash completion commandsEnableBashCompletionbool// Boolean to hide built-in help commandHideHelpbool// Boolean to hide built-in version flag and the VERSION section of helpHideVersionbool// An action to execute when the bash-completion flag is setBashCompleteBashCompleteFunc// An action to execute before any subcommands are run, but after the context is ready// If a non-nil error is returned, no subcommands are runBeforeBeforeFunc// An action to execute after any subcommands are run, but after the subcommand has finished// It is run even if Action() panicsAfterAfterFunc// The action to execute when no subcommands are specified// Expects a `cli.ActionFunc` but will accept the *deprecated* signature of `func(*cli.Context) {}`// *Note*: support for the deprecated `Action` signature will be removed in a future versionAction interface{}// Execute this function if the proper command cannot be foundCommandNotFoundCommandNotFoundFunc// Execute this function if an usage error occursOnUsageErrorOnUsageErrorFunc// Compilation dateCompiledtime.Time// List of all authors who contributedAuthors []Author// Copyright of the binary if anyCopyrightstring// Name of Author (Note: Use App.Authors, this is deprecated)Authorstring// Email of Author (Note: Use App.Authors, this is deprecated)Emailstring// Writer writer to write output toWriterio.Writer// ErrWriter writes error outputErrWriterio.Writer// Execute this function to handle ExitErrors. If not provided, HandleExitCoder is provided to// function as a default, so this is optional.ExitErrHandlerExitErrHandlerFunc// Other custom infoMetadata map[string]interface{}// Carries a function which returns app specific info.ExtraInfo func() map[string]string// CustomAppHelpTemplate the text template for app help topic.// cli.go uses text/template to render templates. You can// render custom help text by setting this variable.CustomAppHelpTemplatestring// Boolean to enable short-option handling so user can combine several// single-character bool arguements into one// i.e. foobar -o -v -> foobar -ovUseShortOptionHandlingbool// contains filtered or unexported fields}
App is the main structure of a cli application. It is recommended thatan app be created with the cli.NewApp() function
funcNewApp¶
func NewApp() *App
NewApp creates a new cli Application with some reasonable defaults for Name,Usage, Version and Action.
func (*App)Categories¶added inv1.14.0
func (a *App) Categories()CommandCategories
Categories returns a slice containing all the categories with the commands they contain
func (*App)Command¶added inv1.0.0
Command returns the named command on App. Returns nil if the command does not exist
func (*App)Run¶
Run is the entry point to the cli app. Parses the arguments slice and routesto the proper flag/args combination
Example¶
// set args for examples sakeos.Args = []string{"greet", "--name", "Jeremy"}app := NewApp()app.Name = "greet"app.Flags = []Flag{StringFlag{Name: "name", Value: "bob", Usage: "a name to say"},}app.Action = func(c *Context) error {fmt.Printf("Hello %v\n", c.String("name"))return nil}app.UsageText = "app [first_arg] [second_arg]"app.Author = "Harrison"app.Email = "harrison@lolwut.com"app.Authors = []Author{{Name: "Oliver Allen", Email: "oliver@toyshop.com"}}_ = app.Run(os.Args)
Output:Hello Jeremy
Example (AppHelp)¶
// set args for examples sakeos.Args = []string{"greet", "help"}app := NewApp()app.Name = "greet"app.Version = "0.1.0"app.Description = "This is how we describe greet the app"app.Authors = []Author{{Name: "Harrison", Email: "harrison@lolwut.com"},{Name: "Oliver Allen", Email: "oliver@toyshop.com"},}app.Flags = []Flag{StringFlag{Name: "name", Value: "bob", Usage: "a name to say"},}app.Commands = []Command{{Name: "describeit",Aliases: []string{"d"},Usage: "use it to see a description",Description: "This is how we describe describeit the function",Action: func(c *Context) error {fmt.Printf("i like to describe things")return nil},},}_ = app.Run(os.Args)
Output:NAME: greet - A new cli applicationUSAGE: greet [global options] command [command options] [arguments...]VERSION: 0.1.0DESCRIPTION: This is how we describe greet the appAUTHORS: Harrison <harrison@lolwut.com> Oliver Allen <oliver@toyshop.com>COMMANDS: describeit, d use it to see a description help, h Shows a list of commands or help for one commandGLOBAL OPTIONS: --name value a name to say (default: "bob") --help, -h show help --version, -v print the version
Example (BashComplete)¶
// set args for examples sakeos.Args = []string{"greet", "--generate-bash-completion"}app := NewApp()app.Name = "greet"app.EnableBashCompletion = trueapp.Commands = []Command{{Name: "describeit",Aliases: []string{"d"},Usage: "use it to see a description",Description: "This is how we describe describeit the function",Action: func(c *Context) error {fmt.Printf("i like to describe things")return nil},}, {Name: "next",Usage: "next example",Description: "more stuff to see when generating bash completion",Action: func(c *Context) error {fmt.Printf("the next example")return nil},},}_ = app.Run(os.Args)
Output:describeitdnexthelph
Example (BashComplete_withLongFlag)¶
os.Args = []string{"greet", "--s", "--generate-bash-completion"}app := NewApp()app.Name = "greet"app.EnableBashCompletion = trueapp.Flags = []Flag{IntFlag{Name: "other,o",},StringFlag{Name: "xyz,x",},StringFlag{Name: "some-flag,s",},StringFlag{Name: "similar-flag",},}_ = app.Run(os.Args)
Output:--some-flag--similar-flag
Example (BashComplete_withMultipleLongFlag)¶
os.Args = []string{"greet", "--st", "--generate-bash-completion"}app := NewApp()app.Name = "greet"app.EnableBashCompletion = trueapp.Flags = []Flag{IntFlag{Name: "int-flag,i",},StringFlag{Name: "string,s",},StringFlag{Name: "string-flag-2",},StringFlag{Name: "similar-flag",},StringFlag{Name: "some-flag",},}_ = app.Run(os.Args)
Output:--string--string-flag-2
Example (BashComplete_withShortFlag)¶
os.Args = []string{"greet", "-", "--generate-bash-completion"}app := NewApp()app.Name = "greet"app.EnableBashCompletion = trueapp.Flags = []Flag{IntFlag{Name: "other,o",},StringFlag{Name: "xyz,x",},}_ = app.Run(os.Args)
Output:--other-o--xyz-x--help-h
Example (CommandHelp)¶
// set args for examples sakeos.Args = []string{"greet", "h", "describeit"}app := NewApp()app.Name = "greet"app.Flags = []Flag{StringFlag{Name: "name", Value: "bob", Usage: "a name to say"},}app.Commands = []Command{{Name: "describeit",Aliases: []string{"d"},Usage: "use it to see a description",Description: "This is how we describe describeit the function",Action: func(c *Context) error {fmt.Printf("i like to describe things")return nil},},}_ = app.Run(os.Args)
Output:NAME: greet describeit - use it to see a descriptionUSAGE: greet describeit [arguments...]DESCRIPTION: This is how we describe describeit the function
Example (NoAction)¶
app := App{}app.Name = "greet"_ = app.Run([]string{"greet"})
Output:NAME: greetUSAGE: [global options] command [command options] [arguments...]COMMANDS: help, h Shows a list of commands or help for one commandGLOBAL OPTIONS: --help, -h show help
Example (Subcommand)¶
// set args for examples sakeos.Args = []string{"say", "hi", "english", "--name", "Jeremy"}app := NewApp()app.Name = "say"app.Commands = []Command{{Name: "hello",Aliases: []string{"hi"},Usage: "use it to see a description",Description: "This is how we describe hello the function",Subcommands: []Command{{Name: "english",Aliases: []string{"en"},Usage: "sends a greeting in english",Description: "greets someone in english",Flags: []Flag{StringFlag{Name: "name",Value: "Bob",Usage: "Name of the person to greet",},},Action: func(c *Context) error {fmt.Println("Hello,", c.String("name"))return nil},},},},}_ = app.Run(os.Args)
Output:Hello, Jeremy
Example (SubcommandNoAction)¶
app := App{}app.Name = "greet"app.Commands = []Command{{Name: "describeit",Aliases: []string{"d"},Usage: "use it to see a description",Description: "This is how we describe describeit the function",},}_ = app.Run([]string{"greet", "describeit"})
Output:NAME: describeit - use it to see a descriptionUSAGE: describeit [arguments...]DESCRIPTION: This is how we describe describeit the function
Example (ZshComplete)¶
// set args for examples sakeos.Args = []string{"greet", "--generate-bash-completion"}_ = os.Setenv("_CLI_ZSH_AUTOCOMPLETE_HACK", "1")app := NewApp()app.Name = "greet"app.EnableBashCompletion = trueapp.Commands = []Command{{Name: "describeit",Aliases: []string{"d"},Usage: "use it to see a description",Description: "This is how we describe describeit the function",Action: func(c *Context) error {fmt.Printf("i like to describe things")return nil},}, {Name: "next",Usage: "next example",Description: "more stuff to see when generating bash completion",Action: func(c *Context) error {fmt.Printf("the next example")return nil},},}_ = app.Run(os.Args)
Output:describeit:use it to see a descriptiond:use it to see a descriptionnext:next examplehelp:Shows a list of commands or help for one commandh:Shows a list of commands or help for one command
func (*App)RunAndExitOnErrordeprecatedadded inv1.1.0
func (a *App) RunAndExitOnError()
RunAndExitOnError calls .Run() and exits non-zero if an error was returned
Deprecated: instead you should return an error that fulfills cli.ExitCoderto cli.App.Run. This will cause the application to exit with the given erorcode in the cli.ExitCoder
func (*App)RunAsSubcommand¶added inv1.1.0
RunAsSubcommand invokes the subcommand given the context, parses ctx.Args() togenerate command-specific flags
func (*App)Setup¶added inv1.17.0
func (a *App) Setup()
Setup runs initialization code to ensure all data structures are ready for`Run` or inspection prior to `Run`. It is internally called by `Run`, butwill return early if setup has already happened.
func (*App)ToFishCompletion¶added inv1.22.0
ToFishCompletion creates a fish completion string for the `*App`The function errors if either parsing or writing of the string fails.
func (*App)ToMan¶added inv1.22.0
ToMan creates a man page string for the `*App`The function errors if either parsing or writing of the string fails.
func (*App)ToMarkdown¶added inv1.22.0
ToMarkdown creates a markdown string for the `*App`The function errors if either parsing or writing of the string fails.
func (*App)VisibleCategories¶added inv1.17.0
func (a *App) VisibleCategories() []*CommandCategory
VisibleCategories returns a slice of categories and commands that areHidden=false
func (*App)VisibleCommands¶added inv1.17.0
VisibleCommands returns a slice of the Commands with Hidden=false
func (*App)VisibleFlags¶added inv1.16.0
VisibleFlags returns a slice of the Flags with Hidden=false
typeArgs¶added inv1.1.0
type Args []string
Args contains apps console arguments
typeBashCompleteFunc¶added inv1.15.0
type BashCompleteFunc func(*Context)
BashCompleteFunc is an action to execute when the bash-completion flag is set
typeBeforeFunc¶added inv1.15.0
BeforeFunc is an action to execute before any subcommands are run, but afterthe context is ready if a non-nil error is returned, no subcommands are run
typeBoolFlag¶
type BoolFlag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolDestination *bool}
BoolFlag is a flag with type bool
func (BoolFlag)ApplyWithError¶added inv1.19.0
ApplyWithError populates the flag given the flag set and environment
func (BoolFlag)GetValue¶added inv1.22.0
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (BoolFlag)IsRequired¶added inv1.21.0
IsRequired returns whether or not the flag is required
func (BoolFlag)TakesValue¶added inv1.22.0
TakesValue returns true of the flag takes a value, otherwise false
typeBoolTFlag¶added inv1.1.0
type BoolTFlag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolDestination *bool}
BoolTFlag is a flag with type bool that is true by default
func (BoolTFlag)Apply¶added inv1.1.0
Apply populates the flag given the flag set and environmentIgnores errors
func (BoolTFlag)ApplyWithError¶added inv1.19.0
ApplyWithError populates the flag given the flag set and environment
func (BoolTFlag)GetValue¶added inv1.22.0
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (BoolTFlag)IsRequired¶added inv1.21.0
IsRequired returns whether or not the flag is required
func (BoolTFlag)String¶added inv1.1.0
String returns a readable representation of this value(for usage defaults)
func (BoolTFlag)TakesValue¶added inv1.22.0
TakesValue returns true of the flag takes a value, otherwise false
typeCommand¶
type Command struct {// The name of the commandNamestring// short name of the command. Typically one character (deprecated, use `Aliases`)ShortNamestring// A list of aliases for the commandAliases []string// A short description of the usage of this commandUsagestring// Custom text to show on USAGE section of helpUsageTextstring// A longer explanation of how the command worksDescriptionstring// A short description of the arguments of this commandArgsUsagestring// The category the command is part ofCategorystring// The function to call when checking for bash command completionsBashCompleteBashCompleteFunc// An action to execute before any sub-subcommands are run, but after the context is ready// If a non-nil error is returned, no sub-subcommands are runBeforeBeforeFunc// An action to execute after any subcommands are run, but after the subcommand has finished// It is run even if Action() panicsAfterAfterFunc// The function to call when this command is invokedAction interface{}// Execute this function if a usage error occurs.OnUsageErrorOnUsageErrorFunc// List of child commandsSubcommandsCommands// List of flags to parseFlags []Flag// Treat all flags as normal arguments if trueSkipFlagParsingbool// Skip argument reordering which attempts to move flags before arguments,// but only works if all flags appear after all arguments. This behavior was// removed n version 2 since it only works under specific conditions so we// backport here by exposing it as an option for compatibility.SkipArgReorderbool// Boolean to hide built-in help commandHideHelpbool// Boolean to hide this command from help or completionHiddenbool// Boolean to enable short-option handling so user can combine several// single-character bool arguments into one// i.e. foobar -o -v -> foobar -ovUseShortOptionHandlingbool// Full name of command for help, defaults to full command name, including parent commands.HelpNamestring// CustomHelpTemplate the text template for the command help topic.// cli.go uses text/template to render templates. You can// render custom help text by setting this variable.CustomHelpTemplatestring// contains filtered or unexported fields}
Command is a subcommand for a cli.App.
func (Command)FullName¶added inv1.9.0
FullName returns the full name of the command.For subcommands this ensures that parent commands are part of the command path
func (Command)Run¶
Run invokes the command given the context, parses ctx.Args() to generate command-specific flags
func (Command)VisibleFlags¶added inv1.16.0
VisibleFlags returns a slice of the Flags with Hidden=false
typeCommandCategories¶added inv1.14.0
type CommandCategories []*CommandCategory
CommandCategories is a slice of *CommandCategory.
func (CommandCategories)AddCommand¶added inv1.14.0
func (cCommandCategories) AddCommand(categorystring, commandCommand)CommandCategories
AddCommand adds a command to a category.
func (CommandCategories)Len¶added inv1.14.0
func (cCommandCategories) Len()int
func (CommandCategories)Less¶added inv1.14.0
func (cCommandCategories) Less(i, jint)bool
func (CommandCategories)Swap¶added inv1.14.0
func (cCommandCategories) Swap(i, jint)
typeCommandCategory¶added inv1.14.0
CommandCategory is a category containing commands.
func (*CommandCategory)VisibleCommands¶added inv1.17.0
func (c *CommandCategory) VisibleCommands() []Command
VisibleCommands returns a slice of the Commands with Hidden=false
typeCommandNotFoundFunc¶added inv1.15.0
CommandNotFoundFunc is executed if the proper command cannot be found
typeCommandsByName¶added inv1.20.0
type CommandsByName []Command
func (CommandsByName)Len¶added inv1.20.0
func (cCommandsByName) Len()int
func (CommandsByName)Less¶added inv1.20.0
func (cCommandsByName) Less(i, jint)bool
func (CommandsByName)Swap¶added inv1.20.0
func (cCommandsByName) Swap(i, jint)
typeContext¶
Context is a type that is passed through toeach Handler action in a cli application. Contextcan be used to retrieve context-specific Args andparsed command-line options.
funcNewContext¶
NewContext creates a new context. For use in when invoking an App or Command action.
func (*Context)BoolT¶added inv1.1.0
BoolT looks up the value of a local BoolTFlag, returnsfalse if not found
func (*Context)Duration¶added inv1.3.0
Duration looks up the value of a local DurationFlag, returns0 if not found
func (*Context)FlagNames¶added inv1.3.0
FlagNames returns a slice of flag names used in this context.
func (*Context)Float64¶added inv1.1.0
Float64 looks up the value of a local Float64Flag, returns0 if not found
func (*Context)Generic¶added inv1.1.0
Generic looks up the value of a local GenericFlag, returnsnil if not found
func (*Context)GlobalBool¶
GlobalBool looks up the value of a global BoolFlag, returnsfalse if not found
func (*Context)GlobalBoolT¶added inv1.17.0
GlobalBoolT looks up the value of a global BoolTFlag, returnsfalse if not found
func (*Context)GlobalDuration¶added inv1.3.0
GlobalDuration looks up the value of a global DurationFlag, returns0 if not found
func (*Context)GlobalFlagNames¶added inv1.3.1
GlobalFlagNames returns a slice of global flag names used by the app.
func (*Context)GlobalFloat64¶added inv1.15.0
GlobalFloat64 looks up the value of a global Float64Flag, returns0 if not found
func (*Context)GlobalGeneric¶added inv1.1.0
GlobalGeneric looks up the value of a global GenericFlag, returnsnil if not found
func (*Context)GlobalInt64¶added inv1.18.0
GlobalInt64 looks up the value of a global Int64Flag, returns0 if not found
func (*Context)GlobalInt64Slice¶added inv1.18.0
GlobalInt64Slice looks up the value of a global Int64SliceFlag, returnsnil if not found
func (*Context)GlobalIntSlice¶added inv1.0.0
GlobalIntSlice looks up the value of a global IntSliceFlag, returnsnil if not found
func (*Context)GlobalIsSet¶added inv1.3.1
GlobalIsSet determines if the global flag was actually set
func (*Context)GlobalSet¶added inv1.15.0
GlobalSet sets a context flag to a value on the global flagset
func (*Context)GlobalString¶
GlobalString looks up the value of a global StringFlag, returns"" if not found
func (*Context)GlobalStringSlice¶added inv1.0.0
GlobalStringSlice looks up the value of a global StringSliceFlag, returnsnil if not found
func (*Context)GlobalUint¶added inv1.18.0
GlobalUint looks up the value of a global UintFlag, returns0 if not found
func (*Context)GlobalUint64¶added inv1.18.0
GlobalUint64 looks up the value of a global Uint64Flag, returns0 if not found
func (*Context)Int64¶added inv1.18.0
Int64 looks up the value of a local Int64Flag, returns0 if not found
func (*Context)Int64Slice¶added inv1.18.0
Int64Slice looks up the value of a local Int64SliceFlag, returnsnil if not found
func (*Context)IntSlice¶added inv1.0.0
IntSlice looks up the value of a local IntSliceFlag, returnsnil if not found
func (*Context)StringSlice¶added inv1.0.0
StringSlice looks up the value of a local StringSliceFlag, returnsnil if not found
typeDocGenerationFlag¶added inv1.22.0
type DocGenerationFlag interface {Flag// TakesValue returns true if the flag takes a value, otherwise falseTakesValue()bool// GetUsage returns the usage string for the flagGetUsage()string// GetValue returns the flags value as string representation and an empty// string if the flag takes no value at all.GetValue()string}
DocGenerationFlag is an interface that allows documentation generation for the flag
typeDurationFlag¶added inv1.3.0
type DurationFlag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolValuetime.DurationDestination *time.Duration}
DurationFlag is a flag with type time.Duration (seehttps://golang.org/pkg/time/#ParseDuration)
func (DurationFlag)Apply¶added inv1.3.0
func (fDurationFlag) Apply(set *flag.FlagSet)
Apply populates the flag given the flag set and environmentIgnores errors
func (DurationFlag)ApplyWithError¶added inv1.19.0
func (fDurationFlag) ApplyWithError(set *flag.FlagSet)error
ApplyWithError populates the flag given the flag set and environment
func (DurationFlag)GetName¶added inv1.11.1
func (fDurationFlag) GetName()string
GetName returns the name of the flag
func (DurationFlag)GetUsage¶added inv1.22.0
func (fDurationFlag) GetUsage()string
GetUsage returns the usage string for the flag
func (DurationFlag)GetValue¶added inv1.22.0
func (fDurationFlag) GetValue()string
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (DurationFlag)IsRequired¶added inv1.21.0
func (fDurationFlag) IsRequired()bool
IsRequired returns whether or not the flag is required
func (DurationFlag)String¶added inv1.3.0
func (fDurationFlag) String()string
String returns a readable representation of this value(for usage defaults)
func (DurationFlag)TakesValue¶added inv1.22.0
func (fDurationFlag) TakesValue()bool
TakesValue returns true of the flag takes a value, otherwise false
typeErrorFormatter¶added inv1.19.0
typeExitCoder¶added inv1.15.0
ExitCoder is the interface checked by `App` and `Command` for a custom exitcode
typeExitErrHandlerFunc¶added inv1.21.0
ExitErrHandlerFunc is executed if provided in order to handle ExitError valuesreturned by Actions and Before/After functions.
typeExitError¶added inv1.15.0
type ExitError struct {// contains filtered or unexported fields}
ExitError fulfills both the builtin `error` interface and `ExitCoder`
funcNewExitError¶added inv1.15.0
NewExitError makes a new *ExitError
typeFlag¶
type Flag interface {fmt.Stringer// Apply Flag settings to the given flag setApply(*flag.FlagSet)GetName()string}
Flag is a common interface related to parsing flags in cli.For more advanced flag parsing techniques, it is recommended thatthis interface be implemented.
BashCompletionFlag enables bash-completion for all commands and subcommands
HelpFlag prints the help for all commands and subcommandsSet to the zero value (BoolFlag{}) to disable flag -- keeps subcommandunless HideHelp is set to true)
typeFlagEnvHintFunc¶added inv1.21.0
FlagEnvHintFunc is used by the default FlagStringFunc to annotate flag helpwith the environment variable details.
var FlagEnvHinterFlagEnvHintFunc = withEnvHint
FlagEnvHinter annotates flag help message with the environment variabledetails. This is used by the default FlagStringer.
typeFlagFileHintFunc¶added inv1.21.0
FlagFileHintFunc is used by the default FlagStringFunc to annotate flag helpwith the file path details.
var FlagFileHinterFlagFileHintFunc = withFileHint
FlagFileHinter annotates flag help message with the environment variabledetails. This is used by the default FlagStringer.
typeFlagNamePrefixFunc¶added inv1.21.0
FlagNamePrefixFunc is used by the default FlagStringFunc to create prefixtext for a flag's full name.
var FlagNamePrefixerFlagNamePrefixFunc = prefixedNames
FlagNamePrefixer converts a full flag name and its placeholder into the helpmessage flag prefix. This is used by the default FlagStringer.
typeFlagStringFunc¶added inv1.17.0
FlagStringFunc is used by the help generation to display a flag, which isexpected to be a single line.
var FlagStringerFlagStringFunc = stringifyFlag
FlagStringer converts a flag definition to a string. This is used by helpto display a flag.
typeFlagsByName¶added inv1.19.0
type FlagsByName []Flag
FlagsByName is a slice of Flag.
func (FlagsByName)Len¶added inv1.19.0
func (fFlagsByName) Len()int
func (FlagsByName)Less¶added inv1.19.0
func (fFlagsByName) Less(i, jint)bool
func (FlagsByName)Swap¶added inv1.19.0
func (fFlagsByName) Swap(i, jint)
typeFloat64Flag¶added inv1.1.0
type Float64Flag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolValuefloat64Destination *float64}
Float64Flag is a flag with type float64
func (Float64Flag)Apply¶added inv1.1.0
func (fFloat64Flag) Apply(set *flag.FlagSet)
Apply populates the flag given the flag set and environmentIgnores errors
func (Float64Flag)ApplyWithError¶added inv1.19.0
func (fFloat64Flag) ApplyWithError(set *flag.FlagSet)error
ApplyWithError populates the flag given the flag set and environment
func (Float64Flag)GetName¶added inv1.11.1
func (fFloat64Flag) GetName()string
GetName returns the name of the flag
func (Float64Flag)GetUsage¶added inv1.22.0
func (fFloat64Flag) GetUsage()string
GetUsage returns the usage string for the flag
func (Float64Flag)GetValue¶added inv1.22.0
func (fFloat64Flag) GetValue()string
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (Float64Flag)IsRequired¶added inv1.21.0
func (fFloat64Flag) IsRequired()bool
IsRequired returns whether or not the flag is required
func (Float64Flag)String¶added inv1.1.0
func (fFloat64Flag) String()string
String returns a readable representation of this value(for usage defaults)
func (Float64Flag)TakesValue¶added inv1.22.0
func (fFloat64Flag) TakesValue()bool
TakesValue returns true of the flag takes a value, otherwise false
typeGenericFlag¶added inv1.1.0
type GenericFlag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolTakesFileboolValueGeneric}
GenericFlag is a flag with type Generic
func (GenericFlag)Apply¶added inv1.1.0
func (fGenericFlag) Apply(set *flag.FlagSet)
Apply takes the flagset and calls Set on the generic flag with the valueprovided by the user for parsing by the flagIgnores parsing errors
func (GenericFlag)ApplyWithError¶added inv1.19.0
func (fGenericFlag) ApplyWithError(set *flag.FlagSet)error
ApplyWithError takes the flagset and calls Set on the generic flag with the valueprovided by the user for parsing by the flag
func (GenericFlag)GetName¶added inv1.11.1
func (fGenericFlag) GetName()string
GetName returns the name of the flag
func (GenericFlag)GetUsage¶added inv1.22.0
func (fGenericFlag) GetUsage()string
GetUsage returns the usage string for the flag
func (GenericFlag)GetValue¶added inv1.22.0
func (fGenericFlag) GetValue()string
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (GenericFlag)IsRequired¶added inv1.21.0
func (fGenericFlag) IsRequired()bool
IsRequired returns whether or not the flag is required
func (GenericFlag)String¶added inv1.1.0
func (fGenericFlag) String()string
String returns a readable representation of this value(for usage defaults)
func (GenericFlag)TakesValue¶added inv1.22.0
func (fGenericFlag) TakesValue()bool
TakesValue returns true of the flag takes a value, otherwise false
typeInt64Flag¶added inv1.18.0
type Int64Flag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolValueint64Destination *int64}
Int64Flag is a flag with type int64
func (Int64Flag)Apply¶added inv1.18.0
Apply populates the flag given the flag set and environmentIgnores errors
func (Int64Flag)ApplyWithError¶added inv1.19.0
ApplyWithError populates the flag given the flag set and environment
func (Int64Flag)GetValue¶added inv1.22.0
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (Int64Flag)IsRequired¶added inv1.21.0
IsRequired returns whether or not the flag is required
func (Int64Flag)String¶added inv1.18.0
String returns a readable representation of this value(for usage defaults)
func (Int64Flag)TakesValue¶added inv1.22.0
TakesValue returns true of the flag takes a value, otherwise false
typeInt64Slice¶added inv1.18.0
type Int64Slice []int64
Int64Slice is an opaque type for []int to satisfy flag.Value and flag.Getter
func (*Int64Slice)Get¶added inv1.19.0
func (f *Int64Slice) Get() interface{}
Get returns the slice of ints set by this flag
func (*Int64Slice)Set¶added inv1.18.0
func (f *Int64Slice) Set(valuestring)error
Set parses the value into an integer and appends it to the list of values
func (*Int64Slice)String¶added inv1.18.0
func (f *Int64Slice) String()string
String returns a readable representation of this value (for usage defaults)
func (*Int64Slice)Value¶added inv1.18.0
func (f *Int64Slice) Value() []int64
Value returns the slice of ints set by this flag
typeInt64SliceFlag¶added inv1.18.0
type Int64SliceFlag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolValue *Int64Slice}
Int64SliceFlag is a flag with type *Int64Slice
func (Int64SliceFlag)Apply¶added inv1.18.0
func (fInt64SliceFlag) Apply(set *flag.FlagSet)
Apply populates the flag given the flag set and environmentIgnores errors
func (Int64SliceFlag)ApplyWithError¶added inv1.19.0
func (fInt64SliceFlag) ApplyWithError(set *flag.FlagSet)error
ApplyWithError populates the flag given the flag set and environment
func (Int64SliceFlag)GetName¶added inv1.18.0
func (fInt64SliceFlag) GetName()string
GetName returns the name of the flag
func (Int64SliceFlag)GetUsage¶added inv1.22.0
func (fInt64SliceFlag) GetUsage()string
GetUsage returns the usage string for the flag
func (Int64SliceFlag)GetValue¶added inv1.22.0
func (fInt64SliceFlag) GetValue()string
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (Int64SliceFlag)IsRequired¶added inv1.21.0
func (fInt64SliceFlag) IsRequired()bool
IsRequired returns whether or not the flag is required
func (Int64SliceFlag)String¶added inv1.18.0
func (fInt64SliceFlag) String()string
String returns a readable representation of this value(for usage defaults)
func (Int64SliceFlag)TakesValue¶added inv1.22.0
func (fInt64SliceFlag) TakesValue()bool
TakesValue returns true of the flag takes a value, otherwise false
typeIntFlag¶
type IntFlag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolValueintDestination *int}
IntFlag is a flag with type int
func (IntFlag)ApplyWithError¶added inv1.19.0
ApplyWithError populates the flag given the flag set and environment
func (IntFlag)GetValue¶added inv1.22.0
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (IntFlag)IsRequired¶added inv1.21.0
IsRequired returns whether or not the flag is required
func (IntFlag)TakesValue¶added inv1.22.0
TakesValue returns true of the flag takes a value, otherwise false
typeIntSlice¶added inv1.0.0
type IntSlice []int
IntSlice is an opaque type for []int to satisfy flag.Value and flag.Getter
func (*IntSlice)Get¶added inv1.19.0
func (f *IntSlice) Get() interface{}
Get returns the slice of ints set by this flag
func (*IntSlice)Set¶added inv1.0.0
Set parses the value into an integer and appends it to the list of values
typeIntSliceFlag¶added inv1.0.0
type IntSliceFlag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolValue *IntSlice}
IntSliceFlag is a flag with type *IntSlice
func (IntSliceFlag)Apply¶added inv1.0.0
func (fIntSliceFlag) Apply(set *flag.FlagSet)
Apply populates the flag given the flag set and environmentIgnores errors
func (IntSliceFlag)ApplyWithError¶added inv1.19.0
func (fIntSliceFlag) ApplyWithError(set *flag.FlagSet)error
ApplyWithError populates the flag given the flag set and environment
func (IntSliceFlag)GetName¶added inv1.11.1
func (fIntSliceFlag) GetName()string
GetName returns the name of the flag
func (IntSliceFlag)GetUsage¶added inv1.22.0
func (fIntSliceFlag) GetUsage()string
GetUsage returns the usage string for the flag
func (IntSliceFlag)GetValue¶added inv1.22.0
func (fIntSliceFlag) GetValue()string
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (IntSliceFlag)IsRequired¶added inv1.21.0
func (fIntSliceFlag) IsRequired()bool
IsRequired returns whether or not the flag is required
func (IntSliceFlag)String¶added inv1.0.0
func (fIntSliceFlag) String()string
String returns a readable representation of this value(for usage defaults)
func (IntSliceFlag)TakesValue¶added inv1.22.0
func (fIntSliceFlag) TakesValue()bool
TakesValue returns true of the flag takes a value, otherwise false
typeMultiError¶added inv1.7.1
type MultiError struct {Errors []error}
MultiError is an error that wraps multiple errors.
funcNewMultiError¶added inv1.7.1
func NewMultiError(err ...error)MultiError
NewMultiError creates a new MultiError. Pass in one or more errors.
func (MultiError)Error¶added inv1.7.1
func (mMultiError) Error()string
Error implements the error interface.
typeOnUsageErrorFunc¶added inv1.15.0
OnUsageErrorFunc is executed if an usage error occurs. This is useful for displayingcustomized usage error messages. This function is able to replace theoriginal error messages. If this function is not set, the "Incorrect usage"is displayed and the execution is interrupted.
typeRequiredFlag¶added inv1.21.0
RequiredFlag is an interface that allows us to mark flags as requiredit allows flags required flags to be backwards compatible with the Flag interface
typeStringFlag¶
type StringFlag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolTakesFileboolValuestringDestination *string}
StringFlag is a flag with type string
func (StringFlag)Apply¶
func (fStringFlag) Apply(set *flag.FlagSet)
Apply populates the flag given the flag set and environmentIgnores errors
func (StringFlag)ApplyWithError¶added inv1.19.0
func (fStringFlag) ApplyWithError(set *flag.FlagSet)error
ApplyWithError populates the flag given the flag set and environment
func (StringFlag)GetName¶added inv1.11.1
func (fStringFlag) GetName()string
GetName returns the name of the flag
func (StringFlag)GetUsage¶added inv1.22.0
func (fStringFlag) GetUsage()string
GetUsage returns the usage string for the flag
func (StringFlag)GetValue¶added inv1.22.0
func (fStringFlag) GetValue()string
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (StringFlag)IsRequired¶added inv1.21.0
func (fStringFlag) IsRequired()bool
IsRequired returns whether or not the flag is required
func (StringFlag)String¶
func (fStringFlag) String()string
String returns a readable representation of this value(for usage defaults)
func (StringFlag)TakesValue¶added inv1.22.0
func (fStringFlag) TakesValue()bool
TakesValue returns true of the flag takes a value, otherwise false
typeStringSlice¶added inv1.0.0
type StringSlice []string
StringSlice is an opaque type for []string to satisfy flag.Value and flag.Getter
func (*StringSlice)Get¶added inv1.19.0
func (f *StringSlice) Get() interface{}
Get returns the slice of strings set by this flag
func (*StringSlice)Set¶added inv1.0.0
func (f *StringSlice) Set(valuestring)error
Set appends the string value to the list of values
func (*StringSlice)String¶added inv1.0.0
func (f *StringSlice) String()string
String returns a readable representation of this value (for usage defaults)
func (*StringSlice)Value¶added inv1.0.0
func (f *StringSlice) Value() []string
Value returns the slice of strings set by this flag
typeStringSliceFlag¶added inv1.0.0
type StringSliceFlag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolTakesFileboolValue *StringSlice}
StringSliceFlag is a flag with type *StringSlice
func (StringSliceFlag)Apply¶added inv1.0.0
func (fStringSliceFlag) Apply(set *flag.FlagSet)
Apply populates the flag given the flag set and environmentIgnores errors
func (StringSliceFlag)ApplyWithError¶added inv1.19.0
func (fStringSliceFlag) ApplyWithError(set *flag.FlagSet)error
ApplyWithError populates the flag given the flag set and environment
func (StringSliceFlag)GetName¶added inv1.11.1
func (fStringSliceFlag) GetName()string
GetName returns the name of the flag
func (StringSliceFlag)GetUsage¶added inv1.22.0
func (fStringSliceFlag) GetUsage()string
GetUsage returns the usage string for the flag
func (StringSliceFlag)GetValue¶added inv1.22.0
func (fStringSliceFlag) GetValue()string
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (StringSliceFlag)IsRequired¶added inv1.21.0
func (fStringSliceFlag) IsRequired()bool
IsRequired returns whether or not the flag is required
func (StringSliceFlag)String¶added inv1.0.0
func (fStringSliceFlag) String()string
String returns a readable representation of this value(for usage defaults)
func (StringSliceFlag)TakesValue¶added inv1.22.0
func (fStringSliceFlag) TakesValue()bool
TakesValue returns true of the flag takes a value, otherwise false
typeUint64Flag¶added inv1.18.0
type Uint64Flag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolValueuint64Destination *uint64}
Uint64Flag is a flag with type uint64
func (Uint64Flag)Apply¶added inv1.18.0
func (fUint64Flag) Apply(set *flag.FlagSet)
Apply populates the flag given the flag set and environmentIgnores errors
func (Uint64Flag)ApplyWithError¶added inv1.19.0
func (fUint64Flag) ApplyWithError(set *flag.FlagSet)error
ApplyWithError populates the flag given the flag set and environment
func (Uint64Flag)GetName¶added inv1.18.0
func (fUint64Flag) GetName()string
GetName returns the name of the flag
func (Uint64Flag)GetUsage¶added inv1.22.0
func (fUint64Flag) GetUsage()string
GetUsage returns the usage string for the flag
func (Uint64Flag)GetValue¶added inv1.22.0
func (fUint64Flag) GetValue()string
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (Uint64Flag)IsRequired¶added inv1.21.0
func (fUint64Flag) IsRequired()bool
IsRequired returns whether or not the flag is required
func (Uint64Flag)String¶added inv1.18.0
func (fUint64Flag) String()string
String returns a readable representation of this value(for usage defaults)
func (Uint64Flag)TakesValue¶added inv1.22.0
func (fUint64Flag) TakesValue()bool
TakesValue returns true of the flag takes a value, otherwise false
typeUintFlag¶added inv1.18.0
type UintFlag struct {NamestringUsagestringEnvVarstringFilePathstringRequiredboolHiddenboolValueuintDestination *uint}
UintFlag is a flag with type uint
func (UintFlag)Apply¶added inv1.18.0
Apply populates the flag given the flag set and environmentIgnores errors
func (UintFlag)ApplyWithError¶added inv1.19.0
ApplyWithError populates the flag given the flag set and environment
func (UintFlag)GetValue¶added inv1.22.0
GetValue returns the flags value as string representation and an emptystring if the flag takes no value at all.
func (UintFlag)IsRequired¶added inv1.21.0
IsRequired returns whether or not the flag is required
func (UintFlag)String¶added inv1.18.0
String returns a readable representation of this value(for usage defaults)
func (UintFlag)TakesValue¶added inv1.22.0
TakesValue returns true of the flag takes a value, otherwise false
Source Files¶
- app.go
- category.go
- cli.go
- command.go
- context.go
- docs.go
- errors.go
- fish.go
- flag.go
- flag_bool.go
- flag_bool_t.go
- flag_duration.go
- flag_float64.go
- flag_generic.go
- flag_int.go
- flag_int64.go
- flag_int64_slice.go
- flag_int_slice.go
- flag_string.go
- flag_string_slice.go
- flag_uint.go
- flag_uint64.go
- funcs.go
- help.go
- parse.go
- sort.go
- template.go