Documentation
¶
Index ¶
- Constants
- Variables
- func GetDynamic[T any](group *dynamic.Group, field, id string) (T, error)
- func MustGetDynamic[T any](group *dynamic.Group, field, id string) T
- type ErrorHandling
- type FlagPrintMode
- type FlagSet
- func (f *FlagSet) Arg(i int) (string, bool)
- func (f *FlagSet) Args() []string
- func (f *FlagSet) Authors(s string)
- func (f *FlagSet) Bool(name string, def bool, usage string) *scalar.BoolFlag
- func (f *FlagSet) BoolVar(ptr *bool, name, short string, def bool, usage string) *scalar.BoolFlag
- func (f *FlagSet) Bytes(name string, def uint64, usage string) *scalar.ScalarFlag[uint64]
- func (f *FlagSet) BytesSlice(name string, def []uint64, usage string) *slice.SliceFlag[uint64]
- func (f *FlagSet) BytesSliceVar(ptr *[]uint64, name string, def []uint64, usage string) *slice.SliceFlag[uint64]
- func (f *FlagSet) BytesVar(ptr *uint64, name string, def uint64, usage string) *scalar.ScalarFlag[uint64]
- func (f *FlagSet) Counter(name, usage string) *scalar.CounterFlag
- func (f *FlagSet) CounterVar(ptr *int, name, usage string) *scalar.CounterFlag
- func (f *FlagSet) DefaultDelimiter() string
- func (f *FlagSet) Description(s string)
- func (f *FlagSet) DescriptionIndent(n int)
- func (f *FlagSet) DescriptionMaxLen(n int)
- func (f *FlagSet) DisableHelp()
- func (f *FlagSet) DisableVersion()
- func (f *FlagSet) Duration(name string, def time.Duration, usage string) *scalar.ScalarFlag[time.Duration]
- func (f *FlagSet) DurationSlice(name string, def []time.Duration, usage string) *slice.SliceFlag[time.Duration]
- func (f *FlagSet) DurationSliceVar(ptr *[]time.Duration, name string, def []time.Duration, usage string) *slice.SliceFlag[time.Duration]
- func (f *FlagSet) DurationVar(ptr *time.Duration, name string, def time.Duration, usage string) *scalar.ScalarFlag[time.Duration]
- func (f *FlagSet) DynamicGroup(name string) *dynamic.Group
- func (f *FlagSet) DynamicGroups() []*dynamic.Group
- func (f *FlagSet) EnvPrefix(s string)
- func (f *FlagSet) File(name string, def *os.File, usage string) *scalar.ScalarFlag[*os.File]
- func (f *FlagSet) FileSlice(name string, def []*os.File, usage string) *slice.SliceFlag[*os.File]
- func (f *FlagSet) FileSliceVar(ptr *[]*os.File, name string, def []*os.File, usage string) *slice.SliceFlag[*os.File]
- func (f *FlagSet) FileVar(ptr **os.File, name string, def *os.File, usage string) *scalar.ScalarFlag[*os.File]
- func (f *FlagSet) Float32(name string, def float32, usage string) *scalar.ScalarFlag[float32]
- func (f *FlagSet) Float32Slice(name string, def []float32, usage string) *slice.SliceFlag[float32]
- func (f *FlagSet) Float32SliceVar(ptr *[]float32, name string, def []float32, usage string) *slice.SliceFlag[float32]
- func (f *FlagSet) Float32Var(ptr *float32, name string, def float32, usage string) *scalar.ScalarFlag[float32]
- func (f *FlagSet) Float64(name string, def float64, usage string) *scalar.ScalarFlag[float64]
- func (f *FlagSet) Float64Slice(name string, def []float64, usage string) *slice.SliceFlag[float64]
- func (f *FlagSet) Float64SliceVar(ptr *[]float64, name string, def []float64, usage string) *slice.SliceFlag[float64]
- func (f *FlagSet) Float64Var(ptr *float64, name string, def float64, usage string) *scalar.ScalarFlag[float64]
- func (f *FlagSet) GetGroup(name string) *core.MutualGroup
- func (f *FlagSet) Globaldelimiter(s string)
- func (f *FlagSet) Groups() []*core.MutualGroup
- func (f *FlagSet) IP(name string, def net.IP, usage string) *scalar.ScalarFlag[net.IP]
- func (f *FlagSet) IPMask(name string, def net.IPMask, usage string) *scalar.ScalarFlag[net.IPMask]
- func (f *FlagSet) IPMaskSlice(name string, def []net.IPMask, usage string) *slice.SliceFlag[net.IPMask]
- func (f *FlagSet) IPMaskSliceVar(ptr *[]net.IPMask, name string, def []net.IPMask, usage string) *slice.SliceFlag[net.IPMask]
- func (f *FlagSet) IPSlice(name string, def []net.IP, usage string) *slice.SliceFlag[net.IP]
- func (f *FlagSet) IPSliceVar(ptr *[]net.IP, name string, def []net.IP, usage string) *slice.SliceFlag[net.IP]
- func (f *FlagSet) IPVar(ptr *net.IP, name string, def net.IP, usage string) *scalar.ScalarFlag[net.IP]
- func (f *FlagSet) IPv4MaskVar(ptr *net.IPMask, name string, def net.IPMask, usage string) *scalar.ScalarFlag[net.IPMask]
- func (f *FlagSet) IgnoreInvalidEnv(b bool)
- func (f *FlagSet) Int(name string, def int, usage string) *scalar.ScalarFlag[int]
- func (f *FlagSet) IntSlice(name string, def []int, usage string) *slice.SliceFlag[int]
- func (f *FlagSet) IntSliceVar(ptr *[]int, name string, def []int, usage string) *slice.SliceFlag[int]
- func (f *FlagSet) IntVar(ptr *int, name string, def int, usage string) *scalar.ScalarFlag[int]
- func (f *FlagSet) Name() string
- func (f *FlagSet) Note(s string)
- func (f *FlagSet) Output() io.Writer
- func (f *FlagSet) Parse(args []string) error
- func (f *FlagSet) PrintAuthors(w io.Writer)
- func (f *FlagSet) PrintDefaults()
- func (f *FlagSet) PrintDescription(w io.Writer, width int)
- func (f *FlagSet) PrintNotes(w io.Writer, width int)
- func (f *FlagSet) PrintTitle(w io.Writer)
- func (f *FlagSet) PrintUsage(w io.Writer, mode FlagPrintMode)
- func (f *FlagSet) RequirePositional(n int)
- func (f *FlagSet) SetGetEnvFn(fn func(string) string)
- func (f *FlagSet) SetOutput(w io.Writer)
- func (f *FlagSet) Sorted(b bool)
- func (f *FlagSet) String(name string, def string, usage string) *scalar.ScalarFlag[string]
- func (f *FlagSet) StringSlice(name string, def []string, usage string) *slice.SliceFlag[string]
- func (f *FlagSet) StringSliceVar(ptr *[]string, name string, def []string, usage string) *slice.SliceFlag[string]
- func (f *FlagSet) StringVar(ptr *string, name string, def string, usage string) *scalar.ScalarFlag[string]
- func (f *FlagSet) TCPAddr(name string, def *net.TCPAddr, usage string) *scalar.ScalarFlag[*net.TCPAddr]
- func (f *FlagSet) TCPAddrSlice(name string, def []*net.TCPAddr, usage string) *slice.SliceFlag[*net.TCPAddr]
- func (f *FlagSet) TCPAddrSliceVar(ptr *[]*net.TCPAddr, name string, def []*net.TCPAddr, usage string) *slice.SliceFlag[*net.TCPAddr]
- func (f *FlagSet) TCPAddrVar(ptr **net.TCPAddr, name string, def *net.TCPAddr, usage string) *scalar.ScalarFlag[*net.TCPAddr]
- func (f *FlagSet) Time(name string, def time.Time, usage string) *scalar.ScalarFlag[time.Time]
- func (f *FlagSet) TimeSlice(name string, def []time.Time, usage string) *slice.SliceFlag[time.Time]
- func (f *FlagSet) TimeSliceVar(ptr *[]time.Time, name string, def []time.Time, usage string) *slice.SliceFlag[time.Time]
- func (f *FlagSet) TimeVar(ptr *time.Time, name string, def time.Time, usage string) *scalar.ScalarFlag[time.Time]
- func (f *FlagSet) Title(s string)
- func (f *FlagSet) URL(name string, def *url.URL, usage string) *scalar.ScalarFlag[*url.URL]
- func (f *FlagSet) URLSlice(name string, def []*url.URL, usage string) *slice.SliceFlag[*url.URL]
- func (f *FlagSet) URLSliceVar(ptr *[]*url.URL, name string, def []*url.URL, usage string) *slice.SliceFlag[*url.URL]
- func (f *FlagSet) URLVar(ptr **url.URL, name string, def *url.URL, usage string) *scalar.ScalarFlag[*url.URL]
- func (f *FlagSet) Version(s string)
- type HelpRequested
- type VersionRequested
Constants ¶
const ( ContinueOnError = engine.ContinueOnError ExitOnError = engine.ExitOnError PanicOnError = engine.PanicOnError )
const ( PrintNone = engine.PrintNone PrintFlags = engine.PrintFlags PrintShort = engine.PrintShort PrintLong = engine.PrintLong PrintBoth = engine.PrintBoth )
Variables ¶
var ( IsHelpRequested = engine.IsHelpRequested IsVersionRequested = engine.IsVersionRequested RequestHelp = engine.RequestHelp RequestVersion = engine.RequestVersion )
Functions ¶
func GetDynamic ¶ added in v0.0.10
GetDynamic retrieves a dynamic field value for a given ID with the correct type.
Types ¶
type ErrorHandling ¶
type ErrorHandling = engine.ErrorHandling
ErrorHandling is re-exported from internal engine
type FlagPrintMode ¶
type FlagPrintMode = engine.FlagPrintMode
type FlagSet ¶
type FlagSet struct { // Usage can be overridden by the user to customize help output. // It is executed when --help is triggered or from user code. Usage func() // contains filtered or unexported fields }
FlagSet is the public wrapper around internal engine.FlagSet It provides the full user-facing API for defining and parsing CLI flags.
func NewFlagSet ¶
func NewFlagSet(name string, handling ErrorHandling) *FlagSet
NewFlagSet creates a new flag set.
func (*FlagSet) Bool ¶
Bool defines a boolean flag. If Strict() is true, the flag requires an explicit value (--flag=true/false).
func (*FlagSet) BoolVar ¶
BoolVar defines a boolean flag, binding the flag to a pointer (ptr). If Strict() is true, the flag requires an explicit value (--flag=true/false).
func (*FlagSet) BytesSlice ¶ added in v0.0.8
BytesSlice declares a []uint64 “bytes” flag.
func (*FlagSet) BytesSliceVar ¶ added in v0.0.8
func (f *FlagSet) BytesSliceVar(ptr *[]uint64, name string, def []uint64, usage string) *slice.SliceFlag[uint64]
BytesSliceVar declares a []uint64 “bytes” flag, binding the flag to a pointer (ptr).
func (*FlagSet) BytesVar ¶ added in v0.0.8
func (f *FlagSet) BytesVar(ptr *uint64, name string, def uint64, usage string) *scalar.ScalarFlag[uint64]
BytesVar declares a uint64 “bytes” flag, binding the flag to a pointer (ptr).
func (*FlagSet) Counter ¶ added in v0.0.8
func (f *FlagSet) Counter(name, usage string) *scalar.CounterFlag
Counter defines a counter flag. A counter is a flag that increments on each occurrence.
func (*FlagSet) CounterVar ¶ added in v0.0.8
func (f *FlagSet) CounterVar(ptr *int, name, usage string) *scalar.CounterFlag
CounterVar defines a counter flag, binding the flag to a pointer (ptr). A counter is a flag that increments on each occurrence.
func (*FlagSet) DefaultDelimiter ¶ added in v0.0.8
DefaultDelimiter returns the slice-value separator.
func (*FlagSet) Description ¶
Description adds a description paragraph to the help.
func (*FlagSet) DescriptionIndent ¶
DescriptionIndent sets the indent width for descriptions.
func (*FlagSet) DescriptionMaxLen ¶
DescriptionMaxLen sets the max width for description text.
func (*FlagSet) DisableHelp ¶
func (f *FlagSet) DisableHelp()
DisableHelp turns off automatic help flag registration.
func (*FlagSet) DisableVersion ¶
func (f *FlagSet) DisableVersion()
DisableVersion turns off automatic version flag registration.
func (*FlagSet) Duration ¶
func (f *FlagSet) Duration(name string, def time.Duration, usage string) *scalar.ScalarFlag[time.Duration]
Duration declares a time.Duration flag.
func (*FlagSet) DurationSlice ¶
func (f *FlagSet) DurationSlice(name string, def []time.Duration, usage string) *slice.SliceFlag[time.Duration]
DurationSlice declares a []time.Duration flag.
func (*FlagSet) DurationSliceVar ¶
func (f *FlagSet) DurationSliceVar(ptr *[]time.Duration, name string, def []time.Duration, usage string) *slice.SliceFlag[time.Duration]
DurationSliceVar declares a []time.Duration flag, binding the flag to a pointer (ptr).
func (*FlagSet) DurationVar ¶
func (f *FlagSet) DurationVar(ptr *time.Duration, name string, def time.Duration, usage string) *scalar.ScalarFlag[time.Duration]
DurationVar declares a time.Duration flag, binding the flag to a pointer (ptr).
func (*FlagSet) DynamicGroup ¶ added in v0.0.8
DynamicGroup returns or creates a dynamic flag group.
func (*FlagSet) DynamicGroups ¶ added in v0.0.9
DynamicGroups returns all dynamic flag groups.
func (*FlagSet) FileSliceVar ¶
func (f *FlagSet) FileSliceVar(ptr *[]*os.File, name string, def []*os.File, usage string) *slice.SliceFlag[*os.File]
FileSliceVar declares a []*os.File flag, binding the flag to a pointer (ptr).
func (*FlagSet) FileVar ¶
func (f *FlagSet) FileVar(ptr **os.File, name string, def *os.File, usage string) *scalar.ScalarFlag[*os.File]
FileVar declares an *os.File flag, binding the flag to a pointer (ptr).
func (*FlagSet) Float32Slice ¶
Float32Slice declares a []float32 flag.
func (*FlagSet) Float32SliceVar ¶
func (f *FlagSet) Float32SliceVar(ptr *[]float32, name string, def []float32, usage string) *slice.SliceFlag[float32]
Float32SliceVar declares a []float32 flag, binding the flag to a pointer (ptr).
func (*FlagSet) Float32Var ¶
func (f *FlagSet) Float32Var(ptr *float32, name string, def float32, usage string) *scalar.ScalarFlag[float32]
Float32Var declares a float32 flag, binding the flag to a pointer (ptr).
func (*FlagSet) Float64Slice ¶
Float64Slice declares a []float64 flag.
func (*FlagSet) Float64SliceVar ¶
func (f *FlagSet) Float64SliceVar(ptr *[]float64, name string, def []float64, usage string) *slice.SliceFlag[float64]
Float64SliceVar declares a []float64 flag, binding the flag to a pointer (ptr).
func (*FlagSet) Float64Var ¶
func (f *FlagSet) Float64Var(ptr *float64, name string, def float64, usage string) *scalar.ScalarFlag[float64]
Float64Var declares a float64 flag, binding the flag to a pointer (ptr).
func (*FlagSet) GetGroup ¶ added in v0.0.8
func (f *FlagSet) GetGroup(name string) *core.MutualGroup
GetGroup returns the named mutual-exclusion group.
func (*FlagSet) Globaldelimiter ¶
Globaldelimiter sets the default delimiter for slice flags.
func (*FlagSet) Groups ¶ added in v0.0.8
func (f *FlagSet) Groups() []*core.MutualGroup
Groups returns all mutual-exclusion groups.
func (*FlagSet) IPMaskSlice ¶
func (f *FlagSet) IPMaskSlice(name string, def []net.IPMask, usage string) *slice.SliceFlag[net.IPMask]
IPMaskSlice declares a []net.IPMask flag.
func (*FlagSet) IPMaskSliceVar ¶
func (f *FlagSet) IPMaskSliceVar(ptr *[]net.IPMask, name string, def []net.IPMask, usage string) *slice.SliceFlag[net.IPMask]
IPMaskSliceVar declares a []net.IPMask flag, binding the flag to a pointer (ptr).
func (*FlagSet) IPSliceVar ¶
func (f *FlagSet) IPSliceVar(ptr *[]net.IP, name string, def []net.IP, usage string) *slice.SliceFlag[net.IP]
IPSliceVar declares a []net.IP flag, binding the flag to a pointer (ptr).
func (*FlagSet) IPVar ¶
func (f *FlagSet) IPVar(ptr *net.IP, name string, def net.IP, usage string) *scalar.ScalarFlag[net.IP]
IPVar declares a net.IP flag, binding the flag to a pointer (ptr).
func (*FlagSet) IPv4MaskVar ¶ added in v0.0.8
func (f *FlagSet) IPv4MaskVar(ptr *net.IPMask, name string, def net.IPMask, usage string) *scalar.ScalarFlag[net.IPMask]
IPv4MaskVar declares a net.IPMask flag, binding the flag to a pointer (ptr).
func (*FlagSet) IgnoreInvalidEnv ¶
IgnoreInvalidEnv skips invalid environment-variable values.
func (*FlagSet) IntSliceVar ¶
func (f *FlagSet) IntSliceVar(ptr *[]int, name string, def []int, usage string) *slice.SliceFlag[int]
IntSliceVar declares a []int flag, binding the flag to a pointer (ptr).
func (*FlagSet) PrintAuthors ¶ added in v0.0.8
PrintAuthors writes the authors heading.
func (*FlagSet) PrintDefaults ¶
func (f *FlagSet) PrintDefaults()
PrintDefaults prints all defined flags and their defaults.
func (*FlagSet) PrintDescription ¶
PrintDescription writes the description wrapped at width.
func (*FlagSet) PrintNotes ¶
PrintNotes writes help notes wrapped at width.
func (*FlagSet) PrintTitle ¶
PrintTitle writes the help title.
func (*FlagSet) PrintUsage ¶
func (f *FlagSet) PrintUsage(w io.Writer, mode FlagPrintMode)
PrintUsage writes usage text in the specified mode.
func (*FlagSet) RequirePositional ¶
RequirePositional enforces a minimum number of positional args.
func (*FlagSet) SetGetEnvFn ¶
SetGetEnvFn replaces how environment variables are looked up.
func (*FlagSet) StringSlice ¶
StringSlice declares a []string flag.
func (*FlagSet) StringSliceVar ¶
func (f *FlagSet) StringSliceVar(ptr *[]string, name string, def []string, usage string) *slice.SliceFlag[string]
StringSliceVar declares a []string flag, binding the flag to a pointer (ptr).
func (*FlagSet) StringVar ¶
func (f *FlagSet) StringVar(ptr *string, name string, def string, usage string) *scalar.ScalarFlag[string]
StringVar declares a string flag, binding the flag to a pointer (ptr).
func (*FlagSet) TCPAddr ¶ added in v0.0.8
func (f *FlagSet) TCPAddr(name string, def *net.TCPAddr, usage string) *scalar.ScalarFlag[*net.TCPAddr]
TCPAddr declares a *net.TCPAddr flag.
func (*FlagSet) TCPAddrSlice ¶ added in v0.0.8
func (f *FlagSet) TCPAddrSlice(name string, def []*net.TCPAddr, usage string) *slice.SliceFlag[*net.TCPAddr]
TCPAddrSlice declares a []*net.TCPAddr flag.
func (*FlagSet) TCPAddrSliceVar ¶ added in v0.0.8
func (f *FlagSet) TCPAddrSliceVar(ptr *[]*net.TCPAddr, name string, def []*net.TCPAddr, usage string) *slice.SliceFlag[*net.TCPAddr]
TCPAddrSliceVar declares a []*net.TCPAddr flag, binding the flag to a pointer (ptr).
func (*FlagSet) TCPAddrVar ¶ added in v0.0.8
func (f *FlagSet) TCPAddrVar(ptr **net.TCPAddr, name string, def *net.TCPAddr, usage string) *scalar.ScalarFlag[*net.TCPAddr]
TCPAddrVar declares a *net.TCPAddr flag, binding the flag to a pointer (ptr).
func (*FlagSet) TimeSliceVar ¶ added in v0.0.8
func (f *FlagSet) TimeSliceVar(ptr *[]time.Time, name string, def []time.Time, usage string) *slice.SliceFlag[time.Time]
TimeSliceVar declares a []time.Time flag, binding the flag to a pointer (ptr).
func (*FlagSet) TimeVar ¶ added in v0.0.8
func (f *FlagSet) TimeVar(ptr *time.Time, name string, def time.Time, usage string) *scalar.ScalarFlag[time.Time]
TimeVar declares a time.Time flag, binding the flag to a pointer (ptr).
func (*FlagSet) URLSliceVar ¶
func (f *FlagSet) URLSliceVar(ptr *[]*url.URL, name string, def []*url.URL, usage string) *slice.SliceFlag[*url.URL]
URLSliceVar declares a []url.URL flag, binding the flag to a pointer (ptr).
type HelpRequested ¶
type HelpRequested = engine.HelpRequested
HelpRequested, VersionRequested, and helpers
type VersionRequested ¶
type VersionRequested = engine.VersionRequested
HelpRequested, VersionRequested, and helpers