Documentation ¶
Overview ¶
Package app defines an application framework used to create application.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FormatBaseName ¶
FormatBaseName is formatted as an executable file name under different operating systems according to the given name.
func WordSepNormalizeFunc ¶
func WordSepNormalizeFunc(_ *pflag.FlagSet, name string) pflag.NormalizedName
WordSepNormalizeFunc changes all flags that contain "_" separators.
Types ¶
type App ¶
type App struct {
// contains filtered or unexported fields
}
App is the main structure of a cli application. It is recommended that an app be created with the app.NewApp() function.
func NewApp ¶
NewApp creates a new application instance based on the given application name, binary name, and other options.
func (*App) AddCommand ¶
AddCommand adds sub command to the application.
func (*App) AddCommands ¶
AddCommands adds multiple sub commands to the application.
type CliOptions ¶
type CliOptions interface { // AddFlags adds flags to the specified FlagSet object. // AddFlags(fs *pflag.FlagSet) Flags() (fss cliflag.NamedFlagSets) Validate() []error }
CliOptions abstracts configuration options for reading parameters from the command line.
type Command ¶
type Command struct {
// contains filtered or unexported fields
}
Command is a sub command structure of a cli application. It is recommended that a command be created with the app.NewCommand() function.
func NewCommand ¶
func NewCommand(usage string, desc string, opts ...CommandOption) *Command
NewCommand creates a new sub command instance based on the given command name and other options.
func (*Command) AddCommand ¶
AddCommand adds sub command to the current command.
func (*Command) AddCommands ¶
AddCommands adds multiple sub commands to the current command.
type CommandOption ¶
type CommandOption func(*Command)
CommandOption defines optional parameters for initializing the command structure.
func WithCommandOptions ¶
func WithCommandOptions(opt CliOptions) CommandOption
WithCommandOptions to open the application's function to read from the command line.
func WithCommandRunFunc ¶
func WithCommandRunFunc(run RunCommandFunc) CommandOption
WithCommandRunFunc is used to set the application's command startup callback function option.
type CompleteableOptions ¶
type CompleteableOptions interface {
Complete() error
}
CompleteableOptions abstracts options which can be completed.
type ConfigurableOptions ¶
type ConfigurableOptions interface { // ApplyFlags parsing parameters from the command line or configuration file // to the options instance. ApplyFlags() []error }
ConfigurableOptions abstracts configuration options for reading parameters from a configuration file.
type Option ¶
type Option func(*App)
Option defines optional parameters for initializing the application structure.
func WithDefaultValidArgs ¶
func WithDefaultValidArgs() Option
WithDefaultValidArgs set default validation function to valid non-flag arguments.
func WithDescription ¶
WithDescription is used to set the description of the application.
func WithNoConfig ¶
func WithNoConfig() Option
WithNoConfig set the application does not provide config flag.
func WithNoVersion ¶
func WithNoVersion() Option
WithNoVersion set the application does not provide version flag.
func WithOptions ¶
func WithOptions(opt CliOptions) Option
WithOptions to open the application's function to read from the command line or read parameters from the configuration file.
func WithRunFunc ¶
WithRunFunc is used to set the application startup callback function option.
func WithSilence ¶
func WithSilence() Option
WithSilence sets the application to silent mode, in which the program startup information, configuration information, and version information are not printed in the console.
func WithValidArgs ¶
func WithValidArgs(args cobra.PositionalArgs) Option
WithValidArgs set the validation function to valid non-flag arguments.
type PrintableOptions ¶
type PrintableOptions interface {
String() string
}
PrintableOptions abstracts options which can be printed.
type RunCommandFunc ¶
RunCommandFunc defines the application's command startup callback function.