altsrc

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Jun 25, 2024 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApplyInputSourceValues

func ApplyInputSourceValues(context *cli.Context, inputSourceContext InputSourceContext, flags []cli.Flag) error

ApplyInputSourceValues iterates over all provided flags and executes ApplyInputSourceValue on flags implementing the FlagInputSourceExtension interface to initialize these flags to an alternate input source.

func InitInputSource

func InitInputSource(flags []cli.Flag, createInputSource func() (InputSourceContext, error)) cli.BeforeFunc

InitInputSource is used to to setup an InputSourceContext on a cli.Command Before method. It will create a new input source based on the func provided. If there is no error it will then apply the new input source to any flags that are supported by the input source

func InitInputSourceWithContext

func InitInputSourceWithContext(flags []cli.Flag, createInputSource func(context *cli.Context) (InputSourceContext, error)) cli.BeforeFunc

InitInputSourceWithContext is used to to setup an InputSourceContext on a cli.Command Before method. It will create a new input source based on the func provided with potentially using existing cli.Context values to initialize itself. If there is no error it will then apply the new input source to any flags that are supported by the input source

func NewJSONSourceFromFlagFunc

func NewJSONSourceFromFlagFunc(flag string) func(c *cli.Context) (InputSourceContext, error)

NewJSONSourceFromFlagFunc returns a func that takes a cli.Context and returns an InputSourceContext suitable for retrieving config variables from a file containing JSON data with the file name defined by the given flag.

func NewTomlSourceFromFlagFunc

func NewTomlSourceFromFlagFunc(flagFileName string) func(context *cli.Context) (InputSourceContext, error)

NewTomlSourceFromFlagFunc creates a new TOML InputSourceContext from a provided flag name and source context.

func NewYamlSourceFromFlagFunc

func NewYamlSourceFromFlagFunc(flagFileName string) func(context *cli.Context) (InputSourceContext, error)

NewYamlSourceFromFlagFunc creates a new Yaml InputSourceContext from a provided flag name and source context.

Types

type BoolFlag

type BoolFlag struct {
	cli.BoolFlag
	// contains filtered or unexported fields
}

BoolFlag is the flag type that wraps cli.BoolFlag to allow for other values to be specified

func NewBoolFlag

func NewBoolFlag(fl cli.BoolFlag) *BoolFlag

NewBoolFlag creates a new BoolFlag

func (*BoolFlag) Apply

