mirror of
https://github.com/protocolbuffers/protobuf-go.git
synced 2025-03-08 19:14:05 +00:00
reflect/protoreflect: add Enum.Type and Message.Type
CL/174938 removed these methods in favor of a method that returned only the descriptors. This CL adds back in the Type methods alongside the Descriptor methods. In a vast majority of protobuf usages, only the descriptor information is needed. However, there is a small percentage that legitimately needs the Go type information. We should provide both, but document that the descriptor-only information is preferred. Change-Id: Ia0a098997fb1bd009994940ae8ea5257ccd87cae Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/184578 Reviewed-by: Damien Neil <dneil@google.com>
This commit is contained in:
parent
f8b855d768
commit
d421150c3b
@ -280,6 +280,12 @@ func genReflectEnum(gen *protogen.Plugin, g *protogen.GeneratedFile, f *fileInfo
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
// Type method.
|
||||
g.P("func (", enum.GoIdent, ") Type() ", protoreflectPackage.Ident("EnumType"), " {")
|
||||
g.P("return &", typesVar, "[", idx, "]")
|
||||
g.P("}")
|
||||
g.P()
|
||||
|
||||
// Number method.
|
||||
g.P("func (x ", enum.GoIdent, ") Number() ", protoreflectPackage.Ident("EnumNumber"), " {")
|
||||
g.P("return ", protoreflectPackage.Ident("EnumNumber"), "(x)")
|
||||
|
@ -45,6 +45,10 @@ func (AnnotationsTestEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_annotations_annotations_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (AnnotationsTestEnum) Type() protoreflect.EnumType {
|
||||
return &file_annotations_annotations_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x AnnotationsTestEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -1 +1 @@
|
||||
annotation:{path:5 path:0 source_file:"annotations/annotations.proto" begin:571 end:590} annotation:{path:5 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:607 end:654} annotation:{path:4 path:0 source_file:"annotations/annotations.proto" begin:1761 end:1783} annotation:{path:4 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:1839 end:1859} annotation:{path:4 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:2835 end:2858}
|
||||
annotation:{path:5 path:0 source_file:"annotations/annotations.proto" begin:571 end:590} annotation:{path:5 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:607 end:654} annotation:{path:4 path:0 source_file:"annotations/annotations.proto" begin:1879 end:1901} annotation:{path:4 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:1957 end:1977} annotation:{path:4 path:0 path:2 path:0 source_file:"annotations/annotations.proto" begin:2953 end:2976}
|
@ -44,6 +44,10 @@ func (DeprecatedEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_comments_deprecated_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (DeprecatedEnum) Type() protoreflect.EnumType {
|
||||
return &file_comments_deprecated_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x DeprecatedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -48,6 +48,10 @@ func (Enum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_extensions_ext_ext_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum) Type() protoreflect.EnumType {
|
||||
return &file_extensions_ext_ext_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x Enum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -47,6 +47,10 @@ func (Enum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_extensions_proto3_ext3_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum) Type() protoreflect.EnumType {
|
||||
return &file_extensions_proto3_ext3_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x Enum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -52,6 +52,10 @@ func (E) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_import_public_sub_a_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (E) Type() protoreflect.EnumType {
|
||||
return &file_import_public_sub_a_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x E) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -99,6 +103,10 @@ func (M_Subenum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_import_public_sub_a_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (M_Subenum) Type() protoreflect.EnumType {
|
||||
return &file_import_public_sub_a_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x M_Subenum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -146,6 +154,10 @@ func (M_Submessage_Submessage_Subenum) Descriptor() protoreflect.EnumDescriptor
|
||||
return file_import_public_sub_a_proto_enumTypes[2].EnumDescriptor
|
||||
}
|
||||
|
||||
func (M_Submessage_Submessage_Subenum) Type() protoreflect.EnumType {
|
||||
return &file_import_public_sub_a_proto_enumTypes[2]
|
||||
}
|
||||
|
||||
func (x M_Submessage_Submessage_Subenum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -45,6 +45,10 @@ func (E1) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_imports_test_a_1_m1_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (E1) Type() protoreflect.EnumType {
|
||||
return &file_imports_test_a_1_m1_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x E1) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -45,6 +45,10 @@ func (Enum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_nopackage_nopackage_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum) Type() protoreflect.EnumType {
|
||||
return &file_nopackage_nopackage_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x Enum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
24
cmd/protoc-gen-go/testdata/proto2/enum.pb.go
vendored
24
cmd/protoc-gen-go/testdata/proto2/enum.pb.go
vendored
@ -51,6 +51,10 @@ func (EnumType1) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_proto2_enum_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (EnumType1) Type() protoreflect.EnumType {
|
||||
return &file_proto2_enum_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x EnumType1) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -101,6 +105,10 @@ func (EnumType2) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_proto2_enum_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (EnumType2) Type() protoreflect.EnumType {
|
||||
return &file_proto2_enum_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x EnumType2) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -150,6 +158,10 @@ func (EnumContainerMessage1_NestedEnumType1A) Descriptor() protoreflect.EnumDesc
|
||||
return file_proto2_enum_proto_enumTypes[2].EnumDescriptor
|
||||
}
|
||||
|
||||
func (EnumContainerMessage1_NestedEnumType1A) Type() protoreflect.EnumType {
|
||||
return &file_proto2_enum_proto_enumTypes[2]
|
||||
}
|
||||
|
||||
func (x EnumContainerMessage1_NestedEnumType1A) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -197,6 +209,10 @@ func (EnumContainerMessage1_NestedEnumType1B) Descriptor() protoreflect.EnumDesc
|
||||
return file_proto2_enum_proto_enumTypes[3].EnumDescriptor
|
||||
}
|
||||
|
||||
func (EnumContainerMessage1_NestedEnumType1B) Type() protoreflect.EnumType {
|
||||
return &file_proto2_enum_proto_enumTypes[3]
|
||||
}
|
||||
|
||||
func (x EnumContainerMessage1_NestedEnumType1B) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -246,6 +262,10 @@ func (EnumContainerMessage1_EnumContainerMessage2_NestedEnumType2A) Descriptor()
|
||||
return file_proto2_enum_proto_enumTypes[4].EnumDescriptor
|
||||
}
|
||||
|
||||
func (EnumContainerMessage1_EnumContainerMessage2_NestedEnumType2A) Type() protoreflect.EnumType {
|
||||
return &file_proto2_enum_proto_enumTypes[4]
|
||||
}
|
||||
|
||||
func (x EnumContainerMessage1_EnumContainerMessage2_NestedEnumType2A) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -293,6 +313,10 @@ func (EnumContainerMessage1_EnumContainerMessage2_NestedEnumType2B) Descriptor()
|
||||
return file_proto2_enum_proto_enumTypes[5].EnumDescriptor
|
||||
}
|
||||
|
||||
func (EnumContainerMessage1_EnumContainerMessage2_NestedEnumType2B) Type() protoreflect.EnumType {
|
||||
return &file_proto2_enum_proto_enumTypes[5]
|
||||
}
|
||||
|
||||
func (x EnumContainerMessage1_EnumContainerMessage2_NestedEnumType2B) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -49,6 +49,10 @@ func (FieldTestMessage_Enum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_proto2_fields_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (FieldTestMessage_Enum) Type() protoreflect.EnumType {
|
||||
return &file_proto2_fields_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x FieldTestMessage_Enum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
4
cmd/protoc-gen-go/testdata/proto3/enum.pb.go
vendored
4
cmd/protoc-gen-go/testdata/proto3/enum.pb.go
vendored
@ -51,6 +51,10 @@ func (Enum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_proto3_enum_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum) Type() protoreflect.EnumType {
|
||||
return &file_proto3_enum_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x Enum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -45,6 +45,10 @@ func (FieldTestMessage_Enum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_proto3_fields_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (FieldTestMessage_Enum) Type() protoreflect.EnumType {
|
||||
return &file_proto3_fields_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x FieldTestMessage_Enum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -256,12 +256,11 @@ func (o MarshalOptions) marshalExtensions(m pref.Message) error {
|
||||
if !fd.IsExtension() {
|
||||
return true
|
||||
}
|
||||
xt := fd.(pref.ExtensionType)
|
||||
|
||||
// If extended type is a MessageSet, set field name to be the message type name.
|
||||
name := xt.Descriptor().FullName()
|
||||
if isMessageSetExtension(xt) {
|
||||
name = xt.Descriptor().Message().FullName()
|
||||
name := fd.FullName()
|
||||
if isMessageSetExtension(fd) {
|
||||
name = fd.Message().FullName()
|
||||
}
|
||||
|
||||
// Use [name] format for JSON field name.
|
||||
@ -294,18 +293,17 @@ func (o MarshalOptions) marshalExtensions(m pref.Message) error {
|
||||
}
|
||||
|
||||
// isMessageSetExtension reports whether extension extends a message set.
|
||||
func isMessageSetExtension(xt pref.ExtensionType) bool {
|
||||
xd := xt.Descriptor()
|
||||
if xd.Name() != "message_set_extension" {
|
||||
func isMessageSetExtension(fd pref.FieldDescriptor) bool {
|
||||
if fd.Name() != "message_set_extension" {
|
||||
return false
|
||||
}
|
||||
md := xd.Message()
|
||||
md := fd.Message()
|
||||
if md == nil {
|
||||
return false
|
||||
}
|
||||
if xd.FullName().Parent() != md.FullName() {
|
||||
if fd.FullName().Parent() != md.FullName() {
|
||||
return false
|
||||
}
|
||||
xmd, ok := xd.ContainingMessage().(interface{ IsMessageSet() bool })
|
||||
xmd, ok := fd.ContainingMessage().(interface{ IsMessageSet() bool })
|
||||
return ok && xmd.IsMessageSet()
|
||||
}
|
||||
|
@ -189,7 +189,7 @@ func (o MarshalOptions) marshalAny(m pref.Message) error {
|
||||
// If type of value has custom JSON encoding, marshal out a field "value"
|
||||
// with corresponding custom JSON encoding of the embedded message as a
|
||||
// field.
|
||||
if isCustomType(emt.Descriptor().FullName()) {
|
||||
if isCustomType(emt.FullName()) {
|
||||
o.encoder.WriteName("value")
|
||||
return o.marshalCustomType(em)
|
||||
}
|
||||
@ -235,7 +235,7 @@ func (o UnmarshalOptions) unmarshalAny(m pref.Message) error {
|
||||
|
||||
// Create new message for the embedded message type and unmarshal into it.
|
||||
em := emt.New()
|
||||
if isCustomType(emt.Descriptor().FullName()) {
|
||||
if isCustomType(emt.FullName()) {
|
||||
// If embedded message is a custom type, unmarshal the JSON "value" field
|
||||
// into it.
|
||||
if err := o.unmarshalAnyValue(em); err != nil {
|
||||
|
@ -252,17 +252,16 @@ func (o MarshalOptions) appendExtensions(msgFields [][2]text.Value, m pref.Messa
|
||||
if !fd.IsExtension() {
|
||||
return true
|
||||
}
|
||||
xt := fd.(pref.ExtensionType)
|
||||
|
||||
// If extended type is a MessageSet, set field name to be the message type name.
|
||||
name := xt.Descriptor().FullName()
|
||||
if isMessageSetExtension(xt) {
|
||||
name = xt.Descriptor().Message().FullName()
|
||||
name := fd.FullName()
|
||||
if isMessageSetExtension(fd) {
|
||||
name = fd.Message().FullName()
|
||||
}
|
||||
|
||||
// Use string type to produce [name] format.
|
||||
tname := text.ValueOf(string(name))
|
||||
entries, err = o.appendField(entries, tname, v, xt)
|
||||
entries, err = o.appendField(entries, tname, v, fd)
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
@ -281,19 +280,18 @@ func (o MarshalOptions) appendExtensions(msgFields [][2]text.Value, m pref.Messa
|
||||
}
|
||||
|
||||
// isMessageSetExtension reports whether extension extends a message set.
|
||||
func isMessageSetExtension(xt pref.ExtensionType) bool {
|
||||
xd := xt.Descriptor()
|
||||
if xd.Name() != "message_set_extension" {
|
||||
func isMessageSetExtension(fd pref.FieldDescriptor) bool {
|
||||
if fd.Name() != "message_set_extension" {
|
||||
return false
|
||||
}
|
||||
md := xd.Message()
|
||||
md := fd.Message()
|
||||
if md == nil {
|
||||
return false
|
||||
}
|
||||
if xd.FullName().Parent() != md.FullName() {
|
||||
if fd.FullName().Parent() != md.FullName() {
|
||||
return false
|
||||
}
|
||||
xmd, ok := xd.ContainingMessage().(interface{ IsMessageSet() bool })
|
||||
xmd, ok := fd.ContainingMessage().(interface{ IsMessageSet() bool })
|
||||
return ok && xmd.IsMessageSet()
|
||||
}
|
||||
|
||||
|
@ -59,6 +59,10 @@ func (Enum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_pb2_test_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum) Type() protoreflect.EnumType {
|
||||
return &file_pb2_test_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x Enum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -112,6 +116,10 @@ func (Enums_NestedEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_pb2_test_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enums_NestedEnum) Type() protoreflect.EnumType {
|
||||
return &file_pb2_test_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x Enums_NestedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -54,6 +54,10 @@ func (Enum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_pb3_test_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum) Type() protoreflect.EnumType {
|
||||
return &file_pb3_test_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x Enum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -100,6 +104,10 @@ func (Enums_NestedEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_pb3_test_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enums_NestedEnum) Type() protoreflect.EnumType {
|
||||
return &file_pb3_test_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x Enums_NestedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -437,6 +437,9 @@ var implMessageTemplate = template.Must(template.New("").Parse(`
|
||||
func (m *{{.}}) Descriptor() protoreflect.MessageDescriptor {
|
||||
return m.mi.PBType.Descriptor()
|
||||
}
|
||||
func (m *{{.}}) Type() protoreflect.MessageType {
|
||||
return m.mi.PBType
|
||||
}
|
||||
func (m *{{.}}) New() protoreflect.Message {
|
||||
return m.mi.PBType.New()
|
||||
}
|
||||
|
@ -42,8 +42,8 @@ func (mi *MessageInfo) makeMethods(t reflect.Type, si structInfo) {
|
||||
mi.extensionOffset = si.extensionOffset
|
||||
|
||||
mi.coderFields = make(map[wire.Number]*coderFieldInfo)
|
||||
for i := 0; i < mi.PBType.Descriptor().Fields().Len(); i++ {
|
||||
fd := mi.PBType.Descriptor().Fields().Get(i)
|
||||
for i := 0; i < mi.PBType.Fields().Len(); i++ {
|
||||
fd := mi.PBType.Fields().Get(i)
|
||||
|
||||
fs := si.fieldsByNumber[fd.Number()]
|
||||
if fd.ContainingOneof() != nil {
|
||||
|
@ -64,6 +64,9 @@ type legacyEnumWrapper struct {
|
||||
func (e *legacyEnumWrapper) Descriptor() pref.EnumDescriptor {
|
||||
return e.pbTyp.Descriptor()
|
||||
}
|
||||
func (e *legacyEnumWrapper) Type() pref.EnumType {
|
||||
return e.pbTyp
|
||||
}
|
||||
func (e *legacyEnumWrapper) Number() pref.EnumNumber {
|
||||
return e.num
|
||||
}
|
||||
|
@ -65,7 +65,7 @@ func legacyExtensionDescFromType(xt pref.ExtensionType) *piface.ExtensionDescV1
|
||||
|
||||
// Determine the parent type if possible.
|
||||
var parent piface.MessageV1
|
||||
messageName := xt.Descriptor().ContainingMessage().FullName()
|
||||
messageName := xt.ContainingMessage().FullName()
|
||||
if mt, _ := preg.GlobalTypes.FindMessageByName(messageName); mt != nil {
|
||||
// Create a new parent message and unwrap it if possible.
|
||||
mv := mt.New().Interface()
|
||||
@ -96,7 +96,7 @@ func legacyExtensionDescFromType(xt pref.ExtensionType) *piface.ExtensionDescV1
|
||||
// Reconstruct the legacy enum full name, which is an odd mixture of the
|
||||
// proto package name with the Go type name.
|
||||
var enumName string
|
||||
if xt.Descriptor().Kind() == pref.EnumKind {
|
||||
if xt.Kind() == pref.EnumKind {
|
||||
// Derive Go type name.
|
||||
t := extType
|
||||
if t.Kind() == reflect.Ptr || t.Kind() == reflect.Slice {
|
||||
@ -107,7 +107,7 @@ func legacyExtensionDescFromType(xt pref.ExtensionType) *piface.ExtensionDescV1
|
||||
// Derive the proto package name.
|
||||
// For legacy enums, obtain the proto package from the raw descriptor.
|
||||
var protoPkg string
|
||||
if fd := xt.Descriptor().Enum().ParentFile(); fd != nil {
|
||||
if fd := xt.Enum().ParentFile(); fd != nil {
|
||||
protoPkg = string(fd.Package())
|
||||
}
|
||||
if ed, ok := reflect.Zero(t).Interface().(enumV1); ok && protoPkg == "" {
|
||||
@ -122,7 +122,7 @@ func legacyExtensionDescFromType(xt pref.ExtensionType) *piface.ExtensionDescV1
|
||||
|
||||
// Derive the proto file that the extension was declared within.
|
||||
var filename string
|
||||
if fd := xt.Descriptor().ParentFile(); fd != nil {
|
||||
if fd := xt.ParentFile(); fd != nil {
|
||||
filename = fd.Path()
|
||||
}
|
||||
|
||||
@ -131,9 +131,9 @@ func legacyExtensionDescFromType(xt pref.ExtensionType) *piface.ExtensionDescV1
|
||||
Type: xt,
|
||||
ExtendedType: parent,
|
||||
ExtensionType: reflect.Zero(extType).Interface(),
|
||||
Field: int32(xt.Descriptor().Number()),
|
||||
Name: string(xt.Descriptor().FullName()),
|
||||
Tag: ptag.Marshal(xt.Descriptor(), enumName),
|
||||
Field: int32(xt.Number()),
|
||||
Name: string(xt.FullName()),
|
||||
Tag: ptag.Marshal(xt, enumName),
|
||||
Filename: filename,
|
||||
}
|
||||
if d, ok := legacyExtensionDescCache.LoadOrStore(xt, d); ok {
|
||||
@ -287,4 +287,4 @@ func (x *legacyExtensionType) GoType() reflect.Type { return x.t
|
||||
func (x *legacyExtensionType) New() pref.Value { return x.new() }
|
||||
func (x *legacyExtensionType) ValueOf(v interface{}) pref.Value { return x.valueOf(v) }
|
||||
func (x *legacyExtensionType) InterfaceOf(v pref.Value) interface{} { return x.interfaceOf(v) }
|
||||
func (x *legacyExtensionType) Format(s fmt.State, r rune) { descfmt.FormatDesc(s, r, x.Descriptor()) }
|
||||
func (x *legacyExtensionType) Format(s fmt.State, r rune) { descfmt.FormatDesc(s, r, x) }
|
||||
|
@ -605,23 +605,23 @@ func TestConcurrentInit(t *testing.T) {
|
||||
|
||||
var (
|
||||
wantMTA = messageATypes[0]
|
||||
wantMDA = messageATypes[0].Descriptor().Fields().ByNumber(1).Message()
|
||||
wantMDA = messageATypes[0].Fields().ByNumber(1).Message()
|
||||
wantMTB = messageBTypes[0]
|
||||
wantMDB = messageBTypes[0].Descriptor().Fields().ByNumber(2).Message()
|
||||
wantED = messageATypes[0].Descriptor().Fields().ByNumber(3).Enum()
|
||||
wantMDB = messageBTypes[0].Fields().ByNumber(2).Message()
|
||||
wantED = messageATypes[0].Fields().ByNumber(3).Enum()
|
||||
)
|
||||
|
||||
for _, gotMT := range messageATypes[1:] {
|
||||
if gotMT != wantMTA {
|
||||
t.Error("MessageType(MessageA) mismatch")
|
||||
}
|
||||
if gotMDA := gotMT.Descriptor().Fields().ByNumber(1).Message(); gotMDA != wantMDA {
|
||||
if gotMDA := gotMT.Fields().ByNumber(1).Message(); gotMDA != wantMDA {
|
||||
t.Error("MessageDescriptor(MessageA) mismatch")
|
||||
}
|
||||
if gotMDB := gotMT.Descriptor().Fields().ByNumber(2).Message(); gotMDB != wantMDB {
|
||||
if gotMDB := gotMT.Fields().ByNumber(2).Message(); gotMDB != wantMDB {
|
||||
t.Error("MessageDescriptor(MessageB) mismatch")
|
||||
}
|
||||
if gotED := gotMT.Descriptor().Fields().ByNumber(3).Enum(); gotED != wantED {
|
||||
if gotED := gotMT.Fields().ByNumber(3).Enum(); gotED != wantED {
|
||||
t.Error("EnumDescriptor(Enum) mismatch")
|
||||
}
|
||||
}
|
||||
@ -629,13 +629,13 @@ func TestConcurrentInit(t *testing.T) {
|
||||
if gotMT != wantMTB {
|
||||
t.Error("MessageType(MessageB) mismatch")
|
||||
}
|
||||
if gotMDA := gotMT.Descriptor().Fields().ByNumber(1).Message(); gotMDA != wantMDA {
|
||||
if gotMDA := gotMT.Fields().ByNumber(1).Message(); gotMDA != wantMDA {
|
||||
t.Error("MessageDescriptor(MessageA) mismatch")
|
||||
}
|
||||
if gotMDB := gotMT.Descriptor().Fields().ByNumber(2).Message(); gotMDB != wantMDB {
|
||||
if gotMDB := gotMT.Fields().ByNumber(2).Message(); gotMDB != wantMDB {
|
||||
t.Error("MessageDescriptor(MessageB) mismatch")
|
||||
}
|
||||
if gotED := gotMT.Descriptor().Fields().ByNumber(3).Enum(); gotED != wantED {
|
||||
if gotED := gotMT.Fields().ByNumber(3).Enum(); gotED != wantED {
|
||||
t.Error("EnumDescriptor(Enum) mismatch")
|
||||
}
|
||||
}
|
||||
|
@ -224,8 +224,8 @@ fieldLoop:
|
||||
// any discrepancies.
|
||||
func (mi *MessageInfo) makeKnownFieldsFunc(si structInfo) {
|
||||
mi.fields = map[pref.FieldNumber]*fieldInfo{}
|
||||
for i := 0; i < mi.PBType.Descriptor().Fields().Len(); i++ {
|
||||
fd := mi.PBType.Descriptor().Fields().Get(i)
|
||||
for i := 0; i < mi.PBType.Fields().Len(); i++ {
|
||||
fd := mi.PBType.Fields().Get(i)
|
||||
fs := si.fieldsByNumber[fd.Number()]
|
||||
var fi fieldInfo
|
||||
switch {
|
||||
@ -244,8 +244,8 @@ func (mi *MessageInfo) makeKnownFieldsFunc(si structInfo) {
|
||||
}
|
||||
|
||||
mi.oneofs = map[pref.Name]*oneofInfo{}
|
||||
for i := 0; i < mi.PBType.Descriptor().Oneofs().Len(); i++ {
|
||||
od := mi.PBType.Descriptor().Oneofs().Get(i)
|
||||
for i := 0; i < mi.PBType.Oneofs().Len(); i++ {
|
||||
od := mi.PBType.Oneofs().Get(i)
|
||||
mi.oneofs[od.Name()] = makeOneofInfo(od, si.oneofsByName[od.Name()], mi.Exporter, si.oneofWrappersByType)
|
||||
}
|
||||
}
|
||||
|
@ -14,6 +14,9 @@ import (
|
||||
func (m *messageState) Descriptor() protoreflect.MessageDescriptor {
|
||||
return m.mi.PBType.Descriptor()
|
||||
}
|
||||
func (m *messageState) Type() protoreflect.MessageType {
|
||||
return m.mi.PBType
|
||||
}
|
||||
func (m *messageState) New() protoreflect.Message {
|
||||
return m.mi.PBType.New()
|
||||
}
|
||||
@ -106,6 +109,9 @@ func (m *messageState) SetUnknown(b protoreflect.RawFields) {
|
||||
func (m *messageReflectWrapper) Descriptor() protoreflect.MessageDescriptor {
|
||||
return m.mi.PBType.Descriptor()
|
||||
}
|
||||
func (m *messageReflectWrapper) Type() protoreflect.MessageType {
|
||||
return m.mi.PBType
|
||||
}
|
||||
func (m *messageReflectWrapper) New() protoreflect.Message {
|
||||
return m.mi.PBType.New()
|
||||
}
|
||||
|
@ -963,6 +963,7 @@ var enumProto2Type = &prototype.Enum{
|
||||
}
|
||||
|
||||
func (e EnumProto2) Descriptor() pref.EnumDescriptor { return enumProto2Type.Descriptor() }
|
||||
func (e EnumProto2) Type() pref.EnumType { return enumProto2Type }
|
||||
func (e EnumProto2) Enum() *EnumProto2 { return &e }
|
||||
func (e EnumProto2) Number() pref.EnumNumber { return pref.EnumNumber(e) }
|
||||
|
||||
@ -979,6 +980,7 @@ var enumProto3Type = &prototype.Enum{
|
||||
}
|
||||
|
||||
func (e EnumProto3) Descriptor() pref.EnumDescriptor { return enumProto3Type.Descriptor() }
|
||||
func (e EnumProto3) Type() pref.EnumType { return enumProto3Type }
|
||||
func (e EnumProto3) Enum() *EnumProto3 { return &e }
|
||||
func (e EnumProto3) Number() pref.EnumNumber { return pref.EnumNumber(e) }
|
||||
|
||||
|
@ -48,6 +48,10 @@ func (Enum720) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum720) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x Enum720) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -644,6 +648,10 @@ func (Enum3476) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum3476) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x Enum3476) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -724,6 +732,10 @@ func (Enum3805) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[2].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum3805) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[2]
|
||||
}
|
||||
|
||||
func (x Enum3805) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -828,6 +840,10 @@ func (Enum3783) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[3].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum3783) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[3]
|
||||
}
|
||||
|
||||
func (x Enum3783) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -926,6 +942,10 @@ func (Enum3851) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[4].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum3851) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[4]
|
||||
}
|
||||
|
||||
func (x Enum3851) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -976,6 +996,10 @@ func (UnusedEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[5].EnumDescriptor
|
||||
}
|
||||
|
||||
func (UnusedEnum) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[5]
|
||||
}
|
||||
|
||||
func (x UnusedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1035,6 +1059,10 @@ func (Enum4146) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[6].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum4146) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[6]
|
||||
}
|
||||
|
||||
func (x Enum4146) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1085,6 +1113,10 @@ func (Enum4160) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[7].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum4160) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[7]
|
||||
}
|
||||
|
||||
func (x Enum4160) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1150,6 +1182,10 @@ func (Enum4152) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[8].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum4152) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[8]
|
||||
}
|
||||
|
||||
func (x Enum4152) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1260,6 +1296,10 @@ func (Enum6025) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[9].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6025) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[9]
|
||||
}
|
||||
|
||||
func (x Enum6025) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1349,6 +1389,10 @@ func (Enum6065) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[10].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6065) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[10]
|
||||
}
|
||||
|
||||
func (x Enum6065) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1417,6 +1461,10 @@ func (Enum6579) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[11].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6579) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[11]
|
||||
}
|
||||
|
||||
func (x Enum6579) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1563,6 +1611,10 @@ func (Enum6588) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[12].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6588) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[12]
|
||||
}
|
||||
|
||||
func (x Enum6588) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1616,6 +1668,10 @@ func (Enum6769) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[13].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6769) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[13]
|
||||
}
|
||||
|
||||
func (x Enum6769) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1681,6 +1737,10 @@ func (Enum6774) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[14].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6774) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[14]
|
||||
}
|
||||
|
||||
func (x Enum6774) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1743,6 +1803,10 @@ func (Enum6782) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[15].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6782) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[15]
|
||||
}
|
||||
|
||||
func (x Enum6782) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1799,6 +1863,10 @@ func (Enum6858) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[16].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6858) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[16]
|
||||
}
|
||||
|
||||
func (x Enum6858) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1861,6 +1929,10 @@ func (Enum6815) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[17].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6815) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[17]
|
||||
}
|
||||
|
||||
func (x Enum6815) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1917,6 +1989,10 @@ func (Enum6822) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[18].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6822) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[18]
|
||||
}
|
||||
|
||||
func (x Enum6822) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1970,6 +2046,10 @@ func (Enum7654) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[19].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum7654) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[19]
|
||||
}
|
||||
|
||||
func (x Enum7654) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2023,6 +2103,10 @@ func (Enum8292) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[20].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum8292) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[20]
|
||||
}
|
||||
|
||||
func (x Enum8292) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2076,6 +2160,10 @@ func (Enum8450) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[21].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum8450) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[21]
|
||||
}
|
||||
|
||||
func (x Enum8450) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2135,6 +2223,10 @@ func (Enum8900) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[22].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum8900) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[22]
|
||||
}
|
||||
|
||||
func (x Enum8900) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2194,6 +2286,10 @@ func (Enum8945) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[23].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum8945) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[23]
|
||||
}
|
||||
|
||||
func (x Enum8945) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2262,6 +2358,10 @@ func (Enum8951) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[24].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum8951) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[24]
|
||||
}
|
||||
|
||||
func (x Enum8951) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2555,6 +2655,10 @@ func (Enum9243) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[25].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum9243) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[25]
|
||||
}
|
||||
|
||||
func (x Enum9243) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2626,6 +2730,10 @@ func (Enum10157) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[26].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum10157) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[26]
|
||||
}
|
||||
|
||||
func (x Enum10157) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2697,6 +2805,10 @@ func (Enum10167) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[27].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum10167) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[27]
|
||||
}
|
||||
|
||||
func (x Enum10167) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2789,6 +2901,10 @@ func (Enum8862) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[28].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum8862) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[28]
|
||||
}
|
||||
|
||||
func (x Enum8862) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2860,6 +2976,10 @@ func (Enum10325) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[29].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum10325) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[29]
|
||||
}
|
||||
|
||||
func (x Enum10325) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2907,6 +3027,10 @@ func (Enum10335) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[30].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum10335) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[30]
|
||||
}
|
||||
|
||||
func (x Enum10335) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2957,6 +3081,10 @@ func (Enum10337) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[31].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum10337) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[31]
|
||||
}
|
||||
|
||||
func (x Enum10337) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -3055,6 +3183,10 @@ func (Enum10392) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[32].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum10392) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[32]
|
||||
}
|
||||
|
||||
func (x Enum10392) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -4179,6 +4311,10 @@ func (Enum11107) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[33].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum11107) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[33]
|
||||
}
|
||||
|
||||
func (x Enum11107) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -4796,6 +4932,10 @@ func (Enum11541) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[34].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum11541) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[34]
|
||||
}
|
||||
|
||||
func (x Enum11541) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -4912,6 +5052,10 @@ func (Enum11468) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[35].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum11468) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[35]
|
||||
}
|
||||
|
||||
func (x Enum11468) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -5208,6 +5352,10 @@ func (Enum11022) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[36].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum11022) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[36]
|
||||
}
|
||||
|
||||
func (x Enum11022) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -5261,6 +5409,10 @@ func (Enum12670) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[37].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum12670) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[37]
|
||||
}
|
||||
|
||||
func (x Enum12670) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -5323,6 +5475,10 @@ func (Enum12871) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[38].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum12871) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[38]
|
||||
}
|
||||
|
||||
func (x Enum12871) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -5376,6 +5532,10 @@ func (Enum13092) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[39].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum13092) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[39]
|
||||
}
|
||||
|
||||
func (x Enum13092) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -5432,6 +5592,10 @@ func (Enum13146) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[40].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum13146) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[40]
|
||||
}
|
||||
|
||||
func (x Enum13146) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -6562,6 +6726,10 @@ func (Enum16042) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[41].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum16042) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[41]
|
||||
}
|
||||
|
||||
func (x Enum16042) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -6636,6 +6804,10 @@ func (Enum16553) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[42].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum16553) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[42]
|
||||
}
|
||||
|
||||
func (x Enum16553) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -6689,6 +6861,10 @@ func (Enum16728) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[43].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum16728) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[43]
|
||||
}
|
||||
|
||||
func (x Enum16728) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -6748,6 +6924,10 @@ func (Enum16732) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[44].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum16732) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[44]
|
||||
}
|
||||
|
||||
func (x Enum16732) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -6813,6 +6993,10 @@ func (Enum16738) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[45].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum16738) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[45]
|
||||
}
|
||||
|
||||
func (x Enum16738) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -6926,6 +7110,10 @@ func (Enum16698) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[46].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum16698) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[46]
|
||||
}
|
||||
|
||||
func (x Enum16698) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -6988,6 +7176,10 @@ func (Enum16819) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[47].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum16819) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[47]
|
||||
}
|
||||
|
||||
func (x Enum16819) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7074,6 +7266,10 @@ func (Enum16925) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[48].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum16925) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[48]
|
||||
}
|
||||
|
||||
func (x Enum16925) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7124,6 +7320,10 @@ func (Enum22854) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[49].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum22854) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[49]
|
||||
}
|
||||
|
||||
func (x Enum22854) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7180,6 +7380,10 @@ func (Enum24361) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[50].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum24361) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[50]
|
||||
}
|
||||
|
||||
func (x Enum24361) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7320,6 +7524,10 @@ func (Enum16891) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[51].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum16891) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[51]
|
||||
}
|
||||
|
||||
func (x Enum16891) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7379,6 +7587,10 @@ func (Enum27361) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[52].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum27361) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[52]
|
||||
}
|
||||
|
||||
func (x Enum27361) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7444,6 +7656,10 @@ func (Enum33960) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[53].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum33960) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[53]
|
||||
}
|
||||
|
||||
func (x Enum33960) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7491,6 +7707,10 @@ func (Enum34388) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[54].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum34388) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[54]
|
||||
}
|
||||
|
||||
func (x Enum34388) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7550,6 +7770,10 @@ func (Enum35477) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[55].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum35477) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[55]
|
||||
}
|
||||
|
||||
func (x Enum35477) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7624,6 +7848,10 @@ func (Enum35507) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[56].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum35507) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[56]
|
||||
}
|
||||
|
||||
func (x Enum35507) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7692,6 +7920,10 @@ func (Enum36860) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[57].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum36860) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[57]
|
||||
}
|
||||
|
||||
func (x Enum36860) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -7742,6 +7974,10 @@ func (Enum36890) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[58].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum36890) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message3_benchmark_message3_8_proto_enumTypes[58]
|
||||
}
|
||||
|
||||
func (x Enum36890) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -48,6 +48,10 @@ func (UnusedEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (UnusedEnum) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x UnusedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -116,6 +120,10 @@ func (Enum2593) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum2593) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x Enum2593) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -169,6 +177,10 @@ func (Enum2834) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[2].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum2834) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[2]
|
||||
}
|
||||
|
||||
func (x Enum2834) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -258,6 +270,10 @@ func (Enum2806) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[3].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum2806) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[3]
|
||||
}
|
||||
|
||||
func (x Enum2806) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -665,6 +681,10 @@ func (Enum2851) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[4].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum2851) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[4]
|
||||
}
|
||||
|
||||
func (x Enum2851) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -745,6 +765,10 @@ func (Enum2602) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[5].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum2602) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[5]
|
||||
}
|
||||
|
||||
func (x Enum2602) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -873,6 +897,10 @@ func (Enum3071) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[6].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum3071) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[6]
|
||||
}
|
||||
|
||||
func (x Enum3071) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -953,6 +981,10 @@ func (Enum3805) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[7].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum3805) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[7]
|
||||
}
|
||||
|
||||
func (x Enum3805) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1057,6 +1089,10 @@ func (Enum3783) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[8].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum3783) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[8]
|
||||
}
|
||||
|
||||
func (x Enum3783) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1155,6 +1191,10 @@ func (Enum3851) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[9].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum3851) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[9]
|
||||
}
|
||||
|
||||
func (x Enum3851) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1208,6 +1248,10 @@ func (Enum5862) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[10].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5862) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[10]
|
||||
}
|
||||
|
||||
func (x Enum5862) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1264,6 +1308,10 @@ func (Enum5868) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[11].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5868) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[11]
|
||||
}
|
||||
|
||||
func (x Enum5868) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1317,6 +1365,10 @@ func (Enum5873) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[12].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5873) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[12]
|
||||
}
|
||||
|
||||
func (x Enum5873) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1367,6 +1419,10 @@ func (Enum5904) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[13].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5904) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[13]
|
||||
}
|
||||
|
||||
func (x Enum5904) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1417,6 +1473,10 @@ func (Enum5909) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[14].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5909) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[14]
|
||||
}
|
||||
|
||||
func (x Enum5909) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1467,6 +1527,10 @@ func (Enum5912) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[15].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5912) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[15]
|
||||
}
|
||||
|
||||
func (x Enum5912) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1523,6 +1587,10 @@ func (Enum5915) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[16].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5915) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[16]
|
||||
}
|
||||
|
||||
func (x Enum5915) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1573,6 +1641,10 @@ func (Enum5920) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[17].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5920) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[17]
|
||||
}
|
||||
|
||||
func (x Enum5920) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1629,6 +1701,10 @@ func (Enum5923) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[18].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5923) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[18]
|
||||
}
|
||||
|
||||
func (x Enum5923) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1679,6 +1755,10 @@ func (Enum5928) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[19].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5928) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[19]
|
||||
}
|
||||
|
||||
func (x Enum5928) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1732,6 +1812,10 @@ func (Enum5931) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[20].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5931) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[20]
|
||||
}
|
||||
|
||||
func (x Enum5931) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1785,6 +1869,10 @@ func (Enum5935) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[21].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5935) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[21]
|
||||
}
|
||||
|
||||
func (x Enum5935) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1847,6 +1935,10 @@ func (Enum5939) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[22].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5939) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[22]
|
||||
}
|
||||
|
||||
func (x Enum5939) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1921,6 +2013,10 @@ func (Enum5946) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[23].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5946) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[23]
|
||||
}
|
||||
|
||||
func (x Enum5946) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -1977,6 +2073,10 @@ func (Enum5957) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[24].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5957) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[24]
|
||||
}
|
||||
|
||||
func (x Enum5957) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2027,6 +2127,10 @@ func (Enum5962) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[25].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum5962) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[25]
|
||||
}
|
||||
|
||||
func (x Enum5962) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2137,6 +2241,10 @@ func (Enum6025) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[26].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6025) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[26]
|
||||
}
|
||||
|
||||
func (x Enum6025) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2223,6 +2331,10 @@ func (Enum6111) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[27].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6111) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[27]
|
||||
}
|
||||
|
||||
func (x Enum6111) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2312,6 +2424,10 @@ func (Enum6065) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[28].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6065) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[28]
|
||||
}
|
||||
|
||||
func (x Enum6065) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2362,6 +2478,10 @@ func (Enum6130) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[29].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6130) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[29]
|
||||
}
|
||||
|
||||
func (x Enum6130) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2430,6 +2550,10 @@ func (Enum6579) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[30].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6579) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[30]
|
||||
}
|
||||
|
||||
func (x Enum6579) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2576,6 +2700,10 @@ func (Enum6588) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[31].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum6588) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[31]
|
||||
}
|
||||
|
||||
func (x Enum6588) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2632,6 +2760,10 @@ func (Enum7288) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[32].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum7288) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[32]
|
||||
}
|
||||
|
||||
func (x Enum7288) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2700,6 +2832,10 @@ func (Enum7512) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[33].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum7512) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[33]
|
||||
}
|
||||
|
||||
func (x Enum7512) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -2759,6 +2895,10 @@ func (Enum7922) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[34].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum7922) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[34]
|
||||
}
|
||||
|
||||
func (x Enum7922) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -3355,6 +3495,10 @@ func (Enum3476) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[35].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum3476) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[35]
|
||||
}
|
||||
|
||||
func (x Enum3476) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -3426,6 +3570,10 @@ func (Enum10325) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[36].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum10325) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[36]
|
||||
}
|
||||
|
||||
func (x Enum10325) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -3473,6 +3621,10 @@ func (Enum10335) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[37].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum10335) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[37]
|
||||
}
|
||||
|
||||
func (x Enum10335) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -3523,6 +3675,10 @@ func (Enum10337) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[38].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum10337) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[38]
|
||||
}
|
||||
|
||||
func (x Enum10337) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -3579,6 +3735,10 @@ func (Enum11901) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[39].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum11901) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[39]
|
||||
}
|
||||
|
||||
func (x Enum11901) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -3635,6 +3795,10 @@ func (Enum12735) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[40].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum12735) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[40]
|
||||
}
|
||||
|
||||
func (x Enum12735) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -3697,6 +3861,10 @@ func (Enum12871) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[41].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum12871) Type() protoreflect.EnumType {
|
||||
return &file_datasets_google_message4_benchmark_message4_3_proto_enumTypes[41]
|
||||
}
|
||||
|
||||
func (x Enum12871) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -57,6 +57,10 @@ func (WireFormat) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_conformance_conformance_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (WireFormat) Type() protoreflect.EnumType {
|
||||
return &file_conformance_conformance_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x WireFormat) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -117,6 +121,10 @@ func (TestCategory) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_conformance_conformance_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (TestCategory) Type() protoreflect.EnumType {
|
||||
return &file_conformance_conformance_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x TestCategory) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -52,6 +52,10 @@ func (ForeignEnumProto2) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_test_messages_proto2_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (ForeignEnumProto2) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_test_messages_proto2_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x ForeignEnumProto2) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -108,6 +112,10 @@ func (TestAllTypesProto2_NestedEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_test_messages_proto2_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (TestAllTypesProto2_NestedEnum) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_test_messages_proto2_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x TestAllTypesProto2_NestedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -57,6 +57,10 @@ func (ForeignEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_test_messages_proto3_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (ForeignEnum) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_test_messages_proto3_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x ForeignEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -103,6 +107,10 @@ func (TestAllTypesProto3_NestedEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_test_messages_proto3_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (TestAllTypesProto3_NestedEnum) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_test_messages_proto3_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x TestAllTypesProto3_NestedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -155,6 +163,10 @@ func (TestAllTypesProto3_AliasedEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_test_messages_proto3_proto_enumTypes[2].EnumDescriptor
|
||||
}
|
||||
|
||||
func (TestAllTypesProto3_AliasedEnum) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_test_messages_proto3_proto_enumTypes[2]
|
||||
}
|
||||
|
||||
func (x TestAllTypesProto3_AliasedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -8,6 +8,8 @@ import (
|
||||
"google.golang.org/protobuf/encoding/prototext"
|
||||
"google.golang.org/protobuf/reflect/protodesc"
|
||||
pref "google.golang.org/protobuf/reflect/protoreflect"
|
||||
"google.golang.org/protobuf/reflect/prototype"
|
||||
|
||||
"google.golang.org/protobuf/types/descriptorpb"
|
||||
)
|
||||
|
||||
@ -20,11 +22,19 @@ func (m *IrregularMessage) ProtoReflect() pref.Message { return (*message)(m) }
|
||||
|
||||
type message IrregularMessage
|
||||
|
||||
func (m *message) Descriptor() pref.MessageDescriptor { return descriptor.Messages().Get(0) }
|
||||
var messageType = &prototype.Message{
|
||||
MessageDescriptor: fileDesc.Messages().Get(0),
|
||||
NewMessage: func() pref.Message {
|
||||
return &message{}
|
||||
},
|
||||
}
|
||||
|
||||
func (m *message) Descriptor() pref.MessageDescriptor { return messageType.Descriptor() }
|
||||
func (m *message) Type() pref.MessageType { return messageType }
|
||||
func (m *message) New() pref.Message { return &message{} }
|
||||
func (m *message) Interface() pref.ProtoMessage { return (*IrregularMessage)(m) }
|
||||
|
||||
var fieldDescS = descriptor.Messages().Get(0).Fields().Get(0)
|
||||
var fieldDescS = fileDesc.Messages().Get(0).Fields().Get(0)
|
||||
|
||||
func (m *message) Range(f func(pref.FieldDescriptor, pref.Value) bool) {
|
||||
if m.set {
|
||||
@ -79,7 +89,7 @@ func (m *message) WhichOneof(pref.OneofDescriptor) pref.FieldDescriptor {
|
||||
func (m *message) GetUnknown() pref.RawFields { return nil }
|
||||
func (m *message) SetUnknown(pref.RawFields) { return }
|
||||
|
||||
var descriptor = func() pref.FileDescriptor {
|
||||
var fileDesc = func() pref.FileDescriptor {
|
||||
p := &descriptorpb.FileDescriptorProto{}
|
||||
if err := prototext.Unmarshal([]byte(descriptorText), p); err != nil {
|
||||
panic(err)
|
||||
@ -91,7 +101,7 @@ var descriptor = func() pref.FileDescriptor {
|
||||
return file
|
||||
}()
|
||||
|
||||
func file_irregular_irregular_proto_init() { _ = descriptor }
|
||||
func file_irregular_irregular_proto_init() { _ = fileDesc }
|
||||
|
||||
const descriptorText = `
|
||||
name: "internal/testprotos/irregular/irregular.proto"
|
||||
|
@ -53,6 +53,10 @@ func (ForeignEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_test_test_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (ForeignEnum) Type() protoreflect.EnumType {
|
||||
return &file_test_test_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x ForeignEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -100,6 +104,10 @@ func (TestReservedEnumFields) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_test_test_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (TestReservedEnumFields) Type() protoreflect.EnumType {
|
||||
return &file_test_test_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x TestReservedEnumFields) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -156,6 +164,10 @@ func (TestAllTypes_NestedEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_test_test_proto_enumTypes[2].EnumDescriptor
|
||||
}
|
||||
|
||||
func (TestAllTypes_NestedEnum) Type() protoreflect.EnumType {
|
||||
return &file_test_test_proto_enumTypes[2]
|
||||
}
|
||||
|
||||
func (x TestAllTypes_NestedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -202,6 +214,10 @@ func (TestDeprecatedMessage_DeprecatedEnum) Descriptor() protoreflect.EnumDescri
|
||||
return file_test_test_proto_enumTypes[3].EnumDescriptor
|
||||
}
|
||||
|
||||
func (TestDeprecatedMessage_DeprecatedEnum) Type() protoreflect.EnumType {
|
||||
return &file_test_test_proto_enumTypes[3]
|
||||
}
|
||||
|
||||
func (x TestDeprecatedMessage_DeprecatedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -45,6 +45,10 @@ func (ImportEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_test_test_import_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (ImportEnum) Type() protoreflect.EnumType {
|
||||
return &file_test_test_import_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x ImportEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -54,6 +54,10 @@ func (ForeignEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_test3_test_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (ForeignEnum) Type() protoreflect.EnumType {
|
||||
return &file_test3_test_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x ForeignEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -100,6 +104,10 @@ func (TestAllTypes_NestedEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_test3_test_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (TestAllTypes_NestedEnum) Type() protoreflect.EnumType {
|
||||
return &file_test3_test_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x TestAllTypes_NestedEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -45,6 +45,10 @@ func (ImportEnum) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_test3_test_import_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (ImportEnum) Type() protoreflect.EnumType {
|
||||
return &file_test3_test_import_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x ImportEnum) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -11,8 +11,15 @@ import "google.golang.org/protobuf/internal/encoding/wire"
|
||||
// Enum does not provide a mutable API since enums are commonly backed by
|
||||
// Go constants, which are not addressable.
|
||||
type Enum interface {
|
||||
// Descriptor returns enum descriptor, which contains only the protobuf
|
||||
// type information for the enum.
|
||||
Descriptor() EnumDescriptor
|
||||
|
||||
// Type returns the enum type, which encapsulates both Go and protobuf
|
||||
// type information. If the Go type information is not needed,
|
||||
// it is recommended that the enum descriptor be used instead.
|
||||
Type() EnumType
|
||||
|
||||
// Number returns the enum value as an integer.
|
||||
Number() EnumNumber
|
||||
}
|
||||
@ -31,8 +38,15 @@ type Enum interface {
|
||||
// See Value for the Go types associated with a FieldDescriptor.
|
||||
// Providing a Value that is invalid or of an incorrect type panics.
|
||||
type Message interface {
|
||||
// Descriptor returns message descriptor, which contains only the protobuf
|
||||
// type information for the message.
|
||||
Descriptor() MessageDescriptor
|
||||
|
||||
// Type returns the message type, which encapsulates both Go and protobuf
|
||||
// type information. If the Go type information is not needed,
|
||||
// it is recommended that the message descriptor be used instead.
|
||||
Type() MessageType
|
||||
|
||||
// New returns a newly allocated and mutable empty message.
|
||||
New() Message
|
||||
|
||||
|
@ -406,11 +406,11 @@ typeLoop:
|
||||
var name protoreflect.FullName
|
||||
switch t := typ.(type) {
|
||||
case protoreflect.EnumType:
|
||||
name = t.Descriptor().FullName()
|
||||
name = t.FullName()
|
||||
case protoreflect.MessageType:
|
||||
name = t.Descriptor().FullName()
|
||||
name = t.FullName()
|
||||
case protoreflect.ExtensionType:
|
||||
name = t.Descriptor().FullName()
|
||||
name = t.FullName()
|
||||
default:
|
||||
panic(fmt.Sprintf("invalid type: %T", t))
|
||||
}
|
||||
@ -423,8 +423,8 @@ typeLoop:
|
||||
|
||||
// Check for conflicts in extensionsByMessage.
|
||||
if xt, _ := typ.(protoreflect.ExtensionType); xt != nil {
|
||||
field := xt.Descriptor().Number()
|
||||
message := xt.Descriptor().ContainingMessage().FullName()
|
||||
field := xt.Number()
|
||||
message := xt.ContainingMessage().FullName()
|
||||
if r.extensionsByMessage[message][field] != nil {
|
||||
if firstErr == nil {
|
||||
firstErr = errors.New("extension %v is already registered on message %v", name, message)
|
||||
|
@ -536,11 +536,11 @@ func TestTypes(t *testing.T) {
|
||||
fullName := func(t preg.Type) pref.FullName {
|
||||
switch t := t.(type) {
|
||||
case pref.EnumType:
|
||||
return t.Descriptor().FullName()
|
||||
return t.FullName()
|
||||
case pref.MessageType:
|
||||
return t.Descriptor().FullName()
|
||||
return t.FullName()
|
||||
case pref.ExtensionType:
|
||||
return t.Descriptor().FullName()
|
||||
return t.FullName()
|
||||
default:
|
||||
panic("invalid type")
|
||||
}
|
||||
|
@ -46,6 +46,10 @@ func (Enum1) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_test_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum1) Type() protoreflect.EnumType {
|
||||
return &file_test_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x Enum1) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -93,6 +97,10 @@ func (Enum2) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_test_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum2) Type() protoreflect.EnumType {
|
||||
return &file_test_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x Enum2) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -140,6 +148,10 @@ func (Enum3) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_test_proto_enumTypes[2].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Enum3) Type() protoreflect.EnumType {
|
||||
return &file_test_proto_enumTypes[2]
|
||||
}
|
||||
|
||||
func (x Enum3) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -108,6 +108,10 @@ func (FieldDescriptorProto_Type) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_descriptor_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (FieldDescriptorProto_Type) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_descriptor_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x FieldDescriptorProto_Type) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -162,6 +166,10 @@ func (FieldDescriptorProto_Label) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_descriptor_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (FieldDescriptorProto_Label) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_descriptor_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x FieldDescriptorProto_Label) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -217,6 +225,10 @@ func (FileOptions_OptimizeMode) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_descriptor_proto_enumTypes[2].EnumDescriptor
|
||||
}
|
||||
|
||||
func (FileOptions_OptimizeMode) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_descriptor_proto_enumTypes[2]
|
||||
}
|
||||
|
||||
func (x FileOptions_OptimizeMode) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -271,6 +283,10 @@ func (FieldOptions_CType) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_descriptor_proto_enumTypes[3].EnumDescriptor
|
||||
}
|
||||
|
||||
func (FieldOptions_CType) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_descriptor_proto_enumTypes[3]
|
||||
}
|
||||
|
||||
func (x FieldOptions_CType) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -327,6 +343,10 @@ func (FieldOptions_JSType) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_descriptor_proto_enumTypes[4].EnumDescriptor
|
||||
}
|
||||
|
||||
func (FieldOptions_JSType) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_descriptor_proto_enumTypes[4]
|
||||
}
|
||||
|
||||
func (x FieldOptions_JSType) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -383,6 +403,10 @@ func (MethodOptions_IdempotencyLevel) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_descriptor_proto_enumTypes[5].EnumDescriptor
|
||||
}
|
||||
|
||||
func (MethodOptions_IdempotencyLevel) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_descriptor_proto_enumTypes[5]
|
||||
}
|
||||
|
||||
func (x MethodOptions_IdempotencyLevel) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -10,6 +10,7 @@ import (
|
||||
|
||||
"google.golang.org/protobuf/internal/errors"
|
||||
pref "google.golang.org/protobuf/reflect/protoreflect"
|
||||
"google.golang.org/protobuf/reflect/prototype"
|
||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||
)
|
||||
|
||||
@ -29,7 +30,7 @@ import (
|
||||
//
|
||||
// Operations which modify a Message are not safe for concurrent use.
|
||||
type Message struct {
|
||||
desc pref.MessageDescriptor
|
||||
typ prototype.Message
|
||||
known map[pref.FieldNumber]pref.Value
|
||||
ext map[pref.FieldNumber]pref.FieldDescriptor
|
||||
unknown pref.RawFields
|
||||
@ -38,7 +39,10 @@ type Message struct {
|
||||
// New creates a new message with the provided descriptor.
|
||||
func New(desc pref.MessageDescriptor) *Message {
|
||||
return &Message{
|
||||
desc: desc,
|
||||
typ: prototype.Message{
|
||||
MessageDescriptor: desc,
|
||||
NewMessage: func() pref.Message { return New(desc) },
|
||||
},
|
||||
known: make(map[pref.FieldNumber]pref.Value),
|
||||
ext: make(map[pref.FieldNumber]pref.FieldDescriptor),
|
||||
}
|
||||
@ -56,13 +60,18 @@ func (m *Message) String() string {
|
||||
|
||||
// Descriptor returns the message descriptor.
|
||||
func (m *Message) Descriptor() pref.MessageDescriptor {
|
||||
return m.desc
|
||||
return m.typ.Descriptor()
|
||||
}
|
||||
|
||||
// Type returns the message type.
|
||||
func (m *Message) Type() pref.MessageType {
|
||||
return &m.typ
|
||||
}
|
||||
|
||||
// New returns a newly allocated empty message with the same descriptor.
|
||||
// See protoreflect.Message for details.
|
||||
func (m *Message) New() pref.Message {
|
||||
return New(m.desc)
|
||||
return m.Type().New()
|
||||
}
|
||||
|
||||
// Interface returns the message.
|
||||
@ -77,7 +86,7 @@ func (m *Message) Range(f func(pref.FieldDescriptor, pref.Value) bool) {
|
||||
for num, v := range m.known {
|
||||
fd := m.ext[num]
|
||||
if fd == nil {
|
||||
fd = m.desc.Fields().ByNumber(num)
|
||||
fd = m.Descriptor().Fields().ByNumber(num)
|
||||
if !isSet(fd, v) {
|
||||
continue
|
||||
}
|
||||
@ -237,16 +246,16 @@ func (m *Message) SetUnknown(r pref.RawFields) {
|
||||
}
|
||||
|
||||
func (m *Message) checkField(fd pref.FieldDescriptor) {
|
||||
if fd.IsExtension() && fd.ContainingMessage().FullName() == m.desc.FullName() {
|
||||
if fd.IsExtension() && fd.ContainingMessage().FullName() == m.Descriptor().FullName() {
|
||||
if _, ok := fd.(pref.ExtensionType); !ok {
|
||||
panic(errors.New("%v: extension field descriptor does not implement ExtensionType", fd.FullName()))
|
||||
}
|
||||
return
|
||||
}
|
||||
if fd.Parent() == m.desc {
|
||||
if fd.Parent() == m.Descriptor() {
|
||||
return
|
||||
}
|
||||
fields := m.desc.Fields()
|
||||
fields := m.Descriptor().Fields()
|
||||
index := fd.Index()
|
||||
if index >= fields.Len() || fields.Get(index) != fd {
|
||||
panic(errors.New("%v: field descriptor does not belong to this message", fd.FullName()))
|
||||
|
@ -50,6 +50,10 @@ func (NullValue) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_struct_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (NullValue) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_struct_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x NullValue) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
@ -53,6 +53,10 @@ func (Syntax) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_type_proto_enumTypes[0].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Syntax) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_type_proto_enumTypes[0]
|
||||
}
|
||||
|
||||
func (x Syntax) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -164,6 +168,10 @@ func (Field_Kind) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_type_proto_enumTypes[1].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Field_Kind) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_type_proto_enumTypes[1]
|
||||
}
|
||||
|
||||
func (x Field_Kind) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
@ -215,6 +223,10 @@ func (Field_Cardinality) Descriptor() protoreflect.EnumDescriptor {
|
||||
return file_google_protobuf_type_proto_enumTypes[2].EnumDescriptor
|
||||
}
|
||||
|
||||
func (Field_Cardinality) Type() protoreflect.EnumType {
|
||||
return &file_google_protobuf_type_proto_enumTypes[2]
|
||||
}
|
||||
|
||||
func (x Field_Cardinality) Number() protoreflect.EnumNumber {
|
||||
return protoreflect.EnumNumber(x)
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user