utils

package module
v0.0.0-...-a530360 Latest Latest
Warning

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

Go to latest
Published: Jul 30, 2020 License: MIT Imports: 25 Imported by: 0

README

Utils

Go语言实用工具类库

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddUrlArgs

func AddUrlArgs(url_ string, args UrlArgs) string

func BitSplitInt

func BitSplitInt(v int) (vs []int)

BitSplitInt 按位分解整数

func BitSplitInt64

func BitSplitInt64(v int64) (vs []int64)

BitSplitInt64 按位分解64位整数

func CamelToSnake

func CamelToSnake(s string) string

CamelToSnake 驼峰转蛇形

func ChunkSliceString

func ChunkSliceString(ss []string, size int) [][]string

func DiceCompare

func DiceCompare(str1, str2 string) float64

func EqSliceString

func EqSliceString(s1, s2 []string) bool

func ExecWhenNoErr

func ExecWhenNoErr(err error, fns ...func() error) error

ExecWhenNoErr 错误

func Execute

func Execute(fn func())

Execute 执行

func FilterSliceString

func FilterSliceString(ss []string, fn func(s string) bool) []string

func GenerateSeqId

func GenerateSeqId() string

GenerateSeqId 生成自增ID

func GetPrivateIPV4

func GetPrivateIPV4() (net.IP, error)

GetPrivateIPV4 获取本地IP地址

func Goroutine

func Goroutine(fn func())

Goroutine 协程执行

func HandlePanic

func HandlePanic(hs ...PanicHandler)

HandlePanic 使用回调函数处理panic

func HashString

func HashString(bytes []byte, hash hash.Hash) string

HashString 计算Hash字符串

func HttpGet

func HttpGet(url string) ([]byte, error)

func HttpPost

func HttpPost(url string, args map[string]interface{}) ([]byte, error)

func IdxSliceString

func IdxSliceString(v string, ss []string) int

func InSliceHasPrefix

func InSliceHasPrefix(v string, ss []string) bool

func InSliceInt

func InSliceInt(v int, is []int) bool

InSliceInt 判断某值是否在切片中

func InSliceInt64

func InSliceInt64(v int64, is []int64) bool

InSliceInt64 判断某值是否在切片中

func InSliceString

func InSliceString(v string, ss []string) bool

InSliceString 判断某值是否在切片中

func IsDir

func IsDir(dir string) bool

IsDir 存在且为目录

func IsEmail

func IsEmail(v string) bool

IsEmail 是否为邮箱

func IsFile

func IsFile(file string) bool

IsFile 存在且为文件

func IsMobile

func IsMobile(v string) bool

IsMobile 是否为手机

func LongestString

func LongestString(ss ...string) string

func MD5

func MD5(bytes []byte) string

MD5 计算MD5值

func MaxInt

func MaxInt(vs ...int) int

MaxInt 获取最大整数

func MaxInt32

func MaxInt32(vs ...int32) int32

MaxInt32 获取最大整数

func MaxInt64

func MaxInt64(vs ...int64) int64

MaxInt64 获取最大整数

func MinInt

func MinInt(vs ...int) int

MinInt 获取最小整数

func MinInt32

func MinInt32(vs ...int32) int32

MinInt32 获取最小整数

func MinInt64

func MinInt64(vs ...int64) int64

MinInt64 获取最小整数

func Must

func Must(err error)

Must 如果有错误则抛出

func MustJson

func MustJson(v interface{}) []byte

func MustJsonString

func MustJsonString(v interface{}) string

func OneByOneUntilError

func OneByOneUntilError(fns ...func() error) error

OneByOneUntilError 按序处理直到发生错误

func PanicToError

func PanicToError(err *error)

PanicToError 将panic转换成error

func Panicf

func Panicf(format string, args ...interface{})

Panicf 格式化内容并抛出

func ParallelExec

func ParallelExec(fns ...func())

ParallelExec 并行处理

func ParallelExec2

func ParallelExec2(fn func(v interface{}), args ...interface{})

ParallelExec2 并行处理

func Println

func Println(args ...interface{})

func RandomBytes

func RandomBytes(num int, seed string) []byte

RandomBytes 生成随机字节集

func RandomString

func RandomString(num int, seed string) string

RandomString 生成随机字符串

func RetryWhenErr

func RetryWhenErr(maxNum int, fn func(int) error) error

RetryWhenErr 错误重试

func ReturnFirstError

func ReturnFirstError(errs ...error) error

ReturnFirstError 返回第一个错误

func SHA256

func SHA256(bytes []byte) string

SHA256 计算SHA256值

func SetDefault

func SetDefault(src interface{}, def interface{})

func SnakeToCamel

func SnakeToCamel(s string) string

SnakeToCamel 蛇形转驼峰

func SplitBigram

func SplitBigram(str string) map[diceBigram]bool

SplitBigram split the word into set of bigrams

func StackTrace

func StackTrace(size int) []byte

StackTrace 获取堆栈踪迹

func StringMD5

func StringMD5(str string) string

func StringSHA256

func StringSHA256(str string) string

func SumInt

func SumInt(args ...int) (v int)

SumInt 计算整数总和

func SumInt64

func SumInt64(args ...int64) (v int64)

SumInt64 计算64位整数总和

func TimeIsZero

func TimeIsZero(t *time.Time) bool

func TimeUnix

func TimeUnix(t *time.Time) int64

func WrapError

func WrapError(err error, msg string, args ...interface{}) error

WrapError 包装错误

Types

type Guard

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

Guard 防止并发

func NewGuard

func NewGuard() *Guard

func (*Guard) Run

func (g *Guard) Run(key string, callback func() (interface{}, error)) (interface{}, error)

type PanicHandler

type PanicHandler func(interface{})

type RedisLocker

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

RedisLocker

func NewRedisLocker

func NewRedisLocker(client *redigo.Client, hashMap string) *RedisLocker

func (*RedisLocker) Lock

func (rl *RedisLocker) Lock(key string, ttl int64)

func (*RedisLocker) Unlock

func (rl *RedisLocker) Unlock(key string)

type SafeMap

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

SafeMap 并发安全MAP

func NewSafeMap

func NewSafeMap() *SafeMap

func (*SafeMap) Clear

func (s *SafeMap) Clear()

func (*SafeMap) Del

func (s *SafeMap) Del(key string)

func (*SafeMap) Each

func (s *SafeMap) Each(call func(string, interface{}))

func (*SafeMap) Get

func (s *SafeMap) Get(key string) (value interface{}, ok bool)

func (*SafeMap) Has

func (s *SafeMap) Has(key string) bool

func (*SafeMap) Set

func (s *SafeMap) Set(key string, value interface{})

type SortMap

type SortMap map[string]int

func (SortMap) Delete

func (sm SortMap) Delete(id string)

func (SortMap) Exist

func (sm SortMap) Exist(key string) bool

func (SortMap) Insert

func (sm SortMap) Insert(id string, sortIndex int)

func (SortMap) Keys

func (sm SortMap) Keys() []string

type UrlArgs

type UrlArgs map[string]interface{}

func (UrlArgs) UrlValues

func (ua UrlArgs) UrlValues() url.Values

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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