优化: 补全所有整数类型的跨类型比较支持

toFloat64 和 isTruthy 补充 int8/int16/int32/uint8/uint16/uint32
This commit is contained in:
2026-04-01 01:01:49 +08:00
parent 861d58d718
commit a6847c7d18

View File

@@ -454,10 +454,28 @@ func isTruthy(val any) bool {
return v return v
case int: case int:
return v != 0 return v != 0
case int8:
return v != 0
case int16:
return v != 0
case int32:
return v != 0
case int64: case int64:
return v != 0 return v != 0
case uint:
return v != 0
case uint8:
return v != 0
case uint16:
return v != 0
case uint32:
return v != 0
case uint64:
return v != 0
case float64: case float64:
return v != 0 return v != 0
case float32:
return v != 0
case string: case string:
return v != "" return v != ""
case []any: case []any:
@@ -558,6 +576,16 @@ func toFloat64(val any) (float64, bool) {
return float64(v), true return float64(v), true
case int32: case int32:
return float64(v), true return float64(v), true
case int16:
return float64(v), true
case int8:
return float64(v), true
case uint32:
return float64(v), true
case uint16:
return float64(v), true
case uint8:
return float64(v), true
default: default:
return 0, false return 0, false
} }