// Copyright 2018 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

// Code generated by protoc-gen-go. DO NOT EDIT.
// source: cmd/protoc-gen-go/testdata/extensions/ext/ext.proto

package ext

import (
	base "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/extensions/base"
	extra "google.golang.org/protobuf/cmd/protoc-gen-go/testdata/extensions/extra"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

type Enum int32

const (
	Enum_ZERO Enum = 0
)

// Enum value maps for Enum.
var (
	Enum_name = map[int32]string{
		0: "ZERO",
	}
	Enum_value = map[string]int32{
		"ZERO": 0,
	}
)

func (x Enum) Enum() *Enum {
	p := new(Enum)
	*p = x
	return p
}

func (x Enum) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (Enum) Descriptor() protoreflect.EnumDescriptor {
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_enumTypes[0].Descriptor()
}

func (Enum) Type() protoreflect.EnumType {
	return &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_enumTypes[0]
}

func (x Enum) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Do not use.
func (x *Enum) UnmarshalJSON(b []byte) error {
	num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
	if err != nil {
		return err
	}
	*x = Enum(num)
	return nil
}

// Deprecated: Use Enum.Descriptor instead.
func (Enum) EnumDescriptor() ([]byte, []int) {
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescGZIP(), []int{0}
}

type Message struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Data          []byte                 `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Message) Reset() {
	*x = Message{}
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Message) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Message) ProtoMessage() {}

func (x *Message) ProtoReflect() protoreflect.Message {
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Message.ProtoReflect.Descriptor instead.
func (*Message) Descriptor() ([]byte, []int) {
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescGZIP(), []int{0}
}

func (x *Message) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

type ExtensionGroup struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	ExtensionGroup *string                `protobuf:"bytes,120,opt,name=extension_group,json=extensionGroup" json:"extension_group,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *ExtensionGroup) Reset() {
	*x = ExtensionGroup{}
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ExtensionGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExtensionGroup) ProtoMessage() {}

func (x *ExtensionGroup) ProtoReflect() protoreflect.Message {
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExtensionGroup.ProtoReflect.Descriptor instead.
func (*ExtensionGroup) Descriptor() ([]byte, []int) {
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescGZIP(), []int{1}
}

func (x *ExtensionGroup) GetExtensionGroup() string {
	if x != nil && x.ExtensionGroup != nil {
		return *x.ExtensionGroup
	}
	return ""
}

// Extend in the scope of another type.
type ExtendingMessage struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ExtendingMessage) Reset() {
	*x = ExtendingMessage{}
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ExtendingMessage) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExtendingMessage) ProtoMessage() {}

func (x *ExtendingMessage) ProtoReflect() protoreflect.Message {
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExtendingMessage.ProtoReflect.Descriptor instead.
func (*ExtendingMessage) Descriptor() ([]byte, []int) {
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescGZIP(), []int{2}
}

type RepeatedGroup struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	RepeatedXGroup []string               `protobuf:"bytes,319,rep,name=repeated_x_group,json=repeatedXGroup" json:"repeated_x_group,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *RepeatedGroup) Reset() {
	*x = RepeatedGroup{}
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RepeatedGroup) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RepeatedGroup) ProtoMessage() {}

func (x *RepeatedGroup) ProtoReflect() protoreflect.Message {
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RepeatedGroup.ProtoReflect.Descriptor instead.
func (*RepeatedGroup) Descriptor() ([]byte, []int) {
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescGZIP(), []int{3}
}

func (x *RepeatedGroup) GetRepeatedXGroup() []string {
	if x != nil {
		return x.RepeatedXGroup
	}
	return nil
}

// An extension of an extension.
type Extendable struct {
	state           protoimpl.MessageState `protogen:"open.v1"`
	extensionFields protoimpl.ExtensionFields
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

func (x *Extendable) Reset() {
	*x = Extendable{}
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Extendable) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Extendable) ProtoMessage() {}

func (x *Extendable) ProtoReflect() protoreflect.Message {
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Extendable.ProtoReflect.Descriptor instead.
func (*Extendable) Descriptor() ([]byte, []int) {
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescGZIP(), []int{4}
}

// Message set wire format.
type MessageSetWireFormatExtension struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *MessageSetWireFormatExtension) Reset() {
	*x = MessageSetWireFormatExtension{}
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *MessageSetWireFormatExtension) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MessageSetWireFormatExtension) ProtoMessage() {}

func (x *MessageSetWireFormatExtension) ProtoReflect() protoreflect.Message {
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[5]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MessageSetWireFormatExtension.ProtoReflect.Descriptor instead.
func (*MessageSetWireFormatExtension) Descriptor() ([]byte, []int) {
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescGZIP(), []int{5}
}

type Message_M struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Message_M) Reset() {
	*x = Message_M{}
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Message_M) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Message_M) ProtoMessage() {}

func (x *Message_M) ProtoReflect() protoreflect.Message {
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[6]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Message_M.ProtoReflect.Descriptor instead.
func (*Message_M) Descriptor() ([]byte, []int) {
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescGZIP(), []int{0, 0}
}

type ExtendingMessage_ExtendingMessageSubmessage struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ExtendingMessage_ExtendingMessageSubmessage) Reset() {
	*x = ExtendingMessage_ExtendingMessageSubmessage{}
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[7]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ExtendingMessage_ExtendingMessageSubmessage) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExtendingMessage_ExtendingMessageSubmessage) ProtoMessage() {}

func (x *ExtendingMessage_ExtendingMessageSubmessage) ProtoReflect() protoreflect.Message {
	mi := &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes[7]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExtendingMessage_ExtendingMessageSubmessage.ProtoReflect.Descriptor instead.
func (*ExtendingMessage_ExtendingMessageSubmessage) Descriptor() ([]byte, []int) {
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescGZIP(), []int{2, 0}
}

var file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes = []protoimpl.ExtensionInfo{
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*bool)(nil),
		Field:         101,
		Name:          "goproto.protoc.extension.ext.extension_bool",
		Tag:           "varint,101,opt,name=extension_bool",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*Enum)(nil),
		Field:         102,
		Name:          "goproto.protoc.extension.ext.extension_enum",
		Tag:           "varint,102,opt,name=extension_enum,enum=goproto.protoc.extension.ext.Enum",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*int32)(nil),
		Field:         103,
		Name:          "goproto.protoc.extension.ext.extension_int32",
		Tag:           "varint,103,opt,name=extension_int32",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*int32)(nil),
		Field:         104,
		Name:          "goproto.protoc.extension.ext.extension_sint32",
		Tag:           "zigzag32,104,opt,name=extension_sint32",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*uint32)(nil),
		Field:         105,
		Name:          "goproto.protoc.extension.ext.extension_uint32",
		Tag:           "varint,105,opt,name=extension_uint32",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*int64)(nil),
		Field:         106,
		Name:          "goproto.protoc.extension.ext.extension_int64",
		Tag:           "varint,106,opt,name=extension_int64",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*int64)(nil),
		Field:         107,
		Name:          "goproto.protoc.extension.ext.extension_sint64",
		Tag:           "zigzag64,107,opt,name=extension_sint64",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*uint64)(nil),
		Field:         108,
		Name:          "goproto.protoc.extension.ext.extension_uint64",
		Tag:           "varint,108,opt,name=extension_uint64",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*int32)(nil),
		Field:         109,
		Name:          "goproto.protoc.extension.ext.extension_sfixed32",
		Tag:           "fixed32,109,opt,name=extension_sfixed32",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*uint32)(nil),
		Field:         110,
		Name:          "goproto.protoc.extension.ext.extension_fixed32",
		Tag:           "fixed32,110,opt,name=extension_fixed32",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*float32)(nil),
		Field:         111,
		Name:          "goproto.protoc.extension.ext.extension_float",
		Tag:           "fixed32,111,opt,name=extension_float",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*int64)(nil),
		Field:         112,
		Name:          "goproto.protoc.extension.ext.extension_sfixed64",
		Tag:           "fixed64,112,opt,name=extension_sfixed64",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*uint64)(nil),
		Field:         113,
		Name:          "goproto.protoc.extension.ext.extension_fixed64",
		Tag:           "fixed64,113,opt,name=extension_fixed64",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*float64)(nil),
		Field:         114,
		Name:          "goproto.protoc.extension.ext.extension_double",
		Tag:           "fixed64,114,opt,name=extension_double",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*string)(nil),
		Field:         115,
		Name:          "goproto.protoc.extension.ext.extension_string",
		Tag:           "bytes,115,opt,name=extension_string",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]byte)(nil),
		Field:         116,
		Name:          "goproto.protoc.extension.ext.extension_bytes",
		Tag:           "bytes,116,opt,name=extension_bytes",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*Message)(nil),
		Field:         117,
		Name:          "goproto.protoc.extension.ext.extension_Message",
		Tag:           "bytes,117,opt,name=extension_Message",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*Message_M)(nil),
		Field:         118,
		Name:          "goproto.protoc.extension.ext.extension_MessageM",
		Tag:           "bytes,118,opt,name=extension_MessageM",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*ExtensionGroup)(nil),
		Field:         119,
		Name:          "goproto.protoc.extension.ext.extensiongroup",
		Tag:           "group,119,opt,name=ExtensionGroup",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*extra.ExtraMessage)(nil),
		Field:         9,
		Name:          "goproto.protoc.extension.ext.extra_message",
		Tag:           "bytes,9,opt,name=extra_message",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]bool)(nil),
		Field:         301,
		Name:          "goproto.protoc.extension.ext.repeated_x_bool",
		Tag:           "varint,301,rep,name=repeated_x_bool",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]Enum)(nil),
		Field:         302,
		Name:          "goproto.protoc.extension.ext.repeated_x_enum",
		Tag:           "varint,302,rep,name=repeated_x_enum,enum=goproto.protoc.extension.ext.Enum",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]int32)(nil),
		Field:         303,
		Name:          "goproto.protoc.extension.ext.repeated_x_int32",
		Tag:           "varint,303,rep,name=repeated_x_int32",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]int32)(nil),
		Field:         304,
		Name:          "goproto.protoc.extension.ext.repeated_x_sint32",
		Tag:           "zigzag32,304,rep,name=repeated_x_sint32",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]uint32)(nil),
		Field:         305,
		Name:          "goproto.protoc.extension.ext.repeated_x_uint32",
		Tag:           "varint,305,rep,name=repeated_x_uint32",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]int64)(nil),
		Field:         306,
		Name:          "goproto.protoc.extension.ext.repeated_x_int64",
		Tag:           "varint,306,rep,name=repeated_x_int64",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]int64)(nil),
		Field:         307,
		Name:          "goproto.protoc.extension.ext.repeated_x_sint64",
		Tag:           "zigzag64,307,rep,name=repeated_x_sint64",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]uint64)(nil),
		Field:         308,
		Name:          "goproto.protoc.extension.ext.repeated_x_uint64",
		Tag:           "varint,308,rep,name=repeated_x_uint64",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]int32)(nil),
		Field:         309,
		Name:          "goproto.protoc.extension.ext.repeated_x_sfixed32",
		Tag:           "fixed32,309,rep,name=repeated_x_sfixed32",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]uint32)(nil),
		Field:         310,
		Name:          "goproto.protoc.extension.ext.repeated_x_fixed32",
		Tag:           "fixed32,310,rep,name=repeated_x_fixed32",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]float32)(nil),
		Field:         311,
		Name:          "goproto.protoc.extension.ext.repeated_x_float",
		Tag:           "fixed32,311,rep,name=repeated_x_float",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]int64)(nil),
		Field:         312,
		Name:          "goproto.protoc.extension.ext.repeated_x_sfixed64",
		Tag:           "fixed64,312,rep,name=repeated_x_sfixed64",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]uint64)(nil),
		Field:         313,
		Name:          "goproto.protoc.extension.ext.repeated_x_fixed64",
		Tag:           "fixed64,313,rep,name=repeated_x_fixed64",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]float64)(nil),
		Field:         314,
		Name:          "goproto.protoc.extension.ext.repeated_x_double",
		Tag:           "fixed64,314,rep,name=repeated_x_double",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]string)(nil),
		Field:         315,
		Name:          "goproto.protoc.extension.ext.repeated_x_string",
		Tag:           "bytes,315,rep,name=repeated_x_string",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([][]byte)(nil),
		Field:         316,
		Name:          "goproto.protoc.extension.ext.repeated_x_bytes",
		Tag:           "bytes,316,rep,name=repeated_x_bytes",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]*Message)(nil),
		Field:         317,
		Name:          "goproto.protoc.extension.ext.repeated_x_Message",
		Tag:           "bytes,317,rep,name=repeated_x_Message",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: ([]*RepeatedGroup)(nil),
		Field:         318,
		Name:          "goproto.protoc.extension.ext.repeatedgroup",
		Tag:           "group,318,rep,name=RepeatedGroup",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*Extendable)(nil),
		Field:         400,
		Name:          "goproto.protoc.extension.ext.extendable_field",
		Tag:           "bytes,400,opt,name=extendable_field",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*Extendable)(nil),
		ExtensionType: (*string)(nil),
		Field:         1,
		Name:          "goproto.protoc.extension.ext.extendable_string_field",
		Tag:           "bytes,1,opt,name=extendable_string_field",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.MessageSetWireFormatMessage)(nil),
		ExtensionType: (*MessageSetWireFormatExtension)(nil),
		Field:         101,
		Name:          "goproto.protoc.extension.ext.message_set_extension",
		Tag:           "bytes,101,opt,name=message_set_extension",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*string)(nil),
		Field:         200,
		Name:          "goproto.protoc.extension.ext.ExtendingMessage.extending_message_string",
		Tag:           "bytes,200,opt,name=extending_message_string",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.BaseMessage)(nil),
		ExtensionType: (*ExtendingMessage_ExtendingMessageSubmessage)(nil),
		Field:         201,
		Name:          "goproto.protoc.extension.ext.ExtendingMessage.extending_message_submessage",
		Tag:           "bytes,201,opt,name=extending_message_submessage",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
	{
		ExtendedType:  (*base.MessageSetWireFormatMessage)(nil),
		ExtensionType: (*MessageSetWireFormatExtension)(nil),
		Field:         100,
		Name:          "goproto.protoc.extension.ext.MessageSetWireFormatExtension.message_set_extension",
		Tag:           "bytes,100,opt,name=message_set_extension",
		Filename:      "cmd/protoc-gen-go/testdata/extensions/ext/ext.proto",
	},
}

// Extension fields to base.BaseMessage.
var (
	// optional bool extension_bool = 101;
	E_ExtensionBool = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[0]
	// optional goproto.protoc.extension.ext.Enum extension_enum = 102;
	E_ExtensionEnum = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[1]
	// optional int32 extension_int32 = 103;
	E_ExtensionInt32 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[2]
	// optional sint32 extension_sint32 = 104;
	E_ExtensionSint32 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[3]
	// optional uint32 extension_uint32 = 105;
	E_ExtensionUint32 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[4]
	// optional int64 extension_int64 = 106;
	E_ExtensionInt64 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[5]
	// optional sint64 extension_sint64 = 107;
	E_ExtensionSint64 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[6]
	// optional uint64 extension_uint64 = 108;
	E_ExtensionUint64 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[7]
	// optional sfixed32 extension_sfixed32 = 109;
	E_ExtensionSfixed32 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[8]
	// optional fixed32 extension_fixed32 = 110;
	E_ExtensionFixed32 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[9]
	// optional float extension_float = 111;
	E_ExtensionFloat = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[10]
	// optional sfixed64 extension_sfixed64 = 112;
	E_ExtensionSfixed64 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[11]
	// optional fixed64 extension_fixed64 = 113;
	E_ExtensionFixed64 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[12]
	// optional double extension_double = 114;
	E_ExtensionDouble = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[13]
	// optional string extension_string = 115;
	E_ExtensionString = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[14]
	// optional bytes extension_bytes = 116;
	E_ExtensionBytes = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[15]
	// optional goproto.protoc.extension.ext.Message extension_Message = 117;
	E_Extension_Message = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[16]
	// optional goproto.protoc.extension.ext.Message.M extension_MessageM = 118;
	E_Extension_MessageM = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[17]
	// optional goproto.protoc.extension.ext.ExtensionGroup extensiongroup = 119;
	E_Extensiongroup = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[18]
	// optional goproto.protoc.extension.extra.ExtraMessage extra_message = 9;
	E_ExtraMessage = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[19]
	// repeated bool repeated_x_bool = 301;
	E_RepeatedXBool = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[20]
	// repeated goproto.protoc.extension.ext.Enum repeated_x_enum = 302;
	E_RepeatedXEnum = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[21]
	// repeated int32 repeated_x_int32 = 303;
	E_RepeatedXInt32 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[22]
	// repeated sint32 repeated_x_sint32 = 304;
	E_RepeatedXSint32 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[23]
	// repeated uint32 repeated_x_uint32 = 305;
	E_RepeatedXUint32 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[24]
	// repeated int64 repeated_x_int64 = 306;
	E_RepeatedXInt64 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[25]
	// repeated sint64 repeated_x_sint64 = 307;
	E_RepeatedXSint64 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[26]
	// repeated uint64 repeated_x_uint64 = 308;
	E_RepeatedXUint64 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[27]
	// repeated sfixed32 repeated_x_sfixed32 = 309;
	E_RepeatedXSfixed32 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[28]
	// repeated fixed32 repeated_x_fixed32 = 310;
	E_RepeatedXFixed32 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[29]
	// repeated float repeated_x_float = 311;
	E_RepeatedXFloat = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[30]
	// repeated sfixed64 repeated_x_sfixed64 = 312;
	E_RepeatedXSfixed64 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[31]
	// repeated fixed64 repeated_x_fixed64 = 313;
	E_RepeatedXFixed64 = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[32]
	// repeated double repeated_x_double = 314;
	E_RepeatedXDouble = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[33]
	// repeated string repeated_x_string = 315;
	E_RepeatedXString = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[34]
	// repeated bytes repeated_x_bytes = 316;
	E_RepeatedXBytes = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[35]
	// repeated goproto.protoc.extension.ext.Message repeated_x_Message = 317;
	E_RepeatedX_Message = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[36]
	// repeated goproto.protoc.extension.ext.RepeatedGroup repeatedgroup = 318;
	E_Repeatedgroup = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[37]
	// optional goproto.protoc.extension.ext.Extendable extendable_field = 400;
	E_ExtendableField = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[38]
	// optional string extending_message_string = 200;
	E_ExtendingMessage_ExtendingMessageString = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[41]
	// optional goproto.protoc.extension.ext.ExtendingMessage.ExtendingMessageSubmessage extending_message_submessage = 201;
	E_ExtendingMessage_ExtendingMessageSubmessage = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[42]
)

// Extension fields to Extendable.
var (
	// optional string extendable_string_field = 1;
	E_ExtendableStringField = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[39]
)

// Extension fields to base.MessageSetWireFormatMessage.
var (
	// optional goproto.protoc.extension.ext.MessageSetWireFormatExtension message_set_extension = 101;
	E_MessageSetExtension = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[40]
	// optional goproto.protoc.extension.ext.MessageSetWireFormatExtension message_set_extension = 100;
	E_MessageSetWireFormatExtension_MessageSetExtension = &file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes[43]
)

var File_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto protoreflect.FileDescriptor

const file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDesc = "" +
	"\n" +
	"3cmd/protoc-gen-go/testdata/extensions/ext/ext.proto\x12\x1cgoproto.protoc.extension.ext\x1a5cmd/protoc-gen-go/testdata/extensions/base/base.proto\x1a7cmd/protoc-gen-go/testdata/extensions/extra/extra.proto\"\"\n" +
	"\aMessage\x12\x12\n" +
	"\x04data\x18\x01 \x01(\fR\x04data\x1a\x03\n" +
	"\x01M\"9\n" +
	"\x0eExtensionGroup\x12'\n" +
	"\x0fextension_group\x18x \x01(\tR\x0eextensionGroup\"\xd2\x02\n" +
	"\x10ExtendingMessage\x1a\x1c\n" +
	"\x1aExtendingMessageSubmessage2e\n" +
	"\x18extending_message_string\x12*.goproto.protoc.extension.base.BaseMessage\x18\xc8\x01 \x01(\tR\x16extendingMessageString2\xb8\x01\n" +
	"\x1cextending_message_submessage\x12*.goproto.protoc.extension.base.BaseMessage\x18\xc9\x01 \x01(\v2I.goproto.protoc.extension.ext.ExtendingMessage.ExtendingMessageSubmessageR\x1aextendingMessageSubmessage\":\n" +
	"\rRepeatedGroup\x12)\n" +
	"\x10repeated_x_group\x18\xbf\x02 \x03(\tR\x0erepeatedXGroup\"\x16\n" +
	"\n" +
	"Extendable*\b\b\x01\x10\x80\x80\x80\x80\x02\"\xcd\x01\n" +
	"\x1dMessageSetWireFormatExtension2\xab\x01\n" +
	"\x15message_set_extension\x12:.goproto.protoc.extension.base.MessageSetWireFormatMessage\x18d \x01(\v2;.goproto.protoc.extension.ext.MessageSetWireFormatExtensionR\x13messageSetExtension*\x10\n" +
	"\x04Enum\x12\b\n" +
	"\x04ZERO\x10\x00:Q\n" +
	"\x0eextension_bool\x12*.goproto.protoc.extension.base.BaseMessage\x18e \x01(\bR\rextensionBool:u\n" +
	"\x0eextension_enum\x12*.goproto.protoc.extension.base.BaseMessage\x18f \x01(\x0e2\".goproto.protoc.extension.ext.EnumR\rextensionEnum:S\n" +
	"\x0fextension_int32\x12*.goproto.protoc.extension.base.BaseMessage\x18g \x01(\x05R\x0eextensionInt32:U\n" +
	"\x10extension_sint32\x12*.goproto.protoc.extension.base.BaseMessage\x18h \x01(\x11R\x0fextensionSint32:U\n" +
	"\x10extension_uint32\x12*.goproto.protoc.extension.base.BaseMessage\x18i \x01(\rR\x0fextensionUint32:S\n" +
	"\x0fextension_int64\x12*.goproto.protoc.extension.base.BaseMessage\x18j \x01(\x03R\x0eextensionInt64:U\n" +
	"\x10extension_sint64\x12*.goproto.protoc.extension.base.BaseMessage\x18k \x01(\x12R\x0fextensionSint64:U\n" +
	"\x10extension_uint64\x12*.goproto.protoc.extension.base.BaseMessage\x18l \x01(\x04R\x0fextensionUint64:Y\n" +
	"\x12extension_sfixed32\x12*.goproto.protoc.extension.base.BaseMessage\x18m \x01(\x0fR\x11extensionSfixed32:W\n" +
	"\x11extension_fixed32\x12*.goproto.protoc.extension.base.BaseMessage\x18n \x01(\aR\x10extensionFixed32:S\n" +
	"\x0fextension_float\x12*.goproto.protoc.extension.base.BaseMessage\x18o \x01(\x02R\x0eextensionFloat:Y\n" +
	"\x12extension_sfixed64\x12*.goproto.protoc.extension.base.BaseMessage\x18p \x01(\x10R\x11extensionSfixed64:W\n" +
	"\x11extension_fixed64\x12*.goproto.protoc.extension.base.BaseMessage\x18q \x01(\x06R\x10extensionFixed64:U\n" +
	"\x10extension_double\x12*.goproto.protoc.extension.base.BaseMessage\x18r \x01(\x01R\x0fextensionDouble:U\n" +
	"\x10extension_string\x12*.goproto.protoc.extension.base.BaseMessage\x18s \x01(\tR\x0fextensionString:S\n" +
	"\x0fextension_bytes\x12*.goproto.protoc.extension.base.BaseMessage\x18t \x01(\fR\x0eextensionBytes:~\n" +
	"\x11extension_Message\x12*.goproto.protoc.extension.base.BaseMessage\x18u \x01(\v2%.goproto.protoc.extension.ext.MessageR\x10extensionMessage:\x82\x01\n" +
	"\x12extension_MessageM\x12*.goproto.protoc.extension.base.BaseMessage\x18v \x01(\v2'.goproto.protoc.extension.ext.Message.MR\x11extensionMessageM:\x80\x01\n" +
	"\x0eextensiongroup\x12*.goproto.protoc.extension.base.BaseMessage\x18w \x01(\n" +
	"2,.goproto.protoc.extension.ext.ExtensionGroupR\x0eextensiongroup:}\n" +
	"\rextra_message\x12*.goproto.protoc.extension.base.BaseMessage\x18\t \x01(\v2,.goproto.protoc.extension.extra.ExtraMessageR\fextraMessage:S\n" +
	"\x0frepeated_x_bool\x12*.goproto.protoc.extension.base.BaseMessage\x18\xad\x02 \x03(\bR\rrepeatedXBool:w\n" +
	"\x0frepeated_x_enum\x12*.goproto.protoc.extension.base.BaseMessage\x18\xae\x02 \x03(\x0e2\".goproto.protoc.extension.ext.EnumR\rrepeatedXEnum:U\n" +
	"\x10repeated_x_int32\x12*.goproto.protoc.extension.base.BaseMessage\x18\xaf\x02 \x03(\x05R\x0erepeatedXInt32:W\n" +
	"\x11repeated_x_sint32\x12*.goproto.protoc.extension.base.BaseMessage\x18\xb0\x02 \x03(\x11R\x0frepeatedXSint32:W\n" +
	"\x11repeated_x_uint32\x12*.goproto.protoc.extension.base.BaseMessage\x18\xb1\x02 \x03(\rR\x0frepeatedXUint32:U\n" +
	"\x10repeated_x_int64\x12*.goproto.protoc.extension.base.BaseMessage\x18\xb2\x02 \x03(\x03R\x0erepeatedXInt64:W\n" +
	"\x11repeated_x_sint64\x12*.goproto.protoc.extension.base.BaseMessage\x18\xb3\x02 \x03(\x12R\x0frepeatedXSint64:W\n" +
	"\x11repeated_x_uint64\x12*.goproto.protoc.extension.base.BaseMessage\x18\xb4\x02 \x03(\x04R\x0frepeatedXUint64:[\n" +
	"\x13repeated_x_sfixed32\x12*.goproto.protoc.extension.base.BaseMessage\x18\xb5\x02 \x03(\x0fR\x11repeatedXSfixed32:Y\n" +
	"\x12repeated_x_fixed32\x12*.goproto.protoc.extension.base.BaseMessage\x18\xb6\x02 \x03(\aR\x10repeatedXFixed32:U\n" +
	"\x10repeated_x_float\x12*.goproto.protoc.extension.base.BaseMessage\x18\xb7\x02 \x03(\x02R\x0erepeatedXFloat:[\n" +
	"\x13repeated_x_sfixed64\x12*.goproto.protoc.extension.base.BaseMessage\x18\xb8\x02 \x03(\x10R\x11repeatedXSfixed64:Y\n" +
	"\x12repeated_x_fixed64\x12*.goproto.protoc.extension.base.BaseMessage\x18\xb9\x02 \x03(\x06R\x10repeatedXFixed64:W\n" +
	"\x11repeated_x_double\x12*.goproto.protoc.extension.base.BaseMessage\x18\xba\x02 \x03(\x01R\x0frepeatedXDouble:W\n" +
	"\x11repeated_x_string\x12*.goproto.protoc.extension.base.BaseMessage\x18\xbb\x02 \x03(\tR\x0frepeatedXString:U\n" +
	"\x10repeated_x_bytes\x12*.goproto.protoc.extension.base.BaseMessage\x18\xbc\x02 \x03(\fR\x0erepeatedXBytes:\x80\x01\n" +
	"\x12repeated_x_Message\x12*.goproto.protoc.extension.base.BaseMessage\x18\xbd\x02 \x03(\v2%.goproto.protoc.extension.ext.MessageR\x10repeatedXMessage:~\n" +
	"\rrepeatedgroup\x12*.goproto.protoc.extension.base.BaseMessage\x18\xbe\x02 \x03(\n" +
	"2+.goproto.protoc.extension.ext.RepeatedGroupR\rrepeatedgroup:\x80\x01\n" +
	"\x10extendable_field\x12*.goproto.protoc.extension.base.BaseMessage\x18\x90\x03 \x01(\v2(.goproto.protoc.extension.ext.ExtendableR\x0fextendableField:`\n" +
	"\x17extendable_string_field\x12(.goproto.protoc.extension.ext.Extendable\x18\x01 \x01(\tR\x15extendableStringField:\xab\x01\n" +
	"\x15message_set_extension\x12:.goproto.protoc.extension.base.MessageSetWireFormatMessage\x18e \x01(\v2;.goproto.protoc.extension.ext.MessageSetWireFormatExtensionR\x13messageSetExtensionBFZDgoogle.golang.org/protobuf/cmd/protoc-gen-go/testdata/extensions/ext"

var (
	file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescOnce sync.Once
	file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescData []byte
)

func file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescGZIP() []byte {
	file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescOnce.Do(func() {
		file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDesc)))
	})
	return file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDescData
}

