mirror of
https://github.com/protocolbuffers/protobuf-go.git
synced 2025-01-08 09:38:16 +00:00
559d47f1da
The v1 registration leaks the message types out to the proto package. When doing that, it must ensure that the reflection data structures for those types are properly initialized first. We achieve that by doing v1 registration at the end of the reflection init function. Change-Id: If6df18df59d05bad50ff39c2eff6beb19e7466cc Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/168348 Reviewed-by: Damien Neil <dneil@google.com>
127 lines
4.4 KiB
Go
127 lines
4.4 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// source: issue780_oneof_conflict/test.proto
|
|
|
|
package oneoftest
|
|
|
|
import (
|
|
proto "github.com/golang/protobuf/proto"
|
|
protoreflect "github.com/golang/protobuf/v2/reflect/protoreflect"
|
|
protoimpl "github.com/golang/protobuf/v2/runtime/protoimpl"
|
|
reflect "reflect"
|
|
)
|
|
|
|
type Foo struct {
|
|
// Types that are valid to be assigned to Bar:
|
|
// *Foo_GetBar
|
|
Bar isFoo_Bar `protobuf_oneof:"bar"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *Foo) ProtoReflect() protoreflect.Message {
|
|
return xxx_File_issue780_oneof_conflict_test_proto_messageTypes[0].MessageOf(m)
|
|
}
|
|
func (m *Foo) Reset() { *m = Foo{} }
|
|
func (m *Foo) String() string { return proto.CompactTextString(m) }
|
|
func (*Foo) ProtoMessage() {}
|
|
|
|
// Deprecated: Use Foo.ProtoReflect.Type instead.
|
|
func (*Foo) Descriptor() ([]byte, []int) {
|
|
return xxx_File_issue780_oneof_conflict_test_proto_rawdesc_gzipped, []int{0}
|
|
}
|
|
|
|
func (m *Foo) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_Foo.Unmarshal(m, b)
|
|
}
|
|
func (m *Foo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_Foo.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *Foo) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_Foo.Merge(m, src)
|
|
}
|
|
func (m *Foo) XXX_Size() int {
|
|
return xxx_messageInfo_Foo.Size(m)
|
|
}
|
|
func (m *Foo) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_Foo.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_Foo proto.InternalMessageInfo
|
|
|
|
type isFoo_Bar interface {
|
|
isFoo_Bar()
|
|
}
|
|
|
|
type Foo_GetBar struct {
|
|
GetBar string `protobuf:"bytes,1,opt,name=get_bar,json=getBar,oneof"`
|
|
}
|
|
|
|
func (*Foo_GetBar) isFoo_Bar() {}
|
|
|
|
func (m *Foo) GetBar() isFoo_Bar {
|
|
if m != nil {
|
|
return m.Bar
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *Foo) GetGetBar() string {
|
|
if x, ok := m.GetBar().(*Foo_GetBar); ok {
|
|
return x.GetBar
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// XXX_OneofWrappers is for the internal use of the proto package.
|
|
func (*Foo) XXX_OneofWrappers() []interface{} {
|
|
return []interface{}{
|
|
(*Foo_GetBar)(nil),
|
|
}
|
|
}
|
|
|
|
var xxx_File_issue780_oneof_conflict_test_proto_rawdesc = []byte{
|
|
// 88 bytes of the wire-encoded FileDescriptorProto
|
|
0x0a, 0x22, 0x69, 0x73, 0x73, 0x75, 0x65, 0x37, 0x38, 0x30, 0x5f, 0x6f, 0x6e, 0x65, 0x6f, 0x66,
|
|
0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x70,
|
|
0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x74, 0x65, 0x73, 0x74, 0x22,
|
|
0x27, 0x0a, 0x03, 0x46, 0x6f, 0x6f, 0x12, 0x19, 0x0a, 0x07, 0x67, 0x65, 0x74, 0x5f, 0x62, 0x61,
|
|
0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x67, 0x65, 0x74, 0x42, 0x61,
|
|
0x72, 0x42, 0x05, 0x0a, 0x03, 0x62, 0x61, 0x72,
|
|
}
|
|
|
|
var xxx_File_issue780_oneof_conflict_test_proto_rawdesc_gzipped = protoimpl.X.CompressGZIP(xxx_File_issue780_oneof_conflict_test_proto_rawdesc)
|
|
|
|
const _ = protoimpl.EnforceVersion(protoimpl.Version - 0)
|
|
|
|
var File_issue780_oneof_conflict_test_proto protoreflect.FileDescriptor
|
|
|
|
var xxx_File_issue780_oneof_conflict_test_proto_messageTypes = make([]protoimpl.MessageType, 1)
|
|
var xxx_File_issue780_oneof_conflict_test_proto_goTypes = []interface{}{
|
|
(*Foo)(nil), // 0: oneoftest.Foo
|
|
}
|
|
var xxx_File_issue780_oneof_conflict_test_proto_depIdxs = []int32{}
|
|
|
|
func init() { xxx_File_issue780_oneof_conflict_test_proto_init() }
|
|
func xxx_File_issue780_oneof_conflict_test_proto_init() {
|
|
if File_issue780_oneof_conflict_test_proto != nil {
|
|
return
|
|
}
|
|
messageTypes := make([]protoreflect.MessageType, 1)
|
|
File_issue780_oneof_conflict_test_proto = protoimpl.FileBuilder{
|
|
RawDescriptor: xxx_File_issue780_oneof_conflict_test_proto_rawdesc,
|
|
GoTypes: xxx_File_issue780_oneof_conflict_test_proto_goTypes,
|
|
DependencyIndexes: xxx_File_issue780_oneof_conflict_test_proto_depIdxs,
|
|
MessageOutputTypes: messageTypes,
|
|
}.Init()
|
|
messageGoTypes := xxx_File_issue780_oneof_conflict_test_proto_goTypes[0:][:1]
|
|
for i, mt := range messageTypes {
|
|
xxx_File_issue780_oneof_conflict_test_proto_messageTypes[i].GoType = reflect.TypeOf(messageGoTypes[i])
|
|
xxx_File_issue780_oneof_conflict_test_proto_messageTypes[i].PBType = mt
|
|
}
|
|
proto.RegisterFile("issue780_oneof_conflict/test.proto", xxx_File_issue780_oneof_conflict_test_proto_rawdesc_gzipped)
|
|
proto.RegisterType((*Foo)(nil), "oneoftest.Foo")
|
|
xxx_File_issue780_oneof_conflict_test_proto_goTypes = nil
|
|
xxx_File_issue780_oneof_conflict_test_proto_depIdxs = nil
|
|
}
|