consts/data_type.go

172 lines
11 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// Package consts ...
//
// Description : consts ...
//
// Author : go_developer@163.com<白茶清欢>
//
// Date : 2024-04-08 16:33
package consts
import (
"git.zhangdeman.cn/zhangdeman/consts/enums"
)
const (
DataTypeUnknown enums.DataType = "unknown" // 位置数据类型
DataTypeNil enums.DataType = "nil" // nil
DataTypePtr enums.DataType = "ptr" // 指针
DataTypeInt enums.DataType = "int" // int类型 -> int64
DataTypeUint enums.DataType = "uint" // uint类型 -> uint64
DataTypeFloat enums.DataType = "float" // float类型 -> float64
DataTypeBool enums.DataType = "bool" // bool类型
DataTypeString enums.DataType = "string" // 字符串类型
DataTypeSliceAny enums.DataType = "[]any" // any数组 -> []any
DataTypeSliceAnyWithMarshal enums.DataType = "[]any_marshal" // any数组 -> []any, json序列化之后的结构
DataTypeSliceInt enums.DataType = "[]int" // int数组 -> []int64
DataTypeSliceIntWithChar enums.DataType = "[]int_split" // int数组 -> []int64, 按照指定字符切割
DataTypeSliceIntWithMarshal enums.DataType = "[]int_marshal" // int数组 -> []int64, json序列化之后的结果
DataTypeSliceUint enums.DataType = "[]uint" // uint数组 -> []uint64
DataTypeSliceUintWithChar enums.DataType = "[]uint_split" // uint数组 -> []uint64 指定字符切割
DataTypeSliceUintWithMarshal enums.DataType = "[]uint_marshal" // uint数组 -> []uint64 json序列化之后的结果
DataTypeSliceFloat enums.DataType = "[]float" // float数组 -> []float64
DataTypeSliceFloatWithChar enums.DataType = "[]float_split" // float数组 -> []float64, 指定字符切割
DataTypeSliceFloatWithMarshal enums.DataType = "[]float_marshal" // float数组 -> []float64, json序列化之后的结果
DataTypeSliceBool enums.DataType = "[]bool" // bool数组 -> []bool
DataTypeSliceBoolWithChar enums.DataType = "[]bool_split" // bool数组 -> []bool, 指定字符切割
DataTypeSliceBoolWithMarshal enums.DataType = "[]bool_marshal" // bool数组 -> []bool, json序列化之后的结果
DataTypeSliceString enums.DataType = "[]string" // 字符串数组 -> []string
DataTypeSliceStringWithChar enums.DataType = "[]string_split" // 字符串数组 -> []string, 指定字符切割
DataTypeSliceStringWithMarshal enums.DataType = "[]string_marshal" // 字符串数组 -> []string, json序列化之后的结果
DataTypeSliceSlice enums.DataType = "[][]any" // 字符串数组 -> [][]any
DataTypeSliceSliceWithMarshal enums.DataType = "[][]any_marshal" // 字符串数组 -> [][]any,json序列化之后的结果
DataTypeSliceMapAnyAny enums.DataType = "[]map[any]any" // 字符串数组 -> []map[any]any, slice对象
DataTypeSliceMapAnyAnyWithMarshal enums.DataType = "[]map[any]any_marshal" // 字符串数组 -> []map[any]any, json序列化后的结果
DataTypeSliceMapStringAny enums.DataType = "[]map[string]any" // 字符串数组 -> map[string]any, slice对象
DataTypeSliceMapStringAnyWithMarshal = "[]map[string]any_marshal" // 字符串数组 -> []map[string]any, slice对象, json序列化之后的结果
DataTypeMapStrInt enums.DataType = "map[string]int" // map -> map[string]int64
DataTypeMapStrIntWithMarshal enums.DataType = "map[string]int_marshal" // map -> map[string]int64,json序列化之后的结果
DataTypeMapStrUint enums.DataType = "map[string]uint" // map -> map[string]uint64
DataTypeMapStrUintWithMarshal enums.DataType = "map[string]uint_marshal" // map -> map[string]uint64, json序列化之后的结果
DataTypeMapStrFloat enums.DataType = "map[string]float" // map -> map[string]float64
DataTypeMapStrFloatWithMarshal enums.DataType = "map[string]float_marshal" // map -> map[string]float64, json序列化之后的结果
DataTypeMapStrBool enums.DataType = "map[string]bool" // map -> map[string]bool
DataTypeMapStrBoolWithMarshal enums.DataType = "map[string]bool_marshal" // map -> map[string]bool,json序列换之后的结果
DataTypeMapStrAny enums.DataType = "map[string]any" // map -> map[string]any
DataTypeMapStrAnyWithMarshal enums.DataType = "map[string]any_marshal" // map -> map[string]any, json序列化之后的结果
DataTypeMapStrStr enums.DataType = "map[string]string" // map -> map[string]string
DataTypeMapStrStrWithMarshal enums.DataType = "map[string]string_marshal" // map -> map[string]string, json序列化之后的结果
DataTypeMapAnyAny enums.DataType = "map[any]any" // map -> map[any]any
DataTypeMapAnyAnyWithMarshal enums.DataType = "map[any]any_marshal" // map -> map[any]any, json序列化之后的结果
DataTypeMapStrSlice enums.DataType = "map[string][]any" // map -> map[string][]any
DataTypeMapStrSliceWithMarshal enums.DataType = "map[string][]any_marshal" // map -> map[string][]any, json 序列化之后的结果
DataTypeAny enums.DataType = "any" // 任意类型 -> any
DataTypeStringPtr enums.DataType = "string_ptr" // *string, 字符串指针
DataTypeIntPtr enums.DataType = "int_ptr" // *int64, int64指针
DataTypeUintPtr enums.DataType = "uint_ptr" // *uint64, uint64指针
DataTypeFloatPtr enums.DataType = "float_ptr" // *float64, float64指针
DataTypeBoolPtr enums.DataType = "bool_ptr" // *bool, 字符串指针
)
const (
DataStatusNotFound = "NOT_FOUND"
DataStatusIsNil = "IS_NIL"
DataStatusIsZero = "IS_ZERO"
DataStatusIsEmpty = "IS_EMPTY"
DataStatusIsFalse = "IS_FALSE"
)
const (
DataSliceModelReal = "REAL"
DataSliceModelMarshal = "MARSHAL"
DataSliceModelWithSplitChar = "WITH_SPLIT_CHAR"
)
const (
DataMapModelReal = "REAL"
DataMapModelMarshal = "MARSHAL"
)
// DataTypeDesc 数据类型描述
//
// Author : go_developer@163.com<白茶清欢>
//
// Date : 13:22 2024/6/23
type DataTypeDesc struct {
Value enums.DataType `json:"value"` // 具体数据类型
Description string `json:"description"` // 数据类型描述
}
var (
DataTypeList = []DataTypeDesc{
// 基础数据类型
getDataTypeDesc(DataTypeAny, "任意数据类型"),
getDataTypeDesc(DataTypeInt, "int类型 -> int64"),
getDataTypeDesc(DataTypeUint, "uint类型 -> uint64"),
getDataTypeDesc(DataTypeFloat, "float类型 -> float64"),
getDataTypeDesc(DataTypeBool, "bool类型"),
getDataTypeDesc(DataTypeString, "字符串类型"),
// map数据类型
getDataTypeDesc(DataTypeMapStrAny, "map[string]any"),
getDataTypeDesc(DataTypeMapStrAnyWithMarshal, "map[string]any json序列化之后的结果"),
getDataTypeDesc(DataTypeMapStrInt, "map[string]int64"),
getDataTypeDesc(DataTypeMapStrIntWithMarshal, "map[string]int64 json序列化之后的结果"),
getDataTypeDesc(DataTypeMapStrUint, "map[string]uint64"),
getDataTypeDesc(DataTypeMapStrUintWithMarshal, "map[string]uint64 json序列化之后的结果"),
getDataTypeDesc(DataTypeMapStrFloat, "map[string]float64"),
getDataTypeDesc(DataTypeMapStrFloatWithMarshal, "map[string]float64 json序列化之后的结果"),
getDataTypeDesc(DataTypeMapStrBool, "map[string]bool"),
getDataTypeDesc(DataTypeMapStrBoolWithMarshal, "map[string]bool json序列化之后的结果"),
getDataTypeDesc(DataTypeMapStrStr, "map[string]string"),
getDataTypeDesc(DataTypeMapStrStrWithMarshal, "map[string]string json序列化之后的结果"),
getDataTypeDesc(DataTypeMapAnyAny, "map[any]any"),
getDataTypeDesc(DataTypeMapAnyAnyWithMarshal, "map[any]any json序列化之后的结果"),
getDataTypeDesc(DataTypeMapStrSlice, "map[string][]any"),
getDataTypeDesc(DataTypeMapStrSliceWithMarshal, "map[string][]any json序列化之后的结果"),
// slice数据类型
getDataTypeDesc(DataTypeSliceAny, "[]any"),
getDataTypeDesc(DataTypeSliceString, "[]string"),
getDataTypeDesc(DataTypeSliceStringWithChar, "[]string 按照指定字符切割"),
getDataTypeDesc(DataTypeSliceStringWithMarshal, "[]string json序列化之后的结果"),
getDataTypeDesc(DataTypeSliceAnyWithMarshal, "[]any json序列化之后的结果"),
getDataTypeDesc(DataTypeSliceInt, "[]int"),
getDataTypeDesc(DataTypeSliceIntWithChar, "[]int 按照指定字符切割"),
getDataTypeDesc(DataTypeSliceIntWithMarshal, "[]int json序列化之后的结果"),
getDataTypeDesc(DataTypeSliceUint, "[]uint"),
getDataTypeDesc(DataTypeSliceUintWithChar, "[]uint 按照指定字符切割"),
getDataTypeDesc(DataTypeSliceUintWithMarshal, "[]uint json序列化之后的结果"),
getDataTypeDesc(DataTypeSliceFloat, "[]float"),
getDataTypeDesc(DataTypeSliceFloatWithChar, "[]float 按照指定字符切割"),
getDataTypeDesc(DataTypeSliceFloatWithMarshal, "[]float json序列化之后的结果"),
getDataTypeDesc(DataTypeSliceBool, "[]bool"),
getDataTypeDesc(DataTypeSliceBoolWithChar, "[]bool 按照指定字符切割"),
getDataTypeDesc(DataTypeSliceBoolWithMarshal, "[]bool json序列化之后的结果"),
getDataTypeDesc(DataTypeSliceSlice, "[][]any"),
getDataTypeDesc(DataTypeSliceSliceWithMarshal, "[][]any json序列化之后的结果"),
getDataTypeDesc(DataTypeSliceMapStringAny, "[][]map[string]any"),
getDataTypeDesc(DataTypeSliceMapStringAnyWithMarshal, "[][]map[string]any json序列化之后的结果"),
getDataTypeDesc(DataTypeSliceMapAnyAny, "[]map[any]any"),
getDataTypeDesc(DataTypeSliceMapAnyAnyWithMarshal, "[]map[any]any json序列化之后的结果"),
// 基础类型的指针类型
getDataTypeDesc(DataTypeStringPtr, "*string, 字符串指针"),
getDataTypeDesc(DataTypeUintPtr, "*int64, int64指针"),
getDataTypeDesc(DataTypeIntPtr, "*int64, *uint64, uint64指针"),
getDataTypeDesc(DataTypeFloatPtr, "*float64, float64指针"),
getDataTypeDesc(DataTypeBoolPtr, "*bool, 字符串指针"),
}
)
// getDataTypeDesc ...
//
// Author : go_developer@163.com<白茶清欢>
//
// Date : 13:24 2024/6/23
func getDataTypeDesc(value enums.DataType, description string) DataTypeDesc {
return DataTypeDesc{
Value: value,
Description: description,
}
}