flag

package
v0.0.0-...-de7159b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 8, 2025 License: MIT Imports: 6 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrRequired      = errors.New("flag is required")
	ErrValueRequired = errors.New("flag value is required")
)

Functions

func AtFile

func AtFile(f *Flag)

AtFile replaces flag value of the form @file with the file contents.

func CheckFlag

func CheckFlag(f *Flag) error

func Hidden

func Hidden(f *Flag)

func Local

func Local(f *Flag)

func ParseArg

func ParseArg(arg string, args []string, eatnext, optional bool) (key, val string, nextargs []string, err error)

func ParseBool

func ParseBool(f *Flag, arg string, args []string) ([]string, error)

func ParseDuration

func ParseDuration(f *Flag, arg string, args []string) ([]string, error)

func ParseFloat32

func ParseFloat32(f *Flag, arg string, args []string) ([]string, error)

func ParseFloat64

func ParseFloat64(f *Flag, arg string, args []string) ([]string, error)

func ParseInt

func ParseInt(f *Flag, arg string, args []string) ([]string, error)

func ParseInt64

func ParseInt64(f *Flag, arg string, args []string) ([]string, error)

func ParseString

func ParseString(f *Flag, arg string, args []string) ([]string, error)

func ParseStringSlice

func ParseStringSlice(f *Flag, arg string, args []string) ([]string, error)

func ParseUint

func ParseUint(f *Flag, arg string, args []string) ([]string, error)

func ParseUint64

func ParseUint64(f *Flag, arg string, args []string) ([]string, error)

func Required

func Required(f *Flag)

Types

type Action

type Action func(f *Flag, arg string, args []string) ([]string, error)

func ParseFunc

func ParseFunc(p func(string) (interface{}, error), eatnext, optional bool) Action

func ParseSetter

func ParseSetter(v Setter, eatnext, optional bool) Action

type Flag

type Flag struct {
	Name        string
	Group       string
	Usage       string
	Description string
	Help        string

	Action Action  // flag parser
	Check  Visitor // called after all parsing but before command action for all flags

	Hidden   bool // not shown in a help by default
	Required bool // must be set from args or env var
	Local    bool // do not inherited by child

	IsSet bool

	Value interface{}

	CurrentCommand interface{}
}

func New

func New(name string, val interface{}, help string, opts ...Option) (f *Flag)

func (*Flag) Bool

func (f *Flag) Bool() bool

func (*Flag) Duration

func (f *Flag) Duration() time.Duration

func (*Flag) Float32

func (f *Flag) Float32() float32

func (*Flag) Float64

func (f *Flag) Float64() float64

func (*Flag) Int

func (f *Flag) Int() int

func (*Flag) Int64

func (f *Flag) Int64() int64

func (*Flag) MainName

func (f *Flag) MainName() string

func (*Flag) String

func (f *Flag) String() string

func (*Flag) Uint

func (f *Flag) Uint() uint

func (*Flag) Uint64

func (f *Flag) Uint64() uint64

type Option

type Option = func(f *Flag)

func Default

func Default(v interface{}) Option

type Setter

type Setter interface {
	Set(v string) error
}

Setter is subset of stdlib flag.Value interface

type Visitor

type Visitor func(f *Flag) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL