1 Star 1 Fork 0

fast_api/api

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
utils.go 1.08 KB
一键复制 编辑 原始数据 按行查看 历史
szb 提交于 2021-04-03 14:55 . add require base type
package utils
import (
"crypto/md5"
"encoding/hex"
"io"
"reflect"
"regexp"
"strings"
)
/**
* return (struct,func)
*/
func SplitFuncName(name string) (string, string) {
matched, _ := regexp.MatchString(`\(.+\)`, name)
if matched { //struct func
sName := name
var sFunc string
if strings.ContainsAny(name, "-") {
last := strings.LastIndex(name, "-")
sName = name[:last]
lastF := strings.LastIndex(sName, ".")
sFunc = sName[lastF+1:]
}
re := regexp.MustCompile(`\(.+\)`)
sStruct := re.FindString(sName)
return strings.ReplaceAll(sStruct[1:len(sStruct)-1], "*", ""), sFunc
} else {
lastF := strings.LastIndex(name, ".")
return "", name[lastF+1:]
}
}
func Md5String(s string) string {
h := md5.New()
io.WriteString(h, s)
return hex.EncodeToString(h.Sum(nil))
}
//other param set default value
func DefaultCallValue(kind reflect.Kind) reflect.Value {
switch kind {
case reflect.String:
return reflect.ValueOf("")
case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
return reflect.ValueOf(0)
}
return reflect.ValueOf(nil)
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/fast_api/api.git
git@gitee.com:fast_api/api.git
fast_api
api
api
v0.0.1

搜索帮助