langext

package
v0.0.55 Latest Latest
Warning

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

Go to latest
Published: Jan 6, 2023 License: Apache-2.0 Imports: 14 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddToSet

func AddToSet[T comparable](set []T, add T) []T

func ArrAll

func ArrAll[T any](arr []T, fn func(T) bool) bool

func ArrAllErr

func ArrAllErr[T any](arr []T, fn func(T) (bool, error)) (bool, error)

func ArrAny

func ArrAny[T any](arr []T, fn func(T) bool) bool

func ArrAnyErr

func ArrAnyErr[T any](arr []T, fn func(T) (bool, error)) (bool, error)

func ArrEqualsExact

func ArrEqualsExact[T comparable](arr1 []T, arr2 []T) bool

func ArrFirst added in v0.0.8

func ArrFirst[T any](arr []T, comp func(v T) bool) (T, bool)

func ArrFirstIndex added in v0.0.18

func ArrFirstIndex[T comparable](arr []T, needle T) int

func ArrIdxAll added in v0.0.33

func ArrIdxAll(arr any, fn func(int) bool) bool

func ArrIdxAllErr added in v0.0.33

func ArrIdxAllErr(arr any, fn func(int) (bool, error)) (bool, error)

func ArrIdxAny added in v0.0.33

func ArrIdxAny(arr any, fn func(int) bool) bool

func ArrIdxAnyErr added in v0.0.33

func ArrIdxAnyErr(arr any, fn func(int) (bool, error)) (bool, error)

func ArrIdxNone added in v0.0.33

func ArrIdxNone(arr any, fn func(int) bool) bool

func ArrIdxNoneErr added in v0.0.33

func ArrIdxNoneErr(arr any, fn func(int) (bool, error)) (bool, error)

func ArrLast added in v0.0.8

func ArrLast[T any](arr []T, comp func(v T) bool) (T, bool)

func ArrLastIndex added in v0.0.18

func ArrLastIndex[T comparable](arr []T, needle T) int

func ArrMap added in v0.0.18

func ArrMap[T1 any, T2 any](arr []T1, conv func(v T1) T2) []T2

func ArrNone

func ArrNone[T any](arr []T, fn func(T) bool) bool

func ArrNoneErr

func ArrNoneErr[T any](arr []T, fn func(T) (bool, error)) (bool, error)

func ArrSum added in v0.0.18

func ArrSum[T NumberConstraint](arr []T) T

func ArrUnique

func ArrUnique[T comparable](array []T) []T

func BoolCount added in v0.0.7

func BoolCount(arr ...bool) int

func BytesXOR added in v0.0.5

func BytesXOR(a []byte, b []byte) ([]byte, error)

func Coalesce

func Coalesce[T any](v *T, def T) T

func CoalesceBool

func CoalesceBool(b *bool, def bool) bool

func CoalesceInt

func CoalesceInt(i *int, def int) int

func CoalesceInt32

func CoalesceInt32(i *int32, def int32) int32

func CoalesceString

func CoalesceString(s *string, def string) string

func CoalesceStringer

func CoalesceStringer(s fmt.Stringer, def string) string

func CoalesceTime

func CoalesceTime(t *time.Time, def time.Time) time.Time

func CompareArr added in v0.0.12

func CompareArr[T OrderedConstraint](arr1 []T, arr2 []T) bool

func CompareIntArr

func CompareIntArr(arr1 []int, arr2 []int) bool

func Conditional added in v0.0.21

func Conditional[T any](v bool, resTrue T, resFalse T) T

func ConvertStringerArray

func ConvertStringerArray[T fmt.Stringer](inarr []T) []string

func DeRefStringer

func DeRefStringer(v fmt.Stringer) *string

func DecodeBase62 added in v0.0.11

func DecodeBase62(str string) (uint64, error)

func DegToRad added in v0.0.12

func DegToRad(deg float64) float64

func EncodeBase62 added in v0.0.11

func EncodeBase62(num uint64) string

func FileExists added in v0.0.5

func FileExists(filename string) bool

func ForceArray

func ForceArray[T any](v []T) []T

func FormatBool added in v0.0.5

func FormatBool(v bool, strTrue string, strFalse string) string

func FormatBytes added in v0.0.5

func FormatBytes(b int64) string

func FormatBytesToSI

func FormatBytesToSI(b uint64) string

func GeoDistance added in v0.0.13

func GeoDistance(lon1 float64, lat1 float64, lon2 float64, lat2 float64) float64

func InArray

func InArray[T comparable](needle T, haystack []T) bool

