// Copyright 2024 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: internal/testprotos/testeditions/test_extension2.proto

package testeditions

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

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

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

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

func (*OtherRepeatedFieldEncoding) ProtoMessage() {}

func (x *OtherRepeatedFieldEncoding) ProtoReflect() protoreflect.Message {
	mi := &file_internal_testprotos_testeditions_test_extension2_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 OtherRepeatedFieldEncoding.ProtoReflect.Descriptor instead.
func (*OtherRepeatedFieldEncoding) Descriptor() ([]byte, []int) {
	return file_internal_testprotos_testeditions_test_extension2_proto_rawDescGZIP(), []int{0}
}

var file_internal_testprotos_testeditions_test_extension2_proto_extTypes = []protoimpl.ExtensionInfo{
	{
		ExtendedType:  (*TestFeatureResolution)(nil),
		ExtensionType: ([]int32)(nil),
		Field:         6,
		Name:          "goproto.proto.testeditions.other_file_global_expanded_extension_overriden",
		Tag:           "varint,6,rep,name=other_file_global_expanded_extension_overriden",
		Filename:      "internal/testprotos/testeditions/test_extension2.proto",
	},
	{
		ExtendedType:  (*TestFeatureResolution)(nil),
		ExtensionType: ([]int32)(nil),
		Field:         7,
		Name:          "goproto.proto.testeditions.other_file_global_packed_extension",
		Tag:           "varint,7,rep,packed,name=other_file_global_packed_extension",
		Filename:      "internal/testprotos/testeditions/test_extension2.proto",
	},
	{
		ExtendedType:  (*TestFeatureResolution)(nil),
		ExtensionType: ([]int32)(nil),
		Field:         8,
		Name:          "goproto.proto.testeditions.OtherRepeatedFieldEncoding.other_file_message_expanded_extension_overriden",
		Tag:           "varint,8,rep,name=other_file_message_expanded_extension_overriden",
		Filename:      "internal/testprotos/testeditions/test_extension2.proto",
	},
	{
		ExtendedType:  (*TestFeatureResolution)(nil),
		ExtensionType: ([]int32)(nil),
		Field:         9,
		Name:          "goproto.proto.testeditions.OtherRepeatedFieldEncoding.other_file_message_packed_extension",
		Tag:           "varint,9,rep,packed,name=other_file_message_packed_extension",
		Filename:      "internal/testprotos/testeditions/test_extension2.proto",
	},
}

// Extension fields to TestFeatureResolution.
var (
	// repeated int32 other_file_global_expanded_extension_overriden = 6;
	E_OtherFileGlobalExpandedExtensionOverriden = &file_internal_testprotos_testeditions_test_extension2_proto_extTypes[0]
	// repeated int32 other_file_global_packed_extension = 7;
	E_OtherFileGlobalPackedExtension = &file_internal_testprotos_testeditions_test_extension2_proto_extTypes[1]
	// repeated int32 other_file_message_expanded_extension_overriden = 8;
	E_OtherRepeatedFieldEncoding_OtherFileMessageExpandedExtensionOverriden = &file_internal_testprotos_testeditions_test_extension2_proto_extTypes[2]
	// repeated int32 other_file_message_packed_extension = 9;
	E_OtherRepeatedFieldEncoding_OtherFileMessagePackedExtension = &file_internal_testprotos_testeditions_test_extension2_proto_extTypes[3]
)

var File_internal_testprotos_testeditions_test_extension2_proto protoreflect.FileDescriptor

const file_internal_testprotos_testeditions_test_extension2_proto_rawDesc = "\n6internal/testprotos/testeditions/test_extension2.protogoproto.proto.testeditions5internal/testprotos/testeditions/test_extension.proto\"\xbd\nOtherRepeatedFieldEncoding2\x9d\n/other_file_message_expanded_extension_overriden1.goproto.proto.testeditions.TestFeatureResolution (B\xaaR*otherFileMessageExpandedExtensionOverriden2\n#other_file_message_packed_extension1.goproto.proto.testeditions.TestFeatureResolution	 (RotherFileMessagePackedExtension:\x9b\n.other_file_global_expanded_extension_overriden1.goproto.proto.testeditions.TestFeatureResolution (B\xaaR)otherFileGlobalExpandedExtensionOverriden:}\n\"other_file_global_packed_extension1.goproto.proto.testeditions.TestFeatureResolution (RotherFileGlobalPackedExtensionBBZ;google.golang.org/protobuf/internal/testprotos/testeditions\x92beditionsp\xe8"

var (
	file_internal_testprotos_testeditions_test_extension2_proto_rawDescOnce sync.Once
	file_internal_testprotos_testeditions_test_extension2_proto_rawDescData = file_internal_testprotos_testeditions_test_extension2_proto_rawDesc
)

func file_internal_testprotos_testeditions_test_extension2_proto_rawDescGZIP() []byte {
	file_internal_testprotos_testeditions_test_extension2_proto_rawDescOnce.Do(func() {
		file_internal_testprotos_testeditions_test_extension2_proto_rawDescData = string(protoimpl.X.CompressGZIP([]byte(file_internal_testprotos_testeditions_test_extension2_proto_rawDescData)))
	})
	return []byte(file_internal_testprotos_testeditions_test_extension2_proto_rawDescData)
}

var file_internal_testprotos_testeditions_test_extension2_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_internal_testprotos_testeditions_test_extension2_proto_goTypes = []any{
	(*OtherRepeatedFieldEncoding)(nil), // 0: goproto.proto.testeditions.OtherRepeatedFieldEncoding
	(*TestFeatureResolution)(nil),      // 1: goproto.proto.testeditions.TestFeatureResolution
}
var file_internal_testprotos_testeditions_test_extension2_proto_depIdxs = []int32{
	1, // 0: goproto.proto.testeditions.other_file_global_expanded_extension_overriden:extendee -> goproto.proto.testeditions.TestFeatureResolution
	1, // 1: goproto.proto.testeditions.other_file_global_packed_extension:extendee -> goproto.proto.testeditions.TestFeatureResolution
	1, // 2: goproto.proto.testeditions.OtherRepeatedFieldEncoding.other_file_message_expanded_extension_overriden:extendee -> goproto.proto.testeditions.TestFeatureResolution
	1, // 3: goproto.proto.testeditions.OtherRepeatedFieldEncoding.other_file_message_packed_extension:extendee -> goproto.proto.testeditions.TestFeatureResolution
	4, // [4:4] is the sub-list for method output_type
	4, // [4:4] is the sub-list for method input_type
	4, // [4:4] is the sub-list for extension type_name
	0, // [0:4] is the sub-list for extension extendee
	0, // [0:0] is the sub-list for field type_name
}

func init() { file_internal_testprotos_testeditions_test_extension2_proto_init() }
func file_internal_testprotos_testeditions_test_extension2_proto_init() {
	if File_internal_testprotos_testeditions_test_extension2_proto != nil {
		return
	}
	file_internal_testprotos_testeditions_test_extension_proto_init()
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: []byte(file_internal_testprotos_testeditions_test_extension2_proto_rawDesc),
			NumEnums:      0,
			NumMessages:   1,
			NumExtensions: 4,
			NumServices:   0,
		},
		GoTypes:           file_internal_testprotos_testeditions_test_extension2_proto_goTypes,
		DependencyIndexes: file_internal_testprotos_testeditions_test_extension2_proto_depIdxs,
		MessageInfos:      file_internal_testprotos_testeditions_test_extension2_proto_msgTypes,
		ExtensionInfos:    file_internal_testprotos_testeditions_test_extension2_proto_extTypes,
	}.Build()
	File_internal_testprotos_testeditions_test_extension2_proto = out.File
	file_internal_testprotos_testeditions_test_extension2_proto_goTypes = nil
	file_internal_testprotos_testeditions_test_extension2_proto_depIdxs = nil
}
