eflag

package
v1.0.8 Latest Latest
Warning

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

Go to latest
Published: Dec 28, 2020 License: MIT, MIT Imports: 6 Imported by: 2

README

eflag

-- import "github.com/cmcoffee/go-snuglib/eflag"

Package 'eflag' is a wrapper around Go's standard flag, it provides enhancments for: Adding Header's and Footer's to Usage. Adding Aliases to flags. (ie.. -d, --debug) Enhances formatting for flag usage. Aside from that everything else is standard from the flag library.

Usage

var (
	ArrayVar      = cmd.ArrayVar
	SetOutput     = cmd.SetOutput
	PrintDefaults = cmd.PrintDefaults
	Alias         = cmd.Alias
	String        = cmd.String
	StringVar     = cmd.StringVar
	Arg           = cmd.Arg
	Args          = cmd.Args
	Bool          = cmd.Bool
	BoolVar       = cmd.BoolVar
	Duration      = cmd.Duration
	DurationVar   = cmd.DurationVar
	Float64       = cmd.Float64
	Float64Var    = cmd.Float64Var
	Int           = cmd.Int
	IntVar        = cmd.IntVar
	Int64         = cmd.Int64
	Int64Var      = cmd.Int64Var
	Lookup        = cmd.Lookup
	NArg          = cmd.NArg
	NFlag         = cmd.NFlag
	Name          = cmd.Name
	Output        = cmd.Output
	Parsed        = cmd.Parsed
	Uint          = cmd.Uint
	UintVar       = cmd.UintVar
	Uint64        = cmd.Uint64
	Uint64Var     = cmd.Uint64Var
	Var           = cmd.Var
	Visit         = cmd.Visit
	VisitAll      = cmd.VisitAll
)
var ErrHelp = flag.ErrHelp
func Footer(input string)
func Header
func Header(input string)
func Parse
func Parse() (err error)
func Usage
func Usage()
type ArrayValue
type ArrayValue struct {
	flag.Value
}
func (ArrayValue) IsArray
func (v ArrayValue) IsArray() bool
type EFlagSet
type EFlagSet struct {
	Header    string // Header presented at start of help.
	Footer    string // Footer presented at end of help.
	AdaptArgs bool   // Reorders flags and arguments so flags come first, non-flag arguments second, unescapes arguments with '\' escape character.

	*flag.FlagSet
}
func NewFlagSet
func NewFlagSet(name string, errorHandling ErrorHandling) (output *EFlagSet)

Load a flag created with flag package.

func (*EFlagSet) Alias
func (s *EFlagSet) Alias(name string, alias string)

Adds an alias to an existing flag, requires a pointer to the variable, the current name and the new alias name.

func (*EFlagSet) Args
func (s *EFlagSet) Args() []string
func (*EFlagSet) Array
func (E *EFlagSet) Array(name string, example string, usage string) *[]string

Array variable, ie.. multiple --string=values

func (*EFlagSet) ArrayVar
func (E *EFlagSet) ArrayVar(p *[]string, name string, example string, usage string)

Array variable, ie.. multiple --string=values

func (*EFlagSet) IsSet
func (s *EFlagSet) IsSet(name string) bool
func (*EFlagSet) Order
func (s *EFlagSet) Order(name ...string)
func (*EFlagSet) Parse
func (s *EFlagSet) Parse(args []string) (err error)

Wraps around the standard flag Parse, adds header and footer.

func (*EFlagSet) PrintDefaults
func (s *EFlagSet) PrintDefaults()

Reads through all flags available and outputs with better formatting.

func (*EFlagSet) ResolveAlias
func (s *EFlagSet) ResolveAlias(name string) string

Resolves Alias name to fullname

func (*EFlagSet) SetOutput
func (s *EFlagSet) SetOutput(output io.Writer)

Change where output will be directed.

func (*EFlagSet) Split
func (E *EFlagSet) Split(name string, example string, usage string) *[]string

Array variable, ie.. multiple --string=values

func (*EFlagSet) SplitVar
func (E *EFlagSet) SplitVar(p *[]string, name string, example string, usage string)

Array variable, ie.. multiple --string=values

func (*EFlagSet) String
func (s *EFlagSet) String(name string, value string, usage string) *string
func (*EFlagSet) StringVar
func (s *EFlagSet) StringVar(p *string, name string, value string, usage string)
type ErrorHandling
type ErrorHandling int

Duplicate flag's ErrorHandling.