func Indent added in v0.0.5

func Indent(str string, pad string) string

func IsNil

func IsNil(i interface{}) bool

func IsSliceSorted added in v0.0.38

func IsSliceSorted[T any](arr []T, less func(v1, v2 T) bool) bool

func IsSorted added in v0.0.38

func IsSorted[T OrderedConstraint](arr []T) bool

func MapKeyArr added in v0.0.5

func MapKeyArr[T comparable, V any](v map[T]V) []T

func NewBracesUUID added in v0.0.5

func NewBracesUUID() (string, error)

func NewHexUUID added in v0.0.5

func NewHexUUID() (string, error)

func NewParensUUID added in v0.0.5

func NewParensUUID() (string, error)

func NewRawHexUUID added in v0.0.5

func NewRawHexUUID() (string, error)

func NewUUID added in v0.0.5

func NewUUID() ([16]byte, error)

func NewUpperHexUUID added in v0.0.5

func NewUpperHexUUID() (string, error)

func NumToStringOpt added in v0.0.5

func NumToStringOpt[V IntConstraint](v *V, fallback string) string

func PatchJson added in v0.0.5

func PatchJson[JV string | []byte](rawjson JV, key string, value any) (JV, error)

func PatchRemJson added in v0.0.5

func PatchRemJson[JV string | []byte](rawjson JV, key string) (JV, error)

func PrettyPrintJson added in v0.0.5

func PrettyPrintJson(str string) (string, bool)

func Ptr

func Ptr[T any](v T) *T

func PtrFloat32

func PtrFloat32(v float32) *float32

func PtrFloat64

func PtrFloat64(v float64) *float64

func PtrInt32

func PtrInt32(v int32) *int32

func PtrInt64

func PtrInt64(v int64) *int64

func RadToDeg added in v0.0.12

func RadToDeg(rad float64) float64

func RandBase62 added in v0.0.5

func RandBase62(rlen int) string

func RandBytes added in v0.0.5

func RandBytes(size int) []byte

func Range added in v0.0.7

func Range[T IntegerConstraint](start T, end T) []T

func ReverseArray

func ReverseArray[T any](v []T)

func Sort added in v0.0.38

func Sort[T OrderedConstraint](arr []T)

func SortSlice added in v0.0.38

func SortSlice[T any](arr []T, less func(v1, v2 T) bool)

func SortSliceStable added in v0.0.38

func SortSliceStable[T any](arr []T, less func(v1, v2 T) bool)

func SortStable added in v0.0.38

func SortStable[T OrderedConstraint](arr []T)

func StrLimit

func StrLimit(val string, maxlen int, suffix string) string

func StrPadLeft

func StrPadLeft(str string, pad string, padlen int) string

func StrPadRight

func StrPadRight(str string, pad string, padlen int) string

func StrRepeat added in v0.0.35

func StrRepeat(val string, count int) string

func StrRunePadLeft added in v0.0.5

func StrRunePadLeft(str string, pad string, padlen int) string

func StrRunePadRight added in v0.0.5

func StrRunePadRight(str string, pad string, padlen int) string

func StrSplit

func StrSplit(val string, sep string, allowEmpty bool) []string

func TryPrettyPrintJson added in v0.0.5

func TryPrettyPrintJson(str string) string

Types

type A added in v0.0.5

type A []any

type ComplexConstraint added in v0.0.6

type ComplexConstraint interface {
	~complex64 | ~complex128
}

type FloatConstraint added in v0.0.6

type FloatConstraint interface {
	~float32 | ~float64
}

type H added in v0.0.5

type H map[string]any

type IntConstraint added in v0.0.5

type IntConstraint interface {
	int | int8 | int16 | int32 | int64 | uint | uint8 | uint16 | uint32 | uint64
}

type IntegerConstraint added in v0.0.6

type IntegerConstraint interface {
	SignedConstraint | UnsignedConstraint
}

type NumberConstraint added in v0.0.6

type NumberConstraint interface {
	IntegerConstraint | FloatConstraint
}

type OrderedConstraint added in v0.0.6

type OrderedConstraint interface {
	IntegerConstraint | FloatConstraint | ~string
}

type SignedConstraint added in v0.0.6

type SignedConstraint interface {
	~int | ~int8 | ~int16 | ~int32 | ~int64
}

type UnsignedConstraint added in v0.0.6

type UnsignedConstraint interface {
	~uint | ~uint8 | ~uint16 | ~uint32 | ~uint64 | ~uintptr
}

Jump to

Keyboard shortcuts

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