value

package module
v0.0.22 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2025 License: MIT Imports: 12 Imported by: 11

README

value

value is a library for validation and to allow interaction with a function that does validation, while keeping an associated name with it.

a common usecase is a function of a database model that wants to check values and passes the errors for each value back, so that the invoking controller gets the errors associated with the original form field name, without the model needing to know or care about these form names. in this case the controller sets the variable names before passing them in per reference to the model function. the model function sets the errors for each variable and returns. the controller can then check for each variable, if it has an error and has it still associated with the form field name.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Contains

func Contains[M strIF, T varIF[M]](p T, needle string) bool

func Empty

func Empty[M any, T varIF[M]](p T) bool

func Equals

func Equals[M any, T varIF[M]](p T, c M) bool

func HasControlCharacters

func HasControlCharacters[M strIF, T varIF[M]](p T) bool

func HasDigitCharacters

func HasDigitCharacters[M strIF, T varIF[M]](p T) bool

func HasGraphicCharacters

func HasGraphicCharacters[M strIF, T varIF[M]](p T) bool

func HasLowerCaseCharacters

func HasLowerCaseCharacters[M strIF, T varIF[M]](p T) bool

func HasNoControlCharacters

func HasNoControlCharacters[M strIF, T varIF[M]](p T) bool

func HasNoDigitCharacters

func HasNoDigitCharacters[M strIF, T varIF[M]](p T) bool

func HasNoGraphicCharacters

func HasNoGraphicCharacters[M strIF, T varIF[M]](p T) bool

func HasNoLowerCaseCharacters

func HasNoLowerCaseCharacters[M strIF, T varIF[M]](p T) bool

func HasNoPrintCharacters

func HasNoPrintCharacters[M strIF, T varIF[M]](p T) bool

func HasNoPunctCharacters

func HasNoPunctCharacters[M strIF, T varIF[M]](p T) bool

func HasNoSpaceCharacters

func HasNoSpaceCharacters[M strIF, T varIF[M]](p T) bool

func HasNoSymbolCharacters

func HasNoSymbolCharacters[M strIF, T varIF[M]](p T) bool

func HasNoUpperCaseCharacters

func HasNoUpperCaseCharacters[M strIF, T varIF[M]](p T) bool

func HasPrefix

func HasPrefix[M strIF, T varIF[M]](p T, prefix string) bool

func HasPrintCharacters

func HasPrintCharacters[M strIF, T varIF[M]](p T) bool

func HasPunctCharacters

func HasPunctCharacters[M strIF, T varIF[M]](p T) bool

func HasSpaceCharacters

func HasSpaceCharacters[M strIF, T varIF[M]](p T) bool

func HasSuffix

func HasSuffix[M strIF, T varIF[M]](p T, suffix string) bool

func HasSymbolCharacters

func HasSymbolCharacters[M strIF, T varIF[M]](p T) bool

func HasUpperCaseCharacters

func HasUpperCaseCharacters[M strIF, T varIF[M]](p T) bool

func InvalidName

func InvalidName[M strIF, T varIF[M]](p T) bool

func InvalidPassword

func InvalidPassword[M strIF, T varIF[M]](p T, minlen, maxlen int) bool

func LessThan

func LessThan[M Ordered, T varIF[M]](p T, n M) bool

func LessThanEquals

func LessThanEquals[M Ordered, T varIF[M]](p T, n M) bool

func LessThanMinLength

func LessThanMinLength[M strIF, T varIF[M]](p T, min int) bool

func Matches

func Matches[M strIF, T varIF[M]](p T, regx *regexp.Regexp) bool

func MoreThan

func MoreThan[M Ordered, T varIF[M]](p T, n M) bool

func MoreThanEquals

func MoreThanEquals[M Ordered, T varIF[M]](p T, n M) bool

func MoreThanMaxLength

func MoreThanMaxLength[M strIF, T varIF[M]](p T, max int) bool

func NotContains

func NotContains[M strIF, T varIF[M]](p T, needle string) bool

func NotEquals

func NotEquals[M any, T varIF[M]](p T, c M) bool

func NotHasPrefix

func NotHasPrefix[M strIF, T varIF[M]](p T, prefix string) bool

func NotHasSuffix

func NotHasSuffix[M strIF, T varIF[M]](p T, suffix string) bool

func NotMatches

func NotMatches[M strIF, T varIF[M]](p T, regx *regexp.Regexp) bool

func NotOnlyControlCharacters

func NotOnlyControlCharacters[M strIF, T varIF[M]](p T) bool

func NotOnlyDigitCharacters

func NotOnlyDigitCharacters[M strIF, T varIF[M]](p T) bool

func NotOnlyGraphicCharacters

func NotOnlyGraphicCharacters[M strIF, T varIF[M]](p T) bool

func NotOnlyLowerCaseCharacters

func NotOnlyLowerCaseCharacters[M strIF, T varIF[M]](p T) bool

func NotOnlyPrintCharacters

func NotOnlyPrintCharacters[M strIF, T varIF[M]](p T) bool

func NotOnlyPunctCharacters

func NotOnlyPunctCharacters[M strIF, T varIF[M]](p T) bool

func NotOnlySpaceCharacters

func NotOnlySpaceCharacters[M strIF, T varIF[M]](p T) bool

func NotOnlySymbolCharacters

func NotOnlySymbolCharacters[M strIF, T varIF[M]](p T) bool

func NotOnlyUpperCaseCharacters