var file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
var file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_goTypes = []any{
	(Enum)(0),                             // 0: goproto.protoc.extension.ext.Enum
	(*Message)(nil),                       // 1: goproto.protoc.extension.ext.Message
	(*ExtensionGroup)(nil),                // 2: goproto.protoc.extension.ext.ExtensionGroup
	(*ExtendingMessage)(nil),              // 3: goproto.protoc.extension.ext.ExtendingMessage
	(*RepeatedGroup)(nil),                 // 4: goproto.protoc.extension.ext.RepeatedGroup
	(*Extendable)(nil),                    // 5: goproto.protoc.extension.ext.Extendable
	(*MessageSetWireFormatExtension)(nil), // 6: goproto.protoc.extension.ext.MessageSetWireFormatExtension
	(*Message_M)(nil),                     // 7: goproto.protoc.extension.ext.Message.M
	(*ExtendingMessage_ExtendingMessageSubmessage)(nil), // 8: goproto.protoc.extension.ext.ExtendingMessage.ExtendingMessageSubmessage
	(*base.BaseMessage)(nil),                            // 9: goproto.protoc.extension.base.BaseMessage
	(*base.MessageSetWireFormatMessage)(nil),            // 10: goproto.protoc.extension.base.MessageSetWireFormatMessage
	(*extra.ExtraMessage)(nil),                          // 11: goproto.protoc.extension.extra.ExtraMessage
}
var file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_depIdxs = []int32{
	9,  // 0: goproto.protoc.extension.ext.extension_bool:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 1: goproto.protoc.extension.ext.extension_enum:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 2: goproto.protoc.extension.ext.extension_int32:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 3: goproto.protoc.extension.ext.extension_sint32:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 4: goproto.protoc.extension.ext.extension_uint32:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 5: goproto.protoc.extension.ext.extension_int64:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 6: goproto.protoc.extension.ext.extension_sint64:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 7: goproto.protoc.extension.ext.extension_uint64:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 8: goproto.protoc.extension.ext.extension_sfixed32:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 9: goproto.protoc.extension.ext.extension_fixed32:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 10: goproto.protoc.extension.ext.extension_float:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 11: goproto.protoc.extension.ext.extension_sfixed64:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 12: goproto.protoc.extension.ext.extension_fixed64:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 13: goproto.protoc.extension.ext.extension_double:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 14: goproto.protoc.extension.ext.extension_string:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 15: goproto.protoc.extension.ext.extension_bytes:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 16: goproto.protoc.extension.ext.extension_Message:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 17: goproto.protoc.extension.ext.extension_MessageM:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 18: goproto.protoc.extension.ext.extensiongroup:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 19: goproto.protoc.extension.ext.extra_message:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 20: goproto.protoc.extension.ext.repeated_x_bool:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 21: goproto.protoc.extension.ext.repeated_x_enum:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 22: goproto.protoc.extension.ext.repeated_x_int32:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 23: goproto.protoc.extension.ext.repeated_x_sint32:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 24: goproto.protoc.extension.ext.repeated_x_uint32:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 25: goproto.protoc.extension.ext.repeated_x_int64:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 26: goproto.protoc.extension.ext.repeated_x_sint64:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 27: goproto.protoc.extension.ext.repeated_x_uint64:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 28: goproto.protoc.extension.ext.repeated_x_sfixed32:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 29: goproto.protoc.extension.ext.repeated_x_fixed32:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 30: goproto.protoc.extension.ext.repeated_x_float:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 31: goproto.protoc.extension.ext.repeated_x_sfixed64:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 32: goproto.protoc.extension.ext.repeated_x_fixed64:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 33: goproto.protoc.extension.ext.repeated_x_double:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 34: goproto.protoc.extension.ext.repeated_x_string:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 35: goproto.protoc.extension.ext.repeated_x_bytes:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 36: goproto.protoc.extension.ext.repeated_x_Message:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 37: goproto.protoc.extension.ext.repeatedgroup:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 38: goproto.protoc.extension.ext.extendable_field:extendee -> goproto.protoc.extension.base.BaseMessage
	5,  // 39: goproto.protoc.extension.ext.extendable_string_field:extendee -> goproto.protoc.extension.ext.Extendable
	10, // 40: goproto.protoc.extension.ext.message_set_extension:extendee -> goproto.protoc.extension.base.MessageSetWireFormatMessage
	9,  // 41: goproto.protoc.extension.ext.ExtendingMessage.extending_message_string:extendee -> goproto.protoc.extension.base.BaseMessage
	9,  // 42: goproto.protoc.extension.ext.ExtendingMessage.extending_message_submessage:extendee -> goproto.protoc.extension.base.BaseMessage
	10, // 43: goproto.protoc.extension.ext.MessageSetWireFormatExtension.message_set_extension:extendee -> goproto.protoc.extension.base.MessageSetWireFormatMessage
	0,  // 44: goproto.protoc.extension.ext.extension_enum:type_name -> goproto.protoc.extension.ext.Enum
	1,  // 45: goproto.protoc.extension.ext.extension_Message:type_name -> goproto.protoc.extension.ext.Message
	7,  // 46: goproto.protoc.extension.ext.extension_MessageM:type_name -> goproto.protoc.extension.ext.Message.M
	2,  // 47: goproto.protoc.extension.ext.extensiongroup:type_name -> goproto.protoc.extension.ext.ExtensionGroup
	11, // 48: goproto.protoc.extension.ext.extra_message:type_name -> goproto.protoc.extension.extra.ExtraMessage
	0,  // 49: goproto.protoc.extension.ext.repeated_x_enum:type_name -> goproto.protoc.extension.ext.Enum
	1,  // 50: goproto.protoc.extension.ext.repeated_x_Message:type_name -> goproto.protoc.extension.ext.Message
	4,  // 51: goproto.protoc.extension.ext.repeatedgroup:type_name -> goproto.protoc.extension.ext.RepeatedGroup
	5,  // 52: goproto.protoc.extension.ext.extendable_field:type_name -> goproto.protoc.extension.ext.Extendable
	6,  // 53: goproto.protoc.extension.ext.message_set_extension:type_name -> goproto.protoc.extension.ext.MessageSetWireFormatExtension
	8,  // 54: goproto.protoc.extension.ext.ExtendingMessage.extending_message_submessage:type_name -> goproto.protoc.extension.ext.ExtendingMessage.ExtendingMessageSubmessage
	6,  // 55: goproto.protoc.extension.ext.MessageSetWireFormatExtension.message_set_extension:type_name -> goproto.protoc.extension.ext.MessageSetWireFormatExtension
	56, // [56:56] is the sub-list for method output_type
	56, // [56:56] is the sub-list for method input_type
	44, // [44:56] is the sub-list for extension type_name
	0,  // [0:44] is the sub-list for extension extendee
	0,  // [0:0] is the sub-list for field type_name
}

func init() { file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_init() }
func file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_init() {
	if File_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDesc), len(file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_rawDesc)),
			NumEnums:      1,
			NumMessages:   8,
			NumExtensions: 44,
			NumServices:   0,
		},
		GoTypes:           file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_goTypes,
		DependencyIndexes: file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_depIdxs,
		EnumInfos:         file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_enumTypes,
		MessageInfos:      file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_msgTypes,
		ExtensionInfos:    file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_extTypes,
	}.Build()
	File_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto = out.File
	file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_goTypes = nil
	file_cmd_protoc_gen_go_testdata_extensions_ext_ext_proto_depIdxs = nil
}
