functions

package
v0.9.1 Latest Latest
Warning

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

Go to latest
Published: Aug 14, 2026 License: MIT Imports: 40 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrEmptyList           = errors.New("can't select value from empty list")
	ErrUpperNegativeOrZero = errors.New("upper boundary must be greater than 0")
	ErrLowerGreaterEqual   = errors.New("lower boundary must be less than upper boundary")
	ErrRangeTooLarge       = errors.New("range is too large")
)
View Source
var ErrEmptyPath = errors.New("can't walk empty path")
View Source
var ErrNilArgument = errors.New("nil arguments are not allowed")

Functions

func Default added in v0.9.0

func Default(val, def any) any

func EnvVarargInit added in v0.7.0

func EnvVarargInit(n *Env, args []any) (any, error)

func File

func File(value any) (string, error)

func FuncMap

func FuncMap(t *template.Template) template.FuncMap

func Include added in v0.9.0

func Include(t *template.Template) func(name any, data ...any) (string, error)

func IndexOr added in v0.9.0

func IndexOr(item, def any, args ...any) any

func Inline

func Inline(t *template.Template) func(value any, data ...any) (string, error)

func IsSet added in v0.9.0

func IsSet(item any, args ...any) bool

func ListVarargInit added in v0.7.0

func ListVarargInit(n *List, args []any) (any, error)

func MapVarargInit added in v0.7.0

func MapVarargInit(n *Map, args []any) (any, error)

func Namespace added in v0.7.0

func Namespace[T any](n T) func() any

func NamespaceVararg added in v0.8.1

func NamespaceVararg[T any](n T, fn func(T, []any) (any, error)) func(...any) (any, error)

func Set added in v0.9.0

func Set(item, value any, args ...any) (any, error)

func Ternary

func Ternary(truthy, falsy, condition any) any

func Unset added in v0.9.0

func Unset(item any, args ...any) (any, error)

Types

type Convert added in v0.7.0

type Convert struct{}

func (*Convert) Any added in v0.7.0

func (*Convert) Any(value any) any

func (*Convert) Bool added in v0.7.0

func (*Convert) Bool(value any) bool

func (*Convert) BoolMap added in v0.7.0

func (*Convert) BoolMap(value any) map[string]bool

func (*Convert) Bools added in v0.7.0

func (*Convert) Bools(value any) []bool

func (*Convert) Bytes added in v0.8.0

func (*Convert) Bytes(value any) []byte

func (*Convert) Duration added in v0.7.0

func (*Convert) Duration(value any) time.Duration

func (*Convert) DurationMap added in v0.9.0

func (*Convert) DurationMap(value any) map[string]time.Duration

func (*Convert) Durations added in v0.9.0

func (*Convert) Durations(value any) []time.Duration

func (*Convert) Float added in v0.7.0

func (*Convert) Float(value any) float64

func (*Convert) FloatMap added in v0.7.0

func (*Convert) FloatMap(value any) map[string]float64

func (*Convert) Floats added in v0.7.0

func (*Convert) Floats(value any) []float64

func (*Convert) Int added in v0.7.0

func (*Convert) Int(value any) int64

func (*Convert) IntMap added in v0.7.0

func (*Convert) IntMap(value any) map[string]int64

func (*Convert) Ints added in v0.7.0

func (*Convert) Ints(value any) []int64

func (*Convert) List added in v0.7.0

func (*Convert) List(value any) []any

func (*Convert) Map added in v0.7.0

func (*Convert) Map(value any) map[string]any

func (*Convert) Rune added in v0.7.0

func (*Convert) Rune(value any) rune

func (*Convert) Runes added in v0.7.0

func (*Convert) Runes(value any) []rune

func (*Convert) String added in v0.7.0

func (*Convert) String(value any) string

func (*Convert) StringMap added in v0.7.0

func (*Convert) StringMap(value any) map[string]string

