• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // <auto-generated>
2 //     Generated by the protocol buffer compiler.  DO NOT EDIT!
3 //     source: csharp/protos/unittest_custom_options_proto3.proto
4 // </auto-generated>
5 #pragma warning disable 1591, 0612, 3021, 8981
6 #region Designer generated code
7 
8 using pb = global::Google.Protobuf;
9 using pbc = global::Google.Protobuf.Collections;
10 using pbr = global::Google.Protobuf.Reflection;
11 using scg = global::System.Collections.Generic;
12 namespace UnitTest.Issues.TestProtos {
13 
14   /// <summary>Holder for reflection information generated from csharp/protos/unittest_custom_options_proto3.proto</summary>
15   public static partial class UnittestCustomOptionsProto3Reflection {
16 
17     #region Descriptor
18     /// <summary>File descriptor for csharp/protos/unittest_custom_options_proto3.proto</summary>
19     public static pbr::FileDescriptor Descriptor {
20       get { return descriptor; }
21     }
22     private static pbr::FileDescriptor descriptor;
23 
UnittestCustomOptionsProto3Reflection()24     static UnittestCustomOptionsProto3Reflection() {
25       byte[] descriptorData = global::System.Convert.FromBase64String(
26           string.Concat(
27             "CjJjc2hhcnAvcHJvdG9zL3VuaXR0ZXN0X2N1c3RvbV9vcHRpb25zX3Byb3Rv",
28             "My5wcm90bxIRcHJvdG9idWZfdW5pdHRlc3QaIGdvb2dsZS9wcm90b2J1Zi9k",
29             "ZXNjcmlwdG9yLnByb3RvItcBChxUZXN0TWVzc2FnZVdpdGhDdXN0b21PcHRp",
30             "b25zEh4KBmZpZWxkMRgBIAEoCUIOCAHB4MMdLeF1CgIAAAASFQoLb25lb2Zf",
31             "ZmllbGQYAiABKAVIACJTCgZBbkVudW0SFgoSQU5FTlVNX1VOU1BFQ0lGSUVE",
32             "EAASDwoLQU5FTlVNX1ZBTDEQARIWCgtBTkVOVU1fVkFMMhACGgWwhvoFexoI",
33             "xfbJHev8//86EAgA4OnCHcj//////////wFCGQoHQW5PbmVvZhIO+KzDHZ3/",
34             "/////////wEiGAoWQ3VzdG9tT3B0aW9uRm9vUmVxdWVzdCIZChdDdXN0b21P",
35             "cHRpb25Gb29SZXNwb25zZSIeChxDdXN0b21PcHRpb25Gb29DbGllbnRNZXNz",
36             "YWdlIh4KHEN1c3RvbU9wdGlvbkZvb1NlcnZlck1lc3NhZ2UijwEKGkR1bW15",
37             "TWVzc2FnZUNvbnRhaW5pbmdFbnVtInEKDFRlc3RFbnVtVHlwZRIgChxURVNU",
38             "X09QVElPTl9FTlVNX1VOU1BFQ0lGSUVEEAASGgoWVEVTVF9PUFRJT05fRU5V",
39             "TV9UWVBFMRAWEiMKFlRFU1RfT1BUSU9OX0VOVU1fVFlQRTIQ6f//////////",
40             "ASIhCh9EdW1teU1lc3NhZ2VJbnZhbGlkQXNPcHRpb25UeXBlIooBChxDdXN0",
41             "b21PcHRpb25NaW5JbnRlZ2VyVmFsdWVzOmqZ1qgdAAAAAAAAAICtja8dAAAA",
42             "gJHurx0AAAAAAAAAAJ31rx0AAAAA+JewHf///////////wGAxLAd/////w/4",
43             "9bAdAICTsh0AsLyyHYCAgICAgICAgAHoxrIdgICAgPj/////AdDesh0AIpEB",
44             "ChxDdXN0b21PcHRpb25NYXhJbnRlZ2VyVmFsdWVzOnGZ1qgd/////////3+t",
45             "ja8d////f5Hurx3//////////531rx3/////+JewHf7//////////wGAxLAd",
46             "/v///w/49bAd////////////AYCTsh3/////D7C8sh3//////////3/oxrId",
47             "/////wfQ3rIdASJuChdDdXN0b21PcHRpb25PdGhlclZhbHVlczpTiNmiHen/",
48             "/////////wGy2aIdC0hlbGxvAFdvcmxkqtyiHQ5IZWxsbywgIldvcmxkIunc",
49             "oh37WYxCysDzP/Xfox3nh0VB6MayHZz//////////wEiNAocU2V0dGluZ1Jl",
50             "YWxzRnJvbVBvc2l0aXZlSW50czoU6dyiHQAAAAAAQGNA9d+jHQAAQEEiNAoc",
51             "U2V0dGluZ1JlYWxzRnJvbU5lZ2F0aXZlSW50czoU6dyiHQAAAAAAQGPA9d+j",
52             "HQAAQMEiSwoSQ29tcGxleE9wdGlvblR5cGUxEgsKA2ZvbxgBIAEoBRIMCgRm",
53             "b28yGAIgASgFEgwKBGZvbzMYAyABKAUSDAoEZm9vNBgEIAMoBSKBAwoSQ29t",
54             "cGxleE9wdGlvblR5cGUyEjIKA2JhchgBIAEoCzIlLnByb3RvYnVmX3VuaXR0",
55             "ZXN0LkNvbXBsZXhPcHRpb25UeXBlMRILCgNiYXoYAiABKAUSRgoEZnJlZBgD",
56             "IAEoCzI4LnByb3RvYnVmX3VuaXR0ZXN0LkNvbXBsZXhPcHRpb25UeXBlMi5D",
57             "b21wbGV4T3B0aW9uVHlwZTQSSAoGYmFybmV5GAQgAygLMjgucHJvdG9idWZf",
58             "dW5pdHRlc3QuQ29tcGxleE9wdGlvblR5cGUyLkNvbXBsZXhPcHRpb25UeXBl",
59             "NBqXAQoSQ29tcGxleE9wdGlvblR5cGU0Eg0KBXdhbGRvGAEgASgFMnIKDGNv",
60             "bXBsZXhfb3B0NBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxiK",
61             "9dEDIAEoCzI4LnByb3RvYnVmX3VuaXR0ZXN0LkNvbXBsZXhPcHRpb25UeXBl",
62             "Mi5Db21wbGV4T3B0aW9uVHlwZTQiIQoSQ29tcGxleE9wdGlvblR5cGUzEgsK",
63             "A3F1eBgBIAEoBSJOChVWYXJpb3VzQ29tcGxleE9wdGlvbnM6NdKojx0DCLMP",
64             "+t6QHQIICar9kB0WCgMI5wUQ2wcaAwjBAiICCGUiAwjUAaLilR0GCCoiAmNY",
65             "IkwKCUFnZ3JlZ2F0ZRIJCgFpGAEgASgFEgkKAXMYAiABKAkSKQoDc3ViGAMg",
66             "ASgLMhwucHJvdG9idWZfdW5pdHRlc3QuQWdncmVnYXRlIlkKEEFnZ3JlZ2F0",
67             "ZU1lc3NhZ2USKQoJZmllbGRuYW1lGAEgASgFQhbyoYc7ERIPRmllbGRBbm5v",
68             "dGF0aW9uOhrC0YY7FQhlEhFNZXNzYWdlQW5ub3RhdGlvbiKXAQoQTmVzdGVk",
69             "T3B0aW9uVHlwZRo7Cg1OZXN0ZWRNZXNzYWdlEiIKDG5lc3RlZF9maWVsZBgB",
70             "IAEoBUIMweDDHeoDAAAAAAAAOgbg6cId6QciRgoKTmVzdGVkRW51bRIPCgtV",
71             "TlNQRUNJRklFRBAAEh0KEU5FU1RFRF9FTlVNX1ZBTFVFEAEaBrCG+gXsBxoI",
72             "xfbJHesDAAAqUgoKTWV0aG9kT3B0MRIaChZNRVRIT0RPUFQxX1VOU1BFQ0lG",
73             "SUVEEAASEwoPTUVUSE9ET1BUMV9WQUwxEAESEwoPTUVUSE9ET1BUMV9WQUwy",
74             "EAIqXgoNQWdncmVnYXRlRW51bRIPCgtVTlNQRUNJRklFRBAAEiUKBVZBTFVF",
75             "EAEaGsr8iTsVEhNFbnVtVmFsdWVBbm5vdGF0aW9uGhWSlYg7EBIORW51bUFu",
76             "bm90YXRpb24yjgEKHFRlc3RTZXJ2aWNlV2l0aEN1c3RvbU9wdGlvbnMSYwoD",
77             "Rm9vEikucHJvdG9idWZfdW5pdHRlc3QuQ3VzdG9tT3B0aW9uRm9vUmVxdWVz",
78             "dBoqLnByb3RvYnVmX3VuaXR0ZXN0LkN1c3RvbU9wdGlvbkZvb1Jlc3BvbnNl",
79             "IgXg+oweAhoJkLKLHtPbgMtJMpkBChBBZ2dyZWdhdGVTZXJ2aWNlEmsKBk1l",
80             "dGhvZBIjLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZU1lc3NhZ2UaIy5w",
81             "cm90b2J1Zl91bml0dGVzdC5BZ2dyZWdhdGVNZXNzYWdlIhfKyJY7EhIQTWV0",
82             "aG9kQW5ub3RhdGlvbhoYyvuOOxMSEVNlcnZpY2VBbm5vdGF0aW9uOjIKCWZp",
83             "bGVfb3B0MRIcLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxiOndgDIAEo",
84             "BDo4CgxtZXNzYWdlX29wdDESHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9w",
85             "dGlvbnMYnK3YAyABKAU6NAoKZmllbGRfb3B0MRIdLmdvb2dsZS5wcm90b2J1",
86             "Zi5GaWVsZE9wdGlvbnMYiLzYAyABKAY6NAoKb25lb2Zfb3B0MRIdLmdvb2ds",
87             "ZS5wcm90b2J1Zi5PbmVvZk9wdGlvbnMYz7XYAyABKAU6MgoJZW51bV9vcHQx",
88             "EhwuZ29vZ2xlLnByb3RvYnVmLkVudW1PcHRpb25zGOie2QMgASgPOjwKD2Vu",
89             "dW1fdmFsdWVfb3B0MRIhLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVPcHRp",
90             "b25zGOagXyABKAU6OAoMc2VydmljZV9vcHQxEh8uZ29vZ2xlLnByb3RvYnVm",
91             "LlNlcnZpY2VPcHRpb25zGKK24QMgASgSOlUKC21ldGhvZF9vcHQxEh4uZ29v",
92             "Z2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMYrM/hAyABKA4yHS5wcm90b2J1",
93             "Zl91bml0dGVzdC5NZXRob2RPcHQxOjQKCGJvb2xfb3B0Eh8uZ29vZ2xlLnBy",
94             "b3RvYnVmLk1lc3NhZ2VPcHRpb25zGOqr1gMgASgIOjUKCWludDMyX29wdBIf",
95             "Lmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxjtqNYDIAEoBTo1Cglp",
96             "bnQ2NF9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYxqfW",
97             "AyABKAM6NgoKdWludDMyX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdl",
98             "T3B0aW9ucxiwotYDIAEoDTo2Cgp1aW50NjRfb3B0Eh8uZ29vZ2xlLnByb3Rv",
99             "YnVmLk1lc3NhZ2VPcHRpb25zGN+O1gMgASgEOjYKCnNpbnQzMl9vcHQSHy5n",
100             "b29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYwIjWAyABKBE6NgoKc2lu",
101             "dDY0X29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0aW9ucxj/gtYD",
102             "IAEoEjo3CgtmaXhlZDMyX29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdl",
103             "T3B0aW9ucxjT/tUDIAEoBzo3CgtmaXhlZDY0X29wdBIfLmdvb2dsZS5wcm90",
104             "b2J1Zi5NZXNzYWdlT3B0aW9ucxji/dUDIAEoBjo4CgxzZml4ZWQzMl9vcHQS",
105             "Hy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMY1fHVAyABKA86OAoM",
106             "c2ZpeGVkNjRfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25z",
107             "GOOK1QMgASgQOjUKCWZsb2F0X29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNz",
108             "YWdlT3B0aW9ucxj+u9QDIAEoAjo2Cgpkb3VibGVfb3B0Eh8uZ29vZ2xlLnBy",
109             "b3RvYnVmLk1lc3NhZ2VPcHRpb25zGM2r1AMgASgBOjYKCnN0cmluZ19vcHQS",
110             "Hy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYxavUAyABKAk6NQoJ",
111             "Ynl0ZXNfb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGJar",
112             "1AMgASgMOnAKCGVudW1fb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VP",
113             "cHRpb25zGJGr1AMgASgOMjoucHJvdG9idWZfdW5pdHRlc3QuRHVtbXlNZXNz",
114             "YWdlQ29udGFpbmluZ0VudW0uVGVzdEVudW1UeXBlOnAKEG1lc3NhZ2VfdHlw",
115             "ZV9vcHQSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYr/LTAyAB",
116             "KAsyMi5wcm90b2J1Zl91bml0dGVzdC5EdW1teU1lc3NhZ2VJbnZhbGlkQXNP",
117             "cHRpb25UeXBlOl8KDGNvbXBsZXhfb3B0MRIfLmdvb2dsZS5wcm90b2J1Zi5N",
118             "ZXNzYWdlT3B0aW9ucxik3NIDIAEoCzIlLnByb3RvYnVmX3VuaXR0ZXN0LkNv",
119             "bXBsZXhPcHRpb25UeXBlMTpfCgxjb21wbGV4X29wdDISHy5nb29nbGUucHJv",
120             "dG9idWYuTWVzc2FnZU9wdGlvbnMY1Y/SAyABKAsyJS5wcm90b2J1Zl91bml0",
121             "dGVzdC5Db21wbGV4T3B0aW9uVHlwZTI6XwoMY29tcGxleF9vcHQzEh8uZ29v",
122             "Z2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGO+L0gMgASgLMiUucHJvdG9i",
123             "dWZfdW5pdHRlc3QuQ29tcGxleE9wdGlvblR5cGUzOk4KB2ZpbGVvcHQSHC5n",
124             "b29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMYz92wByABKAsyHC5wcm90b2J1",
125             "Zl91bml0dGVzdC5BZ2dyZWdhdGU6UAoGbXNnb3B0Eh8uZ29vZ2xlLnByb3Rv",
126             "YnVmLk1lc3NhZ2VPcHRpb25zGJjqsAcgASgLMhwucHJvdG9idWZfdW5pdHRl",
127             "c3QuQWdncmVnYXRlOlAKCGZpZWxkb3B0Eh0uZ29vZ2xlLnByb3RvYnVmLkZp",
128             "ZWxkT3B0aW9ucxie9LAHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3Jl",
129             "Z2F0ZTpOCgdlbnVtb3B0EhwuZ29vZ2xlLnByb3RvYnVmLkVudW1PcHRpb25z",
130             "GNKCsQcgASgLMhwucHJvdG9idWZfdW5pdHRlc3QuQWdncmVnYXRlOlYKCmVu",
131             "dW12YWxvcHQSIS5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlT3B0aW9ucxjJ",
132             "n7EHIAEoCzIcLnByb3RvYnVmX3VuaXR0ZXN0LkFnZ3JlZ2F0ZTpUCgpzZXJ2",
133             "aWNlb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VPcHRpb25zGLnvsQcg",
134             "ASgLMhwucHJvdG9idWZfdW5pdHRlc3QuQWdncmVnYXRlOlIKCW1ldGhvZG9w",
135             "dBIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zGInpsgcgASgLMhwu",
136             "cHJvdG9idWZfdW5pdHRlc3QuQWdncmVnYXRlQlWqAhpVbml0VGVzdC5Jc3N1",
137             "ZXMuVGVzdFByb3Rvc/DowR3qrcDlJPrshTsqCGQSDkZpbGVBbm5vdGF0aW9u",
138             "GhYSFE5lc3RlZEZpbGVBbm5vdGF0aW9uYgZwcm90bzM="));
139       descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
140           new pbr::FileDescriptor[] { global::Google.Protobuf.Reflection.DescriptorReflection.Descriptor, },
141           new pbr::GeneratedClrTypeInfo(new[] {typeof(global::UnitTest.Issues.TestProtos.MethodOpt1), typeof(global::UnitTest.Issues.TestProtos.AggregateEnum), }, new pb::Extension[] { UnittestCustomOptionsProto3Extensions.FileOpt1, UnittestCustomOptionsProto3Extensions.MessageOpt1, UnittestCustomOptionsProto3Extensions.FieldOpt1, UnittestCustomOptionsProto3Extensions.OneofOpt1, UnittestCustomOptionsProto3Extensions.EnumOpt1, UnittestCustomOptionsProto3Extensions.EnumValueOpt1, UnittestCustomOptionsProto3Extensions.ServiceOpt1, UnittestCustomOptionsProto3Extensions.MethodOpt1, UnittestCustomOptionsProto3Extensions.BoolOpt, UnittestCustomOptionsProto3Extensions.Int32Opt, UnittestCustomOptionsProto3Extensions.Int64Opt, UnittestCustomOptionsProto3Extensions.Uint32Opt, UnittestCustomOptionsProto3Extensions.Uint64Opt, UnittestCustomOptionsProto3Extensions.Sint32Opt, UnittestCustomOptionsProto3Extensions.Sint64Opt, UnittestCustomOptionsProto3Extensions.Fixed32Opt, UnittestCustomOptionsProto3Extensions.Fixed64Opt, UnittestCustomOptionsProto3Extensions.Sfixed32Opt, UnittestCustomOptionsProto3Extensions.Sfixed64Opt, UnittestCustomOptionsProto3Extensions.FloatOpt, UnittestCustomOptionsProto3Extensions.DoubleOpt, UnittestCustomOptionsProto3Extensions.StringOpt, UnittestCustomOptionsProto3Extensions.BytesOpt, UnittestCustomOptionsProto3Extensions.EnumOpt, UnittestCustomOptionsProto3Extensions.MessageTypeOpt, UnittestCustomOptionsProto3Extensions.ComplexOpt1, UnittestCustomOptionsProto3Extensions.ComplexOpt2, UnittestCustomOptionsProto3Extensions.ComplexOpt3, UnittestCustomOptionsProto3Extensions.Fileopt, UnittestCustomOptionsProto3Extensions.Msgopt, UnittestCustomOptionsProto3Extensions.Fieldopt, UnittestCustomOptionsProto3Extensions.Enumopt, UnittestCustomOptionsProto3Extensions.Enumvalopt, UnittestCustomOptionsProto3Extensions.Serviceopt, UnittestCustomOptionsProto3Extensions.Methodopt }, new pbr::GeneratedClrTypeInfo[] {
142             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.TestMessageWithCustomOptions), global::UnitTest.Issues.TestProtos.TestMessageWithCustomOptions.Parser, new[]{ "Field1", "OneofField" }, new[]{ "AnOneof" }, new[]{ typeof(global::UnitTest.Issues.TestProtos.TestMessageWithCustomOptions.Types.AnEnum) }, null, null),
143             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.CustomOptionFooRequest), global::UnitTest.Issues.TestProtos.CustomOptionFooRequest.Parser, null, null, null, null, null),
144             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.CustomOptionFooResponse), global::UnitTest.Issues.TestProtos.CustomOptionFooResponse.Parser, null, null, null, null, null),
145             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.CustomOptionFooClientMessage), global::UnitTest.Issues.TestProtos.CustomOptionFooClientMessage.Parser, null, null, null, null, null),
146             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.CustomOptionFooServerMessage), global::UnitTest.Issues.TestProtos.CustomOptionFooServerMessage.Parser, null, null, null, null, null),
147             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.DummyMessageContainingEnum), global::UnitTest.Issues.TestProtos.DummyMessageContainingEnum.Parser, null, null, new[]{ typeof(global::UnitTest.Issues.TestProtos.DummyMessageContainingEnum.Types.TestEnumType) }, null, null),
148             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.DummyMessageInvalidAsOptionType), global::UnitTest.Issues.TestProtos.DummyMessageInvalidAsOptionType.Parser, null, null, null, null, null),
149             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.CustomOptionMinIntegerValues), global::UnitTest.Issues.TestProtos.CustomOptionMinIntegerValues.Parser, null, null, null, null, null),
150             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.CustomOptionMaxIntegerValues), global::UnitTest.Issues.TestProtos.CustomOptionMaxIntegerValues.Parser, null, null, null, null, null),
151             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.CustomOptionOtherValues), global::UnitTest.Issues.TestProtos.CustomOptionOtherValues.Parser, null, null, null, null, null),
152             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.SettingRealsFromPositiveInts), global::UnitTest.Issues.TestProtos.SettingRealsFromPositiveInts.Parser, null, null, null, null, null),
153             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.SettingRealsFromNegativeInts), global::UnitTest.Issues.TestProtos.SettingRealsFromNegativeInts.Parser, null, null, null, null, null),
154             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.ComplexOptionType1), global::UnitTest.Issues.TestProtos.ComplexOptionType1.Parser, new[]{ "Foo", "Foo2", "Foo3", "Foo4" }, null, null, null, null),
155             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.ComplexOptionType2), global::UnitTest.Issues.TestProtos.ComplexOptionType2.Parser, new[]{ "Bar", "Baz", "Fred", "Barney" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4), global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4.Parser, new[]{ "Waldo" }, null, null, new pb::Extension[] { global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4.Extensions.ComplexOpt4 }, null)}),
156             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.ComplexOptionType3), global::UnitTest.Issues.TestProtos.ComplexOptionType3.Parser, new[]{ "Qux" }, null, null, null, null),
157             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.VariousComplexOptions), global::UnitTest.Issues.TestProtos.VariousComplexOptions.Parser, null, null, null, null, null),
158             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.Aggregate), global::UnitTest.Issues.TestProtos.Aggregate.Parser, new[]{ "I", "S", "Sub" }, null, null, null, null),
159             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.AggregateMessage), global::UnitTest.Issues.TestProtos.AggregateMessage.Parser, new[]{ "Fieldname" }, null, null, null, null),
160             new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.NestedOptionType), global::UnitTest.Issues.TestProtos.NestedOptionType.Parser, null, null, new[]{ typeof(global::UnitTest.Issues.TestProtos.NestedOptionType.Types.NestedEnum) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::UnitTest.Issues.TestProtos.NestedOptionType.Types.NestedMessage), global::UnitTest.Issues.TestProtos.NestedOptionType.Types.NestedMessage.Parser, new[]{ "NestedField" }, null, null, null, null)})
161           }));
162     }
163     #endregion
164 
165   }
166   /// <summary>Holder for extension identifiers generated from the top level of csharp/protos/unittest_custom_options_proto3.proto</summary>
167   public static partial class UnittestCustomOptionsProto3Extensions {
168     public static readonly pb::Extension<global::Google.Protobuf.Reflection.FileOptions, ulong> FileOpt1 =
169       new pb::Extension<global::Google.Protobuf.Reflection.FileOptions, ulong>(7736974, pb::FieldCodec.ForUInt64(61895792, 0UL));
170     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, int> MessageOpt1 =
171       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, int>(7739036, pb::FieldCodec.ForInt32(61912288, 0));
172     public static readonly pb::Extension<global::Google.Protobuf.Reflection.FieldOptions, ulong> FieldOpt1 =
173       new pb::Extension<global::Google.Protobuf.Reflection.FieldOptions, ulong>(7740936, pb::FieldCodec.ForFixed64(61927489, 0UL));
174     public static readonly pb::Extension<global::Google.Protobuf.Reflection.OneofOptions, int> OneofOpt1 =
175       new pb::Extension<global::Google.Protobuf.Reflection.OneofOptions, int>(7740111, pb::FieldCodec.ForInt32(61920888, 0));
176     public static readonly pb::Extension<global::Google.Protobuf.Reflection.EnumOptions, int> EnumOpt1 =
177       new pb::Extension<global::Google.Protobuf.Reflection.EnumOptions, int>(7753576, pb::FieldCodec.ForSFixed32(62028613, 0));
178     public static readonly pb::Extension<global::Google.Protobuf.Reflection.EnumValueOptions, int> EnumValueOpt1 =
179       new pb::Extension<global::Google.Protobuf.Reflection.EnumValueOptions, int>(1560678, pb::FieldCodec.ForInt32(12485424, 0));
180     public static readonly pb::Extension<global::Google.Protobuf.Reflection.ServiceOptions, long> ServiceOpt1 =
181       new pb::Extension<global::Google.Protobuf.Reflection.ServiceOptions, long>(7887650, pb::FieldCodec.ForSInt64(63101200, 0L));
182     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MethodOptions, global::UnitTest.Issues.TestProtos.MethodOpt1> MethodOpt1 =
183       new pb::Extension<global::Google.Protobuf.Reflection.MethodOptions, global::UnitTest.Issues.TestProtos.MethodOpt1>(7890860, pb::FieldCodec.ForEnum(63126880, x => (int) x, x => (global::UnitTest.Issues.TestProtos.MethodOpt1) x, global::UnitTest.Issues.TestProtos.MethodOpt1.Unspecified));
184     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, bool> BoolOpt =
185       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, bool>(7706090, pb::FieldCodec.ForBool(61648720, false));
186     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, int> Int32Opt =
187       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, int>(7705709, pb::FieldCodec.ForInt32(61645672, 0));
188     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, long> Int64Opt =
189       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, long>(7705542, pb::FieldCodec.ForInt64(61644336, 0L));
190     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, uint> Uint32Opt =
191       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, uint>(7704880, pb::FieldCodec.ForUInt32(61639040, 0));
192     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, ulong> Uint64Opt =
193       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, ulong>(7702367, pb::FieldCodec.ForUInt64(61618936, 0UL));
194     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, int> Sint32Opt =
195       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, int>(7701568, pb::FieldCodec.ForSInt32(61612544, 0));
196     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, long> Sint64Opt =
197       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, long>(7700863, pb::FieldCodec.ForSInt64(61606904, 0L));
198     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, uint> Fixed32Opt =
199       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, uint>(7700307, pb::FieldCodec.ForFixed32(61602461, 0));
200     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, ulong> Fixed64Opt =
201       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, ulong>(7700194, pb::FieldCodec.ForFixed64(61601553, 0UL));
202     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, int> Sfixed32Opt =
203       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, int>(7698645, pb::FieldCodec.ForSFixed32(61589165, 0));
204     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, long> Sfixed64Opt =
205       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, long>(7685475, pb::FieldCodec.ForSFixed64(61483801, 0L));
206     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, float> FloatOpt =
207       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, float>(7675390, pb::FieldCodec.ForFloat(61403125, 0F));
208     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, double> DoubleOpt =
209       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, double>(7673293, pb::FieldCodec.ForDouble(61386345, 0D));
210     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, string> StringOpt =
211       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, string>(7673285, pb::FieldCodec.ForString(61386282, ""));
212     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, pb::ByteString> BytesOpt =
213       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, pb::ByteString>(7673238, pb::FieldCodec.ForBytes(61385906, pb::ByteString.Empty));
214     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.DummyMessageContainingEnum.Types.TestEnumType> EnumOpt =
215       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.DummyMessageContainingEnum.Types.TestEnumType>(7673233, pb::FieldCodec.ForEnum(61385864, x => (int) x, x => (global::UnitTest.Issues.TestProtos.DummyMessageContainingEnum.Types.TestEnumType) x, global::UnitTest.Issues.TestProtos.DummyMessageContainingEnum.Types.TestEnumType.TestOptionEnumUnspecified));
216     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.DummyMessageInvalidAsOptionType> MessageTypeOpt =
217       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.DummyMessageInvalidAsOptionType>(7665967, pb::FieldCodec.ForMessage(61327738, global::UnitTest.Issues.TestProtos.DummyMessageInvalidAsOptionType.Parser));
218     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.ComplexOptionType1> ComplexOpt1 =
219       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.ComplexOptionType1>(7646756, pb::FieldCodec.ForMessage(61174050, global::UnitTest.Issues.TestProtos.ComplexOptionType1.Parser));
220     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.ComplexOptionType2> ComplexOpt2 =
221       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.ComplexOptionType2>(7636949, pb::FieldCodec.ForMessage(61095594, global::UnitTest.Issues.TestProtos.ComplexOptionType2.Parser));
222     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.ComplexOptionType3> ComplexOpt3 =
223       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.ComplexOptionType3>(7636463, pb::FieldCodec.ForMessage(61091706, global::UnitTest.Issues.TestProtos.ComplexOptionType3.Parser));
224     public static readonly pb::Extension<global::Google.Protobuf.Reflection.FileOptions, global::UnitTest.Issues.TestProtos.Aggregate> Fileopt =
225       new pb::Extension<global::Google.Protobuf.Reflection.FileOptions, global::UnitTest.Issues.TestProtos.Aggregate>(15478479, pb::FieldCodec.ForMessage(123827834, global::UnitTest.Issues.TestProtos.Aggregate.Parser));
226     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.Aggregate> Msgopt =
227       new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.Aggregate>(15480088, pb::FieldCodec.ForMessage(123840706, global::UnitTest.Issues.TestProtos.Aggregate.Parser));
228     public static readonly pb::Extension<global::Google.Protobuf.Reflection.FieldOptions, global::UnitTest.Issues.TestProtos.Aggregate> Fieldopt =
229       new pb::Extension<global::Google.Protobuf.Reflection.FieldOptions, global::UnitTest.Issues.TestProtos.Aggregate>(15481374, pb::FieldCodec.ForMessage(123850994, global::UnitTest.Issues.TestProtos.Aggregate.Parser));
230     public static readonly pb::Extension<global::Google.Protobuf.Reflection.EnumOptions, global::UnitTest.Issues.TestProtos.Aggregate> Enumopt =
231       new pb::Extension<global::Google.Protobuf.Reflection.EnumOptions, global::UnitTest.Issues.TestProtos.Aggregate>(15483218, pb::FieldCodec.ForMessage(123865746, global::UnitTest.Issues.TestProtos.Aggregate.Parser));
232     public static readonly pb::Extension<global::Google.Protobuf.Reflection.EnumValueOptions, global::UnitTest.Issues.TestProtos.Aggregate> Enumvalopt =
233       new pb::Extension<global::Google.Protobuf.Reflection.EnumValueOptions, global::UnitTest.Issues.TestProtos.Aggregate>(15486921, pb::FieldCodec.ForMessage(123895370, global::UnitTest.Issues.TestProtos.Aggregate.Parser));
234     public static readonly pb::Extension<global::Google.Protobuf.Reflection.ServiceOptions, global::UnitTest.Issues.TestProtos.Aggregate> Serviceopt =
235       new pb::Extension<global::Google.Protobuf.Reflection.ServiceOptions, global::UnitTest.Issues.TestProtos.Aggregate>(15497145, pb::FieldCodec.ForMessage(123977162, global::UnitTest.Issues.TestProtos.Aggregate.Parser));
236     public static readonly pb::Extension<global::Google.Protobuf.Reflection.MethodOptions, global::UnitTest.Issues.TestProtos.Aggregate> Methodopt =
237       new pb::Extension<global::Google.Protobuf.Reflection.MethodOptions, global::UnitTest.Issues.TestProtos.Aggregate>(15512713, pb::FieldCodec.ForMessage(124101706, global::UnitTest.Issues.TestProtos.Aggregate.Parser));
238   }
239 
240   #region Enums
241   public enum MethodOpt1 {
242     [pbr::OriginalName("METHODOPT1_UNSPECIFIED")] Unspecified = 0,
243     [pbr::OriginalName("METHODOPT1_VAL1")] Val1 = 1,
244     [pbr::OriginalName("METHODOPT1_VAL2")] Val2 = 2,
245   }
246 
247   public enum AggregateEnum {
248     [pbr::OriginalName("UNSPECIFIED")] Unspecified = 0,
249     [pbr::OriginalName("VALUE")] Value = 1,
250   }
251 
252   #endregion
253 
254   #region Messages
255   /// <summary>
256   /// A test message with custom options at all possible locations (and also some
257   /// regular options, to make sure they interact nicely).
258   /// </summary>
259   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
260   public sealed partial class TestMessageWithCustomOptions : pb::IMessage<TestMessageWithCustomOptions>
261   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
262       , pb::IBufferMessage
263   #endif
264   {
265     private static readonly pb::MessageParser<TestMessageWithCustomOptions> _parser = new pb::MessageParser<TestMessageWithCustomOptions>(() => new TestMessageWithCustomOptions());
266     private pb::UnknownFieldSet _unknownFields;
267     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
268     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
269     public static pb::MessageParser<TestMessageWithCustomOptions> Parser { get { return _parser; } }
270 
271     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
272     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
273     public static pbr::MessageDescriptor Descriptor {
274       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[0]; }
275     }
276 
277     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
278     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
279     pbr::MessageDescriptor pb::IMessage.Descriptor {
280       get { return Descriptor; }
281     }
282 
283     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
284     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
TestMessageWithCustomOptions()285     public TestMessageWithCustomOptions() {
286       OnConstruction();
287     }
288 
OnConstruction()289     partial void OnConstruction();
290 
291     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
292     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
TestMessageWithCustomOptions(TestMessageWithCustomOptions other)293     public TestMessageWithCustomOptions(TestMessageWithCustomOptions other) : this() {
294       field1_ = other.field1_;
295       switch (other.AnOneofCase) {
296         case AnOneofOneofCase.OneofField:
297           OneofField = other.OneofField;
298           break;
299       }
300 
301       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
302     }
303 
304     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
305     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()306     public TestMessageWithCustomOptions Clone() {
307       return new TestMessageWithCustomOptions(this);
308     }
309 
310     /// <summary>Field number for the "field1" field.</summary>
311     public const int Field1FieldNumber = 1;
312     private string field1_ = "";
313     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
314     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
315     public string Field1 {
316       get { return field1_; }
317       set {
318         field1_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
319       }
320     }
321 
322     /// <summary>Field number for the "oneof_field" field.</summary>
323     public const int OneofFieldFieldNumber = 2;
324     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
325     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
326     public int OneofField {
327       get { return HasOneofField ? (int) anOneof_ : 0; }
328       set {
329         anOneof_ = value;
330         anOneofCase_ = AnOneofOneofCase.OneofField;
331       }
332     }
333     /// <summary>Gets whether the "oneof_field" field is set</summary>
334     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
335     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
336     public bool HasOneofField {
337       get { return anOneofCase_ == AnOneofOneofCase.OneofField; }
338     }
339     /// <summary> Clears the value of the oneof if it's currently set to "oneof_field" </summary>
340     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
341     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ClearOneofField()342     public void ClearOneofField() {
343       if (HasOneofField) {
344         ClearAnOneof();
345       }
346     }
347 
348     private object anOneof_;
349     /// <summary>Enum of possible cases for the "AnOneof" oneof.</summary>
350     public enum AnOneofOneofCase {
351       None = 0,
352       OneofField = 2,
353     }
354     private AnOneofOneofCase anOneofCase_ = AnOneofOneofCase.None;
355     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
356     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
357     public AnOneofOneofCase AnOneofCase {
358       get { return anOneofCase_; }
359     }
360 
361     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
362     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ClearAnOneof()363     public void ClearAnOneof() {
364       anOneofCase_ = AnOneofOneofCase.None;
365       anOneof_ = null;
366     }
367 
368     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
369     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)370     public override bool Equals(object other) {
371       return Equals(other as TestMessageWithCustomOptions);
372     }
373 
374     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
375     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(TestMessageWithCustomOptions other)376     public bool Equals(TestMessageWithCustomOptions other) {
377       if (ReferenceEquals(other, null)) {
378         return false;
379       }
380       if (ReferenceEquals(other, this)) {
381         return true;
382       }
383       if (Field1 != other.Field1) return false;
384       if (OneofField != other.OneofField) return false;
385       if (AnOneofCase != other.AnOneofCase) return false;
386       return Equals(_unknownFields, other._unknownFields);
387     }
388 
389     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
390     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()391     public override int GetHashCode() {
392       int hash = 1;
393       if (Field1.Length != 0) hash ^= Field1.GetHashCode();
394       if (HasOneofField) hash ^= OneofField.GetHashCode();
395       hash ^= (int) anOneofCase_;
396       if (_unknownFields != null) {
397         hash ^= _unknownFields.GetHashCode();
398       }
399       return hash;
400     }
401 
402     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
403     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()404     public override string ToString() {
405       return pb::JsonFormatter.ToDiagnosticString(this);
406     }
407 
408     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
409     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)410     public void WriteTo(pb::CodedOutputStream output) {
411     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
412       output.WriteRawMessage(this);
413     #else
414       if (Field1.Length != 0) {
415         output.WriteRawTag(10);
416         output.WriteString(Field1);
417       }
418       if (HasOneofField) {
419         output.WriteRawTag(16);
420         output.WriteInt32(OneofField);
421       }
422       if (_unknownFields != null) {
423         _unknownFields.WriteTo(output);
424       }
425     #endif
426     }
427 
428     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
429     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
430     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)431     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
432       if (Field1.Length != 0) {
433         output.WriteRawTag(10);
434         output.WriteString(Field1);
435       }
436       if (HasOneofField) {
437         output.WriteRawTag(16);
438         output.WriteInt32(OneofField);
439       }
440       if (_unknownFields != null) {
441         _unknownFields.WriteTo(ref output);
442       }
443     }
444     #endif
445 
446     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
447     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()448     public int CalculateSize() {
449       int size = 0;
450       if (Field1.Length != 0) {
451         size += 1 + pb::CodedOutputStream.ComputeStringSize(Field1);
452       }
453       if (HasOneofField) {
454         size += 1 + pb::CodedOutputStream.ComputeInt32Size(OneofField);
455       }
456       if (_unknownFields != null) {
457         size += _unknownFields.CalculateSize();
458       }
459       return size;
460     }
461 
462     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
463     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(TestMessageWithCustomOptions other)464     public void MergeFrom(TestMessageWithCustomOptions other) {
465       if (other == null) {
466         return;
467       }
468       if (other.Field1.Length != 0) {
469         Field1 = other.Field1;
470       }
471       switch (other.AnOneofCase) {
472         case AnOneofOneofCase.OneofField:
473           OneofField = other.OneofField;
474           break;
475       }
476 
477       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
478     }
479 
480     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
481     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)482     public void MergeFrom(pb::CodedInputStream input) {
483     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
484       input.ReadRawMessage(this);
485     #else
486       uint tag;
487       while ((tag = input.ReadTag()) != 0) {
488       if ((tag & 7) == 4) {
489         // Abort on any end group tag.
490         return;
491       }
492       switch(tag) {
493           default:
494             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
495             break;
496           case 10: {
497             Field1 = input.ReadString();
498             break;
499           }
500           case 16: {
501             OneofField = input.ReadInt32();
502             break;
503           }
504         }
505       }
506     #endif
507     }
508 
509     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
510     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
511     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)512     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
513       uint tag;
514       while ((tag = input.ReadTag()) != 0) {
515       if ((tag & 7) == 4) {
516         // Abort on any end group tag.
517         return;
518       }
519       switch(tag) {
520           default:
521             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
522             break;
523           case 10: {
524             Field1 = input.ReadString();
525             break;
526           }
527           case 16: {
528             OneofField = input.ReadInt32();
529             break;
530           }
531         }
532       }
533     }
534     #endif
535 
536     #region Nested types
537     /// <summary>Container for nested types declared in the TestMessageWithCustomOptions message type.</summary>
538     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
539     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
540     public static partial class Types {
541       public enum AnEnum {
542         [pbr::OriginalName("ANENUM_UNSPECIFIED")] Unspecified = 0,
543         [pbr::OriginalName("ANENUM_VAL1")] Val1 = 1,
544         [pbr::OriginalName("ANENUM_VAL2")] Val2 = 2,
545       }
546 
547     }
548     #endregion
549 
550   }
551 
552   /// <summary>
553   /// A test RPC service with custom options at all possible locations (and also
554   /// some regular options, to make sure they interact nicely).
555   /// </summary>
556   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
557   public sealed partial class CustomOptionFooRequest : pb::IMessage<CustomOptionFooRequest>
558   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
559       , pb::IBufferMessage
560   #endif
561   {
562     private static readonly pb::MessageParser<CustomOptionFooRequest> _parser = new pb::MessageParser<CustomOptionFooRequest>(() => new CustomOptionFooRequest());
563     private pb::UnknownFieldSet _unknownFields;
564     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
565     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
566     public static pb::MessageParser<CustomOptionFooRequest> Parser { get { return _parser; } }
567 
568     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
569     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
570     public static pbr::MessageDescriptor Descriptor {
571       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[1]; }
572     }
573 
574     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
575     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
576     pbr::MessageDescriptor pb::IMessage.Descriptor {
577       get { return Descriptor; }
578     }
579 
580     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
581     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionFooRequest()582     public CustomOptionFooRequest() {
583       OnConstruction();
584     }
585 
OnConstruction()586     partial void OnConstruction();
587 
588     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
589     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionFooRequest(CustomOptionFooRequest other)590     public CustomOptionFooRequest(CustomOptionFooRequest other) : this() {
591       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
592     }
593 
594     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
595     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()596     public CustomOptionFooRequest Clone() {
597       return new CustomOptionFooRequest(this);
598     }
599 
600     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
601     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)602     public override bool Equals(object other) {
603       return Equals(other as CustomOptionFooRequest);
604     }
605 
606     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
607     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(CustomOptionFooRequest other)608     public bool Equals(CustomOptionFooRequest other) {
609       if (ReferenceEquals(other, null)) {
610         return false;
611       }
612       if (ReferenceEquals(other, this)) {
613         return true;
614       }
615       return Equals(_unknownFields, other._unknownFields);
616     }
617 
618     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
619     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()620     public override int GetHashCode() {
621       int hash = 1;
622       if (_unknownFields != null) {
623         hash ^= _unknownFields.GetHashCode();
624       }
625       return hash;
626     }
627 
628     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
629     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()630     public override string ToString() {
631       return pb::JsonFormatter.ToDiagnosticString(this);
632     }
633 
634     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
635     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)636     public void WriteTo(pb::CodedOutputStream output) {
637     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
638       output.WriteRawMessage(this);
639     #else
640       if (_unknownFields != null) {
641         _unknownFields.WriteTo(output);
642       }
643     #endif
644     }
645 
646     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
647     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
648     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)649     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
650       if (_unknownFields != null) {
651         _unknownFields.WriteTo(ref output);
652       }
653     }
654     #endif
655 
656     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
657     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()658     public int CalculateSize() {
659       int size = 0;
660       if (_unknownFields != null) {
661         size += _unknownFields.CalculateSize();
662       }
663       return size;
664     }
665 
666     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
667     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(CustomOptionFooRequest other)668     public void MergeFrom(CustomOptionFooRequest other) {
669       if (other == null) {
670         return;
671       }
672       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
673     }
674 
675     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
676     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)677     public void MergeFrom(pb::CodedInputStream input) {
678     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
679       input.ReadRawMessage(this);
680     #else
681       uint tag;
682       while ((tag = input.ReadTag()) != 0) {
683       if ((tag & 7) == 4) {
684         // Abort on any end group tag.
685         return;
686       }
687       switch(tag) {
688           default:
689             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
690             break;
691         }
692       }
693     #endif
694     }
695 
696     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
697     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
698     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)699     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
700       uint tag;
701       while ((tag = input.ReadTag()) != 0) {
702       if ((tag & 7) == 4) {
703         // Abort on any end group tag.
704         return;
705       }
706       switch(tag) {
707           default:
708             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
709             break;
710         }
711       }
712     }
713     #endif
714 
715   }
716 
717   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
718   public sealed partial class CustomOptionFooResponse : pb::IMessage<CustomOptionFooResponse>
719   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
720       , pb::IBufferMessage
721   #endif
722   {
723     private static readonly pb::MessageParser<CustomOptionFooResponse> _parser = new pb::MessageParser<CustomOptionFooResponse>(() => new CustomOptionFooResponse());
724     private pb::UnknownFieldSet _unknownFields;
725     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
726     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
727     public static pb::MessageParser<CustomOptionFooResponse> Parser { get { return _parser; } }
728 
729     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
730     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
731     public static pbr::MessageDescriptor Descriptor {
732       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[2]; }
733     }
734 
735     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
736     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
737     pbr::MessageDescriptor pb::IMessage.Descriptor {
738       get { return Descriptor; }
739     }
740 
741     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
742     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionFooResponse()743     public CustomOptionFooResponse() {
744       OnConstruction();
745     }
746 
OnConstruction()747     partial void OnConstruction();
748 
749     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
750     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionFooResponse(CustomOptionFooResponse other)751     public CustomOptionFooResponse(CustomOptionFooResponse other) : this() {
752       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
753     }
754 
755     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
756     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()757     public CustomOptionFooResponse Clone() {
758       return new CustomOptionFooResponse(this);
759     }
760 
761     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
762     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)763     public override bool Equals(object other) {
764       return Equals(other as CustomOptionFooResponse);
765     }
766 
767     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
768     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(CustomOptionFooResponse other)769     public bool Equals(CustomOptionFooResponse other) {
770       if (ReferenceEquals(other, null)) {
771         return false;
772       }
773       if (ReferenceEquals(other, this)) {
774         return true;
775       }
776       return Equals(_unknownFields, other._unknownFields);
777     }
778 
779     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
780     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()781     public override int GetHashCode() {
782       int hash = 1;
783       if (_unknownFields != null) {
784         hash ^= _unknownFields.GetHashCode();
785       }
786       return hash;
787     }
788 
789     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
790     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()791     public override string ToString() {
792       return pb::JsonFormatter.ToDiagnosticString(this);
793     }
794 
795     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
796     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)797     public void WriteTo(pb::CodedOutputStream output) {
798     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
799       output.WriteRawMessage(this);
800     #else
801       if (_unknownFields != null) {
802         _unknownFields.WriteTo(output);
803       }
804     #endif
805     }
806 
807     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
808     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
809     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)810     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
811       if (_unknownFields != null) {
812         _unknownFields.WriteTo(ref output);
813       }
814     }
815     #endif
816 
817     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
818     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()819     public int CalculateSize() {
820       int size = 0;
821       if (_unknownFields != null) {
822         size += _unknownFields.CalculateSize();
823       }
824       return size;
825     }
826 
827     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
828     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(CustomOptionFooResponse other)829     public void MergeFrom(CustomOptionFooResponse other) {
830       if (other == null) {
831         return;
832       }
833       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
834     }
835 
836     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
837     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)838     public void MergeFrom(pb::CodedInputStream input) {
839     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
840       input.ReadRawMessage(this);
841     #else
842       uint tag;
843       while ((tag = input.ReadTag()) != 0) {
844       if ((tag & 7) == 4) {
845         // Abort on any end group tag.
846         return;
847       }
848       switch(tag) {
849           default:
850             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
851             break;
852         }
853       }
854     #endif
855     }
856 
857     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
858     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
859     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)860     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
861       uint tag;
862       while ((tag = input.ReadTag()) != 0) {
863       if ((tag & 7) == 4) {
864         // Abort on any end group tag.
865         return;
866       }
867       switch(tag) {
868           default:
869             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
870             break;
871         }
872       }
873     }
874     #endif
875 
876   }
877 
878   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
879   public sealed partial class CustomOptionFooClientMessage : pb::IMessage<CustomOptionFooClientMessage>
880   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
881       , pb::IBufferMessage
882   #endif
883   {
884     private static readonly pb::MessageParser<CustomOptionFooClientMessage> _parser = new pb::MessageParser<CustomOptionFooClientMessage>(() => new CustomOptionFooClientMessage());
885     private pb::UnknownFieldSet _unknownFields;
886     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
887     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
888     public static pb::MessageParser<CustomOptionFooClientMessage> Parser { get { return _parser; } }
889 
890     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
891     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
892     public static pbr::MessageDescriptor Descriptor {
893       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[3]; }
894     }
895 
896     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
897     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
898     pbr::MessageDescriptor pb::IMessage.Descriptor {
899       get { return Descriptor; }
900     }
901 
902     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
903     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionFooClientMessage()904     public CustomOptionFooClientMessage() {
905       OnConstruction();
906     }
907 
OnConstruction()908     partial void OnConstruction();
909 
910     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
911     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionFooClientMessage(CustomOptionFooClientMessage other)912     public CustomOptionFooClientMessage(CustomOptionFooClientMessage other) : this() {
913       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
914     }
915 
916     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
917     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()918     public CustomOptionFooClientMessage Clone() {
919       return new CustomOptionFooClientMessage(this);
920     }
921 
922     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
923     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)924     public override bool Equals(object other) {
925       return Equals(other as CustomOptionFooClientMessage);
926     }
927 
928     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
929     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(CustomOptionFooClientMessage other)930     public bool Equals(CustomOptionFooClientMessage other) {
931       if (ReferenceEquals(other, null)) {
932         return false;
933       }
934       if (ReferenceEquals(other, this)) {
935         return true;
936       }
937       return Equals(_unknownFields, other._unknownFields);
938     }
939 
940     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
941     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()942     public override int GetHashCode() {
943       int hash = 1;
944       if (_unknownFields != null) {
945         hash ^= _unknownFields.GetHashCode();
946       }
947       return hash;
948     }
949 
950     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
951     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()952     public override string ToString() {
953       return pb::JsonFormatter.ToDiagnosticString(this);
954     }
955 
956     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
957     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)958     public void WriteTo(pb::CodedOutputStream output) {
959     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
960       output.WriteRawMessage(this);
961     #else
962       if (_unknownFields != null) {
963         _unknownFields.WriteTo(output);
964       }
965     #endif
966     }
967 
968     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
969     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
970     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)971     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
972       if (_unknownFields != null) {
973         _unknownFields.WriteTo(ref output);
974       }
975     }
976     #endif
977 
978     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
979     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()980     public int CalculateSize() {
981       int size = 0;
982       if (_unknownFields != null) {
983         size += _unknownFields.CalculateSize();
984       }
985       return size;
986     }
987 
988     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
989     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(CustomOptionFooClientMessage other)990     public void MergeFrom(CustomOptionFooClientMessage other) {
991       if (other == null) {
992         return;
993       }
994       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
995     }
996 
997     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
998     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)999     public void MergeFrom(pb::CodedInputStream input) {
1000     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1001       input.ReadRawMessage(this);
1002     #else
1003       uint tag;
1004       while ((tag = input.ReadTag()) != 0) {
1005       if ((tag & 7) == 4) {
1006         // Abort on any end group tag.
1007         return;
1008       }
1009       switch(tag) {
1010           default:
1011             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
1012             break;
1013         }
1014       }
1015     #endif
1016     }
1017 
1018     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1019     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1020     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)1021     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
1022       uint tag;
1023       while ((tag = input.ReadTag()) != 0) {
1024       if ((tag & 7) == 4) {
1025         // Abort on any end group tag.
1026         return;
1027       }
1028       switch(tag) {
1029           default:
1030             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
1031             break;
1032         }
1033       }
1034     }
1035     #endif
1036 
1037   }
1038 
1039   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
1040   public sealed partial class CustomOptionFooServerMessage : pb::IMessage<CustomOptionFooServerMessage>
1041   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1042       , pb::IBufferMessage
1043   #endif
1044   {
1045     private static readonly pb::MessageParser<CustomOptionFooServerMessage> _parser = new pb::MessageParser<CustomOptionFooServerMessage>(() => new CustomOptionFooServerMessage());
1046     private pb::UnknownFieldSet _unknownFields;
1047     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1048     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1049     public static pb::MessageParser<CustomOptionFooServerMessage> Parser { get { return _parser; } }
1050 
1051     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1052     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1053     public static pbr::MessageDescriptor Descriptor {
1054       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[4]; }
1055     }
1056 
1057     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1058     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1059     pbr::MessageDescriptor pb::IMessage.Descriptor {
1060       get { return Descriptor; }
1061     }
1062 
1063     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1064     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionFooServerMessage()1065     public CustomOptionFooServerMessage() {
1066       OnConstruction();
1067     }
1068 
OnConstruction()1069     partial void OnConstruction();
1070 
1071     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1072     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionFooServerMessage(CustomOptionFooServerMessage other)1073     public CustomOptionFooServerMessage(CustomOptionFooServerMessage other) : this() {
1074       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
1075     }
1076 
1077     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1078     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()1079     public CustomOptionFooServerMessage Clone() {
1080       return new CustomOptionFooServerMessage(this);
1081     }
1082 
1083     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1084     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)1085     public override bool Equals(object other) {
1086       return Equals(other as CustomOptionFooServerMessage);
1087     }
1088 
1089     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1090     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(CustomOptionFooServerMessage other)1091     public bool Equals(CustomOptionFooServerMessage other) {
1092       if (ReferenceEquals(other, null)) {
1093         return false;
1094       }
1095       if (ReferenceEquals(other, this)) {
1096         return true;
1097       }
1098       return Equals(_unknownFields, other._unknownFields);
1099     }
1100 
1101     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1102     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()1103     public override int GetHashCode() {
1104       int hash = 1;
1105       if (_unknownFields != null) {
1106         hash ^= _unknownFields.GetHashCode();
1107       }
1108       return hash;
1109     }
1110 
1111     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1112     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()1113     public override string ToString() {
1114       return pb::JsonFormatter.ToDiagnosticString(this);
1115     }
1116 
1117     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1118     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)1119     public void WriteTo(pb::CodedOutputStream output) {
1120     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1121       output.WriteRawMessage(this);
1122     #else
1123       if (_unknownFields != null) {
1124         _unknownFields.WriteTo(output);
1125       }
1126     #endif
1127     }
1128 
1129     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1130     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1131     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)1132     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
1133       if (_unknownFields != null) {
1134         _unknownFields.WriteTo(ref output);
1135       }
1136     }
1137     #endif
1138 
1139     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1140     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()1141     public int CalculateSize() {
1142       int size = 0;
1143       if (_unknownFields != null) {
1144         size += _unknownFields.CalculateSize();
1145       }
1146       return size;
1147     }
1148 
1149     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1150     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(CustomOptionFooServerMessage other)1151     public void MergeFrom(CustomOptionFooServerMessage other) {
1152       if (other == null) {
1153         return;
1154       }
1155       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
1156     }
1157 
1158     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1159     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)1160     public void MergeFrom(pb::CodedInputStream input) {
1161     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1162       input.ReadRawMessage(this);
1163     #else
1164       uint tag;
1165       while ((tag = input.ReadTag()) != 0) {
1166       if ((tag & 7) == 4) {
1167         // Abort on any end group tag.
1168         return;
1169       }
1170       switch(tag) {
1171           default:
1172             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
1173             break;
1174         }
1175       }
1176     #endif
1177     }
1178 
1179     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1180     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1181     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)1182     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
1183       uint tag;
1184       while ((tag = input.ReadTag()) != 0) {
1185       if ((tag & 7) == 4) {
1186         // Abort on any end group tag.
1187         return;
1188       }
1189       switch(tag) {
1190           default:
1191             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
1192             break;
1193         }
1194       }
1195     }
1196     #endif
1197 
1198   }
1199 
1200   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
1201   public sealed partial class DummyMessageContainingEnum : pb::IMessage<DummyMessageContainingEnum>
1202   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1203       , pb::IBufferMessage
1204   #endif
1205   {
1206     private static readonly pb::MessageParser<DummyMessageContainingEnum> _parser = new pb::MessageParser<DummyMessageContainingEnum>(() => new DummyMessageContainingEnum());
1207     private pb::UnknownFieldSet _unknownFields;
1208     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1209     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1210     public static pb::MessageParser<DummyMessageContainingEnum> Parser { get { return _parser; } }
1211 
1212     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1213     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1214     public static pbr::MessageDescriptor Descriptor {
1215       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[5]; }
1216     }
1217 
1218     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1219     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1220     pbr::MessageDescriptor pb::IMessage.Descriptor {
1221       get { return Descriptor; }
1222     }
1223 
1224     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1225     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
DummyMessageContainingEnum()1226     public DummyMessageContainingEnum() {
1227       OnConstruction();
1228     }
1229 
OnConstruction()1230     partial void OnConstruction();
1231 
1232     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1233     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
DummyMessageContainingEnum(DummyMessageContainingEnum other)1234     public DummyMessageContainingEnum(DummyMessageContainingEnum other) : this() {
1235       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
1236     }
1237 
1238     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1239     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()1240     public DummyMessageContainingEnum Clone() {
1241       return new DummyMessageContainingEnum(this);
1242     }
1243 
1244     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1245     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)1246     public override bool Equals(object other) {
1247       return Equals(other as DummyMessageContainingEnum);
1248     }
1249 
1250     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1251     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(DummyMessageContainingEnum other)1252     public bool Equals(DummyMessageContainingEnum other) {
1253       if (ReferenceEquals(other, null)) {
1254         return false;
1255       }
1256       if (ReferenceEquals(other, this)) {
1257         return true;
1258       }
1259       return Equals(_unknownFields, other._unknownFields);
1260     }
1261 
1262     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1263     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()1264     public override int GetHashCode() {
1265       int hash = 1;
1266       if (_unknownFields != null) {
1267         hash ^= _unknownFields.GetHashCode();
1268       }
1269       return hash;
1270     }
1271 
1272     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1273     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()1274     public override string ToString() {
1275       return pb::JsonFormatter.ToDiagnosticString(this);
1276     }
1277 
1278     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1279     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)1280     public void WriteTo(pb::CodedOutputStream output) {
1281     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1282       output.WriteRawMessage(this);
1283     #else
1284       if (_unknownFields != null) {
1285         _unknownFields.WriteTo(output);
1286       }
1287     #endif
1288     }
1289 
1290     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1291     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1292     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)1293     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
1294       if (_unknownFields != null) {
1295         _unknownFields.WriteTo(ref output);
1296       }
1297     }
1298     #endif
1299 
1300     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1301     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()1302     public int CalculateSize() {
1303       int size = 0;
1304       if (_unknownFields != null) {
1305         size += _unknownFields.CalculateSize();
1306       }
1307       return size;
1308     }
1309 
1310     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1311     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(DummyMessageContainingEnum other)1312     public void MergeFrom(DummyMessageContainingEnum other) {
1313       if (other == null) {
1314         return;
1315       }
1316       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
1317     }
1318 
1319     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1320     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)1321     public void MergeFrom(pb::CodedInputStream input) {
1322     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1323       input.ReadRawMessage(this);
1324     #else
1325       uint tag;
1326       while ((tag = input.ReadTag()) != 0) {
1327       if ((tag & 7) == 4) {
1328         // Abort on any end group tag.
1329         return;
1330       }
1331       switch(tag) {
1332           default:
1333             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
1334             break;
1335         }
1336       }
1337     #endif
1338     }
1339 
1340     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1341     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1342     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)1343     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
1344       uint tag;
1345       while ((tag = input.ReadTag()) != 0) {
1346       if ((tag & 7) == 4) {
1347         // Abort on any end group tag.
1348         return;
1349       }
1350       switch(tag) {
1351           default:
1352             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
1353             break;
1354         }
1355       }
1356     }
1357     #endif
1358 
1359     #region Nested types
1360     /// <summary>Container for nested types declared in the DummyMessageContainingEnum message type.</summary>
1361     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1362     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1363     public static partial class Types {
1364       public enum TestEnumType {
1365         [pbr::OriginalName("TEST_OPTION_ENUM_UNSPECIFIED")] TestOptionEnumUnspecified = 0,
1366         [pbr::OriginalName("TEST_OPTION_ENUM_TYPE1")] TestOptionEnumType1 = 22,
1367         [pbr::OriginalName("TEST_OPTION_ENUM_TYPE2")] TestOptionEnumType2 = -23,
1368       }
1369 
1370     }
1371     #endregion
1372 
1373   }
1374 
1375   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
1376   public sealed partial class DummyMessageInvalidAsOptionType : pb::IMessage<DummyMessageInvalidAsOptionType>
1377   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1378       , pb::IBufferMessage
1379   #endif
1380   {
1381     private static readonly pb::MessageParser<DummyMessageInvalidAsOptionType> _parser = new pb::MessageParser<DummyMessageInvalidAsOptionType>(() => new DummyMessageInvalidAsOptionType());
1382     private pb::UnknownFieldSet _unknownFields;
1383     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1384     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1385     public static pb::MessageParser<DummyMessageInvalidAsOptionType> Parser { get { return _parser; } }
1386 
1387     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1388     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1389     public static pbr::MessageDescriptor Descriptor {
1390       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[6]; }
1391     }
1392 
1393     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1394     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1395     pbr::MessageDescriptor pb::IMessage.Descriptor {
1396       get { return Descriptor; }
1397     }
1398 
1399     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1400     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
DummyMessageInvalidAsOptionType()1401     public DummyMessageInvalidAsOptionType() {
1402       OnConstruction();
1403     }
1404 
OnConstruction()1405     partial void OnConstruction();
1406 
1407     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1408     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
DummyMessageInvalidAsOptionType(DummyMessageInvalidAsOptionType other)1409     public DummyMessageInvalidAsOptionType(DummyMessageInvalidAsOptionType other) : this() {
1410       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
1411     }
1412 
1413     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1414     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()1415     public DummyMessageInvalidAsOptionType Clone() {
1416       return new DummyMessageInvalidAsOptionType(this);
1417     }
1418 
1419     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1420     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)1421     public override bool Equals(object other) {
1422       return Equals(other as DummyMessageInvalidAsOptionType);
1423     }
1424 
1425     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1426     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(DummyMessageInvalidAsOptionType other)1427     public bool Equals(DummyMessageInvalidAsOptionType other) {
1428       if (ReferenceEquals(other, null)) {
1429         return false;
1430       }
1431       if (ReferenceEquals(other, this)) {
1432         return true;
1433       }
1434       return Equals(_unknownFields, other._unknownFields);
1435     }
1436 
1437     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1438     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()1439     public override int GetHashCode() {
1440       int hash = 1;
1441       if (_unknownFields != null) {
1442         hash ^= _unknownFields.GetHashCode();
1443       }
1444       return hash;
1445     }
1446 
1447     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1448     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()1449     public override string ToString() {
1450       return pb::JsonFormatter.ToDiagnosticString(this);
1451     }
1452 
1453     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1454     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)1455     public void WriteTo(pb::CodedOutputStream output) {
1456     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1457       output.WriteRawMessage(this);
1458     #else
1459       if (_unknownFields != null) {
1460         _unknownFields.WriteTo(output);
1461       }
1462     #endif
1463     }
1464 
1465     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1466     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1467     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)1468     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
1469       if (_unknownFields != null) {
1470         _unknownFields.WriteTo(ref output);
1471       }
1472     }
1473     #endif
1474 
1475     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1476     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()1477     public int CalculateSize() {
1478       int size = 0;
1479       if (_unknownFields != null) {
1480         size += _unknownFields.CalculateSize();
1481       }
1482       return size;
1483     }
1484 
1485     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1486     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(DummyMessageInvalidAsOptionType other)1487     public void MergeFrom(DummyMessageInvalidAsOptionType other) {
1488       if (other == null) {
1489         return;
1490       }
1491       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
1492     }
1493 
1494     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1495     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)1496     public void MergeFrom(pb::CodedInputStream input) {
1497     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1498       input.ReadRawMessage(this);
1499     #else
1500       uint tag;
1501       while ((tag = input.ReadTag()) != 0) {
1502       if ((tag & 7) == 4) {
1503         // Abort on any end group tag.
1504         return;
1505       }
1506       switch(tag) {
1507           default:
1508             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
1509             break;
1510         }
1511       }
1512     #endif
1513     }
1514 
1515     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1516     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1517     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)1518     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
1519       uint tag;
1520       while ((tag = input.ReadTag()) != 0) {
1521       if ((tag & 7) == 4) {
1522         // Abort on any end group tag.
1523         return;
1524       }
1525       switch(tag) {
1526           default:
1527             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
1528             break;
1529         }
1530       }
1531     }
1532     #endif
1533 
1534   }
1535 
1536   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
1537   public sealed partial class CustomOptionMinIntegerValues : pb::IMessage<CustomOptionMinIntegerValues>
1538   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1539       , pb::IBufferMessage
1540   #endif
1541   {
1542     private static readonly pb::MessageParser<CustomOptionMinIntegerValues> _parser = new pb::MessageParser<CustomOptionMinIntegerValues>(() => new CustomOptionMinIntegerValues());
1543     private pb::UnknownFieldSet _unknownFields;
1544     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1545     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1546     public static pb::MessageParser<CustomOptionMinIntegerValues> Parser { get { return _parser; } }
1547 
1548     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1549     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1550     public static pbr::MessageDescriptor Descriptor {
1551       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[7]; }
1552     }
1553 
1554     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1555     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1556     pbr::MessageDescriptor pb::IMessage.Descriptor {
1557       get { return Descriptor; }
1558     }
1559 
1560     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1561     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionMinIntegerValues()1562     public CustomOptionMinIntegerValues() {
1563       OnConstruction();
1564     }
1565 
OnConstruction()1566     partial void OnConstruction();
1567 
1568     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1569     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionMinIntegerValues(CustomOptionMinIntegerValues other)1570     public CustomOptionMinIntegerValues(CustomOptionMinIntegerValues other) : this() {
1571       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
1572     }
1573 
1574     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1575     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()1576     public CustomOptionMinIntegerValues Clone() {
1577       return new CustomOptionMinIntegerValues(this);
1578     }
1579 
1580     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1581     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)1582     public override bool Equals(object other) {
1583       return Equals(other as CustomOptionMinIntegerValues);
1584     }
1585 
1586     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1587     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(CustomOptionMinIntegerValues other)1588     public bool Equals(CustomOptionMinIntegerValues other) {
1589       if (ReferenceEquals(other, null)) {
1590         return false;
1591       }
1592       if (ReferenceEquals(other, this)) {
1593         return true;
1594       }
1595       return Equals(_unknownFields, other._unknownFields);
1596     }
1597 
1598     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1599     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()1600     public override int GetHashCode() {
1601       int hash = 1;
1602       if (_unknownFields != null) {
1603         hash ^= _unknownFields.GetHashCode();
1604       }
1605       return hash;
1606     }
1607 
1608     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1609     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()1610     public override string ToString() {
1611       return pb::JsonFormatter.ToDiagnosticString(this);
1612     }
1613 
1614     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1615     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)1616     public void WriteTo(pb::CodedOutputStream output) {
1617     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1618       output.WriteRawMessage(this);
1619     #else
1620       if (_unknownFields != null) {
1621         _unknownFields.WriteTo(output);
1622       }
1623     #endif
1624     }
1625 
1626     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1627     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1628     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)1629     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
1630       if (_unknownFields != null) {
1631         _unknownFields.WriteTo(ref output);
1632       }
1633     }
1634     #endif
1635 
1636     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1637     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()1638     public int CalculateSize() {
1639       int size = 0;
1640       if (_unknownFields != null) {
1641         size += _unknownFields.CalculateSize();
1642       }
1643       return size;
1644     }
1645 
1646     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1647     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(CustomOptionMinIntegerValues other)1648     public void MergeFrom(CustomOptionMinIntegerValues other) {
1649       if (other == null) {
1650         return;
1651       }
1652       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
1653     }
1654 
1655     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1656     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)1657     public void MergeFrom(pb::CodedInputStream input) {
1658     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1659       input.ReadRawMessage(this);
1660     #else
1661       uint tag;
1662       while ((tag = input.ReadTag()) != 0) {
1663       if ((tag & 7) == 4) {
1664         // Abort on any end group tag.
1665         return;
1666       }
1667       switch(tag) {
1668           default:
1669             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
1670             break;
1671         }
1672       }
1673     #endif
1674     }
1675 
1676     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1677     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1678     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)1679     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
1680       uint tag;
1681       while ((tag = input.ReadTag()) != 0) {
1682       if ((tag & 7) == 4) {
1683         // Abort on any end group tag.
1684         return;
1685       }
1686       switch(tag) {
1687           default:
1688             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
1689             break;
1690         }
1691       }
1692     }
1693     #endif
1694 
1695   }
1696 
1697   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
1698   public sealed partial class CustomOptionMaxIntegerValues : pb::IMessage<CustomOptionMaxIntegerValues>
1699   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1700       , pb::IBufferMessage
1701   #endif
1702   {
1703     private static readonly pb::MessageParser<CustomOptionMaxIntegerValues> _parser = new pb::MessageParser<CustomOptionMaxIntegerValues>(() => new CustomOptionMaxIntegerValues());
1704     private pb::UnknownFieldSet _unknownFields;
1705     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1706     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1707     public static pb::MessageParser<CustomOptionMaxIntegerValues> Parser { get { return _parser; } }
1708 
1709     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1710     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1711     public static pbr::MessageDescriptor Descriptor {
1712       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[8]; }
1713     }
1714 
1715     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1716     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1717     pbr::MessageDescriptor pb::IMessage.Descriptor {
1718       get { return Descriptor; }
1719     }
1720 
1721     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1722     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionMaxIntegerValues()1723     public CustomOptionMaxIntegerValues() {
1724       OnConstruction();
1725     }
1726 
OnConstruction()1727     partial void OnConstruction();
1728 
1729     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1730     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionMaxIntegerValues(CustomOptionMaxIntegerValues other)1731     public CustomOptionMaxIntegerValues(CustomOptionMaxIntegerValues other) : this() {
1732       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
1733     }
1734 
1735     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1736     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()1737     public CustomOptionMaxIntegerValues Clone() {
1738       return new CustomOptionMaxIntegerValues(this);
1739     }
1740 
1741     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1742     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)1743     public override bool Equals(object other) {
1744       return Equals(other as CustomOptionMaxIntegerValues);
1745     }
1746 
1747     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1748     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(CustomOptionMaxIntegerValues other)1749     public bool Equals(CustomOptionMaxIntegerValues other) {
1750       if (ReferenceEquals(other, null)) {
1751         return false;
1752       }
1753       if (ReferenceEquals(other, this)) {
1754         return true;
1755       }
1756       return Equals(_unknownFields, other._unknownFields);
1757     }
1758 
1759     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1760     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()1761     public override int GetHashCode() {
1762       int hash = 1;
1763       if (_unknownFields != null) {
1764         hash ^= _unknownFields.GetHashCode();
1765       }
1766       return hash;
1767     }
1768 
1769     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1770     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()1771     public override string ToString() {
1772       return pb::JsonFormatter.ToDiagnosticString(this);
1773     }
1774 
1775     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1776     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)1777     public void WriteTo(pb::CodedOutputStream output) {
1778     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1779       output.WriteRawMessage(this);
1780     #else
1781       if (_unknownFields != null) {
1782         _unknownFields.WriteTo(output);
1783       }
1784     #endif
1785     }
1786 
1787     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1788     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1789     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)1790     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
1791       if (_unknownFields != null) {
1792         _unknownFields.WriteTo(ref output);
1793       }
1794     }
1795     #endif
1796 
1797     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1798     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()1799     public int CalculateSize() {
1800       int size = 0;
1801       if (_unknownFields != null) {
1802         size += _unknownFields.CalculateSize();
1803       }
1804       return size;
1805     }
1806 
1807     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1808     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(CustomOptionMaxIntegerValues other)1809     public void MergeFrom(CustomOptionMaxIntegerValues other) {
1810       if (other == null) {
1811         return;
1812       }
1813       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
1814     }
1815 
1816     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1817     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)1818     public void MergeFrom(pb::CodedInputStream input) {
1819     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1820       input.ReadRawMessage(this);
1821     #else
1822       uint tag;
1823       while ((tag = input.ReadTag()) != 0) {
1824       if ((tag & 7) == 4) {
1825         // Abort on any end group tag.
1826         return;
1827       }
1828       switch(tag) {
1829           default:
1830             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
1831             break;
1832         }
1833       }
1834     #endif
1835     }
1836 
1837     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1838     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1839     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)1840     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
1841       uint tag;
1842       while ((tag = input.ReadTag()) != 0) {
1843       if ((tag & 7) == 4) {
1844         // Abort on any end group tag.
1845         return;
1846       }
1847       switch(tag) {
1848           default:
1849             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
1850             break;
1851         }
1852       }
1853     }
1854     #endif
1855 
1856   }
1857 
1858   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
1859   public sealed partial class CustomOptionOtherValues : pb::IMessage<CustomOptionOtherValues>
1860   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1861       , pb::IBufferMessage
1862   #endif
1863   {
1864     private static readonly pb::MessageParser<CustomOptionOtherValues> _parser = new pb::MessageParser<CustomOptionOtherValues>(() => new CustomOptionOtherValues());
1865     private pb::UnknownFieldSet _unknownFields;
1866     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1867     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1868     public static pb::MessageParser<CustomOptionOtherValues> Parser { get { return _parser; } }
1869 
1870     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1871     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1872     public static pbr::MessageDescriptor Descriptor {
1873       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[9]; }
1874     }
1875 
1876     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1877     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
1878     pbr::MessageDescriptor pb::IMessage.Descriptor {
1879       get { return Descriptor; }
1880     }
1881 
1882     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1883     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionOtherValues()1884     public CustomOptionOtherValues() {
1885       OnConstruction();
1886     }
1887 
OnConstruction()1888     partial void OnConstruction();
1889 
1890     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1891     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CustomOptionOtherValues(CustomOptionOtherValues other)1892     public CustomOptionOtherValues(CustomOptionOtherValues other) : this() {
1893       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
1894     }
1895 
1896     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1897     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()1898     public CustomOptionOtherValues Clone() {
1899       return new CustomOptionOtherValues(this);
1900     }
1901 
1902     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1903     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)1904     public override bool Equals(object other) {
1905       return Equals(other as CustomOptionOtherValues);
1906     }
1907 
1908     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1909     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(CustomOptionOtherValues other)1910     public bool Equals(CustomOptionOtherValues other) {
1911       if (ReferenceEquals(other, null)) {
1912         return false;
1913       }
1914       if (ReferenceEquals(other, this)) {
1915         return true;
1916       }
1917       return Equals(_unknownFields, other._unknownFields);
1918     }
1919 
1920     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1921     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()1922     public override int GetHashCode() {
1923       int hash = 1;
1924       if (_unknownFields != null) {
1925         hash ^= _unknownFields.GetHashCode();
1926       }
1927       return hash;
1928     }
1929 
1930     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1931     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()1932     public override string ToString() {
1933       return pb::JsonFormatter.ToDiagnosticString(this);
1934     }
1935 
1936     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1937     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)1938     public void WriteTo(pb::CodedOutputStream output) {
1939     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1940       output.WriteRawMessage(this);
1941     #else
1942       if (_unknownFields != null) {
1943         _unknownFields.WriteTo(output);
1944       }
1945     #endif
1946     }
1947 
1948     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1949     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1950     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)1951     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
1952       if (_unknownFields != null) {
1953         _unknownFields.WriteTo(ref output);
1954       }
1955     }
1956     #endif
1957 
1958     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1959     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()1960     public int CalculateSize() {
1961       int size = 0;
1962       if (_unknownFields != null) {
1963         size += _unknownFields.CalculateSize();
1964       }
1965       return size;
1966     }
1967 
1968     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1969     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(CustomOptionOtherValues other)1970     public void MergeFrom(CustomOptionOtherValues other) {
1971       if (other == null) {
1972         return;
1973       }
1974       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
1975     }
1976 
1977     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
1978     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)1979     public void MergeFrom(pb::CodedInputStream input) {
1980     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1981       input.ReadRawMessage(this);
1982     #else
1983       uint tag;
1984       while ((tag = input.ReadTag()) != 0) {
1985       if ((tag & 7) == 4) {
1986         // Abort on any end group tag.
1987         return;
1988       }
1989       switch(tag) {
1990           default:
1991             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
1992             break;
1993         }
1994       }
1995     #endif
1996     }
1997 
1998     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
1999     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2000     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)2001     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
2002       uint tag;
2003       while ((tag = input.ReadTag()) != 0) {
2004       if ((tag & 7) == 4) {
2005         // Abort on any end group tag.
2006         return;
2007       }
2008       switch(tag) {
2009           default:
2010             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
2011             break;
2012         }
2013       }
2014     }
2015     #endif
2016 
2017   }
2018 
2019   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
2020   public sealed partial class SettingRealsFromPositiveInts : pb::IMessage<SettingRealsFromPositiveInts>
2021   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2022       , pb::IBufferMessage
2023   #endif
2024   {
2025     private static readonly pb::MessageParser<SettingRealsFromPositiveInts> _parser = new pb::MessageParser<SettingRealsFromPositiveInts>(() => new SettingRealsFromPositiveInts());
2026     private pb::UnknownFieldSet _unknownFields;
2027     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2028     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2029     public static pb::MessageParser<SettingRealsFromPositiveInts> Parser { get { return _parser; } }
2030 
2031     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2032     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2033     public static pbr::MessageDescriptor Descriptor {
2034       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[10]; }
2035     }
2036 
2037     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2038     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2039     pbr::MessageDescriptor pb::IMessage.Descriptor {
2040       get { return Descriptor; }
2041     }
2042 
2043     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2044     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
SettingRealsFromPositiveInts()2045     public SettingRealsFromPositiveInts() {
2046       OnConstruction();
2047     }
2048 
OnConstruction()2049     partial void OnConstruction();
2050 
2051     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2052     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
SettingRealsFromPositiveInts(SettingRealsFromPositiveInts other)2053     public SettingRealsFromPositiveInts(SettingRealsFromPositiveInts other) : this() {
2054       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
2055     }
2056 
2057     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2058     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()2059     public SettingRealsFromPositiveInts Clone() {
2060       return new SettingRealsFromPositiveInts(this);
2061     }
2062 
2063     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2064     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)2065     public override bool Equals(object other) {
2066       return Equals(other as SettingRealsFromPositiveInts);
2067     }
2068 
2069     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2070     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(SettingRealsFromPositiveInts other)2071     public bool Equals(SettingRealsFromPositiveInts other) {
2072       if (ReferenceEquals(other, null)) {
2073         return false;
2074       }
2075       if (ReferenceEquals(other, this)) {
2076         return true;
2077       }
2078       return Equals(_unknownFields, other._unknownFields);
2079     }
2080 
2081     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2082     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()2083     public override int GetHashCode() {
2084       int hash = 1;
2085       if (_unknownFields != null) {
2086         hash ^= _unknownFields.GetHashCode();
2087       }
2088       return hash;
2089     }
2090 
2091     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2092     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()2093     public override string ToString() {
2094       return pb::JsonFormatter.ToDiagnosticString(this);
2095     }
2096 
2097     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2098     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)2099     public void WriteTo(pb::CodedOutputStream output) {
2100     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2101       output.WriteRawMessage(this);
2102     #else
2103       if (_unknownFields != null) {
2104         _unknownFields.WriteTo(output);
2105       }
2106     #endif
2107     }
2108 
2109     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2110     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2111     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)2112     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
2113       if (_unknownFields != null) {
2114         _unknownFields.WriteTo(ref output);
2115       }
2116     }
2117     #endif
2118 
2119     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2120     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()2121     public int CalculateSize() {
2122       int size = 0;
2123       if (_unknownFields != null) {
2124         size += _unknownFields.CalculateSize();
2125       }
2126       return size;
2127     }
2128 
2129     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2130     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(SettingRealsFromPositiveInts other)2131     public void MergeFrom(SettingRealsFromPositiveInts other) {
2132       if (other == null) {
2133         return;
2134       }
2135       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
2136     }
2137 
2138     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2139     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)2140     public void MergeFrom(pb::CodedInputStream input) {
2141     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2142       input.ReadRawMessage(this);
2143     #else
2144       uint tag;
2145       while ((tag = input.ReadTag()) != 0) {
2146       if ((tag & 7) == 4) {
2147         // Abort on any end group tag.
2148         return;
2149       }
2150       switch(tag) {
2151           default:
2152             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
2153             break;
2154         }
2155       }
2156     #endif
2157     }
2158 
2159     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2160     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2161     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)2162     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
2163       uint tag;
2164       while ((tag = input.ReadTag()) != 0) {
2165       if ((tag & 7) == 4) {
2166         // Abort on any end group tag.
2167         return;
2168       }
2169       switch(tag) {
2170           default:
2171             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
2172             break;
2173         }
2174       }
2175     }
2176     #endif
2177 
2178   }
2179 
2180   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
2181   public sealed partial class SettingRealsFromNegativeInts : pb::IMessage<SettingRealsFromNegativeInts>
2182   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2183       , pb::IBufferMessage
2184   #endif
2185   {
2186     private static readonly pb::MessageParser<SettingRealsFromNegativeInts> _parser = new pb::MessageParser<SettingRealsFromNegativeInts>(() => new SettingRealsFromNegativeInts());
2187     private pb::UnknownFieldSet _unknownFields;
2188     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2189     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2190     public static pb::MessageParser<SettingRealsFromNegativeInts> Parser { get { return _parser; } }
2191 
2192     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2193     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2194     public static pbr::MessageDescriptor Descriptor {
2195       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[11]; }
2196     }
2197 
2198     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2199     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2200     pbr::MessageDescriptor pb::IMessage.Descriptor {
2201       get { return Descriptor; }
2202     }
2203 
2204     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2205     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
SettingRealsFromNegativeInts()2206     public SettingRealsFromNegativeInts() {
2207       OnConstruction();
2208     }
2209 
OnConstruction()2210     partial void OnConstruction();
2211 
2212     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2213     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
SettingRealsFromNegativeInts(SettingRealsFromNegativeInts other)2214     public SettingRealsFromNegativeInts(SettingRealsFromNegativeInts other) : this() {
2215       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
2216     }
2217 
2218     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2219     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()2220     public SettingRealsFromNegativeInts Clone() {
2221       return new SettingRealsFromNegativeInts(this);
2222     }
2223 
2224     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2225     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)2226     public override bool Equals(object other) {
2227       return Equals(other as SettingRealsFromNegativeInts);
2228     }
2229 
2230     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2231     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(SettingRealsFromNegativeInts other)2232     public bool Equals(SettingRealsFromNegativeInts other) {
2233       if (ReferenceEquals(other, null)) {
2234         return false;
2235       }
2236       if (ReferenceEquals(other, this)) {
2237         return true;
2238       }
2239       return Equals(_unknownFields, other._unknownFields);
2240     }
2241 
2242     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2243     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()2244     public override int GetHashCode() {
2245       int hash = 1;
2246       if (_unknownFields != null) {
2247         hash ^= _unknownFields.GetHashCode();
2248       }
2249       return hash;
2250     }
2251 
2252     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2253     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()2254     public override string ToString() {
2255       return pb::JsonFormatter.ToDiagnosticString(this);
2256     }
2257 
2258     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2259     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)2260     public void WriteTo(pb::CodedOutputStream output) {
2261     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2262       output.WriteRawMessage(this);
2263     #else
2264       if (_unknownFields != null) {
2265         _unknownFields.WriteTo(output);
2266       }
2267     #endif
2268     }
2269 
2270     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2271     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2272     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)2273     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
2274       if (_unknownFields != null) {
2275         _unknownFields.WriteTo(ref output);
2276       }
2277     }
2278     #endif
2279 
2280     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2281     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()2282     public int CalculateSize() {
2283       int size = 0;
2284       if (_unknownFields != null) {
2285         size += _unknownFields.CalculateSize();
2286       }
2287       return size;
2288     }
2289 
2290     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2291     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(SettingRealsFromNegativeInts other)2292     public void MergeFrom(SettingRealsFromNegativeInts other) {
2293       if (other == null) {
2294         return;
2295       }
2296       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
2297     }
2298 
2299     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2300     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)2301     public void MergeFrom(pb::CodedInputStream input) {
2302     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2303       input.ReadRawMessage(this);
2304     #else
2305       uint tag;
2306       while ((tag = input.ReadTag()) != 0) {
2307       if ((tag & 7) == 4) {
2308         // Abort on any end group tag.
2309         return;
2310       }
2311       switch(tag) {
2312           default:
2313             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
2314             break;
2315         }
2316       }
2317     #endif
2318     }
2319 
2320     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2321     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2322     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)2323     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
2324       uint tag;
2325       while ((tag = input.ReadTag()) != 0) {
2326       if ((tag & 7) == 4) {
2327         // Abort on any end group tag.
2328         return;
2329       }
2330       switch(tag) {
2331           default:
2332             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
2333             break;
2334         }
2335       }
2336     }
2337     #endif
2338 
2339   }
2340 
2341   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
2342   public sealed partial class ComplexOptionType1 : pb::IMessage<ComplexOptionType1>
2343   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2344       , pb::IBufferMessage
2345   #endif
2346   {
2347     private static readonly pb::MessageParser<ComplexOptionType1> _parser = new pb::MessageParser<ComplexOptionType1>(() => new ComplexOptionType1());
2348     private pb::UnknownFieldSet _unknownFields;
2349     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2350     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2351     public static pb::MessageParser<ComplexOptionType1> Parser { get { return _parser; } }
2352 
2353     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2354     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2355     public static pbr::MessageDescriptor Descriptor {
2356       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[12]; }
2357     }
2358 
2359     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2360     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2361     pbr::MessageDescriptor pb::IMessage.Descriptor {
2362       get { return Descriptor; }
2363     }
2364 
2365     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2366     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ComplexOptionType1()2367     public ComplexOptionType1() {
2368       OnConstruction();
2369     }
2370 
OnConstruction()2371     partial void OnConstruction();
2372 
2373     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2374     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ComplexOptionType1(ComplexOptionType1 other)2375     public ComplexOptionType1(ComplexOptionType1 other) : this() {
2376       foo_ = other.foo_;
2377       foo2_ = other.foo2_;
2378       foo3_ = other.foo3_;
2379       foo4_ = other.foo4_.Clone();
2380       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
2381     }
2382 
2383     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2384     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()2385     public ComplexOptionType1 Clone() {
2386       return new ComplexOptionType1(this);
2387     }
2388 
2389     /// <summary>Field number for the "foo" field.</summary>
2390     public const int FooFieldNumber = 1;
2391     private int foo_;
2392     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2393     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2394     public int Foo {
2395       get { return foo_; }
2396       set {
2397         foo_ = value;
2398       }
2399     }
2400 
2401     /// <summary>Field number for the "foo2" field.</summary>
2402     public const int Foo2FieldNumber = 2;
2403     private int foo2_;
2404     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2405     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2406     public int Foo2 {
2407       get { return foo2_; }
2408       set {
2409         foo2_ = value;
2410       }
2411     }
2412 
2413     /// <summary>Field number for the "foo3" field.</summary>
2414     public const int Foo3FieldNumber = 3;
2415     private int foo3_;
2416     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2417     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2418     public int Foo3 {
2419       get { return foo3_; }
2420       set {
2421         foo3_ = value;
2422       }
2423     }
2424 
2425     /// <summary>Field number for the "foo4" field.</summary>
2426     public const int Foo4FieldNumber = 4;
2427     private static readonly pb::FieldCodec<int> _repeated_foo4_codec
2428         = pb::FieldCodec.ForInt32(34);
2429     private readonly pbc::RepeatedField<int> foo4_ = new pbc::RepeatedField<int>();
2430     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2431     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2432     public pbc::RepeatedField<int> Foo4 {
2433       get { return foo4_; }
2434     }
2435 
2436     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2437     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)2438     public override bool Equals(object other) {
2439       return Equals(other as ComplexOptionType1);
2440     }
2441 
2442     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2443     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(ComplexOptionType1 other)2444     public bool Equals(ComplexOptionType1 other) {
2445       if (ReferenceEquals(other, null)) {
2446         return false;
2447       }
2448       if (ReferenceEquals(other, this)) {
2449         return true;
2450       }
2451       if (Foo != other.Foo) return false;
2452       if (Foo2 != other.Foo2) return false;
2453       if (Foo3 != other.Foo3) return false;
2454       if(!foo4_.Equals(other.foo4_)) return false;
2455       return Equals(_unknownFields, other._unknownFields);
2456     }
2457 
2458     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2459     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()2460     public override int GetHashCode() {
2461       int hash = 1;
2462       if (Foo != 0) hash ^= Foo.GetHashCode();
2463       if (Foo2 != 0) hash ^= Foo2.GetHashCode();
2464       if (Foo3 != 0) hash ^= Foo3.GetHashCode();
2465       hash ^= foo4_.GetHashCode();
2466       if (_unknownFields != null) {
2467         hash ^= _unknownFields.GetHashCode();
2468       }
2469       return hash;
2470     }
2471 
2472     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2473     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()2474     public override string ToString() {
2475       return pb::JsonFormatter.ToDiagnosticString(this);
2476     }
2477 
2478     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2479     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)2480     public void WriteTo(pb::CodedOutputStream output) {
2481     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2482       output.WriteRawMessage(this);
2483     #else
2484       if (Foo != 0) {
2485         output.WriteRawTag(8);
2486         output.WriteInt32(Foo);
2487       }
2488       if (Foo2 != 0) {
2489         output.WriteRawTag(16);
2490         output.WriteInt32(Foo2);
2491       }
2492       if (Foo3 != 0) {
2493         output.WriteRawTag(24);
2494         output.WriteInt32(Foo3);
2495       }
2496       foo4_.WriteTo(output, _repeated_foo4_codec);
2497       if (_unknownFields != null) {
2498         _unknownFields.WriteTo(output);
2499       }
2500     #endif
2501     }
2502 
2503     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2504     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2505     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)2506     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
2507       if (Foo != 0) {
2508         output.WriteRawTag(8);
2509         output.WriteInt32(Foo);
2510       }
2511       if (Foo2 != 0) {
2512         output.WriteRawTag(16);
2513         output.WriteInt32(Foo2);
2514       }
2515       if (Foo3 != 0) {
2516         output.WriteRawTag(24);
2517         output.WriteInt32(Foo3);
2518       }
2519       foo4_.WriteTo(ref output, _repeated_foo4_codec);
2520       if (_unknownFields != null) {
2521         _unknownFields.WriteTo(ref output);
2522       }
2523     }
2524     #endif
2525 
2526     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2527     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()2528     public int CalculateSize() {
2529       int size = 0;
2530       if (Foo != 0) {
2531         size += 1 + pb::CodedOutputStream.ComputeInt32Size(Foo);
2532       }
2533       if (Foo2 != 0) {
2534         size += 1 + pb::CodedOutputStream.ComputeInt32Size(Foo2);
2535       }
2536       if (Foo3 != 0) {
2537         size += 1 + pb::CodedOutputStream.ComputeInt32Size(Foo3);
2538       }
2539       size += foo4_.CalculateSize(_repeated_foo4_codec);
2540       if (_unknownFields != null) {
2541         size += _unknownFields.CalculateSize();
2542       }
2543       return size;
2544     }
2545 
2546     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2547     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(ComplexOptionType1 other)2548     public void MergeFrom(ComplexOptionType1 other) {
2549       if (other == null) {
2550         return;
2551       }
2552       if (other.Foo != 0) {
2553         Foo = other.Foo;
2554       }
2555       if (other.Foo2 != 0) {
2556         Foo2 = other.Foo2;
2557       }
2558       if (other.Foo3 != 0) {
2559         Foo3 = other.Foo3;
2560       }
2561       foo4_.Add(other.foo4_);
2562       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
2563     }
2564 
2565     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2566     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)2567     public void MergeFrom(pb::CodedInputStream input) {
2568     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2569       input.ReadRawMessage(this);
2570     #else
2571       uint tag;
2572       while ((tag = input.ReadTag()) != 0) {
2573       if ((tag & 7) == 4) {
2574         // Abort on any end group tag.
2575         return;
2576       }
2577       switch(tag) {
2578           default:
2579             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
2580             break;
2581           case 8: {
2582             Foo = input.ReadInt32();
2583             break;
2584           }
2585           case 16: {
2586             Foo2 = input.ReadInt32();
2587             break;
2588           }
2589           case 24: {
2590             Foo3 = input.ReadInt32();
2591             break;
2592           }
2593           case 34:
2594           case 32: {
2595             foo4_.AddEntriesFrom(input, _repeated_foo4_codec);
2596             break;
2597           }
2598         }
2599       }
2600     #endif
2601     }
2602 
2603     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2604     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2605     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)2606     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
2607       uint tag;
2608       while ((tag = input.ReadTag()) != 0) {
2609       if ((tag & 7) == 4) {
2610         // Abort on any end group tag.
2611         return;
2612       }
2613       switch(tag) {
2614           default:
2615             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
2616             break;
2617           case 8: {
2618             Foo = input.ReadInt32();
2619             break;
2620           }
2621           case 16: {
2622             Foo2 = input.ReadInt32();
2623             break;
2624           }
2625           case 24: {
2626             Foo3 = input.ReadInt32();
2627             break;
2628           }
2629           case 34:
2630           case 32: {
2631             foo4_.AddEntriesFrom(ref input, _repeated_foo4_codec);
2632             break;
2633           }
2634         }
2635       }
2636     }
2637     #endif
2638 
2639   }
2640 
2641   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
2642   public sealed partial class ComplexOptionType2 : pb::IMessage<ComplexOptionType2>
2643   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2644       , pb::IBufferMessage
2645   #endif
2646   {
2647     private static readonly pb::MessageParser<ComplexOptionType2> _parser = new pb::MessageParser<ComplexOptionType2>(() => new ComplexOptionType2());
2648     private pb::UnknownFieldSet _unknownFields;
2649     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2650     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2651     public static pb::MessageParser<ComplexOptionType2> Parser { get { return _parser; } }
2652 
2653     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2654     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2655     public static pbr::MessageDescriptor Descriptor {
2656       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[13]; }
2657     }
2658 
2659     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2660     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2661     pbr::MessageDescriptor pb::IMessage.Descriptor {
2662       get { return Descriptor; }
2663     }
2664 
2665     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2666     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ComplexOptionType2()2667     public ComplexOptionType2() {
2668       OnConstruction();
2669     }
2670 
OnConstruction()2671     partial void OnConstruction();
2672 
2673     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2674     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ComplexOptionType2(ComplexOptionType2 other)2675     public ComplexOptionType2(ComplexOptionType2 other) : this() {
2676       bar_ = other.bar_ != null ? other.bar_.Clone() : null;
2677       baz_ = other.baz_;
2678       fred_ = other.fred_ != null ? other.fred_.Clone() : null;
2679       barney_ = other.barney_.Clone();
2680       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
2681     }
2682 
2683     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2684     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()2685     public ComplexOptionType2 Clone() {
2686       return new ComplexOptionType2(this);
2687     }
2688 
2689     /// <summary>Field number for the "bar" field.</summary>
2690     public const int BarFieldNumber = 1;
2691     private global::UnitTest.Issues.TestProtos.ComplexOptionType1 bar_;
2692     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2693     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2694     public global::UnitTest.Issues.TestProtos.ComplexOptionType1 Bar {
2695       get { return bar_; }
2696       set {
2697         bar_ = value;
2698       }
2699     }
2700 
2701     /// <summary>Field number for the "baz" field.</summary>
2702     public const int BazFieldNumber = 2;
2703     private int baz_;
2704     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2705     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2706     public int Baz {
2707       get { return baz_; }
2708       set {
2709         baz_ = value;
2710       }
2711     }
2712 
2713     /// <summary>Field number for the "fred" field.</summary>
2714     public const int FredFieldNumber = 3;
2715     private global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4 fred_;
2716     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2717     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2718     public global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4 Fred {
2719       get { return fred_; }
2720       set {
2721         fred_ = value;
2722       }
2723     }
2724 
2725     /// <summary>Field number for the "barney" field.</summary>
2726     public const int BarneyFieldNumber = 4;
2727     private static readonly pb::FieldCodec<global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4> _repeated_barney_codec
2728         = pb::FieldCodec.ForMessage(34, global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4.Parser);
2729     private readonly pbc::RepeatedField<global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4> barney_ = new pbc::RepeatedField<global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4>();
2730     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2731     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2732     public pbc::RepeatedField<global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4> Barney {
2733       get { return barney_; }
2734     }
2735 
2736     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2737     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)2738     public override bool Equals(object other) {
2739       return Equals(other as ComplexOptionType2);
2740     }
2741 
2742     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2743     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(ComplexOptionType2 other)2744     public bool Equals(ComplexOptionType2 other) {
2745       if (ReferenceEquals(other, null)) {
2746         return false;
2747       }
2748       if (ReferenceEquals(other, this)) {
2749         return true;
2750       }
2751       if (!object.Equals(Bar, other.Bar)) return false;
2752       if (Baz != other.Baz) return false;
2753       if (!object.Equals(Fred, other.Fred)) return false;
2754       if(!barney_.Equals(other.barney_)) return false;
2755       return Equals(_unknownFields, other._unknownFields);
2756     }
2757 
2758     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2759     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()2760     public override int GetHashCode() {
2761       int hash = 1;
2762       if (bar_ != null) hash ^= Bar.GetHashCode();
2763       if (Baz != 0) hash ^= Baz.GetHashCode();
2764       if (fred_ != null) hash ^= Fred.GetHashCode();
2765       hash ^= barney_.GetHashCode();
2766       if (_unknownFields != null) {
2767         hash ^= _unknownFields.GetHashCode();
2768       }
2769       return hash;
2770     }
2771 
2772     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2773     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()2774     public override string ToString() {
2775       return pb::JsonFormatter.ToDiagnosticString(this);
2776     }
2777 
2778     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2779     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)2780     public void WriteTo(pb::CodedOutputStream output) {
2781     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2782       output.WriteRawMessage(this);
2783     #else
2784       if (bar_ != null) {
2785         output.WriteRawTag(10);
2786         output.WriteMessage(Bar);
2787       }
2788       if (Baz != 0) {
2789         output.WriteRawTag(16);
2790         output.WriteInt32(Baz);
2791       }
2792       if (fred_ != null) {
2793         output.WriteRawTag(26);
2794         output.WriteMessage(Fred);
2795       }
2796       barney_.WriteTo(output, _repeated_barney_codec);
2797       if (_unknownFields != null) {
2798         _unknownFields.WriteTo(output);
2799       }
2800     #endif
2801     }
2802 
2803     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2804     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2805     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)2806     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
2807       if (bar_ != null) {
2808         output.WriteRawTag(10);
2809         output.WriteMessage(Bar);
2810       }
2811       if (Baz != 0) {
2812         output.WriteRawTag(16);
2813         output.WriteInt32(Baz);
2814       }
2815       if (fred_ != null) {
2816         output.WriteRawTag(26);
2817         output.WriteMessage(Fred);
2818       }
2819       barney_.WriteTo(ref output, _repeated_barney_codec);
2820       if (_unknownFields != null) {
2821         _unknownFields.WriteTo(ref output);
2822       }
2823     }
2824     #endif
2825 
2826     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2827     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()2828     public int CalculateSize() {
2829       int size = 0;
2830       if (bar_ != null) {
2831         size += 1 + pb::CodedOutputStream.ComputeMessageSize(Bar);
2832       }
2833       if (Baz != 0) {
2834         size += 1 + pb::CodedOutputStream.ComputeInt32Size(Baz);
2835       }
2836       if (fred_ != null) {
2837         size += 1 + pb::CodedOutputStream.ComputeMessageSize(Fred);
2838       }
2839       size += barney_.CalculateSize(_repeated_barney_codec);
2840       if (_unknownFields != null) {
2841         size += _unknownFields.CalculateSize();
2842       }
2843       return size;
2844     }
2845 
2846     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2847     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(ComplexOptionType2 other)2848     public void MergeFrom(ComplexOptionType2 other) {
2849       if (other == null) {
2850         return;
2851       }
2852       if (other.bar_ != null) {
2853         if (bar_ == null) {
2854           Bar = new global::UnitTest.Issues.TestProtos.ComplexOptionType1();
2855         }
2856         Bar.MergeFrom(other.Bar);
2857       }
2858       if (other.Baz != 0) {
2859         Baz = other.Baz;
2860       }
2861       if (other.fred_ != null) {
2862         if (fred_ == null) {
2863           Fred = new global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4();
2864         }
2865         Fred.MergeFrom(other.Fred);
2866       }
2867       barney_.Add(other.barney_);
2868       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
2869     }
2870 
2871     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2872     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)2873     public void MergeFrom(pb::CodedInputStream input) {
2874     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2875       input.ReadRawMessage(this);
2876     #else
2877       uint tag;
2878       while ((tag = input.ReadTag()) != 0) {
2879       if ((tag & 7) == 4) {
2880         // Abort on any end group tag.
2881         return;
2882       }
2883       switch(tag) {
2884           default:
2885             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
2886             break;
2887           case 10: {
2888             if (bar_ == null) {
2889               Bar = new global::UnitTest.Issues.TestProtos.ComplexOptionType1();
2890             }
2891             input.ReadMessage(Bar);
2892             break;
2893           }
2894           case 16: {
2895             Baz = input.ReadInt32();
2896             break;
2897           }
2898           case 26: {
2899             if (fred_ == null) {
2900               Fred = new global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4();
2901             }
2902             input.ReadMessage(Fred);
2903             break;
2904           }
2905           case 34: {
2906             barney_.AddEntriesFrom(input, _repeated_barney_codec);
2907             break;
2908           }
2909         }
2910       }
2911     #endif
2912     }
2913 
2914     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2915     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2916     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)2917     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
2918       uint tag;
2919       while ((tag = input.ReadTag()) != 0) {
2920       if ((tag & 7) == 4) {
2921         // Abort on any end group tag.
2922         return;
2923       }
2924       switch(tag) {
2925           default:
2926             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
2927             break;
2928           case 10: {
2929             if (bar_ == null) {
2930               Bar = new global::UnitTest.Issues.TestProtos.ComplexOptionType1();
2931             }
2932             input.ReadMessage(Bar);
2933             break;
2934           }
2935           case 16: {
2936             Baz = input.ReadInt32();
2937             break;
2938           }
2939           case 26: {
2940             if (fred_ == null) {
2941               Fred = new global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4();
2942             }
2943             input.ReadMessage(Fred);
2944             break;
2945           }
2946           case 34: {
2947             barney_.AddEntriesFrom(ref input, _repeated_barney_codec);
2948             break;
2949           }
2950         }
2951       }
2952     }
2953     #endif
2954 
2955     #region Nested types
2956     /// <summary>Container for nested types declared in the ComplexOptionType2 message type.</summary>
2957     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2958     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2959     public static partial class Types {
2960       [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
2961       public sealed partial class ComplexOptionType4 : pb::IMessage<ComplexOptionType4>
2962       #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
2963           , pb::IBufferMessage
2964       #endif
2965       {
2966         private static readonly pb::MessageParser<ComplexOptionType4> _parser = new pb::MessageParser<ComplexOptionType4>(() => new ComplexOptionType4());
2967         private pb::UnknownFieldSet _unknownFields;
2968         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2969         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2970         public static pb::MessageParser<ComplexOptionType4> Parser { get { return _parser; } }
2971 
2972         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2973         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2974         public static pbr::MessageDescriptor Descriptor {
2975           get { return global::UnitTest.Issues.TestProtos.ComplexOptionType2.Descriptor.NestedTypes[0]; }
2976         }
2977 
2978         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2979         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
2980         pbr::MessageDescriptor pb::IMessage.Descriptor {
2981           get { return Descriptor; }
2982         }
2983 
2984         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2985         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ComplexOptionType4()2986         public ComplexOptionType4() {
2987           OnConstruction();
2988         }
2989 
OnConstruction()2990         partial void OnConstruction();
2991 
2992         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
2993         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ComplexOptionType4(ComplexOptionType4 other)2994         public ComplexOptionType4(ComplexOptionType4 other) : this() {
2995           waldo_ = other.waldo_;
2996           _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
2997         }
2998 
2999         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3000         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()3001         public ComplexOptionType4 Clone() {
3002           return new ComplexOptionType4(this);
3003         }
3004 
3005         /// <summary>Field number for the "waldo" field.</summary>
3006         public const int WaldoFieldNumber = 1;
3007         private int waldo_;
3008         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3009         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3010         public int Waldo {
3011           get { return waldo_; }
3012           set {
3013             waldo_ = value;
3014           }
3015         }
3016 
3017         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3018         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)3019         public override bool Equals(object other) {
3020           return Equals(other as ComplexOptionType4);
3021         }
3022 
3023         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3024         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(ComplexOptionType4 other)3025         public bool Equals(ComplexOptionType4 other) {
3026           if (ReferenceEquals(other, null)) {
3027             return false;
3028           }
3029           if (ReferenceEquals(other, this)) {
3030             return true;
3031           }
3032           if (Waldo != other.Waldo) return false;
3033           return Equals(_unknownFields, other._unknownFields);
3034         }
3035 
3036         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3037         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()3038         public override int GetHashCode() {
3039           int hash = 1;
3040           if (Waldo != 0) hash ^= Waldo.GetHashCode();
3041           if (_unknownFields != null) {
3042             hash ^= _unknownFields.GetHashCode();
3043           }
3044           return hash;
3045         }
3046 
3047         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3048         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()3049         public override string ToString() {
3050           return pb::JsonFormatter.ToDiagnosticString(this);
3051         }
3052 
3053         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3054         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)3055         public void WriteTo(pb::CodedOutputStream output) {
3056         #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3057           output.WriteRawMessage(this);
3058         #else
3059           if (Waldo != 0) {
3060             output.WriteRawTag(8);
3061             output.WriteInt32(Waldo);
3062           }
3063           if (_unknownFields != null) {
3064             _unknownFields.WriteTo(output);
3065           }
3066         #endif
3067         }
3068 
3069         #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3070         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3071         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)3072         void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
3073           if (Waldo != 0) {
3074             output.WriteRawTag(8);
3075             output.WriteInt32(Waldo);
3076           }
3077           if (_unknownFields != null) {
3078             _unknownFields.WriteTo(ref output);
3079           }
3080         }
3081         #endif
3082 
3083         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3084         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()3085         public int CalculateSize() {
3086           int size = 0;
3087           if (Waldo != 0) {
3088             size += 1 + pb::CodedOutputStream.ComputeInt32Size(Waldo);
3089           }
3090           if (_unknownFields != null) {
3091             size += _unknownFields.CalculateSize();
3092           }
3093           return size;
3094         }
3095 
3096         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3097         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(ComplexOptionType4 other)3098         public void MergeFrom(ComplexOptionType4 other) {
3099           if (other == null) {
3100             return;
3101           }
3102           if (other.Waldo != 0) {
3103             Waldo = other.Waldo;
3104           }
3105           _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
3106         }
3107 
3108         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3109         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)3110         public void MergeFrom(pb::CodedInputStream input) {
3111         #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3112           input.ReadRawMessage(this);
3113         #else
3114           uint tag;
3115           while ((tag = input.ReadTag()) != 0) {
3116           if ((tag & 7) == 4) {
3117             // Abort on any end group tag.
3118             return;
3119           }
3120           switch(tag) {
3121               default:
3122                 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
3123                 break;
3124               case 8: {
3125                 Waldo = input.ReadInt32();
3126                 break;
3127               }
3128             }
3129           }
3130         #endif
3131         }
3132 
3133         #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3134         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3135         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)3136         void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
3137           uint tag;
3138           while ((tag = input.ReadTag()) != 0) {
3139           if ((tag & 7) == 4) {
3140             // Abort on any end group tag.
3141             return;
3142           }
3143           switch(tag) {
3144               default:
3145                 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
3146                 break;
3147               case 8: {
3148                 Waldo = input.ReadInt32();
3149                 break;
3150               }
3151             }
3152           }
3153         }
3154         #endif
3155 
3156         #region Extensions
3157         /// <summary>Container for extensions for other messages declared in the ComplexOptionType4 message type.</summary>
3158         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3159         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3160         public static partial class Extensions {
3161           public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4> ComplexOpt4 =
3162             new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4>(7633546, pb::FieldCodec.ForMessage(61068370, global::UnitTest.Issues.TestProtos.ComplexOptionType2.Types.ComplexOptionType4.Parser));
3163         }
3164         #endregion
3165 
3166       }
3167 
3168     }
3169     #endregion
3170 
3171   }
3172 
3173   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
3174   public sealed partial class ComplexOptionType3 : pb::IMessage<ComplexOptionType3>
3175   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3176       , pb::IBufferMessage
3177   #endif
3178   {
3179     private static readonly pb::MessageParser<ComplexOptionType3> _parser = new pb::MessageParser<ComplexOptionType3>(() => new ComplexOptionType3());
3180     private pb::UnknownFieldSet _unknownFields;
3181     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3182     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3183     public static pb::MessageParser<ComplexOptionType3> Parser { get { return _parser; } }
3184 
3185     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3186     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3187     public static pbr::MessageDescriptor Descriptor {
3188       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[14]; }
3189     }
3190 
3191     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3192     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3193     pbr::MessageDescriptor pb::IMessage.Descriptor {
3194       get { return Descriptor; }
3195     }
3196 
3197     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3198     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ComplexOptionType3()3199     public ComplexOptionType3() {
3200       OnConstruction();
3201     }
3202 
OnConstruction()3203     partial void OnConstruction();
3204 
3205     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3206     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ComplexOptionType3(ComplexOptionType3 other)3207     public ComplexOptionType3(ComplexOptionType3 other) : this() {
3208       qux_ = other.qux_;
3209       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
3210     }
3211 
3212     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3213     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()3214     public ComplexOptionType3 Clone() {
3215       return new ComplexOptionType3(this);
3216     }
3217 
3218     /// <summary>Field number for the "qux" field.</summary>
3219     public const int QuxFieldNumber = 1;
3220     private int qux_;
3221     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3222     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3223     public int Qux {
3224       get { return qux_; }
3225       set {
3226         qux_ = value;
3227       }
3228     }
3229 
3230     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3231     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)3232     public override bool Equals(object other) {
3233       return Equals(other as ComplexOptionType3);
3234     }
3235 
3236     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3237     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(ComplexOptionType3 other)3238     public bool Equals(ComplexOptionType3 other) {
3239       if (ReferenceEquals(other, null)) {
3240         return false;
3241       }
3242       if (ReferenceEquals(other, this)) {
3243         return true;
3244       }
3245       if (Qux != other.Qux) return false;
3246       return Equals(_unknownFields, other._unknownFields);
3247     }
3248 
3249     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3250     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()3251     public override int GetHashCode() {
3252       int hash = 1;
3253       if (Qux != 0) hash ^= Qux.GetHashCode();
3254       if (_unknownFields != null) {
3255         hash ^= _unknownFields.GetHashCode();
3256       }
3257       return hash;
3258     }
3259 
3260     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3261     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()3262     public override string ToString() {
3263       return pb::JsonFormatter.ToDiagnosticString(this);
3264     }
3265 
3266     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3267     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)3268     public void WriteTo(pb::CodedOutputStream output) {
3269     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3270       output.WriteRawMessage(this);
3271     #else
3272       if (Qux != 0) {
3273         output.WriteRawTag(8);
3274         output.WriteInt32(Qux);
3275       }
3276       if (_unknownFields != null) {
3277         _unknownFields.WriteTo(output);
3278       }
3279     #endif
3280     }
3281 
3282     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3283     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3284     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)3285     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
3286       if (Qux != 0) {
3287         output.WriteRawTag(8);
3288         output.WriteInt32(Qux);
3289       }
3290       if (_unknownFields != null) {
3291         _unknownFields.WriteTo(ref output);
3292       }
3293     }
3294     #endif
3295 
3296     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3297     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()3298     public int CalculateSize() {
3299       int size = 0;
3300       if (Qux != 0) {
3301         size += 1 + pb::CodedOutputStream.ComputeInt32Size(Qux);
3302       }
3303       if (_unknownFields != null) {
3304         size += _unknownFields.CalculateSize();
3305       }
3306       return size;
3307     }
3308 
3309     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3310     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(ComplexOptionType3 other)3311     public void MergeFrom(ComplexOptionType3 other) {
3312       if (other == null) {
3313         return;
3314       }
3315       if (other.Qux != 0) {
3316         Qux = other.Qux;
3317       }
3318       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
3319     }
3320 
3321     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3322     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)3323     public void MergeFrom(pb::CodedInputStream input) {
3324     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3325       input.ReadRawMessage(this);
3326     #else
3327       uint tag;
3328       while ((tag = input.ReadTag()) != 0) {
3329       if ((tag & 7) == 4) {
3330         // Abort on any end group tag.
3331         return;
3332       }
3333       switch(tag) {
3334           default:
3335             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
3336             break;
3337           case 8: {
3338             Qux = input.ReadInt32();
3339             break;
3340           }
3341         }
3342       }
3343     #endif
3344     }
3345 
3346     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3347     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3348     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)3349     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
3350       uint tag;
3351       while ((tag = input.ReadTag()) != 0) {
3352       if ((tag & 7) == 4) {
3353         // Abort on any end group tag.
3354         return;
3355       }
3356       switch(tag) {
3357           default:
3358             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
3359             break;
3360           case 8: {
3361             Qux = input.ReadInt32();
3362             break;
3363           }
3364         }
3365       }
3366     }
3367     #endif
3368 
3369   }
3370 
3371   /// <summary>
3372   /// Note that we try various different ways of naming the same extension.
3373   /// </summary>
3374   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
3375   public sealed partial class VariousComplexOptions : pb::IMessage<VariousComplexOptions>
3376   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3377       , pb::IBufferMessage
3378   #endif
3379   {
3380     private static readonly pb::MessageParser<VariousComplexOptions> _parser = new pb::MessageParser<VariousComplexOptions>(() => new VariousComplexOptions());
3381     private pb::UnknownFieldSet _unknownFields;
3382     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3383     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3384     public static pb::MessageParser<VariousComplexOptions> Parser { get { return _parser; } }
3385 
3386     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3387     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3388     public static pbr::MessageDescriptor Descriptor {
3389       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[15]; }
3390     }
3391 
3392     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3393     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3394     pbr::MessageDescriptor pb::IMessage.Descriptor {
3395       get { return Descriptor; }
3396     }
3397 
3398     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3399     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
VariousComplexOptions()3400     public VariousComplexOptions() {
3401       OnConstruction();
3402     }
3403 
OnConstruction()3404     partial void OnConstruction();
3405 
3406     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3407     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
VariousComplexOptions(VariousComplexOptions other)3408     public VariousComplexOptions(VariousComplexOptions other) : this() {
3409       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
3410     }
3411 
3412     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3413     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()3414     public VariousComplexOptions Clone() {
3415       return new VariousComplexOptions(this);
3416     }
3417 
3418     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3419     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)3420     public override bool Equals(object other) {
3421       return Equals(other as VariousComplexOptions);
3422     }
3423 
3424     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3425     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(VariousComplexOptions other)3426     public bool Equals(VariousComplexOptions other) {
3427       if (ReferenceEquals(other, null)) {
3428         return false;
3429       }
3430       if (ReferenceEquals(other, this)) {
3431         return true;
3432       }
3433       return Equals(_unknownFields, other._unknownFields);
3434     }
3435 
3436     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3437     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()3438     public override int GetHashCode() {
3439       int hash = 1;
3440       if (_unknownFields != null) {
3441         hash ^= _unknownFields.GetHashCode();
3442       }
3443       return hash;
3444     }
3445 
3446     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3447     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()3448     public override string ToString() {
3449       return pb::JsonFormatter.ToDiagnosticString(this);
3450     }
3451 
3452     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3453     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)3454     public void WriteTo(pb::CodedOutputStream output) {
3455     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3456       output.WriteRawMessage(this);
3457     #else
3458       if (_unknownFields != null) {
3459         _unknownFields.WriteTo(output);
3460       }
3461     #endif
3462     }
3463 
3464     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3465     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3466     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)3467     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
3468       if (_unknownFields != null) {
3469         _unknownFields.WriteTo(ref output);
3470       }
3471     }
3472     #endif
3473 
3474     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3475     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()3476     public int CalculateSize() {
3477       int size = 0;
3478       if (_unknownFields != null) {
3479         size += _unknownFields.CalculateSize();
3480       }
3481       return size;
3482     }
3483 
3484     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3485     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(VariousComplexOptions other)3486     public void MergeFrom(VariousComplexOptions other) {
3487       if (other == null) {
3488         return;
3489       }
3490       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
3491     }
3492 
3493     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3494     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)3495     public void MergeFrom(pb::CodedInputStream input) {
3496     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3497       input.ReadRawMessage(this);
3498     #else
3499       uint tag;
3500       while ((tag = input.ReadTag()) != 0) {
3501       if ((tag & 7) == 4) {
3502         // Abort on any end group tag.
3503         return;
3504       }
3505       switch(tag) {
3506           default:
3507             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
3508             break;
3509         }
3510       }
3511     #endif
3512     }
3513 
3514     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3515     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3516     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)3517     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
3518       uint tag;
3519       while ((tag = input.ReadTag()) != 0) {
3520       if ((tag & 7) == 4) {
3521         // Abort on any end group tag.
3522         return;
3523       }
3524       switch(tag) {
3525           default:
3526             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
3527             break;
3528         }
3529       }
3530     }
3531     #endif
3532 
3533   }
3534 
3535   /// <summary>
3536   /// A helper type used to test aggregate option parsing
3537   /// </summary>
3538   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
3539   public sealed partial class Aggregate : pb::IMessage<Aggregate>
3540   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3541       , pb::IBufferMessage
3542   #endif
3543   {
3544     private static readonly pb::MessageParser<Aggregate> _parser = new pb::MessageParser<Aggregate>(() => new Aggregate());
3545     private pb::UnknownFieldSet _unknownFields;
3546     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3547     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3548     public static pb::MessageParser<Aggregate> Parser { get { return _parser; } }
3549 
3550     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3551     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3552     public static pbr::MessageDescriptor Descriptor {
3553       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[16]; }
3554     }
3555 
3556     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3557     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3558     pbr::MessageDescriptor pb::IMessage.Descriptor {
3559       get { return Descriptor; }
3560     }
3561 
3562     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3563     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Aggregate()3564     public Aggregate() {
3565       OnConstruction();
3566     }
3567 
OnConstruction()3568     partial void OnConstruction();
3569 
3570     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3571     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Aggregate(Aggregate other)3572     public Aggregate(Aggregate other) : this() {
3573       i_ = other.i_;
3574       s_ = other.s_;
3575       sub_ = other.sub_ != null ? other.sub_.Clone() : null;
3576       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
3577     }
3578 
3579     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3580     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()3581     public Aggregate Clone() {
3582       return new Aggregate(this);
3583     }
3584 
3585     /// <summary>Field number for the "i" field.</summary>
3586     public const int IFieldNumber = 1;
3587     private int i_;
3588     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3589     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3590     public int I {
3591       get { return i_; }
3592       set {
3593         i_ = value;
3594       }
3595     }
3596 
3597     /// <summary>Field number for the "s" field.</summary>
3598     public const int SFieldNumber = 2;
3599     private string s_ = "";
3600     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3601     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3602     public string S {
3603       get { return s_; }
3604       set {
3605         s_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
3606       }
3607     }
3608 
3609     /// <summary>Field number for the "sub" field.</summary>
3610     public const int SubFieldNumber = 3;
3611     private global::UnitTest.Issues.TestProtos.Aggregate sub_;
3612     /// <summary>
3613     /// A nested object
3614     /// </summary>
3615     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3616     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3617     public global::UnitTest.Issues.TestProtos.Aggregate Sub {
3618       get { return sub_; }
3619       set {
3620         sub_ = value;
3621       }
3622     }
3623 
3624     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3625     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)3626     public override bool Equals(object other) {
3627       return Equals(other as Aggregate);
3628     }
3629 
3630     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3631     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(Aggregate other)3632     public bool Equals(Aggregate other) {
3633       if (ReferenceEquals(other, null)) {
3634         return false;
3635       }
3636       if (ReferenceEquals(other, this)) {
3637         return true;
3638       }
3639       if (I != other.I) return false;
3640       if (S != other.S) return false;
3641       if (!object.Equals(Sub, other.Sub)) return false;
3642       return Equals(_unknownFields, other._unknownFields);
3643     }
3644 
3645     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3646     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()3647     public override int GetHashCode() {
3648       int hash = 1;
3649       if (I != 0) hash ^= I.GetHashCode();
3650       if (S.Length != 0) hash ^= S.GetHashCode();
3651       if (sub_ != null) hash ^= Sub.GetHashCode();
3652       if (_unknownFields != null) {
3653         hash ^= _unknownFields.GetHashCode();
3654       }
3655       return hash;
3656     }
3657 
3658     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3659     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()3660     public override string ToString() {
3661       return pb::JsonFormatter.ToDiagnosticString(this);
3662     }
3663 
3664     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3665     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)3666     public void WriteTo(pb::CodedOutputStream output) {
3667     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3668       output.WriteRawMessage(this);
3669     #else
3670       if (I != 0) {
3671         output.WriteRawTag(8);
3672         output.WriteInt32(I);
3673       }
3674       if (S.Length != 0) {
3675         output.WriteRawTag(18);
3676         output.WriteString(S);
3677       }
3678       if (sub_ != null) {
3679         output.WriteRawTag(26);
3680         output.WriteMessage(Sub);
3681       }
3682       if (_unknownFields != null) {
3683         _unknownFields.WriteTo(output);
3684       }
3685     #endif
3686     }
3687 
3688     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3689     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3690     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)3691     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
3692       if (I != 0) {
3693         output.WriteRawTag(8);
3694         output.WriteInt32(I);
3695       }
3696       if (S.Length != 0) {
3697         output.WriteRawTag(18);
3698         output.WriteString(S);
3699       }
3700       if (sub_ != null) {
3701         output.WriteRawTag(26);
3702         output.WriteMessage(Sub);
3703       }
3704       if (_unknownFields != null) {
3705         _unknownFields.WriteTo(ref output);
3706       }
3707     }
3708     #endif
3709 
3710     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3711     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()3712     public int CalculateSize() {
3713       int size = 0;
3714       if (I != 0) {
3715         size += 1 + pb::CodedOutputStream.ComputeInt32Size(I);
3716       }
3717       if (S.Length != 0) {
3718         size += 1 + pb::CodedOutputStream.ComputeStringSize(S);
3719       }
3720       if (sub_ != null) {
3721         size += 1 + pb::CodedOutputStream.ComputeMessageSize(Sub);
3722       }
3723       if (_unknownFields != null) {
3724         size += _unknownFields.CalculateSize();
3725       }
3726       return size;
3727     }
3728 
3729     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3730     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(Aggregate other)3731     public void MergeFrom(Aggregate other) {
3732       if (other == null) {
3733         return;
3734       }
3735       if (other.I != 0) {
3736         I = other.I;
3737       }
3738       if (other.S.Length != 0) {
3739         S = other.S;
3740       }
3741       if (other.sub_ != null) {
3742         if (sub_ == null) {
3743           Sub = new global::UnitTest.Issues.TestProtos.Aggregate();
3744         }
3745         Sub.MergeFrom(other.Sub);
3746       }
3747       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
3748     }
3749 
3750     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3751     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)3752     public void MergeFrom(pb::CodedInputStream input) {
3753     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3754       input.ReadRawMessage(this);
3755     #else
3756       uint tag;
3757       while ((tag = input.ReadTag()) != 0) {
3758       if ((tag & 7) == 4) {
3759         // Abort on any end group tag.
3760         return;
3761       }
3762       switch(tag) {
3763           default:
3764             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
3765             break;
3766           case 8: {
3767             I = input.ReadInt32();
3768             break;
3769           }
3770           case 18: {
3771             S = input.ReadString();
3772             break;
3773           }
3774           case 26: {
3775             if (sub_ == null) {
3776               Sub = new global::UnitTest.Issues.TestProtos.Aggregate();
3777             }
3778             input.ReadMessage(Sub);
3779             break;
3780           }
3781         }
3782       }
3783     #endif
3784     }
3785 
3786     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3787     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3788     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)3789     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
3790       uint tag;
3791       while ((tag = input.ReadTag()) != 0) {
3792       if ((tag & 7) == 4) {
3793         // Abort on any end group tag.
3794         return;
3795       }
3796       switch(tag) {
3797           default:
3798             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
3799             break;
3800           case 8: {
3801             I = input.ReadInt32();
3802             break;
3803           }
3804           case 18: {
3805             S = input.ReadString();
3806             break;
3807           }
3808           case 26: {
3809             if (sub_ == null) {
3810               Sub = new global::UnitTest.Issues.TestProtos.Aggregate();
3811             }
3812             input.ReadMessage(Sub);
3813             break;
3814           }
3815         }
3816       }
3817     }
3818     #endif
3819 
3820   }
3821 
3822   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
3823   public sealed partial class AggregateMessage : pb::IMessage<AggregateMessage>
3824   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3825       , pb::IBufferMessage
3826   #endif
3827   {
3828     private static readonly pb::MessageParser<AggregateMessage> _parser = new pb::MessageParser<AggregateMessage>(() => new AggregateMessage());
3829     private pb::UnknownFieldSet _unknownFields;
3830     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3831     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3832     public static pb::MessageParser<AggregateMessage> Parser { get { return _parser; } }
3833 
3834     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3835     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3836     public static pbr::MessageDescriptor Descriptor {
3837       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[17]; }
3838     }
3839 
3840     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3841     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3842     pbr::MessageDescriptor pb::IMessage.Descriptor {
3843       get { return Descriptor; }
3844     }
3845 
3846     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3847     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
AggregateMessage()3848     public AggregateMessage() {
3849       OnConstruction();
3850     }
3851 
OnConstruction()3852     partial void OnConstruction();
3853 
3854     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3855     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
AggregateMessage(AggregateMessage other)3856     public AggregateMessage(AggregateMessage other) : this() {
3857       fieldname_ = other.fieldname_;
3858       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
3859     }
3860 
3861     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3862     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()3863     public AggregateMessage Clone() {
3864       return new AggregateMessage(this);
3865     }
3866 
3867     /// <summary>Field number for the "fieldname" field.</summary>
3868     public const int FieldnameFieldNumber = 1;
3869     private int fieldname_;
3870     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3871     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
3872     public int Fieldname {
3873       get { return fieldname_; }
3874       set {
3875         fieldname_ = value;
3876       }
3877     }
3878 
3879     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3880     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)3881     public override bool Equals(object other) {
3882       return Equals(other as AggregateMessage);
3883     }
3884 
3885     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3886     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(AggregateMessage other)3887     public bool Equals(AggregateMessage other) {
3888       if (ReferenceEquals(other, null)) {
3889         return false;
3890       }
3891       if (ReferenceEquals(other, this)) {
3892         return true;
3893       }
3894       if (Fieldname != other.Fieldname) return false;
3895       return Equals(_unknownFields, other._unknownFields);
3896     }
3897 
3898     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3899     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()3900     public override int GetHashCode() {
3901       int hash = 1;
3902       if (Fieldname != 0) hash ^= Fieldname.GetHashCode();
3903       if (_unknownFields != null) {
3904         hash ^= _unknownFields.GetHashCode();
3905       }
3906       return hash;
3907     }
3908 
3909     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3910     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()3911     public override string ToString() {
3912       return pb::JsonFormatter.ToDiagnosticString(this);
3913     }
3914 
3915     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3916     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)3917     public void WriteTo(pb::CodedOutputStream output) {
3918     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3919       output.WriteRawMessage(this);
3920     #else
3921       if (Fieldname != 0) {
3922         output.WriteRawTag(8);
3923         output.WriteInt32(Fieldname);
3924       }
3925       if (_unknownFields != null) {
3926         _unknownFields.WriteTo(output);
3927       }
3928     #endif
3929     }
3930 
3931     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3932     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3933     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)3934     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
3935       if (Fieldname != 0) {
3936         output.WriteRawTag(8);
3937         output.WriteInt32(Fieldname);
3938       }
3939       if (_unknownFields != null) {
3940         _unknownFields.WriteTo(ref output);
3941       }
3942     }
3943     #endif
3944 
3945     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3946     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()3947     public int CalculateSize() {
3948       int size = 0;
3949       if (Fieldname != 0) {
3950         size += 1 + pb::CodedOutputStream.ComputeInt32Size(Fieldname);
3951       }
3952       if (_unknownFields != null) {
3953         size += _unknownFields.CalculateSize();
3954       }
3955       return size;
3956     }
3957 
3958     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3959     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(AggregateMessage other)3960     public void MergeFrom(AggregateMessage other) {
3961       if (other == null) {
3962         return;
3963       }
3964       if (other.Fieldname != 0) {
3965         Fieldname = other.Fieldname;
3966       }
3967       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
3968     }
3969 
3970     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3971     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)3972     public void MergeFrom(pb::CodedInputStream input) {
3973     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3974       input.ReadRawMessage(this);
3975     #else
3976       uint tag;
3977       while ((tag = input.ReadTag()) != 0) {
3978       if ((tag & 7) == 4) {
3979         // Abort on any end group tag.
3980         return;
3981       }
3982       switch(tag) {
3983           default:
3984             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
3985             break;
3986           case 8: {
3987             Fieldname = input.ReadInt32();
3988             break;
3989           }
3990         }
3991       }
3992     #endif
3993     }
3994 
3995     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
3996     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
3997     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)3998     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
3999       uint tag;
4000       while ((tag = input.ReadTag()) != 0) {
4001       if ((tag & 7) == 4) {
4002         // Abort on any end group tag.
4003         return;
4004       }
4005       switch(tag) {
4006           default:
4007             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
4008             break;
4009           case 8: {
4010             Fieldname = input.ReadInt32();
4011             break;
4012           }
4013         }
4014       }
4015     }
4016     #endif
4017 
4018   }
4019 
4020   /// <summary>
4021   /// Test custom options for nested type.
4022   /// </summary>
4023   [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
4024   public sealed partial class NestedOptionType : pb::IMessage<NestedOptionType>
4025   #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4026       , pb::IBufferMessage
4027   #endif
4028   {
4029     private static readonly pb::MessageParser<NestedOptionType> _parser = new pb::MessageParser<NestedOptionType>(() => new NestedOptionType());
4030     private pb::UnknownFieldSet _unknownFields;
4031     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4032     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4033     public static pb::MessageParser<NestedOptionType> Parser { get { return _parser; } }
4034 
4035     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4036     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4037     public static pbr::MessageDescriptor Descriptor {
4038       get { return global::UnitTest.Issues.TestProtos.UnittestCustomOptionsProto3Reflection.Descriptor.MessageTypes[18]; }
4039     }
4040 
4041     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4042     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4043     pbr::MessageDescriptor pb::IMessage.Descriptor {
4044       get { return Descriptor; }
4045     }
4046 
4047     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4048     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
NestedOptionType()4049     public NestedOptionType() {
4050       OnConstruction();
4051     }
4052 
OnConstruction()4053     partial void OnConstruction();
4054 
4055     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4056     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
NestedOptionType(NestedOptionType other)4057     public NestedOptionType(NestedOptionType other) : this() {
4058       _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
4059     }
4060 
4061     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4062     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()4063     public NestedOptionType Clone() {
4064       return new NestedOptionType(this);
4065     }
4066 
4067     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4068     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)4069     public override bool Equals(object other) {
4070       return Equals(other as NestedOptionType);
4071     }
4072 
4073     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4074     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(NestedOptionType other)4075     public bool Equals(NestedOptionType other) {
4076       if (ReferenceEquals(other, null)) {
4077         return false;
4078       }
4079       if (ReferenceEquals(other, this)) {
4080         return true;
4081       }
4082       return Equals(_unknownFields, other._unknownFields);
4083     }
4084 
4085     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4086     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()4087     public override int GetHashCode() {
4088       int hash = 1;
4089       if (_unknownFields != null) {
4090         hash ^= _unknownFields.GetHashCode();
4091       }
4092       return hash;
4093     }
4094 
4095     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4096     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()4097     public override string ToString() {
4098       return pb::JsonFormatter.ToDiagnosticString(this);
4099     }
4100 
4101     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4102     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)4103     public void WriteTo(pb::CodedOutputStream output) {
4104     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4105       output.WriteRawMessage(this);
4106     #else
4107       if (_unknownFields != null) {
4108         _unknownFields.WriteTo(output);
4109       }
4110     #endif
4111     }
4112 
4113     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4114     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4115     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)4116     void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
4117       if (_unknownFields != null) {
4118         _unknownFields.WriteTo(ref output);
4119       }
4120     }
4121     #endif
4122 
4123     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4124     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()4125     public int CalculateSize() {
4126       int size = 0;
4127       if (_unknownFields != null) {
4128         size += _unknownFields.CalculateSize();
4129       }
4130       return size;
4131     }
4132 
4133     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4134     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(NestedOptionType other)4135     public void MergeFrom(NestedOptionType other) {
4136       if (other == null) {
4137         return;
4138       }
4139       _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
4140     }
4141 
4142     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4143     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)4144     public void MergeFrom(pb::CodedInputStream input) {
4145     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4146       input.ReadRawMessage(this);
4147     #else
4148       uint tag;
4149       while ((tag = input.ReadTag()) != 0) {
4150       if ((tag & 7) == 4) {
4151         // Abort on any end group tag.
4152         return;
4153       }
4154       switch(tag) {
4155           default:
4156             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
4157             break;
4158         }
4159       }
4160     #endif
4161     }
4162 
4163     #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4164     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4165     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)4166     void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
4167       uint tag;
4168       while ((tag = input.ReadTag()) != 0) {
4169       if ((tag & 7) == 4) {
4170         // Abort on any end group tag.
4171         return;
4172       }
4173       switch(tag) {
4174           default:
4175             _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
4176             break;
4177         }
4178       }
4179     }
4180     #endif
4181 
4182     #region Nested types
4183     /// <summary>Container for nested types declared in the NestedOptionType message type.</summary>
4184     [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4185     [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4186     public static partial class Types {
4187       public enum NestedEnum {
4188         [pbr::OriginalName("UNSPECIFIED")] Unspecified = 0,
4189         [pbr::OriginalName("NESTED_ENUM_VALUE")] Value = 1,
4190       }
4191 
4192       [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
4193       public sealed partial class NestedMessage : pb::IMessage<NestedMessage>
4194       #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4195           , pb::IBufferMessage
4196       #endif
4197       {
4198         private static readonly pb::MessageParser<NestedMessage> _parser = new pb::MessageParser<NestedMessage>(() => new NestedMessage());
4199         private pb::UnknownFieldSet _unknownFields;
4200         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4201         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4202         public static pb::MessageParser<NestedMessage> Parser { get { return _parser; } }
4203 
4204         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4205         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4206         public static pbr::MessageDescriptor Descriptor {
4207           get { return global::UnitTest.Issues.TestProtos.NestedOptionType.Descriptor.NestedTypes[0]; }
4208         }
4209 
4210         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4211         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4212         pbr::MessageDescriptor pb::IMessage.Descriptor {
4213           get { return Descriptor; }
4214         }
4215 
4216         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4217         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
NestedMessage()4218         public NestedMessage() {
4219           OnConstruction();
4220         }
4221 
OnConstruction()4222         partial void OnConstruction();
4223 
4224         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4225         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
NestedMessage(NestedMessage other)4226         public NestedMessage(NestedMessage other) : this() {
4227           nestedField_ = other.nestedField_;
4228           _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
4229         }
4230 
4231         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4232         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Clone()4233         public NestedMessage Clone() {
4234           return new NestedMessage(this);
4235         }
4236 
4237         /// <summary>Field number for the "nested_field" field.</summary>
4238         public const int NestedFieldFieldNumber = 1;
4239         private int nestedField_;
4240         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4241         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
4242         public int NestedField {
4243           get { return nestedField_; }
4244           set {
4245             nestedField_ = value;
4246           }
4247         }
4248 
4249         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4250         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(object other)4251         public override bool Equals(object other) {
4252           return Equals(other as NestedMessage);
4253         }
4254 
4255         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4256         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
Equals(NestedMessage other)4257         public bool Equals(NestedMessage other) {
4258           if (ReferenceEquals(other, null)) {
4259             return false;
4260           }
4261           if (ReferenceEquals(other, this)) {
4262             return true;
4263           }
4264           if (NestedField != other.NestedField) return false;
4265           return Equals(_unknownFields, other._unknownFields);
4266         }
4267 
4268         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4269         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
GetHashCode()4270         public override int GetHashCode() {
4271           int hash = 1;
4272           if (NestedField != 0) hash ^= NestedField.GetHashCode();
4273           if (_unknownFields != null) {
4274             hash ^= _unknownFields.GetHashCode();
4275           }
4276           return hash;
4277         }
4278 
4279         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4280         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
ToString()4281         public override string ToString() {
4282           return pb::JsonFormatter.ToDiagnosticString(this);
4283         }
4284 
4285         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4286         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
WriteTo(pb::CodedOutputStream output)4287         public void WriteTo(pb::CodedOutputStream output) {
4288         #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4289           output.WriteRawMessage(this);
4290         #else
4291           if (NestedField != 0) {
4292             output.WriteRawTag(8);
4293             output.WriteInt32(NestedField);
4294           }
4295           if (_unknownFields != null) {
4296             _unknownFields.WriteTo(output);
4297           }
4298         #endif
4299         }
4300 
4301         #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4302         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4303         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalWriteTo(ref pb::WriteContext output)4304         void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
4305           if (NestedField != 0) {
4306             output.WriteRawTag(8);
4307             output.WriteInt32(NestedField);
4308           }
4309           if (_unknownFields != null) {
4310             _unknownFields.WriteTo(ref output);
4311           }
4312         }
4313         #endif
4314 
4315         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4316         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
CalculateSize()4317         public int CalculateSize() {
4318           int size = 0;
4319           if (NestedField != 0) {
4320             size += 1 + pb::CodedOutputStream.ComputeInt32Size(NestedField);
4321           }
4322           if (_unknownFields != null) {
4323             size += _unknownFields.CalculateSize();
4324           }
4325           return size;
4326         }
4327 
4328         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4329         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(NestedMessage other)4330         public void MergeFrom(NestedMessage other) {
4331           if (other == null) {
4332             return;
4333           }
4334           if (other.NestedField != 0) {
4335             NestedField = other.NestedField;
4336           }
4337           _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
4338         }
4339 
4340         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4341         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
MergeFrom(pb::CodedInputStream input)4342         public void MergeFrom(pb::CodedInputStream input) {
4343         #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4344           input.ReadRawMessage(this);
4345         #else
4346           uint tag;
4347           while ((tag = input.ReadTag()) != 0) {
4348           if ((tag & 7) == 4) {
4349             // Abort on any end group tag.
4350             return;
4351           }
4352           switch(tag) {
4353               default:
4354                 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
4355                 break;
4356               case 8: {
4357                 NestedField = input.ReadInt32();
4358                 break;
4359               }
4360             }
4361           }
4362         #endif
4363         }
4364 
4365         #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
4366         [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
4367         [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
IBufferMessage.InternalMergeFrom(ref pb::ParseContext input)4368         void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
4369           uint tag;
4370           while ((tag = input.ReadTag()) != 0) {
4371           if ((tag & 7) == 4) {
4372             // Abort on any end group tag.
4373             return;
4374           }
4375           switch(tag) {
4376               default:
4377                 _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
4378                 break;
4379               case 8: {
4380                 NestedField = input.ReadInt32();
4381                 break;
4382               }
4383             }
4384           }
4385         }
4386         #endif
4387 
4388       }
4389 
4390     }
4391     #endregion
4392 
4393   }
4394 
4395   #endregion
4396 
4397 }
4398 
4399 #endregion Designer generated code
4400