package impl
import (
)
func (Export) ( protoreflect.EnumDescriptor) string {
return legacyEnumName()
}
func (Export) ( protoiface.MessageV1, protoreflect.FullName) protoreflect.MessageType {
if := (Export{}).protoMessageV2Of(); != nil {
return .ProtoReflect().Type()
}
return legacyLoadMessageType(reflect.TypeOf(), )
}
func (Export) ( protoreflect.EnumDescriptor, []byte) (protoreflect.EnumNumber, error) {
if [0] == '"' {
var protoreflect.Name
if := json.Unmarshal(, &); != nil {
return 0, errors.New("invalid input for enum %v: %s", .FullName(), )
}
:= .Values().ByName()
if == nil {
return 0, errors.New("invalid value for enum %v: %s", .FullName(), )
}
return .Number(), nil
} else {
var protoreflect.EnumNumber
if := json.Unmarshal(, &); != nil {
return 0, errors.New("invalid input for enum %v: %s", .FullName(), )
}
return , nil
}
}
func (Export) ( []byte) ( []byte) {
var = [10]byte{0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff}
var [5]byte
const = math.MaxUint16
:= 1 + len()/
var [8]byte
binary.LittleEndian.PutUint32([0:4], crc32.ChecksumIEEE())
binary.LittleEndian.PutUint32([4:8], uint32(len()))
= make([]byte, 0, len()+len()*+len()+len())
= append(, [:]...)
for [0] == 0 {
:=
if > len() {
[0] = 0x01
= len()
}
binary.LittleEndian.PutUint16([1:3], uint16())
binary.LittleEndian.PutUint16([3:5], ^uint16())
= append(, [:]...)
= append(, [:]...)
= [:]
}
= append(, [:]...)
return
}