flagvar

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Mar 31, 2023 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	StringToKind = map[reflect.Kind]func(in string) (any, error){
		reflect.Int8: func(in string) (any, error) {
			n, err := strconv.ParseInt(in, 10, 8)
			return int8(n), err
		},
		reflect.Int16: func(in string) (any, error) {
			n, err := strconv.ParseInt(in, 10, 16)
			return int16(n), err
		},
		reflect.Int32: func(in string) (any, error) {
			n, err := strconv.ParseInt(in, 10, 32)
			return int32(n), err
		},
		reflect.Int64: func(in string) (any, error) {
			return strconv.ParseInt(in, 10, 64)
		},
		reflect.Int: func(in string) (any, error) {
			n, err := strconv.ParseInt(in, 10, strconv.IntSize)
			return int(n), err
		},
		reflect.Uint8: func(in string) (any, error) {
			n, err := strconv.ParseUint(in, 10, 8)
			return uint8(n), err
		},
		reflect.Uint16: func(in string) (any, error) {
			n, err := strconv.ParseUint(in, 10, 16)
			return uint16(n), err
		},
		reflect.Uint32: func(in string) (any, error) {
			n, err := strconv.ParseUint(in, 10, 32)
			return uint32(n), err
		},
		reflect.Uint64: func(in string) (any, error) {
			return strconv.ParseUint(in, 10, 64)
		},
		reflect.Uint: func(in string) (any, error) {
			n, err := strconv.ParseUint(in, 10, strconv.IntSize)
			return uint(n), err
		},
		reflect.Float32: func(in string) (any, error) {
			n, err := strconv.ParseFloat(in, 32)
			return float32(n), err
		},
		reflect.Float64: func(in string) (any, error) {
			return strconv.ParseFloat(in, 64)
		},
		reflect.String: func(in string) (any, error) {
			return in, nil
		},
		reflect.Bool: func(in string) (any, error) {
			return strconv.ParseBool(in)
		},
	}
	KindToString = map[reflect.Kind]func(x any) string{
		reflect.Int8: func(in any) string {
			return fmt.Sprintf("%d", in)
		},
		reflect.Int16: func(in any) string {
			return fmt.Sprintf("%d", in)
		},
		reflect.Int32: func(in any) string {
			return fmt.Sprintf("%d", in)
		},
		reflect.Int64: func(in any) string {
			return fmt.Sprintf("%d", in)
		},
		reflect.Int: func(in any) string {
			return fmt.Sprintf("%d", in)
		},
		reflect.Uint8: func(in any) string {
			return fmt.Sprintf("%d", in)
		},
		reflect.Uint16: func(in any) string {
			return fmt.Sprintf("%d", in)
		},
		reflect.Uint32: func(in any) string {
			return fmt.Sprintf("%d", in)
		},
		reflect.Uint64: func(in any) string {
			return fmt.Sprintf("%d", in)
		},
		reflect.Uint: func(in any) string {
			return fmt.Sprintf("%d", in)
		},
		reflect.Float32: func(in any) string {
			return fmt.Sprintf("%.2f", in)
		},
		reflect.Float64: func(in any) string {
			return fmt.Sprintf("%.2f", in)
		},
		reflect.String: func(in any) string {
			return in.(string)
		},
		reflect.Bool: func(in any) string {
			return strconv.FormatBool(in.(bool))
		},
	}
)
View Source
var StringSlice = Slice[string]

Functions

func StringSliceTo

func StringSliceTo[T BaseType](in []string) ([]T, error)

func StringSliceToStringStringMap

func StringSliceToStringStringMap(in []string) map[string]string

func StringStringMapTo

func StringStringMapTo[T BaseType](in map[string]string) (map[string]T, error)

func StringStringMapToStringSlice

func StringStringMapToStringSlice(in map[string]string) []string

func ToStringSlice

func ToStringSlice[T BaseType](in []T) []string

func ToStringStringMap

func ToStringStringMap[T BaseType](in map[string]T) map[string]string

Types

type BaseType

type BaseType interface {
	int8 | int16 | int32 | int64 | int | uint8 | uint16 | uint32 | uint64 | uint | float32 | float64 | string | bool
}

type BaseValue

type BaseValue[T BaseType] struct {
	// contains filtered or unexported fields
}

func Base

func Base[T BaseType](p *T, def T) *BaseValue[T]

func (*BaseValue[T]) Get

func (s *BaseValue[T]) Get() any

func (*BaseValue[T]) Set

func (s *BaseValue[T]) Set(val string) error

func (*BaseValue[T]) String

func (s *BaseValue[T]) String() string

type SliceValue

type SliceValue[T BaseType] struct {
	// contains filtered or unexported fields
}

-- SliceValue Value

func Slice

func Slice[T BaseType](p *[]T, val ...T) *SliceValue[T]

func (*SliceValue[T]) Get

func (s *SliceValue[T]) Get() any

func (*SliceValue[T]) Set

func (s *SliceValue[T]) Set(val string) error

func (*SliceValue[T]) String

func (s *SliceValue[T]) String() string

type StringMapValue

type StringMapValue[T BaseType] struct {
	// contains filtered or unexported fields
}

func StringMap

func StringMap[T BaseType](p *map[string]T) *StringMapValue[T]

func (*StringMapValue[T]) Get

func (s *StringMapValue[T]) Get() any

func (*StringMapValue[T]) Set

func (s *StringMapValue[T]) Set(val string) error

func (*StringMapValue[T]) String

func (s *StringMapValue[T]) String() string

Jump to

Keyboard shortcuts

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