Add new encoding types for toast types.

This commit is contained in:
Nick Tobey
2025-03-11 19:14:26 -07:00
parent 3771c191ab
commit ece59d6442
3 changed files with 117 additions and 102 deletions

View File

@@ -23,108 +23,117 @@ import (
type Encoding byte
const (
EncodingNull Encoding = 0
EncodingInt8 Encoding = 1
EncodingUint8 Encoding = 2
EncodingInt16 Encoding = 3
EncodingUint16 Encoding = 4
EncodingInt32 Encoding = 7
EncodingUint32 Encoding = 8
EncodingInt64 Encoding = 9
EncodingUint64 Encoding = 10
EncodingFloat32 Encoding = 11
EncodingFloat64 Encoding = 12
EncodingBit64 Encoding = 13
EncodingHash128 Encoding = 14
EncodingYear Encoding = 15
EncodingDate Encoding = 16
EncodingTime Encoding = 17
EncodingDatetime Encoding = 18
EncodingEnum Encoding = 19
EncodingSet Encoding = 20
EncodingBytesAddr Encoding = 21
EncodingCommitAddr Encoding = 22
EncodingStringAddr Encoding = 23
EncodingJSONAddr Encoding = 24
EncodingCell Encoding = 25
EncodingGeomAddr Encoding = 26
EncodingExtendedAddr Encoding = 27
EncodingString Encoding = 128
EncodingBytes Encoding = 129
EncodingDecimal Encoding = 130
EncodingJSON Encoding = 131
EncodingGeometry Encoding = 133
EncodingExtended Encoding = 134
EncodingNull Encoding = 0
EncodingInt8 Encoding = 1
EncodingUint8 Encoding = 2
EncodingInt16 Encoding = 3
EncodingUint16 Encoding = 4
EncodingInt32 Encoding = 7
EncodingUint32 Encoding = 8
EncodingInt64 Encoding = 9
EncodingUint64 Encoding = 10
EncodingFloat32 Encoding = 11
EncodingFloat64 Encoding = 12
EncodingBit64 Encoding = 13
EncodingHash128 Encoding = 14
EncodingYear Encoding = 15
EncodingDate Encoding = 16
EncodingTime Encoding = 17
EncodingDatetime Encoding = 18
EncodingEnum Encoding = 19
EncodingSet Encoding = 20
EncodingBytesAddr Encoding = 21
EncodingCommitAddr Encoding = 22
EncodingStringAddr Encoding = 23
EncodingJSONAddr Encoding = 24
EncodingCell Encoding = 25
EncodingGeomAddr Encoding = 26
EncodingExtendedAddr Encoding = 27
EncodingString Encoding = 128
EncodingBytes Encoding = 129
EncodingDecimal Encoding = 130
EncodingJSON Encoding = 131
EncodingGeometry Encoding = 133
EncodingExtended Encoding = 134
EncodingStringToast Encoding = 135
EncodingBytesToast Encoding = 136
EncodingExtendedToast Encoding = 137
)
var EnumNamesEncoding = map[Encoding]string{
EncodingNull: "Null",
EncodingInt8: "Int8",
EncodingUint8: "Uint8",
EncodingInt16: "Int16",
EncodingUint16: "Uint16",
EncodingInt32: "Int32",
EncodingUint32: "Uint32",
EncodingInt64: "Int64",
EncodingUint64: "Uint64",
EncodingFloat32: "Float32",
EncodingFloat64: "Float64",
EncodingBit64: "Bit64",
EncodingHash128: "Hash128",
EncodingYear: "Year",
EncodingDate: "Date",
EncodingTime: "Time",
EncodingDatetime: "Datetime",
EncodingEnum: "Enum",
EncodingSet: "Set",
EncodingBytesAddr: "BytesAddr",
EncodingCommitAddr: "CommitAddr",
EncodingStringAddr: "StringAddr",
EncodingJSONAddr: "JSONAddr",
EncodingCell: "Cell",
EncodingGeomAddr: "GeomAddr",
EncodingExtendedAddr: "ExtendedAddr",
EncodingString: "String",
EncodingBytes: "Bytes",
EncodingDecimal: "Decimal",
EncodingJSON: "JSON",
EncodingGeometry: "Geometry",
EncodingExtended: "Extended",
EncodingNull: "Null",
EncodingInt8: "Int8",
EncodingUint8: "Uint8",
EncodingInt16: "Int16",
EncodingUint16: "Uint16",
EncodingInt32: "Int32",
EncodingUint32: "Uint32",
EncodingInt64: "Int64",
EncodingUint64: "Uint64",
EncodingFloat32: "Float32",
EncodingFloat64: "Float64",
EncodingBit64: "Bit64",
EncodingHash128: "Hash128",
EncodingYear: "Year",
EncodingDate: "Date",
EncodingTime: "Time",
EncodingDatetime: "Datetime",
EncodingEnum: "Enum",
EncodingSet: "Set",
EncodingBytesAddr: "BytesAddr",
EncodingCommitAddr: "CommitAddr",
EncodingStringAddr: "StringAddr",
EncodingJSONAddr: "JSONAddr",
EncodingCell: "Cell",
EncodingGeomAddr: "GeomAddr",
EncodingExtendedAddr: "ExtendedAddr",
EncodingString: "String",
EncodingBytes: "Bytes",
EncodingDecimal: "Decimal",
EncodingJSON: "JSON",
EncodingGeometry: "Geometry",
EncodingExtended: "Extended",
EncodingStringToast: "StringToast",
EncodingBytesToast: "BytesToast",
EncodingExtendedToast: "ExtendedToast",
}
var EnumValuesEncoding = map[string]Encoding{
"Null": EncodingNull,
"Int8": EncodingInt8,
"Uint8": EncodingUint8,
"Int16": EncodingInt16,
"Uint16": EncodingUint16,
"Int32": EncodingInt32,
"Uint32": EncodingUint32,
"Int64": EncodingInt64,
"Uint64": EncodingUint64,
"Float32": EncodingFloat32,
"Float64": EncodingFloat64,
"Bit64": EncodingBit64,
"Hash128": EncodingHash128,
"Year": EncodingYear,
"Date": EncodingDate,
"Time": EncodingTime,
"Datetime": EncodingDatetime,
"Enum": EncodingEnum,
"Set": EncodingSet,
"BytesAddr": EncodingBytesAddr,
"CommitAddr": EncodingCommitAddr,
"StringAddr": EncodingStringAddr,
"JSONAddr": EncodingJSONAddr,
"Cell": EncodingCell,
"GeomAddr": EncodingGeomAddr,
"ExtendedAddr": EncodingExtendedAddr,
"String": EncodingString,
"Bytes": EncodingBytes,
"Decimal": EncodingDecimal,
"JSON": EncodingJSON,
"Geometry": EncodingGeometry,
"Extended": EncodingExtended,
"Null": EncodingNull,
"Int8": EncodingInt8,
"Uint8": EncodingUint8,
"Int16": EncodingInt16,
"Uint16": EncodingUint16,
"Int32": EncodingInt32,
"Uint32": EncodingUint32,
"Int64": EncodingInt64,
"Uint64": EncodingUint64,
"Float32": EncodingFloat32,
"Float64": EncodingFloat64,
"Bit64": EncodingBit64,
"Hash128": EncodingHash128,
"Year": EncodingYear,
"Date": EncodingDate,
"Time": EncodingTime,
"Datetime": EncodingDatetime,
"Enum": EncodingEnum,
"Set": EncodingSet,
"BytesAddr": EncodingBytesAddr,
"CommitAddr": EncodingCommitAddr,
"StringAddr": EncodingStringAddr,
"JSONAddr": EncodingJSONAddr,
"Cell": EncodingCell,
"GeomAddr": EncodingGeomAddr,
"ExtendedAddr": EncodingExtendedAddr,
"String": EncodingString,
"Bytes": EncodingBytes,
"Decimal": EncodingDecimal,
"JSON": EncodingJSON,
"Geometry": EncodingGeometry,
"Extended": EncodingExtended,
"StringToast": EncodingStringToast,
"BytesToast": EncodingBytesToast,
"ExtendedToast": EncodingExtendedToast,
}
func (v Encoding) String() string {

View File

@@ -50,4 +50,7 @@ enum Encoding : uint8 {
JSON = 131,
Geometry = 133,
Extended = 134,
StringToast = 135,
BytesToast = 136,
ExtendedToast = 137
}

View File

@@ -119,12 +119,15 @@ func IsAddrEncoding(enc Encoding) bool {
// Variable Width Encodings
const (
StringEnc = Encoding(serial.EncodingString)
ByteStringEnc = Encoding(serial.EncodingBytes)
DecimalEnc = Encoding(serial.EncodingDecimal)
JSONEnc = Encoding(serial.EncodingJSON)
GeometryEnc = Encoding(serial.EncodingGeometry)
ExtendedEnc = Encoding(serial.EncodingExtended)
StringEnc = Encoding(serial.EncodingString)
ByteStringEnc = Encoding(serial.EncodingBytes)
DecimalEnc = Encoding(serial.EncodingDecimal)
JSONEnc = Encoding(serial.EncodingJSON)
GeometryEnc = Encoding(serial.EncodingGeometry)
ExtendedEnc = Encoding(serial.EncodingExtended)
StringToastEnc = Encoding(serial.EncodingStringToast)
BytesToastEnc = Encoding(serial.EncodingBytesToast)
ExtendedToastEnc = Encoding(serial.EncodingExtendedToast)
)
func sizeFromType(t Type) (ByteSize, bool) {