细化int/uint/float数据类型定义

This commit is contained in:
白茶清欢 2025-03-21 17:11:21 +08:00
parent 863c03f34b
commit 1aad276c88

View File

@ -41,8 +41,17 @@ var (
DataTypeNil DataType = "nil" // nil
DataTypePtr DataType = "ptr" // 指针
DataTypeInt DataType = "int" // int类型 -> int64
DataTypeInt8 DataType = "int8" // int8类型
DataTypeInt16 DataType = "int16" // int16类型
DataTypeInt32 DataType = "int32" // int32类型
DataTypeInt64 DataType = "int64" // int64类型
DataTypeUint DataType = "uint" // uint类型 -> uint64
DataTypeFloat DataType = "float" // float类型 -> float64
DataTypeUint8 DataType = "uint8" // uint8类型
DataTypeUint16 DataType = "uint16" // uint16类型
DataTypeUint32 DataType = "uint32" // uint32类型
DataTypeUint64 DataType = "uint64" // uint64类型
DataTypeFloat32 DataType = "float32" // float32类型
DataTypeFloat64 DataType = "float64" // float64类型
DataTypeBool DataType = "bool" // bool类型
DataTypeString DataType = "string" // 字符串类型
DataTypeSliceAny DataType = "[]any" // any数组 -> []any
@ -87,8 +96,17 @@ var (
DataTypeAny DataType = "any" // 任意类型 -> any
DataTypeStringPtr DataType = "string_ptr" // *string, 字符串指针
DataTypeIntPtr DataType = "int_ptr" // *int64, int64指针
DataTypeInt8Ptr DataType = "int8_ptr" // *int8, int8指针
DataTypeInt16Ptr DataType = "int16_ptr" // *int16, int16指针
DataTypeInt32Ptr DataType = "int32_ptr" // *int32, int32指针
DataTypeInt64Ptr DataType = "int64_ptr" // *int64, int64指针
DataTypeUintPtr DataType = "uint_ptr" // *uint64, uint64指针
DataTypeFloatPtr DataType = "float_ptr" // *float64, float64指针
DataTypeUint8Ptr DataType = "uint8_ptr" // *uint8, uint8指针
DataTypeUint16Ptr DataType = "uint16_ptr" // *uint16, uint16指针
DataTypeUint32Ptr DataType = "uint32_ptr" // *uint32, uint32指针
DataTypeUint64Ptr DataType = "uint64_ptr" // *uint64, uint64指针
DataTypeFloat32Ptr DataType = "float32_ptr" // *float32, float32指针
DataTypeFloat64Ptr DataType = "float64_ptr" // *float64, float64指针
DataTypeBoolPtr DataType = "bool_ptr" // *bool, 字符串指针
)
@ -125,9 +143,18 @@ var (
DataTypeList = []DataTypeDesc{
// 基础数据类型
getDataTypeDesc(DataTypeAny, "任意数据类型"),
getDataTypeDesc(DataTypeInt, "int类型 -> int64"),
getDataTypeDesc(DataTypeUint, "uint类型 -> uint64"),
getDataTypeDesc(DataTypeFloat, "float类型 -> float64"),
getDataTypeDesc(DataTypeInt, "int类型"),
getDataTypeDesc(DataTypeInt8, "int8类型"),
getDataTypeDesc(DataTypeInt16, "int16类型"),
getDataTypeDesc(DataTypeInt32, "int32类型"),
getDataTypeDesc(DataTypeInt64, "int64类型"),
getDataTypeDesc(DataTypeUint, "uint类型"),
getDataTypeDesc(DataTypeUint8, "uint8类型"),
getDataTypeDesc(DataTypeUint16, "uint16类型"),
getDataTypeDesc(DataTypeUint32, "uint32类型"),
getDataTypeDesc(DataTypeUint64, "uint64类型"),
getDataTypeDesc(DataTypeFloat32, "float32类型"),
getDataTypeDesc(DataTypeFloat64, "float64类型"),
getDataTypeDesc(DataTypeBool, "bool类型"),
getDataTypeDesc(DataTypeString, "字符串类型"),
@ -176,9 +203,18 @@ var (
// 基础类型的指针类型
getDataTypeDesc(DataTypeStringPtr, "*string, 字符串指针"),
getDataTypeDesc(DataTypeUintPtr, "*int64, int64指针"),
getDataTypeDesc(DataTypeIntPtr, "*int64, *uint64, uint64指针"),
getDataTypeDesc(DataTypeFloatPtr, "*float64, float64指针"),
getDataTypeDesc(DataTypeUintPtr, "*uint, uint指针"),
getDataTypeDesc(DataTypeUintPtr, "*uint8, uint8指针"),
getDataTypeDesc(DataTypeUintPtr, "*uint16, uint16指针"),
getDataTypeDesc(DataTypeUintPtr, "*uint32, uint32指针"),
getDataTypeDesc(DataTypeUintPtr, "*uint64, uint64指针"),
getDataTypeDesc(DataTypeIntPtr, "*int, int指针"),
getDataTypeDesc(DataTypeIntPtr, "*int8, int8指针"),
getDataTypeDesc(DataTypeIntPtr, "*int16, int16指针"),
getDataTypeDesc(DataTypeIntPtr, "*int32, int32指针"),
getDataTypeDesc(DataTypeIntPtr, "*int64, int64指针"),
getDataTypeDesc(DataTypeFloat32Ptr, "*float32, float32指针"),
getDataTypeDesc(DataTypeFloat32Ptr, "*float64, float64指针"),
getDataTypeDesc(DataTypeBoolPtr, "*bool, 字符串指针"),
}
)
@ -197,10 +233,23 @@ func getDataTypeDesc(value DataType, description string) DataTypeDesc {
var (
// DataTypeBaseNumber 基础的int类型
DataTypeBaseNumber = []DataType{DataTypeInt, DataTypeUint, DataTypeFloat, DataTypeIntPtr, DataTypeUintPtr, DataTypeFloatPtr}
DataTypeBaseInt = []DataType{DataTypeInt, DataTypeIntPtr}
DataTypeBaseUint = []DataType{DataTypeUint, DataTypeUintPtr}
DataTypeBaseFloat = []DataType{DataTypeFloat, DataTypeFloatPtr}
DataTypeBaseNumber = []DataType{
DataTypeInt, DataTypeInt8, DataTypeInt16, DataTypeInt32, DataTypeInt64,
DataTypeUint, DataTypeUint8, DataTypeUint16, DataTypeUint32, DataTypeUint64,
DataTypeFloat32, DataTypeFloat64,
DataTypeIntPtr, DataTypeInt8Ptr, DataTypeInt16Ptr, DataTypeInt32Ptr, DataTypeInt64Ptr,
DataTypeUintPtr, DataTypeUint8Ptr, DataTypeUint16Ptr, DataTypeUint32Ptr, DataTypeUint64Ptr,
DataTypeFloat32Ptr, DataTypeFloat64Ptr,
}
DataTypeBaseInt = []DataType{
DataTypeInt, DataTypeInt8, DataTypeInt16, DataTypeInt32, DataTypeInt64,
DataTypeIntPtr, DataTypeInt8Ptr, DataTypeInt16Ptr, DataTypeInt32Ptr, DataTypeInt64Ptr,
}
DataTypeBaseUint = []DataType{
DataTypeUint, DataTypeUint8, DataTypeUint16, DataTypeUint32, DataTypeUint64,
DataTypeUintPtr, DataTypeUint8Ptr, DataTypeUint16Ptr, DataTypeUint32Ptr, DataTypeUint64Ptr,
}
DataTypeBaseFloat = []DataType{DataTypeFloat32, DataTypeFloat64, DataTypeFloat32Ptr, DataTypeFloat64Ptr}
DataTypeBaseString = []DataType{DataTypeString, DataTypeStringPtr}
DataTypeBaseBool = []DataType{DataTypeBool, DataTypeBoolPtr}
DataTypeSliceMarshal = []DataType{