func (*Convert) Strings added in v0.7.0

func (*Convert) Strings(value any) []string

func (*Convert) Time added in v0.7.0

func (*Convert) Time(value any) time.Time

func (*Convert) TimeMap added in v0.9.0

func (*Convert) TimeMap(value any) map[string]time.Time

func (*Convert) Times added in v0.9.0

func (*Convert) Times(value any) []time.Time

type Data

type Data struct{}

func (*Data) FromBase32 added in v0.9.0

func (*Data) FromBase32(data any) (string, error)

func (*Data) FromBase64

func (*Data) FromBase64(data any) (string, error)

func (*Data) FromCSV added in v0.9.0

func (*Data) FromCSV(delim, data any) ([]map[string]string, error)

func (*Data) FromDotEnv

func (*Data) FromDotEnv(data any) (env.Map, error)

func (*Data) FromDotEnvExpanded

func (*Data) FromDotEnvExpanded(data any) (env.Map, error)

func (*Data) FromHex

func (*Data) FromHex(data any) (string, error)

func (*Data) FromJSON

func (*Data) FromJSON(data any) (any, error)

func (*Data) FromTOML

func (*Data) FromTOML(data any) (any, error)

func (*Data) FromYAML

func (*Data) FromYAML(data any) (any, error)

func (*Data) Hash

func (*Data) Hash(kind, value any) (string, error)

func (*Data) ToBase32 added in v0.9.0

func (*Data) ToBase32(value any) string

func (*Data) ToBase32HEX added in v0.9.0

func (*Data) ToBase32HEX(value any) string

func (*Data) ToBase64

func (*Data) ToBase64(value any) string

func (*Data) ToBase64URL

func (*Data) ToBase64URL(value any) string

func (*Data) ToCSV added in v0.9.0

func (*Data) ToCSV(delim, data any) (string, error)

func (*Data) ToDotEnv

func (*Data) ToDotEnv(value env.Map) (string, error)

func (*Data) ToDotEnvExpanded

func (*Data) ToDotEnvExpanded(value env.Map) (string, error)

func (*Data) ToHex

func (*Data) ToHex(value any) string

func (*Data) ToJSON

func (*Data) ToJSON(value any) (string, error)

func (*Data) ToJSONPretty

func (*Data) ToJSONPretty(value any) (string, error)

func (*Data) ToTOML

func (*Data) ToTOML(value any) (string, error)

func (*Data) ToYAML

func (*Data) ToYAML(value any) (string, error)

func (*Data) ToYAMLFlow added in v0.9.0

func (*Data) ToYAMLFlow(value any) (string, error)

func (*Data) Xor

func (*Data) Xor(key, value any) string

type Env

type Env struct{}

func (*Env) BatchSet added in v0.5.0

func (*Env) BatchSet(m any) (bool, error)

func (*Env) BatchUnset added in v0.5.0

func (*Env) BatchUnset(keys ...any) (bool, error)

func (*Env) Escape

func (*Env) Escape(value any) string

func (*Env) Expand

func (*Env) Expand(value any) string

func (*Env) Get

func (*Env) Get(key any) string

func (*Env) IsSet

func (*Env) IsSet(key any) bool

func (*Env) Map

func (*Env) Map() (env.Map, error)

func (*Env) Or

func (*Env) Or(def, key any) string

func (*Env) RawGet

func (*Env) RawGet(key any) string

func (*Env) RawOr

func (*Env) RawOr(def, key any) string

func (*Env) Set

func (*Env) Set(key, value any) (bool, error)

func (*Env) ToKey added in v0.5.0

func (*Env) ToKey(key any) string

func (*Env) Unescape

func (*Env) Unescape(value any) string

func (*Env) Unset added in v0.5.0

func (*Env) Unset(key any) (bool, error)

type Filepath

type Filepath struct{}

func (*Filepath) Abs

func (*Filepath) Abs(value any) (string, error)

