add tag search api

This commit is contained in:
mubai
2023-07-05 00:01:59 +08:00
parent 0b32d81785
commit 92a853a196
13 changed files with 593 additions and 292 deletions

View File

@@ -0,0 +1,40 @@
package param
import (
"log"
"reflect"
)
/*
简单参数处理
*/
// IsEmpty 判断各种基本类型是否为空
func IsEmpty(target any) bool {
switch target.(type) {
case int, int8, int16, int32, int64, uint, uint8, uint16, uint32, uint64, float32, float64:
log.Println(`target == 0`, target == 0)
return target == reflect.Zero(reflect.TypeOf(target)).Interface()
case string:
return target == ""
case bool:
return target.(bool)
default:
return false
}
}
func IsEmptyRe[T ~int | ~uint | float32 | float64 | string | bool](target T) bool {
v := reflect.ValueOf(target)
switch v.Kind() {
case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Float32,
reflect.Float64, reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64:
return v.Interface() == 0
case reflect.String:
return v.String() == ""
case reflect.Bool:
return v.Bool()
default:
return false
}
}