Documentation
¶
Index ¶
- Variables
- func AndSlice[T comparable](a []T, b []T) []T
- func Bind2First[T1 any, T2 any, U any](f func(T1, T2) U, a1 T1) func(T2) U
- func BindFirst[T any, U any](f func(T) U, a1 T) func() U
- func Compose[T any, U any, V any](fun1 func(T) U, fun2 func(U) V) func(T) V
- func ConvertSameType[R any](data interface{}, typeOf R) (R, bool)
- func CopyURLValues(src url.Values) url.Values
- func DecryptDES(src []byte, key []byte) []byte
- func EncryptDES(src []byte, key []byte) []byte
- func Filter[T any](data []T, fun func(T) bool) []T
- func Find[T comparable, U any](key T, data []U, keyFunc func(U) T) (int, bool)
- func FindIf[T any, U any](key T, data []U, predicate func(T, U) bool) (int, bool)
- func FoldR[T any, U any](init U, fun func(U, T) U, data ...T) U
- func Foldl[T any, U any](init U, fun func(U, T) U, data ...T) U
- func GenGetFieldFunc[D, R any](field interface{}) func(D) R
- func Greater[T Ordered](a, b T) bool
- func Identity[T any](value T) T
- func InterfaceToType[T any](v interface{}, typeof T) T
- func IsSliceEq[T any, U any](srcs []T, targets []U, eqFun func(src T, tgt U) bool) bool
- func Less[T Ordered](a, b T) bool
- func Map[T any, U any](data []T, fun func(T) U) []U
- func Max[T any](lessFunc func(a, b T) bool, data ...T) T
- func Min[T any](lessFunc func(a, b T) bool, data ...T) T
- func ParseFormReq[T any](value url.Values, parsedReq *T) error
- func PhoneMasking(phone string) string
- func PtrDeref[T any](t *T) T
- func Reduce[T any, U any](data []T, fun func(U, T) U, init U) U
- func ReverseParamter[T1 any, T2 any, U any](f func(T1, T2) U) func(T2, T1) U
- func ReverseParamterWithError[T1 any, T2 any, U any](f func(T1, T2) (U, error)) func(T2, T1) (U, error)
- func StringToInt(s string) int64
- func StructToMap[T any](s T) map[string]interface{}
- func StructToMapByTag(value interface{}, tag string) map[string]interface{}
- func SubSlice[T comparable](a []T, b []T) []T
- func TmpPtr[T any](data T) *T
- func Unique[T comparable](data []T) []T
- func UniqueWithEqFun[T any](data []T, eqFun func(T, T) bool) []T
- func WrapWithLabel(data []string, leftLabel string, rightLabel string) string
- type Float
- type Integer
- type Ordered
- type RWLockDataWrapper
- type Tuple
Constants ¶
This section is empty.
Variables ¶
View Source
var IntToString func(int64) string = Bind2First(ReverseParamter(strconv.FormatInt), 10)
Functions ¶
func AndSlice ¶
func AndSlice[T comparable](a []T, b []T) []T
AndSlice 对两个 Slice 取交集,时间复杂度为O(max(N, M)),N为a的长度,M为b的长度
func Bind2First ¶
func ConvertSameType ¶
func Find ¶
func Find[T comparable, U any](key T, data []U, keyFunc func(U) T) (int, bool)
Find 使用 == 作为谓词 的 FindIf
func GenGetFieldFunc ¶
func GenGetFieldFunc[D, R any](field interface{}) func(D) R
GenGetFieldFunc D 数据类型 R 返回值类型 只支持 struct 和 map,不支持嵌套
func InterfaceToType ¶
func InterfaceToType[T any](v interface{}, typeof T) T
func ParseFormReq ¶ added in v1.1.0
ParseFormReq 从 req 中提取
func ReverseParamter ¶
func StructToMapByTag ¶
func UniqueWithEqFun ¶
UniqueWithEqFun 对 slice 去重,O(N^2) 的复杂度,数据长度 > 1000 时慎用
Types ¶
type RWLockDataWrapper ¶
type RWLockDataWrapper[T any] struct { // contains filtered or unexported fields }
RWLockDataWrapper 包了一层读写锁的变量 别传指针或按引用
func (*RWLockDataWrapper[T]) Read ¶
func (w *RWLockDataWrapper[T]) Read() T
func (*RWLockDataWrapper[T]) Write ¶
func (w *RWLockDataWrapper[T]) Write(data T)
Click to show internal directories.
Click to hide internal directories.