func NotOnlyUpperCaseCharacters[M strIF, T varIF[M]](p T) bool

func OnlyControlCharacters

func OnlyControlCharacters[M strIF, T varIF[M]](p T) bool

func OnlyDigitCharacters

func OnlyDigitCharacters[M strIF, T varIF[M]](p T) bool

func OnlyGraphicCharacters

func OnlyGraphicCharacters[M strIF, T varIF[M]](p T) bool

func OnlyLowerCaseCharacters

func OnlyLowerCaseCharacters[M strIF, T varIF[M]](p T) bool

func OnlyPrintCharacters

func OnlyPrintCharacters[M strIF, T varIF[M]](p T) bool

func OnlyPunctCharacters

func OnlyPunctCharacters[M strIF, T varIF[M]](p T) bool

func OnlySpaceCharacters

func OnlySpaceCharacters[M strIF, T varIF[M]](p T) bool

func OnlySymbolCharacters

func OnlySymbolCharacters[M strIF, T varIF[M]](p T) bool

func OnlyUpperCaseCharacters

func OnlyUpperCaseCharacters[M strIF, T varIF[M]](p T) bool

func StringToA added in v0.0.4

func StringToA(s string, t any) (err error)

func StringsToA added in v0.0.12

func StringsToA[T any](s []string, v *[]T) error

func StringsToMap added in v0.0.18

func StringsToMap(s []string) (map[string]string, error)

func StringsToSlice added in v0.0.10

func StringsToSlice[T Builtin](s []string, v *[]T) error

func Values

func Values(v ...Value) values

Types

type Bool

type Bool = Var[bool]

type Bools

type Bools = Var[[]bool]

type Builtin added in v0.0.10

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

type Byte

type Byte = Var[byte]

type Bytes

type Bytes = Var[[]byte]

type Data added in v0.0.6

type Data[M any, T any] struct {
	Meta M
	Val  T
	// contains filtered or unexported fields
}

Data is a type that has Meta information, a possbile (validation) error and a Value

func NewData added in v0.0.7

func NewData[M any, T any](meta M, value T) *Data[M, T]

func (*Data[M, T]) AddErr added in v0.0.6

func (p *Data[M, T]) AddErr(err error)

adds an error (but only if the given err is not nil)

func (Data[M, T]) Err added in v0.0.6

func (m Data[M, T]) Err() error

func (*Data[M, T]) SetValue added in v0.0.6

func (p *Data[M, T]) SetValue(v T) *Data[M, T]

func (Data[M, T]) Value added in v0.0.6

func (p Data[M, T]) Value() any

type ErrConvertInvalid added in v0.0.4

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

func (ErrConvertInvalid) Error added in v0.0.4

func (e ErrConvertInvalid) Error() string

type ErrConvertUnsupported added in v0.0.4

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

func (ErrConvertUnsupported) Error added in v0.0.4

func (e ErrConvertUnsupported) Error() string

type Error

type Error = Var[error]

type Float32

type Float32 = Var[float32]

type Float64

type Float64 = Var[float64]

type Int

type Int = Var[int]

type Ints

type Ints = Var[[]int]

type Map

type Map = Var[map[string]any]

type Ordered

type Ordered interface {
	~int | ~int8 | uint | ~uint8
}

type Reader

type Reader = Var[io.Reader]

type Slice added in v0.0.13

type Slice[T Builtin] interface {
	[]T
}

type Slices added in v0.0.10

type StrConv added in v0.0.8

type StrConv[T StrConverteable] struct {
	Var[T]
}

func (*StrConv[T]) Set added in v0.0.8

func (f *StrConv[T]) Set(s string) error

func (*StrConv[T]) String added in v0.0.8

func (f *StrConv[T]) String() string

func (StrConv[T]) Type added in v0.0.8

func (f StrConv[T]) Type() string

type StrConverteable added in v0.0.8

type StrConverteable interface {
	Builtin | Slices | maps
}

type String

type String = Var[string]

type StringConverter added in v0.0.8

type StringConverter interface {
	String() string
	Set(s string) error
	Type() string
}

type Stringer

type Stringer = Var[fmt.Stringer]

type Strings

type Strings = Var[[]string]

type Uint

type Uint = Var[uint]

type Uints

type Uints = Var[[]uint]

type Value

type Value interface {
	Name() string
	Value() any
	Err() error
}

type Var

type Var[T any] struct {
	Data[string, T]
	// contains filtered or unexported fields
}

Var is a Data type that has a Name as Meta information

func NewVar added in v0.0.7

func NewVar[T any](value T) *Var[T]

func (*Var[T]) AddErr

func (p *Var[T]) AddErr(err error)

adds an error (but only if the given err is not nil)

func (Var[T]) Err

func (p Var[T]) Err() error

func (Var[T]) IsSet added in v0.0.15

func (p Var[T]) IsSet() bool

IsSet returns true, if there was a successful or unsuccessful try to set the value

func (Var[T]) Name

func (p Var[T]) Name() string

func (*Var[T]) Scan added in v0.0.19

func (v *Var[T]) Scan(src any) error

func (*Var[T]) SetName

func (p *Var[T]) SetName(name string) *Var[T]

func (*Var[T]) SetValue

func (p *Var[T]) SetValue(v T) *Var[T]

func (*Var[T]) Unset added in v0.0.15

func (p *Var[T]) Unset() *Var[T]

func (Var[T]) Value

func (p Var[T]) Value() any

type Writer

type Writer = Var[io.Writer]

Jump to

Keyboard shortcuts

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