mirror of
https://github.com/zeromicro/go-zero.git
synced 2026-05-10 16:30:01 +08:00
perf(mapping): use strings.EqualFold to optimize bool parsing (#5324)
Co-authored-by: qiuwenhao <qiushaotest@qq.com>
This commit is contained in:
@@ -104,14 +104,13 @@ func convertToString(val any, fullName string) (string, error) {
|
||||
func convertTypeFromString(kind reflect.Kind, str string) (any, error) {
|
||||
switch kind {
|
||||
case reflect.Bool:
|
||||
switch strings.ToLower(str) {
|
||||
case "1", "true":
|
||||
if str == "1" || strings.EqualFold(str, "true") {
|
||||
return true, nil
|
||||
case "0", "false":
|
||||
return false, nil
|
||||
default:
|
||||
return false, errTypeMismatch
|
||||
}
|
||||
if str == "0" || strings.EqualFold(str, "false") {
|
||||
return false, nil
|
||||
}
|
||||
return false, errTypeMismatch
|
||||
case reflect.Int:
|
||||
return strconv.ParseInt(str, 10, intSize)
|
||||
case reflect.Int8:
|
||||
|
||||
Reference in New Issue
Block a user