func (f *BoolFlag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped BoolFlag.Apply

func (*BoolFlag) ApplyInputSourceValue

func (f *BoolFlag) ApplyInputSourceValue(context *cli.Context, isc InputSourceContext) error

ApplyInputSourceValue applies a Bool value to the flagSet if required

func (*BoolFlag) ApplyWithError

func (f *BoolFlag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped BoolFlag.ApplyWithError

type BoolTFlag

type BoolTFlag struct {
	cli.BoolTFlag
	// contains filtered or unexported fields
}

BoolTFlag is the flag type that wraps cli.BoolTFlag to allow for other values to be specified

func NewBoolTFlag

func NewBoolTFlag(fl cli.BoolTFlag) *BoolTFlag

NewBoolTFlag creates a new BoolTFlag

func (*BoolTFlag) Apply

func (f *BoolTFlag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped BoolTFlag.Apply

func (*BoolTFlag) ApplyInputSourceValue

func (f *BoolTFlag) ApplyInputSourceValue(context *cli.Context, isc InputSourceContext) error

ApplyInputSourceValue applies a BoolT value to the flagSet if required

func (*BoolTFlag) ApplyWithError

func (f *BoolTFlag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped BoolTFlag.ApplyWithError

type DurationFlag

type DurationFlag struct {
	cli.DurationFlag
	// contains filtered or unexported fields
}

DurationFlag is the flag type that wraps cli.DurationFlag to allow for other values to be specified

func NewDurationFlag

func NewDurationFlag(fl cli.DurationFlag) *DurationFlag

NewDurationFlag creates a new DurationFlag

func (*DurationFlag) Apply

func (f *DurationFlag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped DurationFlag.Apply

func (*DurationFlag) ApplyInputSourceValue

func (f *DurationFlag) ApplyInputSourceValue(context *cli.Context, isc InputSourceContext) error

ApplyInputSourceValue applies a Duration value to the flagSet if required

func (*DurationFlag) ApplyWithError

func (f *DurationFlag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped DurationFlag.ApplyWithError

type FlagInputSourceExtension

type FlagInputSourceExtension interface {
	cli.Flag
	ApplyInputSourceValue(context *cli.Context, isc InputSourceContext) error
}

FlagInputSourceExtension is an extension interface of cli.Flag that allows a value to be set on the existing parsed flags.

type Float64Flag

type Float64Flag struct {
	cli.Float64Flag
	// contains filtered or unexported fields
}

Float64Flag is the flag type that wraps cli.Float64Flag to allow for other values to be specified

func NewFloat64Flag

func NewFloat64Flag(fl cli.Float64Flag) *Float64Flag

NewFloat64Flag creates a new Float64Flag

func (*Float64Flag) Apply

func (f *Float64Flag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped Float64Flag.Apply

func (*Float64Flag) ApplyInputSourceValue

func (f *Float64Flag) ApplyInputSourceValue(context *cli.Context, isc InputSourceContext) error

ApplyInputSourceValue applies a Float64 value to the flagSet if required

func (*Float64Flag) ApplyWithError

func (f *Float64Flag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped Float64Flag.ApplyWithError

type GenericFlag

type GenericFlag struct {
	cli.GenericFlag
	// contains filtered or unexported fields
}

GenericFlag is the flag type that wraps cli.GenericFlag to allow for other values to be specified

func NewGenericFlag

func NewGenericFlag(fl cli.GenericFlag) *GenericFlag

NewGenericFlag creates a new GenericFlag

func (*GenericFlag) Apply

func (f *GenericFlag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped GenericFlag.Apply

func (*GenericFlag) ApplyInputSourceValue

func (f *GenericFlag) ApplyInputSourceValue(context *cli.Context, isc InputSourceContext) error

ApplyInputSourceValue applies a generic value to the flagSet if required

func (*GenericFlag) ApplyWithError

func (f *GenericFlag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped GenericFlag.ApplyWithError

type InputSourceContext

type InputSourceContext interface {
	Int(name string) (int, error)
	Duration(name string) (time.Duration, error)
	Float64(name string) (float64, error)
	String(name string) (string, error)
	StringSlice(name string) ([]string, error)
	IntSlice(name string) ([]int, error)
	Generic(name string) (cli.Generic, error)
	Bool(name string) (bool, error)
	BoolT(name string) (bool, error)
}

InputSourceContext is an interface used to allow other input sources to be implemented as needed.

func NewJSONSource

func NewJSONSource(data []byte) (InputSourceContext, error)

NewJSONSource returns an InputSourceContext suitable for retrieving config variables from raw JSON data.

func NewJSONSourceFromFile

func NewJSONSourceFromFile(f string) (InputSourceContext, error)

NewJSONSourceFromFile returns an InputSourceContext suitable for retrieving config variables from a file (or url) containing JSON data.

func NewJSONSourceFromReader

func NewJSONSourceFromReader(r io.Reader) (InputSourceContext, error)

NewJSONSourceFromReader returns an InputSourceContext suitable for retrieving config variables from an io.Reader that returns JSON data.

func NewTomlSourceFromFile

func NewTomlSourceFromFile(file string) (InputSourceContext, error)

NewTomlSourceFromFile creates a new TOML InputSourceContext from a filepath.

func NewYamlSourceFromFile

func NewYamlSourceFromFile(file string) (InputSourceContext, error)

NewYamlSourceFromFile creates a new Yaml InputSourceContext from a filepath.

type Int64Flag

type Int64Flag struct {
	cli.Int64Flag
	// contains filtered or unexported fields
}

Int64Flag is the flag type that wraps cli.Int64Flag to allow for other values to be specified

func NewInt64Flag

func NewInt64Flag(fl cli.Int64Flag) *Int64Flag

NewInt64Flag creates a new Int64Flag

func (*Int64Flag) Apply

func (f *Int64Flag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped Int64Flag.Apply

func (*Int64Flag) ApplyWithError

func (f *Int64Flag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped Int64Flag.ApplyWithError

type Int64SliceFlag

type Int64SliceFlag struct {
	cli.Int64SliceFlag
	// contains filtered or unexported fields
}

Int64SliceFlag is the flag type that wraps cli.Int64SliceFlag to allow for other values to be specified

func NewInt64SliceFlag

func NewInt64SliceFlag(fl cli.Int64SliceFlag) *Int64SliceFlag

NewInt64SliceFlag creates a new Int64SliceFlag

func (*Int64SliceFlag) Apply

func (f *Int64SliceFlag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped Int64SliceFlag.Apply

func (*Int64SliceFlag) ApplyWithError

func (f *Int64SliceFlag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped Int64SliceFlag.ApplyWithError

type IntFlag

type IntFlag struct {
	cli.IntFlag
	// contains filtered or unexported fields
}

IntFlag is the flag type that wraps cli.IntFlag to allow for other values to be specified

func NewIntFlag

func NewIntFlag(fl cli.IntFlag) *IntFlag

NewIntFlag creates a new IntFlag

func (*IntFlag) Apply

func (f *IntFlag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped IntFlag.Apply

func (*IntFlag) ApplyInputSourceValue

func (f *IntFlag) ApplyInputSourceValue(context *cli.Context, isc InputSourceContext) error

ApplyInputSourceValue applies a int value to the flagSet if required

func (*IntFlag) ApplyWithError

func (f *IntFlag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped IntFlag.ApplyWithError

type IntSliceFlag

type IntSliceFlag struct {
	cli.IntSliceFlag
	// contains filtered or unexported fields
}

IntSliceFlag is the flag type that wraps cli.IntSliceFlag to allow for other values to be specified

func NewIntSliceFlag

func NewIntSliceFlag(fl cli.IntSliceFlag) *IntSliceFlag

NewIntSliceFlag creates a new IntSliceFlag

func (*IntSliceFlag) Apply

func (f *IntSliceFlag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped IntSliceFlag.Apply

func (*IntSliceFlag) ApplyInputSourceValue

func (f *IntSliceFlag) ApplyInputSourceValue(context *cli.Context, isc InputSourceContext) error

ApplyInputSourceValue applies a IntSlice value if required

func (*IntSliceFlag) ApplyWithError

func (f *IntSliceFlag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped IntSliceFlag.ApplyWithError

type MapInputSource

type MapInputSource struct {
	// contains filtered or unexported fields
}

MapInputSource implements InputSourceContext to return data from the map that is loaded.

func (*MapInputSource) Bool

func (fsm *MapInputSource) Bool(name string) (bool, error)

Bool returns an bool from the map otherwise returns false

func (*MapInputSource) BoolT

func (fsm *MapInputSource) BoolT(name string) (bool, error)

BoolT returns an bool from the map otherwise returns true

func (*MapInputSource) Duration

func (fsm *MapInputSource) Duration(name string) (time.Duration, error)

Duration returns a duration from the map if it exists otherwise returns 0

func (*MapInputSource) Float64

func (fsm *MapInputSource) Float64(name string) (float64, error)

Float64 returns an float64 from the map if it exists otherwise returns 0

func (*MapInputSource) Generic

func (fsm *MapInputSource) Generic(name string) (cli.Generic, error)

Generic returns an cli.Generic from the map if it exists otherwise returns nil

func (*MapInputSource) Int

func (fsm *MapInputSource) Int(name string) (int, error)

Int returns an int from the map if it exists otherwise returns 0

func (*MapInputSource) IntSlice

func (fsm *MapInputSource) IntSlice(name string) ([]int, error)

IntSlice returns an []int from the map if it exists otherwise returns nil

func (*MapInputSource) String

func (fsm *MapInputSource) String(name string) (string, error)

String returns a string from the map if it exists otherwise returns an empty string

func (*MapInputSource) StringSlice

func (fsm *MapInputSource) StringSlice(name string) ([]string, error)

StringSlice returns an []string from the map if it exists otherwise returns nil

type StringFlag

type StringFlag struct {
	cli.StringFlag
	// contains filtered or unexported fields
}

StringFlag is the flag type that wraps cli.StringFlag to allow for other values to be specified

func NewStringFlag

func NewStringFlag(fl cli.StringFlag) *StringFlag

NewStringFlag creates a new StringFlag

func (*StringFlag) Apply

func (f *StringFlag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped StringFlag.Apply

func (*StringFlag) ApplyInputSourceValue

func (f *StringFlag) ApplyInputSourceValue(context *cli.Context, isc InputSourceContext) error

ApplyInputSourceValue applies a String value to the flagSet if required

func (*StringFlag) ApplyWithError

func (f *StringFlag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped StringFlag.ApplyWithError

type StringSliceFlag

type StringSliceFlag struct {
	cli.StringSliceFlag
	// contains filtered or unexported fields
}

StringSliceFlag is the flag type that wraps cli.StringSliceFlag to allow for other values to be specified

func NewStringSliceFlag

func NewStringSliceFlag(fl cli.StringSliceFlag) *StringSliceFlag

NewStringSliceFlag creates a new StringSliceFlag

func (*StringSliceFlag) Apply

func (f *StringSliceFlag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped StringSliceFlag.Apply

func (*StringSliceFlag) ApplyInputSourceValue

func (f *StringSliceFlag) ApplyInputSourceValue(context *cli.Context, isc InputSourceContext) error

ApplyInputSourceValue applies a StringSlice value to the flagSet if required

func (*StringSliceFlag) ApplyWithError

func (f *StringSliceFlag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped StringSliceFlag.ApplyWithError

type Uint64Flag

type Uint64Flag struct {
	cli.Uint64Flag
	// contains filtered or unexported fields
}

Uint64Flag is the flag type that wraps cli.Uint64Flag to allow for other values to be specified

func NewUint64Flag

func NewUint64Flag(fl cli.Uint64Flag) *Uint64Flag

NewUint64Flag creates a new Uint64Flag

func (*Uint64Flag) Apply

func (f *Uint64Flag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped Uint64Flag.Apply

func (*Uint64Flag) ApplyWithError

func (f *Uint64Flag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped Uint64Flag.ApplyWithError

type UintFlag

type UintFlag struct {
	cli.UintFlag
	// contains filtered or unexported fields
}

UintFlag is the flag type that wraps cli.UintFlag to allow for other values to be specified

func NewUintFlag

func NewUintFlag(fl cli.UintFlag) *UintFlag

NewUintFlag creates a new UintFlag

func (*UintFlag) Apply

func (f *UintFlag) Apply(set *flag.FlagSet)

Apply saves the flagSet for later usage calls, then calls the wrapped UintFlag.Apply

func (*UintFlag) ApplyWithError

func (f *UintFlag) ApplyWithError(set *flag.FlagSet) error

ApplyWithError saves the flagSet for later usage calls, then calls the wrapped UintFlag.ApplyWithError

Jump to

Keyboard shortcuts

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