Documentation
ΒΆ
Overview ΒΆ
Package tinyflags provides a high-level API for defining and parsing CLI flags with support for dynamic groups, custom types, and rich usage output.
Index ΒΆ
- Constants
- Variables
- func GetDynamic[T any](group *dynamic.Group, id, flag string) (T, error)
- func GetOrDefaultDynamic[T any](group *dynamic.Group, id, flag string) T
- func MustGetDynamic[T any](group *dynamic.Group, id, flag string) T
- type DynamicGroup
- type ErrorHandling
- type FlagPrintMode
- type FlagSet
- func (f *FlagSet) AddAllOrNoneGroup(name string, g *core.AllOrNoneGroup)
- func (f *FlagSet) AddOneOfGroup(name string, g *core.OneOfGroupGroup)
- func (f *FlagSet) AllOrNoneGroup() []*core.AllOrNoneGroup
- func (f *FlagSet) Arg(i int) (string, bool)
- func (f *FlagSet) Args() []string
- func (f *FlagSet) AttachToAllOrNoneGroup(flag *core.BaseFlag, group string)
- func (f *FlagSet) AttachToOneOfGroup(flag *core.BaseFlag, group 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 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 string, def int, usage string) *scalar.CounterFlag
- func (f *FlagSet) CounterVar(ptr *int, name string, def int, usage string) *scalar.CounterFlag
- func (f *FlagSet) DefaultDelimiter() string
- func (f *FlagSet) DescIndent() int
- func (f *FlagSet) DescWidth() int
- func (f *FlagSet) Description(s string)
- 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) DynamicAutoUsageColumn(padding int) int
- func (f *FlagSet) DynamicGroup(name string) *dynamic.Group
- func (f *FlagSet) DynamicGroups() []*dynamic.Group
- func (f *FlagSet) DynamicUsageColumn() int
- func (f *FlagSet) DynamicUsageIndent() int
- func (f *FlagSet) DynamicUsageNote() string
- func (f *FlagSet) DynamicUsageWidth() int
- func (f *FlagSet) EnvKeyForFlag(name string) string
- 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) GetAllOrNoneGroup(name string) *core.AllOrNoneGroup
- func (f *FlagSet) GetOneOfGroup(name string) *core.OneOfGroupGroup
- func (f *FlagSet) Globaldelimiter(s string)
- func (f *FlagSet) HelpText(s string)
- func (f *FlagSet) HideEnvs()
- 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) LookupFlag(name string) *core.BaseFlag
- func (f *FlagSet) Name() string
- func (f *FlagSet) NewReplacerEnvKeyFunc(replacer *strings.Replacer, upper bool) engine.EnvKeyFunc
- func (f *FlagSet) Note(s string)
- func (f *FlagSet) NoteIndent() int
- func (f *FlagSet) NoteWidth() int
- func (f *FlagSet) OneOfGroups() []*core.OneOfGroupGroup
- func (f *FlagSet) Output() io.Writer
- func (f *FlagSet) Parse(args []string) error
- func (f *FlagSet) PrintAuthors(w io.Writer)
- func (f *FlagSet) PrintDescription(w io.Writer, indent, width int)
- func (f *FlagSet) PrintDynamicDefaults(w io.Writer, indent, col, width int)
- func (f *FlagSet) PrintNotes(w io.Writer, indent, width int)
- func (f *FlagSet) PrintStaticDefaults(w io.Writer, indent, col, 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) SetDescIndent(n int)
- func (f *FlagSet) SetDescWidth(max int)
- func (f *FlagSet) SetDynamicUsageColumn(col int)
- func (f *FlagSet) SetDynamicUsageIndent(n int)
- func (f *FlagSet) SetDynamicUsageNote(s string)
- func (f *FlagSet) SetDynamicUsageWidth(max int)
- func (f *FlagSet) SetEnvKeyFunc(fn engine.EnvKeyFunc)
- func (f *FlagSet) SetGetEnvFn(fn func(string) string)
- func (f *FlagSet) SetNoteIndent(n int)
- func (f *FlagSet) SetNoteWidth(max int)
- func (f *FlagSet) SetOutput(w io.Writer)
- func (f *FlagSet) SetPositionalFinalize(fn func(string) string)
- func (f *FlagSet) SetPositionalValidate(fn func(string) error)
- func (f *FlagSet) SetStaticUsageColumn(col int)
- func (f *FlagSet) SetStaticUsageIndent(n int)
- func (f *FlagSet) SetStaticUsageNote(s string)
- func (f *FlagSet) SetStaticUsageWidth(maxWidth int)
- func (f *FlagSet) SortedFlags()
- func (f *FlagSet) SortedGroups()
- func (f *FlagSet) StaticAutoUsageColumn(padding int) int
- func (f *FlagSet) StaticUsageColumn() int
- func (f *FlagSet) StaticUsageIndent() int
- func (f *FlagSet) StaticUsageNote() string
- func (f *FlagSet) StaticUsageWidth() int
- 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)
- func (f *FlagSet) VersionText(s string)
- type HelpRequested
- type StaticFlag
- type VersionRequested
Constants ΒΆ
const ( ContinueOnError = engine.ContinueOnError // Continue and return error ExitOnError = engine.ExitOnError // Exit with error message PanicOnError = engine.PanicOnError // Panic on error )
const ( PrintNone = engine.PrintNone // Omits usage line entirely PrintFlags = engine.PrintFlags // Prints: [flags] PrintShort = engine.PrintShort // Prints: -v PrintLong = engine.PrintLong // Prints: --verbose PrintBoth = engine.PrintBoth // Prints: -v|--verbose )
Variables ΒΆ
var ( IsHelpRequested = engine.IsHelpRequested IsVersionRequested = engine.IsVersionRequested RequestHelp = engine.RequestHelp RequestVersion = engine.RequestVersion )
Functions ΒΆ
func GetDynamic ΒΆ added in v0.0.10
GetDynamic retrieves the value for a dynamic flag by group, id, and field name.
func GetOrDefaultDynamic ΒΆ added in v0.0.14
GetOrDefaultDynamic returns the value for a dynamic flag or its default.
Types ΒΆ
type DynamicGroup ΒΆ added in v0.0.23
Exported types for advanced access.
type ErrorHandling ΒΆ
type ErrorHandling = engine.ErrorHandling
ErrorHandling defines how parsing errors are handled.
type FlagPrintMode ΒΆ
type FlagPrintMode = engine.FlagPrintMode
FlagPrintMode controls how the usage line is rendered.
type FlagSet ΒΆ
type FlagSet struct { Usage func() // Optional custom usage function // contains filtered or unexported fields }
FlagSet is the user-facing flag parser and usage configurator.
func NewFlagSet ΒΆ
func NewFlagSet(name string, handling ErrorHandling) *FlagSet
NewFlagSet creates a new flag set with the given name and error handling mode.
func (*FlagSet) AddAllOrNoneGroup ΒΆ added in v0.0.36
func (f *FlagSet) AddAllOrNoneGroup(name string, g *core.AllOrNoneGroup)
AddAllOrNoneGroup adds a AllOrNoneGroup group.
func (*FlagSet) AddOneOfGroup ΒΆ added in v0.0.36
func (f *FlagSet) AddOneOfGroup(name string, g *core.OneOfGroupGroup)
AddOneOfGroup adds a AddOneOfGroup group.
func (*FlagSet) AllOrNoneGroup ΒΆ added in v0.0.36
func (f *FlagSet) AllOrNoneGroup() []*core.AllOrNoneGroup
AllOrNoneGroup returns all registered AllOrNoneGroup group.
func (*FlagSet) AttachToAllOrNoneGroup ΒΆ added in v0.0.36
AttachToAllOrNoneGroup attaches a flag to a AllOrNoneGroup group.
func (*FlagSet) AttachToOneOfGroup ΒΆ added in v0.0.36
AttachToOneOfGroup attaches a static flag to a OneOfGroup group.
func (*FlagSet) Bool ΒΆ
Bool defines a bool flag. If Strict() is enabled, it must be set explicitly (--flag=true/false).
func (*FlagSet) BoolVar ΒΆ
BoolVar defines a bool flag and binds it to the given pointer. If Strict() is enabled, it must be set explicitly (--flag=true/false).
func (*FlagSet) Bytes ΒΆ added in v0.0.8
Bytes defines a uint64 flag that parses sizes (e.g., "10MB") and returns its handle.
func (*FlagSet) BytesSlice ΒΆ added in v0.0.8
BytesSlice defines a []uint64 βbytesβ flag and returns its handle.
func (*FlagSet) BytesSliceVar ΒΆ added in v0.0.8
func (f *FlagSet) BytesSliceVar(ptr *[]uint64, name string, def []uint64, usage string) *slice.SliceFlag[uint64]
BytesSliceVar defines a []uint64 flag that parses human-readable sizes and binds it to the given pointer.
func (*FlagSet) BytesVar ΒΆ added in v0.0.8
func (f *FlagSet) BytesVar(ptr *uint64, name string, def uint64, usage string) *scalar.ScalarFlag[uint64]
BytesVar defines a uint64 flag with byte parsing and binds it to the given pointer.
func (*FlagSet) Counter ΒΆ added in v0.0.8
Counter defines a counter flag that increments with each occurrence.
func (*FlagSet) CounterVar ΒΆ added in v0.0.8
CounterVar defines a counter flag and binds it to the given pointer.
func (*FlagSet) DefaultDelimiter ΒΆ added in v0.0.8
DefaultDelimiter returns the delimiter used for slice flags.
func (*FlagSet) DescIndent ΒΆ added in v0.0.23
DescIndent returns the current indent used for the description block.
func (*FlagSet) DescWidth ΒΆ added in v0.0.23
DescWidth returns the wrapping width for the description block.
func (*FlagSet) Description ΒΆ
Description sets the top description section of the help output.
func (*FlagSet) DisableHelp ΒΆ
func (f *FlagSet) DisableHelp()
DisableHelp disables the automatic --help flag.
func (*FlagSet) DisableVersion ΒΆ
func (f *FlagSet) DisableVersion()
DisableVersion disables the automatic --version flag.
func (*FlagSet) Duration ΒΆ
func (f *FlagSet) Duration(name string, def time.Duration, usage string) *scalar.ScalarFlag[time.Duration]
Duration defines a time.Duration flag and returns its handle.
func (*FlagSet) DurationSlice ΒΆ
func (f *FlagSet) DurationSlice(name string, def []time.Duration, usage string) *slice.SliceFlag[time.Duration]
DurationSlice defines a []time.Duration flag and returns its handle.
func (*FlagSet) DurationSliceVar ΒΆ
func (f *FlagSet) DurationSliceVar(ptr *[]time.Duration, name string, def []time.Duration, usage string) *slice.SliceFlag[time.Duration]
DurationSliceVar defines a []time.Duration flag and binds it to the given pointer.
func (*FlagSet) DurationVar ΒΆ
func (f *FlagSet) DurationVar(ptr *time.Duration, name string, def time.Duration, usage string) *scalar.ScalarFlag[time.Duration]
DurationVar defines a time.Duration flag and binds it to the given pointer.
func (*FlagSet) DynamicAutoUsageColumn ΒΆ added in v0.0.23
DynamicAutoUsageColumn computes a good usage column for dynamic flags.
func (*FlagSet) DynamicGroup ΒΆ added in v0.0.8
DynamicGroup registers or retrieves a dynamic group by name.
func (*FlagSet) DynamicGroups ΒΆ added in v0.0.9
DynamicGroups returns all dynamic groups in registration order.
func (*FlagSet) DynamicUsageColumn ΒΆ added in v0.0.25
DynamicUsageColumn returns the description column for dynamic flags.
func (*FlagSet) DynamicUsageIndent ΒΆ added in v0.0.25
DynamicUsageIndent returns the dynamic flag usage indent.
func (*FlagSet) DynamicUsageNote ΒΆ added in v0.0.23
DynamicUsageNote returns the dynamic flag section note.
func (*FlagSet) DynamicUsageWidth ΒΆ added in v0.0.25
DynamicUsageWidth returns the wrapping width for dynamic flag descriptions.
func (*FlagSet) EnvKeyForFlag ΒΆ added in v0.0.45
EnvKeyForFlag derives the env key for a flag.
func (*FlagSet) FileSliceVar ΒΆ
func (f *FlagSet) FileSliceVar(ptr *[]*os.File, name string, def []*os.File, usage string) *slice.SliceFlag[*os.File]
FileSliceVar defines a []*os.File flag and binds it to the given pointer.
func (*FlagSet) FileVar ΒΆ
func (f *FlagSet) FileVar(ptr **os.File, name string, def *os.File, usage string) *scalar.ScalarFlag[*os.File]
FileVar defines an *os.File flag and binds it to the given pointer.
func (*FlagSet) Float32Slice ΒΆ
Float32Slice defines a []float32 flag and returns its handle.
func (*FlagSet) Float32SliceVar ΒΆ
func (f *FlagSet) Float32SliceVar(ptr *[]float32, name string, def []float32, usage string) *slice.SliceFlag[float32]
Float32SliceVar defines a []float32 flag and binds it to the given pointer.
func (*FlagSet) Float32Var ΒΆ
func (f *FlagSet) Float32Var(ptr *float32, name string, def float32, usage string) *scalar.ScalarFlag[float32]
Float32Var defines a float32 flag and binds it to the given pointer.
func (*FlagSet) Float64Slice ΒΆ
Float64Slice defines a []float64 flag and returns its handle.
func (*FlagSet) Float64SliceVar ΒΆ
func (f *FlagSet) Float64SliceVar(ptr *[]float64, name string, def []float64, usage string) *slice.SliceFlag[float64]
Float64SliceVar defines a []float64 flag and binds it to the given pointer.
func (*FlagSet) Float64Var ΒΆ
func (f *FlagSet) Float64Var(ptr *float64, name string, def float64, usage string) *scalar.ScalarFlag[float64]
Float64Var defines a float64 flag and binds it to the given pointer.
func (*FlagSet) GetAllOrNoneGroup ΒΆ added in v0.0.36
func (f *FlagSet) GetAllOrNoneGroup(name string) *core.AllOrNoneGroup
GetAllOrNoneGroup retrieves or creates a named AllOrNoneGroup group.
func (*FlagSet) GetOneOfGroup ΒΆ added in v0.0.36
func (f *FlagSet) GetOneOfGroup(name string) *core.OneOfGroupGroup
GetOneOfGroup retrieves or creates a named OneOfGroup group.
func (*FlagSet) Globaldelimiter ΒΆ
Globaldelimiter sets the delimiter used for all slice flags.
func (*FlagSet) HideEnvs ΒΆ added in v0.0.23
func (f *FlagSet) HideEnvs()
HideEnvs disables all env-var annotations in help output.
func (*FlagSet) IPMaskSlice ΒΆ
func (f *FlagSet) IPMaskSlice(name string, def []net.IPMask, usage string) *slice.SliceFlag[net.IPMask]
IPMaskSlice defines a []net.IPMask flag and returns its handle.
func (*FlagSet) IPMaskSliceVar ΒΆ
func (f *FlagSet) IPMaskSliceVar(ptr *[]net.IPMask, name string, def []net.IPMask, usage string) *slice.SliceFlag[net.IPMask]
IPMaskSliceVar defines a []net.IPMask flag and binds it to the given pointer.
func (*FlagSet) IPSliceVar ΒΆ
func (f *FlagSet) IPSliceVar(ptr *[]net.IP, name string, def []net.IP, usage string) *slice.SliceFlag[net.IP]
IPSliceVar defines a []net.IP flag and binds it to the given pointer.
func (*FlagSet) IPVar ΒΆ
func (f *FlagSet) IPVar(ptr *net.IP, name string, def net.IP, usage string) *scalar.ScalarFlag[net.IP]
IPVar defines a net.IP flag and binds it to the given pointer.
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 defines a net.IPMask flag and binds it to the given pointer.
func (*FlagSet) IgnoreInvalidEnv ΒΆ
IgnoreInvalidEnv disables errors for unrecognized environment values.
func (*FlagSet) IntSliceVar ΒΆ
func (f *FlagSet) IntSliceVar(ptr *[]int, name string, def []int, usage string) *slice.SliceFlag[int]
IntSliceVar defines a []int flag and binds it to the given pointer.
func (*FlagSet) LookupFlag ΒΆ added in v0.0.19
LookupFlag retrieves a static flag by name.
func (*FlagSet) NewReplacerEnvKeyFunc ΒΆ added in v0.0.45
NewReplacerEnvKeyFunc builds an EnvKeyFunc that: - returns "" when prefix is empty - applies the given replacer to the flag name - joins prefix + "_" + transformed name - upper-cases the result (if upper is true)
func (*FlagSet) NoteIndent ΒΆ added in v0.0.23
NoteIndent returns the note section indentation.
func (*FlagSet) OneOfGroups ΒΆ added in v0.0.36
func (f *FlagSet) OneOfGroups() []*core.OneOfGroupGroup
OneOfGroups returns all registered OneOfGroups groups.
func (*FlagSet) PrintAuthors ΒΆ added in v0.0.8
PrintAuthors renders the author line if set.
func (*FlagSet) PrintDescription ΒΆ
PrintDescription renders the full description block.
func (*FlagSet) PrintDynamicDefaults ΒΆ added in v0.0.23
PrintDynamicDefaults renders all dynamic flag usage lines.
func (*FlagSet) PrintNotes ΒΆ
PrintNotes renders the notes section, if configured.
func (*FlagSet) PrintStaticDefaults ΒΆ added in v0.0.23
PrintStaticDefaults renders all static flag usage lines.
func (*FlagSet) PrintTitle ΒΆ
PrintTitle renders the title above all help content.
func (*FlagSet) PrintUsage ΒΆ
func (f *FlagSet) PrintUsage(w io.Writer, mode FlagPrintMode)
PrintUsage renders the top usage line.
func (*FlagSet) RequirePositional ΒΆ
RequirePositional sets how many positional arguments must be present.
func (*FlagSet) SetDescIndent ΒΆ added in v0.0.23
SetDescIndent sets the indentation for the description block.
func (*FlagSet) SetDescWidth ΒΆ added in v0.0.23
SetDescWidth sets the wrapping width for the description block.
func (*FlagSet) SetDynamicUsageColumn ΒΆ added in v0.0.25
SetDynamicUsageColumn sets the column at which dynamic flag descriptions begin.
func (*FlagSet) SetDynamicUsageIndent ΒΆ added in v0.0.25
SetDynamicUsageIndent sets the indentation for dynamic flag usage lines.
func (*FlagSet) SetDynamicUsageNote ΒΆ added in v0.0.23
SetDynamicUsageNote adds a note after the dynamic flag block.
func (*FlagSet) SetDynamicUsageWidth ΒΆ added in v0.0.25
SetDynamicUsageWidth sets the max wrapping width for dynamic flags.
func (*FlagSet) SetEnvKeyFunc ΒΆ added in v0.0.45
func (f *FlagSet) SetEnvKeyFunc(fn engine.EnvKeyFunc)
SetEnvKeyFunc sets a function to derive env keys from prefix+flag name.
func (*FlagSet) SetGetEnvFn ΒΆ
SetGetEnvFn overrides the function used to look up environment variables.
func (*FlagSet) SetNoteIndent ΒΆ added in v0.0.23
SetNoteIndent sets the indentation for help notes.
func (*FlagSet) SetNoteWidth ΒΆ added in v0.0.23
SetNoteWidth sets the wrapping width for help notes.
func (*FlagSet) SetPositionalFinalize ΒΆ added in v0.0.49
SetPositionalFinalize sets a function to finalize positional arguments.
func (*FlagSet) SetPositionalValidate ΒΆ added in v0.0.49
SetPositionalValidate sets a function to validate positional arguments.
func (*FlagSet) SetStaticUsageColumn ΒΆ added in v0.0.25
SetStaticUsageColumn sets the column at which static flag descriptions begin.
func (*FlagSet) SetStaticUsageIndent ΒΆ added in v0.0.25
SetStaticUsageIndent sets the indentation for static flag usage lines.
func (*FlagSet) SetStaticUsageNote ΒΆ added in v0.0.23
SetStaticUsageNote adds a note after the static flag block.
func (*FlagSet) SetStaticUsageWidth ΒΆ added in v0.0.25
SetStaticUsageWidth sets the max wrapping width for static flag descriptions.
func (*FlagSet) SortedFlags ΒΆ added in v0.0.20
func (f *FlagSet) SortedFlags()
SortedFlags enables sorted help output for static flags.
func (*FlagSet) SortedGroups ΒΆ added in v0.0.20
func (f *FlagSet) SortedGroups()
SortedGroups enables sorted help output for dynamic groups.
func (*FlagSet) StaticAutoUsageColumn ΒΆ added in v0.0.23
StaticAutoUsageColumn computes a good usage column for static flags.
func (*FlagSet) StaticUsageColumn ΒΆ added in v0.0.25
StaticUsageColumn returns the description column for static flags.
func (*FlagSet) StaticUsageIndent ΒΆ added in v0.0.25
StaticUsageIndent returns the static usage indentation.
func (*FlagSet) StaticUsageNote ΒΆ added in v0.0.23
StaticUsageNote returns the static flag section note.
func (*FlagSet) StaticUsageWidth ΒΆ added in v0.0.25
StaticUsageWidth returns the wrapping width for static flag descriptions.
func (*FlagSet) StringSlice ΒΆ
StringSlice defines a []string flag and returns its handle.
func (*FlagSet) StringSliceVar ΒΆ
func (f *FlagSet) StringSliceVar(ptr *[]string, name string, def []string, usage string) *slice.SliceFlag[string]
StringSliceVar defines a []string flag and binds it to the given pointer.
func (*FlagSet) StringVar ΒΆ
func (f *FlagSet) StringVar(ptr *string, name string, def string, usage string) *scalar.ScalarFlag[string]
StringVar defines a string flag and binds it to the given pointer.
func (*FlagSet) TCPAddr ΒΆ added in v0.0.8
func (f *FlagSet) TCPAddr(name string, def *net.TCPAddr, usage string) *scalar.ScalarFlag[*net.TCPAddr]
TCPAddr defines a *net.TCPAddr flag and returns its handle.
func (*FlagSet) TCPAddrSlice ΒΆ added in v0.0.8
func (f *FlagSet) TCPAddrSlice(name string, def []*net.TCPAddr, usage string) *slice.SliceFlag[*net.TCPAddr]
TCPAddrSlice defines a []*net.TCPAddr flag and returns its handle.
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 defines a []*net.TCPAddr flag and binds it to the given pointer.
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 defines a *net.TCPAddr flag and binds it to the given pointer.
func (*FlagSet) TimeSlice ΒΆ added in v0.0.8
TimeSlice defines a []time.Time flag and returns its handle.
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 defines a []time.Time flag and binds it to the given pointer.
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 defines a time.Time flag and binds it to the given pointer.
func (*FlagSet) URLSliceVar ΒΆ
func (f *FlagSet) URLSliceVar(ptr *[]*url.URL, name string, def []*url.URL, usage string) *slice.SliceFlag[*url.URL]
URLSliceVar defines a []*url.URL flag and binds it to the given pointer.
func (*FlagSet) URLVar ΒΆ
func (f *FlagSet) URLVar(ptr **url.URL, name string, def *url.URL, usage string) *scalar.ScalarFlag[*url.URL]
URLVar defines a *url.URL flag and binds it to the given pointer.
func (*FlagSet) VersionText ΒΆ added in v0.0.45
VersionText sets the --version text.
type HelpRequested ΒΆ
type HelpRequested = engine.HelpRequested
Common user-triggered exit conditions.
type StaticFlag ΒΆ added in v0.0.23
Exported types for advanced access.
type VersionRequested ΒΆ
type VersionRequested = engine.VersionRequested
Common user-triggered exit conditions.