func (*Filepath) Base

func (*Filepath) Base(value any) string

func (*Filepath) Clean

func (*Filepath) Clean(value any) string

func (*Filepath) Dir

func (*Filepath) Dir(value any) string

func (*Filepath) Exists added in v0.7.0

func (*Filepath) Exists(value any) bool

func (*Filepath) Ext

func (*Filepath) Ext(value any) string

func (*Filepath) FromSlash

func (*Filepath) FromSlash(value any) string

func (*Filepath) Glob

func (*Filepath) Glob(value any) ([]string, error)

func (*Filepath) IsAbs

func (*Filepath) IsAbs(value any) bool

func (*Filepath) IsDir added in v0.7.0

func (*Filepath) IsDir(value any) bool

func (*Filepath) IsFile added in v0.7.0

func (*Filepath) IsFile(value any) bool
func (*Filepath) IsSymlink(value any) bool

func (*Filepath) Join

func (*Filepath) Join(values ...string) string

func (*Filepath) Match

func (*Filepath) Match(pattern, name any) (bool, error)

func (*Filepath) Rel

func (*Filepath) Rel(target, base any) (string, error)

func (*Filepath) Separator added in v0.9.1

func (*Filepath) Separator() string

func (*Filepath) Split

func (*Filepath) Split(value any) []string

func (*Filepath) ToSlash

func (*Filepath) ToSlash(value any) string

func (*Filepath) Volume added in v0.7.0

func (*Filepath) Volume(value any) string

func (*Filepath) Walk

func (*Filepath) Walk(root any, args ...any) ([]WalkInfo, error)

type List

type List struct{}

func (*List) Concat

func (*List) Concat(values ...any) []any

func (*List) First

func (*List) First(l any) any

func (*List) Last

func (*List) Last(l any) any

func (*List) New

func (*List) New(values ...any) []any

func (*List) Reverse

func (*List) Reverse(l any) []any

func (*List) Sort added in v0.9.0

func (*List) Sort(items any) ([]any, error)

func (*List) SortBy added in v0.9.0

func (*List) SortBy(key, items any) ([]any, error)

type Map

type Map struct{}

func (*Map) Keys

func (*Map) Keys(m any) []any

func (*Map) Merge

func (*Map) Merge(to any, with ...any) map[string]any

func (*Map) New

func (*Map) New(kv ...any) (map[string]any, error)

func (*Map) Omit

func (*Map) Omit(m any, keys ...any) map[string]any

func (*Map) Pick

func (*Map) Pick(m any, keys ...any) map[string]any

func (*Map) Values

func (*Map) Values(m any) []any

type Math added in v0.7.0

type Math struct{}

func (*Math) Abs added in v0.9.0

func (*Math) Abs(value any) float64

func (*Math) Add added in v0.9.0

func (*Math) Add(values ...any) float64

func (*Math) Between added in v0.9.0

func (*Math) Between(minimum, maximum, value any) bool

func (*Math) Ceil added in v0.9.0

func (*Math) Ceil(value any) float64

func (*Math) Clamp added in v0.7.0

func (*Math) Clamp(minimum, maximum, value any) (result float64, err error)

func (*Math) Div added in v0.9.0

func (*Math) Div(y, x any) float64

func (*Math) Floor added in v0.9.0

func (*Math) Floor(value any) float64

func (*Math) Max added in v0.9.0

func (*Math) Max(values ...any) float64

func (*Math) Min added in v0.9.0

func (*Math) Min(values ...any) float64

func (*Math) Mod added in v0.9.0

func (*Math) Mod(y, x any) float64

func (*Math) Mul added in v0.9.0

func (*Math) Mul(values ...any) float64

func (*Math) Percent added in v0.7.0

func (*Math) Percent(part, total any) float64

func (*Math) Rem added in v0.9.0

func (*Math) Rem(y, x any) float64

func (*Math) Round added in v0.9.0