const (
	ContinueOnError ErrorHandling = iota
	ExitOnError
	PanicOnError
	ReturnErrorOnly
)
type Flag
type Flag = flag.Flag

Documentation

Overview

Package 'eflag' is a wrapper around Go's standard flag, it provides enhancments for: Adding Header's and Footer's to Usage. Adding Aliases to flags. (ie.. -d, --debug) Enhances formatting for flag usage. Aside from that everything else is standard from the flag library.

Index

Constants

This section is empty.

Variables

View Source
var (
	SetOutput     = cmd.SetOutput
	PrintDefaults = cmd.PrintDefaults
	Alias         = cmd.Alias
	String        = cmd.String
	StringVar     = cmd.StringVar
	Arg           = cmd.Arg
	Args          = cmd.Args
	Bool          = cmd.Bool
	BoolVar       = cmd.BoolVar
	Duration      = cmd.Duration
	DurationVar   = cmd.DurationVar
	Float64       = cmd.Float64
	Float64Var    = cmd.Float64Var
	Int           = cmd.Int
	IntVar        = cmd.IntVar
	Int64         = cmd.Int64
	Int64Var      = cmd.Int64Var
	Lookup        = cmd.Lookup
	NArg          = cmd.NArg
	NFlag         = cmd.NFlag
	Name          = cmd.Name
	Output        = cmd.Output
	Parsed        = cmd.Parsed
	Uint          = cmd.Uint
	UintVar       = cmd.UintVar
	Uint64        = cmd.Uint64
	Uint64Var     = cmd.Uint64Var
	Var           = cmd.Var
	Visit         = cmd.Visit
	VisitAll      = cmd.VisitAll
)
View Source
var ErrHelp = flag.ErrHelp

Functions

func Footer(input string)
func Header(input string)

func Parse

func Parse() (err error)

func Usage

func Usage()

Types

type ArrayValue added in v1.0.2

type ArrayValue struct {
	flag.Value
	// contains filtered or unexported fields
}

func (ArrayValue) IsArray added in v1.0.2

func (v ArrayValue) IsArray() bool

type EFlagSet

type EFlagSet struct {
	Header    string // Header presented at start of help.
	Footer    string // Footer presented at end of help.
	AdaptArgs bool   // Reorders flags and arguments so flags come first, non-flag arguments second, unescapes arguments with '\' escape character.

	*flag.FlagSet
	// contains filtered or unexported fields
}

func NewFlagSet

func NewFlagSet(name string, errorHandling ErrorHandling) (output *EFlagSet)

Load a flag created with flag package.

func (*EFlagSet) Alias

func (s *EFlagSet) Alias(name string, alias string)

Adds an alias to an existing flag, requires a pointer to the variable, the current name and the new alias name.

func (*EFlagSet) Args added in v1.0.2

func (s *EFlagSet) Args() []string

func (*EFlagSet) IsSet

func (s *EFlagSet) IsSet(name string) bool

func (*EFlagSet) Multi added in v1.0.8

func (E *EFlagSet) Multi(name string, example string, usage string) *[]string

Array variable, ie.. multiple --string=values

func (*EFlagSet) MultiVar added in v1.0.8

func (E *EFlagSet) MultiVar(p *[]string, name string, example string, usage string)

Array variable, ie.. multiple --string=values

func (*EFlagSet) Order

func (s *EFlagSet) Order(name ...string)

func (*EFlagSet) Parse

func (s *EFlagSet) Parse(args []string) (err error)

Wraps around the standard flag Parse, adds header and footer.

func (*EFlagSet) PrintDefaults

func (s *EFlagSet) PrintDefaults()

Reads through all flags available and outputs with better formatting.

func (*EFlagSet) ResolveAlias added in v1.0.2

func (s *EFlagSet) ResolveAlias(name string) string

Resolves Alias name to fullname

func (*EFlagSet) SetOutput

func (s *EFlagSet) SetOutput(output io.Writer)

Change where output will be directed.

func (*EFlagSet) String

func (s *EFlagSet) String(name string, value string, usage string) *string

func (*EFlagSet) StringVar

func (s *EFlagSet) StringVar(p *string, name string, value string, usage string)

type ErrorHandling

type ErrorHandling int

Duplicate flag's ErrorHandling.

const (
	ContinueOnError ErrorHandling = iota
	ExitOnError
	PanicOnError
	ReturnErrorOnly
)

type Flag added in v1.0.2

type Flag = flag.Flag

Jump to

Keyboard shortcuts

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