func (*Math) Round(value any, precision ...any) float64

func (*Math) Sub added in v0.9.0

func (*Math) Sub(y, x any) float64

type Path

type Path struct{}

func (*Path) Base

func (*Path) Base(value any) string

func (*Path) Clean

func (*Path) Clean(value any) string

func (*Path) Dir

func (*Path) Dir(value any) string

func (*Path) Ext

func (*Path) Ext(value any) string

func (*Path) IsAbs

func (*Path) IsAbs(value any) bool

func (*Path) Join

func (*Path) Join(values ...any) string

func (*Path) Match

func (*Path) Match(pattern, name any) (bool, error)

func (*Path) Separator added in v0.9.1

func (*Path) Separator() string

func (*Path) Split

func (*Path) Split(value any) []string

type Random added in v0.7.0

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

func NewRandom added in v0.9.0

func NewRandom(runeFuncs *Rune) *Random

func (*Random) ASCII added in v0.7.0

func (f *Random) ASCII(length any) (string, error)

func (*Random) Alpha added in v0.7.0

func (f *Random) Alpha(length any) (string, error)

func (*Random) AlphaNumeric added in v0.7.0

func (f *Random) AlphaNumeric(length any) (string, error)

func (*Random) Bool added in v0.7.0

func (f *Random) Bool(args ...any) (bool, error)

func (*Random) Float added in v0.7.0

func (*Random) Float(args ...any) (float64, error)

func (*Random) FloatInclusive added in v0.7.0

func (*Random) FloatInclusive(args ...any) (float64, error)

func (*Random) Graphic added in v0.7.0

func (f *Random) Graphic(length any) (string, error)

func (*Random) Hex added in v0.7.0

func (f *Random) Hex(length any) (string, error)

func (*Random) Int added in v0.7.0

func (*Random) Int(args ...any) (int64, error)

func (*Random) IntInclusive added in v0.7.0

func (*Random) IntInclusive(args ...any) (int64, error)

func (*Random) Numeric added in v0.7.0

func (f *Random) Numeric(length any) (string, error)

func (*Random) Pick added in v0.7.0

func (f *Random) Pick(values ...any) (any, error)

func (*Random) PickFrom added in v0.7.0

func (*Random) PickFrom(value any) (any, error)

func (*Random) String added in v0.7.0

func (f *Random) String(length any, args ...any) (_ string, err error)

type Regex

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

func NewRegex added in v0.9.0

func NewRegex() *Regex

func (*Regex) Escape

func (*Regex) Escape(str any) string

func (*Regex) Find

func (f *Regex) Find(regex, str any) (string, error)

func (*Regex) FindAll

func (f *Regex) FindAll(regex, n, str any) ([]string, error)

func (*Regex) Match

func (f *Regex) Match(regex, str any) (bool, error)

func (*Regex) Replace

func (f *Regex) Replace(regex, rpl, str any) (string, error)

func (*Regex) Split

func (f *Regex) Split(regex, n, str any) ([]string, error)

type Rune added in v0.7.0

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

func NewRune added in v0.9.0

func NewRune() *Rune

func (*Rune) RangeSet added in v0.7.0

func (f *Rune) RangeSet(lower, upper any) []rune

func (*Rune) RegexSet added in v0.7.0

func (f *Rune) RegexSet(pattern any) ([]rune, error)

type String

type String struct{}

func (*String) Bquote

func (*String) Bquote(value any) string

func (*String) Contains

func (*String) Contains(subvalue, value any) bool

func (*String) ContainsAny added in v0.9.0

func (*String) ContainsAny(charset, value any) bool

func (*String) Cut added in v0.9.0

func (*String) Cut(separator, value any) ([]string, bool)

func (*String) CutPrefix added in v0.9.0

func (*String) CutPrefix(prefix, value any) (string, bool)

func (*String) CutSuffix added in v0.9.0

func (*String) CutSuffix(suffix, value any) (string, bool)

func (*String) EqualFold

func (*String) EqualFold(other, value any) bool

func (*String) Fields added in v0.9.0

func (*String) Fields(value any) []string

func (*String) Fold added in v0.8.0

func (*String) Fold(length, value any) string

func (*String) HasPrefix

func (*String) HasPrefix(prefix, value any) bool

func (*String) HasSuffix

func (*String) HasSuffix(suffix, value any) bool

func (*String) Indent

func (f *String) Indent(level, value any) string

func (*String) IndentN added in v0.9.0

func (f *String) IndentN(level, value any) string

func (*String) IndentWith added in v0.9.0

func (*String) IndentWith(char, level, value any) string

func (*String) IndentWithN added in v0.9.0

func (f *String) IndentWithN(char, level, value any) string

func (*String) Join

func (*String) Join(separator any, values ...any) string

func (*String) Lower

func (*String) Lower(value any) string

func (*String) Quote

func (*String) Quote(value any) string

func (*String) Repeat

func (*String) Repeat(count, value any) string

func (*String) Replace

func (*String) Replace(old, new, value any) string

func (*String) Split

func (*String) Split(separator, value any) []string

func (*String) Squote

func (*String) Squote(value any) string

func (*String) Title

func (*String) Title(value any) string

func (*String) ToValidUTF8 added in v0.9.0

func (*String) ToValidUTF8(replacement, value any) string

func (*String) Trim

func (*String) Trim(cutset, value any) string

func (*String) TrimLeft

func (*String) TrimLeft(cutset, value any) string

func (*String) TrimPrefix

func (*String) TrimPrefix(prefix, value any) string

func (*String) TrimRight

func (*String) TrimRight(cutset, value any) string

func (*String) TrimSpace

func (*String) TrimSpace(value any) string

func (*String) TrimSuffix

func (*String) TrimSuffix(suffix, value any) string

func (*String) TrimTrailingSpace added in v0.9.1

func (*String) TrimTrailingSpace(value any) string

func (*String) Truncate

func (*String) Truncate(length, value any) string

func (*String) Upper

func (*String) Upper(value any) string

type Time

type Time struct{}

func (*Time) After added in v0.9.1

func (*Time) After(other, value any) bool

func (*Time) Before added in v0.9.1

func (*Time) Before(other, value any) bool

func (*Time) Difference added in v0.9.1

func (*Time) Difference(other, value any) time.Duration

func (*Time) Equal added in v0.9.1

func (*Time) Equal(other, value any) bool

func (*Time) Format

func (*Time) Format(format, value any) string

func (*Time) IsZero added in v0.9.1

func (*Time) IsZero(value any) bool

func (*Time) Local

func (*Time) Local(value any) time.Time

func (*Time) Now

func (*Time) Now() time.Time

func (*Time) Offset

func (*Time) Offset(offset, value any) time.Time

func (*Time) Round

func (*Time) Round(step, value any) time.Time

func (*Time) Since

func (*Time) Since(value any) time.Duration

func (*Time) ToDate added in v0.9.1

func (*Time) ToDate(value any) string

func (*Time) ToDateTime added in v0.9.1

func (*Time) ToDateTime(value any) string

func (*Time) ToString added in v0.9.1

func (*Time) ToString(value any) string

func (*Time) ToTime added in v0.9.1

func (*Time) ToTime(value any) string

func (*Time) ToUnix added in v0.9.1

func (*Time) ToUnix(value any) int64

func (*Time) Truncate

func (*Time) Truncate(step, value any) time.Time

func (*Time) UTC

func (*Time) UTC(value any) time.Time

func (*Time) Until

func (*Time) Until(value any) time.Duration

type WalkInfo

type WalkInfo struct {
	Name    string
	Path    string
	RelPath string
	AbsPath string
	IsFile  bool
	IsDir   bool
}

Jump to

Keyboard shortcuts

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