DescriptorProtoFile.cs 343 KB
Newer Older
1
// Generated by ProtoGen, Version=2.3.0.277, Culture=neutral, PublicKeyToken=17b3b1f090c3ea48.  DO NOT EDIT!
2
#pragma warning disable 1591, 0612
3
#region Designer generated code
4 5 6 7 8

using pb = global::Google.ProtocolBuffers;
using pbc = global::Google.ProtocolBuffers.Collections;
using pbd = global::Google.ProtocolBuffers.Descriptors;
using scg = global::System.Collections.Generic;
9 10
namespace Google.ProtocolBuffers.DescriptorProtos {
  
11 12 13
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
14 15 16 17
  public static partial class DescriptorProtoFile {
  
    #region Extension registration
    public static void RegisterAllExtensions(pb::ExtensionRegistry registry) {
18
    }
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231
    #endregion
    #region Static variables
    internal static pbd::MessageDescriptor internal__static_google_protobuf_FileDescriptorSet__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet.Builder> internal__static_google_protobuf_FileDescriptorSet__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_FileDescriptorProto__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Builder> internal__static_google_protobuf_FileDescriptorProto__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_DescriptorProto__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder> internal__static_google_protobuf_DescriptorProto__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.Builder> internal__static_google_protobuf_DescriptorProto_ExtensionRange__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_FieldDescriptorProto__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder> internal__static_google_protobuf_FieldDescriptorProto__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_EnumDescriptorProto__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder> internal__static_google_protobuf_EnumDescriptorProto__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.Builder> internal__static_google_protobuf_EnumValueDescriptorProto__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_ServiceDescriptorProto__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.Builder> internal__static_google_protobuf_ServiceDescriptorProto__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_MethodDescriptorProto__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.Builder> internal__static_google_protobuf_MethodDescriptorProto__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_FileOptions__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileOptions, global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Builder> internal__static_google_protobuf_FileOptions__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_MessageOptions__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions, global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.Builder> internal__static_google_protobuf_MessageOptions__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_FieldOptions__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions, global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Builder> internal__static_google_protobuf_FieldOptions__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_EnumOptions__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions, global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.Builder> internal__static_google_protobuf_EnumOptions__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_EnumValueOptions__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.Builder> internal__static_google_protobuf_EnumValueOptions__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_ServiceOptions__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions, global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.Builder> internal__static_google_protobuf_ServiceOptions__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_MethodOptions__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions, global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.Builder> internal__static_google_protobuf_MethodOptions__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_UninterpretedOption__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder> internal__static_google_protobuf_UninterpretedOption__FieldAccessorTable;
    internal static pbd::MessageDescriptor internal__static_google_protobuf_UninterpretedOption_NamePart__Descriptor;
    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.Builder> internal__static_google_protobuf_UninterpretedOption_NamePart__FieldAccessorTable;
    #endregion
    #region Descriptor
    public static pbd::FileDescriptor Descriptor {
      get { return descriptor; }
    }
    private static pbd::FileDescriptor descriptor;
    
    static DescriptorProtoFile() {
      byte[] descriptorData = global::System.Convert.FromBase64String(
          "CiBnb29nbGUvcHJvdG9idWYvZGVzY3JpcHRvci5wcm90bxIPZ29vZ2xlLnBy" + 
          "b3RvYnVmIkcKEUZpbGVEZXNjcmlwdG9yU2V0EjIKBGZpbGUYASADKAsyJC5n" + 
          "b29nbGUucHJvdG9idWYuRmlsZURlc2NyaXB0b3JQcm90byLcAgoTRmlsZURl" + 
          "c2NyaXB0b3JQcm90bxIMCgRuYW1lGAEgASgJEg8KB3BhY2thZ2UYAiABKAkS" + 
          "EgoKZGVwZW5kZW5jeRgDIAMoCRI2CgxtZXNzYWdlX3R5cGUYBCADKAsyIC5n" + 
          "b29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvEjcKCWVudW1fdHlwZRgF" + 
          "IAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5FbnVtRGVzY3JpcHRvclByb3RvEjgK" + 
          "B3NlcnZpY2UYBiADKAsyJy5nb29nbGUucHJvdG9idWYuU2VydmljZURlc2Ny" + 
          "aXB0b3JQcm90bxI4CglleHRlbnNpb24YByADKAsyJS5nb29nbGUucHJvdG9i" + 
          "dWYuRmllbGREZXNjcmlwdG9yUHJvdG8SLQoHb3B0aW9ucxgIIAEoCzIcLmdv" + 
          "b2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucyKpAwoPRGVzY3JpcHRvclByb3Rv" + 
          "EgwKBG5hbWUYASABKAkSNAoFZmllbGQYAiADKAsyJS5nb29nbGUucHJvdG9i" + 
          "dWYuRmllbGREZXNjcmlwdG9yUHJvdG8SOAoJZXh0ZW5zaW9uGAYgAygLMiUu" + 
          "Z29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvEjUKC25lc3Rl" + 
          "ZF90eXBlGAMgAygLMiAuZ29vZ2xlLnByb3RvYnVmLkRlc2NyaXB0b3JQcm90" + 
          "bxI3CgllbnVtX3R5cGUYBCADKAsyJC5nb29nbGUucHJvdG9idWYuRW51bURl" + 
          "c2NyaXB0b3JQcm90bxJICg9leHRlbnNpb25fcmFuZ2UYBSADKAsyLy5nb29n" + 
          "bGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvLkV4dGVuc2lvblJhbmdlEjAK" + 
          "B29wdGlvbnMYByABKAsyHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlv" + 
          "bnMaLAoORXh0ZW5zaW9uUmFuZ2USDQoFc3RhcnQYASABKAUSCwoDZW5kGAIg" + 
          "ASgFIpQFChRGaWVsZERlc2NyaXB0b3JQcm90bxIMCgRuYW1lGAEgASgJEg4K" + 
          "Bm51bWJlchgDIAEoBRI6CgVsYWJlbBgEIAEoDjIrLmdvb2dsZS5wcm90b2J1" + 
          "Zi5GaWVsZERlc2NyaXB0b3JQcm90by5MYWJlbBI4CgR0eXBlGAUgASgOMiou" + 
          "Z29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvLlR5cGUSEQoJ" + 
          "dHlwZV9uYW1lGAYgASgJEhAKCGV4dGVuZGVlGAIgASgJEhUKDWRlZmF1bHRf" + 
          "dmFsdWUYByABKAkSLgoHb3B0aW9ucxgIIAEoCzIdLmdvb2dsZS5wcm90b2J1" + 
          "Zi5GaWVsZE9wdGlvbnMitgIKBFR5cGUSDwoLVFlQRV9ET1VCTEUQARIOCgpU" + 
          "WVBFX0ZMT0FUEAISDgoKVFlQRV9JTlQ2NBADEg8KC1RZUEVfVUlOVDY0EAQS" + 
          "DgoKVFlQRV9JTlQzMhAFEhAKDFRZUEVfRklYRUQ2NBAGEhAKDFRZUEVfRklY" + 
          "RUQzMhAHEg0KCVRZUEVfQk9PTBAIEg8KC1RZUEVfU1RSSU5HEAkSDgoKVFlQ" + 
          "RV9HUk9VUBAKEhAKDFRZUEVfTUVTU0FHRRALEg4KClRZUEVfQllURVMQDBIP" + 
          "CgtUWVBFX1VJTlQzMhANEg0KCVRZUEVfRU5VTRAOEhEKDVRZUEVfU0ZJWEVE" + 
          "MzIQDxIRCg1UWVBFX1NGSVhFRDY0EBASDwoLVFlQRV9TSU5UMzIQERIPCgtU" + 
          "WVBFX1NJTlQ2NBASIkMKBUxhYmVsEhIKDkxBQkVMX09QVElPTkFMEAESEgoO" + 
          "TEFCRUxfUkVRVUlSRUQQAhISCg5MQUJFTF9SRVBFQVRFRBADIowBChNFbnVt" + 
          "RGVzY3JpcHRvclByb3RvEgwKBG5hbWUYASABKAkSOAoFdmFsdWUYAiADKAsy" + 
          "KS5nb29nbGUucHJvdG9idWYuRW51bVZhbHVlRGVzY3JpcHRvclByb3RvEi0K" + 
          "B29wdGlvbnMYAyABKAsyHC5nb29nbGUucHJvdG9idWYuRW51bU9wdGlvbnMi" + 
          "bAoYRW51bVZhbHVlRGVzY3JpcHRvclByb3RvEgwKBG5hbWUYASABKAkSDgoG" + 
          "bnVtYmVyGAIgASgFEjIKB29wdGlvbnMYAyABKAsyIS5nb29nbGUucHJvdG9i" + 
          "dWYuRW51bVZhbHVlT3B0aW9ucyKQAQoWU2VydmljZURlc2NyaXB0b3JQcm90" + 
          "bxIMCgRuYW1lGAEgASgJEjYKBm1ldGhvZBgCIAMoCzImLmdvb2dsZS5wcm90" + 
          "b2J1Zi5NZXRob2REZXNjcmlwdG9yUHJvdG8SMAoHb3B0aW9ucxgDIAEoCzIf" + 
          "Lmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlT3B0aW9ucyJ/ChVNZXRob2REZXNj" + 
          "cmlwdG9yUHJvdG8SDAoEbmFtZRgBIAEoCRISCgppbnB1dF90eXBlGAIgASgJ" + 
          "EhMKC291dHB1dF90eXBlGAMgASgJEi8KB29wdGlvbnMYBCABKAsyHi5nb29n" + 
          "bGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucyKkAwoLRmlsZU9wdGlvbnMSFAoM" + 
          "amF2YV9wYWNrYWdlGAEgASgJEhwKFGphdmFfb3V0ZXJfY2xhc3NuYW1lGAgg" + 
          "ASgJEiIKE2phdmFfbXVsdGlwbGVfZmlsZXMYCiABKAg6BWZhbHNlEkYKDG9w" + 
          "dGltaXplX2ZvchgJIAEoDjIpLmdvb2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9u" + 
          "cy5PcHRpbWl6ZU1vZGU6BVNQRUVEEiEKE2NjX2dlbmVyaWNfc2VydmljZXMY" + 
          "ECABKAg6BHRydWUSIwoVamF2YV9nZW5lcmljX3NlcnZpY2VzGBEgASgIOgR0" + 
          "cnVlEiEKE3B5X2dlbmVyaWNfc2VydmljZXMYEiABKAg6BHRydWUSQwoUdW5p" + 
          "bnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVu" + 
          "aW50ZXJwcmV0ZWRPcHRpb24iOgoMT3B0aW1pemVNb2RlEgkKBVNQRUVEEAES" + 
          "DQoJQ09ERV9TSVpFEAISEAoMTElURV9SVU5USU1FEAMqCQjoBxCAgICAAiK4" + 
          "AQoOTWVzc2FnZU9wdGlvbnMSJgoXbWVzc2FnZV9zZXRfd2lyZV9mb3JtYXQY" + 
          "ASABKAg6BWZhbHNlEi4KH25vX3N0YW5kYXJkX2Rlc2NyaXB0b3JfYWNjZXNz" + 
          "b3IYAiABKAg6BWZhbHNlEkMKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMo" + 
          "CzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uKgkI6AcQ" + 
          "gICAgAIilAIKDEZpZWxkT3B0aW9ucxI6CgVjdHlwZRgBIAEoDjIjLmdvb2ds" + 
          "ZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuQ1R5cGU6BlNUUklORxIOCgZwYWNr" + 
          "ZWQYAiABKAgSGQoKZGVwcmVjYXRlZBgDIAEoCDoFZmFsc2USHAoUZXhwZXJp" + 
          "bWVudGFsX21hcF9rZXkYCSABKAkSQwoUdW5pbnRlcnByZXRlZF9vcHRpb24Y" + 
          "5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb24i" + 
          "LwoFQ1R5cGUSCgoGU1RSSU5HEAASCAoEQ09SRBABEhAKDFNUUklOR19QSUVD" + 
          "RRACKgkI6AcQgICAgAIiXQoLRW51bU9wdGlvbnMSQwoUdW5pbnRlcnByZXRl" + 
          "ZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0" + 
          "ZWRPcHRpb24qCQjoBxCAgICAAiJiChBFbnVtVmFsdWVPcHRpb25zEkMKFHVu" + 
          "aW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5V" + 
          "bmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIiYAoOU2VydmljZU9wdGlv" + 
          "bnMSQwoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnBy" + 
          "b3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb24qCQjoBxCAgICAAiJfCg1NZXRo" + 
          "b2RPcHRpb25zEkMKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdv" + 
          "b2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uKgkI6AcQgICAgAIi" + 
          "hQIKE1VuaW50ZXJwcmV0ZWRPcHRpb24SOwoEbmFtZRgCIAMoCzItLmdvb2ds" + 
          "ZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uLk5hbWVQYXJ0EhgKEGlk" + 
          "ZW50aWZpZXJfdmFsdWUYAyABKAkSGgoScG9zaXRpdmVfaW50X3ZhbHVlGAQg" + 
          "ASgEEhoKEm5lZ2F0aXZlX2ludF92YWx1ZRgFIAEoAxIUCgxkb3VibGVfdmFs" + 
          "dWUYBiABKAESFAoMc3RyaW5nX3ZhbHVlGAcgASgMGjMKCE5hbWVQYXJ0EhEK" + 
          "CW5hbWVfcGFydBgBIAIoCRIUCgxpc19leHRlbnNpb24YAiACKAhCKQoTY29t" + 
          "Lmdvb2dsZS5wcm90b2J1ZkIQRGVzY3JpcHRvclByb3Rvc0gB");
      pbd::FileDescriptor.InternalDescriptorAssigner assigner = delegate(pbd::FileDescriptor root) {
        descriptor = root;
        internal__static_google_protobuf_FileDescriptorSet__Descriptor = Descriptor.MessageTypes[0];
        internal__static_google_protobuf_FileDescriptorSet__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet.Builder>(internal__static_google_protobuf_FileDescriptorSet__Descriptor,
                new string[] { "File", });
        internal__static_google_protobuf_FileDescriptorProto__Descriptor = Descriptor.MessageTypes[1];
        internal__static_google_protobuf_FileDescriptorProto__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Builder>(internal__static_google_protobuf_FileDescriptorProto__Descriptor,
                new string[] { "Name", "Package", "Dependency", "MessageType", "EnumType", "Service", "Extension", "Options", });
        internal__static_google_protobuf_DescriptorProto__Descriptor = Descriptor.MessageTypes[2];
        internal__static_google_protobuf_DescriptorProto__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder>(internal__static_google_protobuf_DescriptorProto__Descriptor,
                new string[] { "Name", "Field", "Extension", "NestedType", "EnumType", "ExtensionRange", "Options", });
        internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor = internal__static_google_protobuf_DescriptorProto__Descriptor.NestedTypes[0];
        internal__static_google_protobuf_DescriptorProto_ExtensionRange__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.Builder>(internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor,
                new string[] { "Start", "End", });
        internal__static_google_protobuf_FieldDescriptorProto__Descriptor = Descriptor.MessageTypes[3];
        internal__static_google_protobuf_FieldDescriptorProto__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder>(internal__static_google_protobuf_FieldDescriptorProto__Descriptor,
                new string[] { "Name", "Number", "Label", "Type", "TypeName", "Extendee", "DefaultValue", "Options", });
        internal__static_google_protobuf_EnumDescriptorProto__Descriptor = Descriptor.MessageTypes[4];
        internal__static_google_protobuf_EnumDescriptorProto__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder>(internal__static_google_protobuf_EnumDescriptorProto__Descriptor,
                new string[] { "Name", "Value", "Options", });
        internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor = Descriptor.MessageTypes[5];
        internal__static_google_protobuf_EnumValueDescriptorProto__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.Builder>(internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor,
                new string[] { "Name", "Number", "Options", });
        internal__static_google_protobuf_ServiceDescriptorProto__Descriptor = Descriptor.MessageTypes[6];
        internal__static_google_protobuf_ServiceDescriptorProto__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.Builder>(internal__static_google_protobuf_ServiceDescriptorProto__Descriptor,
                new string[] { "Name", "Method", "Options", });
        internal__static_google_protobuf_MethodDescriptorProto__Descriptor = Descriptor.MessageTypes[7];
        internal__static_google_protobuf_MethodDescriptorProto__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.Builder>(internal__static_google_protobuf_MethodDescriptorProto__Descriptor,
                new string[] { "Name", "InputType", "OutputType", "Options", });
        internal__static_google_protobuf_FileOptions__Descriptor = Descriptor.MessageTypes[8];
        internal__static_google_protobuf_FileOptions__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileOptions, global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Builder>(internal__static_google_protobuf_FileOptions__Descriptor,
                new string[] { "JavaPackage", "JavaOuterClassname", "JavaMultipleFiles", "OptimizeFor", "CcGenericServices", "JavaGenericServices", "PyGenericServices", "UninterpretedOption", });
        internal__static_google_protobuf_MessageOptions__Descriptor = Descriptor.MessageTypes[9];
        internal__static_google_protobuf_MessageOptions__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions, global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.Builder>(internal__static_google_protobuf_MessageOptions__Descriptor,
                new string[] { "MessageSetWireFormat", "NoStandardDescriptorAccessor", "UninterpretedOption", });
        internal__static_google_protobuf_FieldOptions__Descriptor = Descriptor.MessageTypes[10];
        internal__static_google_protobuf_FieldOptions__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions, global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Builder>(internal__static_google_protobuf_FieldOptions__Descriptor,
                new string[] { "Ctype", "Packed", "Deprecated", "ExperimentalMapKey", "UninterpretedOption", });
        internal__static_google_protobuf_EnumOptions__Descriptor = Descriptor.MessageTypes[11];
        internal__static_google_protobuf_EnumOptions__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions, global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.Builder>(internal__static_google_protobuf_EnumOptions__Descriptor,
                new string[] { "UninterpretedOption", });
        internal__static_google_protobuf_EnumValueOptions__Descriptor = Descriptor.MessageTypes[12];
        internal__static_google_protobuf_EnumValueOptions__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.Builder>(internal__static_google_protobuf_EnumValueOptions__Descriptor,
                new string[] { "UninterpretedOption", });
        internal__static_google_protobuf_ServiceOptions__Descriptor = Descriptor.MessageTypes[13];
        internal__static_google_protobuf_ServiceOptions__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions, global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.Builder>(internal__static_google_protobuf_ServiceOptions__Descriptor,
                new string[] { "UninterpretedOption", });
        internal__static_google_protobuf_MethodOptions__Descriptor = Descriptor.MessageTypes[14];
        internal__static_google_protobuf_MethodOptions__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions, global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.Builder>(internal__static_google_protobuf_MethodOptions__Descriptor,
                new string[] { "UninterpretedOption", });
        internal__static_google_protobuf_UninterpretedOption__Descriptor = Descriptor.MessageTypes[15];
        internal__static_google_protobuf_UninterpretedOption__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder>(internal__static_google_protobuf_UninterpretedOption__Descriptor,
                new string[] { "Name", "IdentifierValue", "PositiveIntValue", "NegativeIntValue", "DoubleValue", "StringValue", });
        internal__static_google_protobuf_UninterpretedOption_NamePart__Descriptor = internal__static_google_protobuf_UninterpretedOption__Descriptor.NestedTypes[0];
        internal__static_google_protobuf_UninterpretedOption_NamePart__FieldAccessorTable = 
            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.Builder>(internal__static_google_protobuf_UninterpretedOption_NamePart__Descriptor,
                new string[] { "NamePart_", "IsExtension", });
        return null;
      };
      pbd::FileDescriptor.InternalBuildGeneratedFileFrom(descriptorData,
          new pbd::FileDescriptor[] {
          }, assigner);
    }
    #endregion
    
  }
  #region Messages
232 233 234
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
235
  public sealed partial class FileDescriptorSet : pb::GeneratedMessage<FileDescriptorSet, FileDescriptorSet.Builder> {
236
    private FileDescriptorSet() { }
237
    private static readonly FileDescriptorSet defaultInstance = new FileDescriptorSet().MakeReadOnly();
238 239
    private static readonly string[] _fileDescriptorSetFieldNames = new string[] { "file" };
    private static readonly uint[] _fileDescriptorSetFieldTags = new uint[] { 10 };
240 241 242 243 244
    public static FileDescriptorSet DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override FileDescriptorSet DefaultInstanceForType {
245
      get { return DefaultInstance; }
246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280
    }
    
    protected override FileDescriptorSet ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileDescriptorSet__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<FileDescriptorSet, FileDescriptorSet.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileDescriptorSet__FieldAccessorTable; }
    }
    
    public const int FileFieldNumber = 1;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> file_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> FileList {
      get { return file_; }
    }
    public int FileCount {
      get { return file_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto GetFile(int index) {
      return file_[index];
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto element in FileList) {
          if (!element.IsInitialized) return false;
        }
        return true;
      }
    }
    
281
    public override void WriteTo(pb::ICodedOutputStream output) {
282
      int size = SerializedSize;
283
      string[] field_names = _fileDescriptorSetFieldNames;
284
      if (file_.Count > 0) {
285
        output.WriteMessageArray(1, field_names[0], file_);
286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329
      }
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto element in FileList) {
          size += pb::CodedOutputStream.ComputeMessageSize(1, element);
        }
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static FileDescriptorSet ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static FileDescriptorSet ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static FileDescriptorSet ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static FileDescriptorSet ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static FileDescriptorSet ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static FileDescriptorSet ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static FileDescriptorSet ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static FileDescriptorSet ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
330
    public static FileDescriptorSet ParseFrom(pb::ICodedInputStream input) {
331 332
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
333
    public static FileDescriptorSet ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
334 335
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
336 337 338 339 340
    private FileDescriptorSet MakeReadOnly() {
      file_.MakeReadOnly();
      return this;
    }
    
341 342 343 344
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(FileDescriptorSet prototype) {
345
      return new Builder(prototype);
346 347
    }
    
348 349 350
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
351 352 353 354
    public sealed partial class Builder : pb::GeneratedBuilder<FileDescriptorSet, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
355
      public Builder() {
356 357
        result = DefaultInstance;
        resultIsReadOnly = true;
358 359 360
      }
      internal Builder(FileDescriptorSet cloneFrom) {
        result = cloneFrom;
361
        resultIsReadOnly = true;
362 363
      }
      
364 365
      private bool resultIsReadOnly;
      private FileDescriptorSet result;
366
      
367
      private FileDescriptorSet PrepareBuilder() {
368
        if (resultIsReadOnly) {
369 370
          FileDescriptorSet original = result;
          result = new FileDescriptorSet();
371
          resultIsReadOnly = false;
372 373 374 375 376 377 378 379
          MergeFrom(original);
        }
        return result;
      }
      
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
380 381
      
      protected override FileDescriptorSet MessageBeingBuilt {
382
        get { return PrepareBuilder(); }
383 384 385
      }
      
      public override Builder Clear() {
386 387
        result = DefaultInstance;
        resultIsReadOnly = true;
388 389 390 391
        return this;
      }
      
      public override Builder Clone() {
392
        if (resultIsReadOnly) {
393 394 395 396
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
397 398 399 400 401 402 403 404 405 406 407
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet.Descriptor; }
      }
      
      public override FileDescriptorSet DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet.DefaultInstance; }
      }
      
      public override FileDescriptorSet BuildPartial() {
408
        if (resultIsReadOnly) {
409
          return result;
410
        }
411 412
        resultIsReadOnly = true;
        return result.MakeReadOnly();
413 414 415 416 417 418 419 420 421 422 423 424 425
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is FileDescriptorSet) {
          return MergeFrom((FileDescriptorSet) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(FileDescriptorSet other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet.DefaultInstance) return this;
426
        PrepareBuilder();
427
        if (other.file_.Count != 0) {
428
          result.file_.Add(other.file_);
429 430 431 432 433
        }
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
434
      public override Builder MergeFrom(pb::ICodedInputStream input) {
435 436 437
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
438
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
439
        PrepareBuilder();
440
        pb::UnknownFieldSet.Builder unknownFields = null;
441 442 443
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
444 445 446 447 448 449 450 451 452 453 454 455
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_fileDescriptorSetFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _fileDescriptorSetFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
456 457
          switch (tag) {
            case 0: {
458
              throw pb::InvalidProtocolBufferException.InvalidTag();
459 460 461 462 463 464 465 466 467 468 469
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
470
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
471 472 473
              break;
            }
            case 10: {
474
              input.ReadMessageArray(tag, field_name, result.file_, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.DefaultInstance, extensionRegistry);
475 476 477 478
              break;
            }
          }
        }
479 480 481 482 483
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
484 485 486 487
      }
      
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> FileList {
488
        get { return PrepareBuilder().file_; }
489 490 491 492 493 494 495 496 497
      }
      public int FileCount {
        get { return result.FileCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto GetFile(int index) {
        return result.GetFile(index);
      }
      public Builder SetFile(int index, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
498
        PrepareBuilder();
499 500 501 502 503
        result.file_[index] = value;
        return this;
      }
      public Builder SetFile(int index, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
504
        PrepareBuilder();
505 506 507 508 509
        result.file_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddFile(global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
510
        PrepareBuilder();
511 512 513 514 515
        result.file_.Add(value);
        return this;
      }
      public Builder AddFile(global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
516
        PrepareBuilder();
517 518 519 520
        result.file_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeFile(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> values) {
521
        PrepareBuilder();
522
        result.file_.Add(values);
523 524 525
        return this;
      }
      public Builder ClearFile() {
526
        PrepareBuilder();
527 528 529 530 531 532 533 534 535
        result.file_.Clear();
        return this;
      }
    }
    static FileDescriptorSet() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
536 537 538
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
539
  public sealed partial class FileDescriptorProto : pb::GeneratedMessage<FileDescriptorProto, FileDescriptorProto.Builder> {
540
    private FileDescriptorProto() { }
541
    private static readonly FileDescriptorProto defaultInstance = new FileDescriptorProto().MakeReadOnly();
542 543
    private static readonly string[] _fileDescriptorProtoFieldNames = new string[] { "dependency", "enum_type", "extension", "message_type", "name", "options", "package", "service" };
    private static readonly uint[] _fileDescriptorProtoFieldTags = new uint[] { 26, 42, 58, 34, 10, 66, 18, 50 };
544 545 546 547 548
    public static FileDescriptorProto DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override FileDescriptorProto DefaultInstanceForType {
549
      get { return DefaultInstance; }
550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645
    }
    
    protected override FileDescriptorProto ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileDescriptorProto__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<FileDescriptorProto, FileDescriptorProto.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileDescriptorProto__FieldAccessorTable; }
    }
    
    public const int NameFieldNumber = 1;
    private bool hasName;
    private string name_ = "";
    public bool HasName {
      get { return hasName; }
    }
    public string Name {
      get { return name_; }
    }
    
    public const int PackageFieldNumber = 2;
    private bool hasPackage;
    private string package_ = "";
    public bool HasPackage {
      get { return hasPackage; }
    }
    public string Package {
      get { return package_; }
    }
    
    public const int DependencyFieldNumber = 3;
    private pbc::PopsicleList<string> dependency_ = new pbc::PopsicleList<string>();
    public scg::IList<string> DependencyList {
      get { return pbc::Lists.AsReadOnly(dependency_); }
    }
    public int DependencyCount {
      get { return dependency_.Count; }
    }
    public string GetDependency(int index) {
      return dependency_[index];
    }
    
    public const int MessageTypeFieldNumber = 4;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> messageType_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> MessageTypeList {
      get { return messageType_; }
    }
    public int MessageTypeCount {
      get { return messageType_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto GetMessageType(int index) {
      return messageType_[index];
    }
    
    public const int EnumTypeFieldNumber = 5;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> enumType_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> EnumTypeList {
      get { return enumType_; }
    }
    public int EnumTypeCount {
      get { return enumType_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto GetEnumType(int index) {
      return enumType_[index];
    }
    
    public const int ServiceFieldNumber = 6;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto> service_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto> ServiceList {
      get { return service_; }
    }
    public int ServiceCount {
      get { return service_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto GetService(int index) {
      return service_[index];
    }
    
    public const int ExtensionFieldNumber = 7;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> extension_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> ExtensionList {
      get { return extension_; }
    }
    public int ExtensionCount {
      get { return extension_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetExtension(int index) {
      return extension_[index];
    }
    
    public const int OptionsFieldNumber = 8;
    private bool hasOptions;
646
    private global::Google.ProtocolBuffers.DescriptorProtos.FileOptions options_;
647 648 649 650
    public bool HasOptions {
      get { return hasOptions; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.FileOptions Options {
651
      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.DefaultInstance; }
652 653 654 655 656 657
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto element in MessageTypeList) {
          if (!element.IsInitialized) return false;
658
        }
659 660
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto element in EnumTypeList) {
          if (!element.IsInitialized) return false;
661
        }
662 663
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto element in ServiceList) {
          if (!element.IsInitialized) return false;
664
        }
665 666
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in ExtensionList) {
          if (!element.IsInitialized) return false;
667
        }
668 669
        if (HasOptions) {
          if (!Options.IsInitialized) return false;
670
        }
671 672 673 674
        return true;
      }
    }
    
675
    public override void WriteTo(pb::ICodedOutputStream output) {
676
      int size = SerializedSize;
677
      string[] field_names = _fileDescriptorProtoFieldNames;
678
      if (hasName) {
679
        output.WriteString(1, field_names[4], Name);
680
      }
681
      if (hasPackage) {
682
        output.WriteString(2, field_names[6], Package);
683 684
      }
      if (dependency_.Count > 0) {
685
        output.WriteStringArray(3, field_names[0], dependency_);
686
      }
687
      if (messageType_.Count > 0) {
688
        output.WriteMessageArray(4, field_names[3], messageType_);
689
      }
690
      if (enumType_.Count > 0) {
691
        output.WriteMessageArray(5, field_names[1], enumType_);
692
      }
693
      if (service_.Count > 0) {
694
        output.WriteMessageArray(6, field_names[7], service_);
695
      }
696
      if (extension_.Count > 0) {
697
        output.WriteMessageArray(7, field_names[2], extension_);
698
      }
699
      if (hasOptions) {
700
        output.WriteMessage(8, field_names[5], Options);
701 702 703 704 705 706 707 708 709 710 711
      }
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
712
        if (hasName) {
713 714
          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
        }
715
        if (hasPackage) {
716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737
          size += pb::CodedOutputStream.ComputeStringSize(2, Package);
        }
        {
          int dataSize = 0;
          foreach (string element in DependencyList) {
            dataSize += pb::CodedOutputStream.ComputeStringSizeNoTag(element);
          }
          size += dataSize;
          size += 1 * dependency_.Count;
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto element in MessageTypeList) {
          size += pb::CodedOutputStream.ComputeMessageSize(4, element);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto element in EnumTypeList) {
          size += pb::CodedOutputStream.ComputeMessageSize(5, element);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto element in ServiceList) {
          size += pb::CodedOutputStream.ComputeMessageSize(6, element);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in ExtensionList) {
          size += pb::CodedOutputStream.ComputeMessageSize(7, element);
        }
738
        if (hasOptions) {
739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770
          size += pb::CodedOutputStream.ComputeMessageSize(8, Options);
        }
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static FileDescriptorProto ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static FileDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static FileDescriptorProto ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static FileDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static FileDescriptorProto ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static FileDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static FileDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static FileDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
771
    public static FileDescriptorProto ParseFrom(pb::ICodedInputStream input) {
772 773
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
774
    public static FileDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
775 776
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
777 778 779 780 781 782 783 784 785
    private FileDescriptorProto MakeReadOnly() {
      dependency_.MakeReadOnly();
      messageType_.MakeReadOnly();
      enumType_.MakeReadOnly();
      service_.MakeReadOnly();
      extension_.MakeReadOnly();
      return this;
    }
    
786 787 788 789
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(FileDescriptorProto prototype) {
790
      return new Builder(prototype);
791 792
    }
    
793 794 795
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
796 797 798 799
    public sealed partial class Builder : pb::GeneratedBuilder<FileDescriptorProto, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
800
      public Builder() {
801 802
        result = DefaultInstance;
        resultIsReadOnly = true;
803 804 805
      }
      internal Builder(FileDescriptorProto cloneFrom) {
        result = cloneFrom;
806
        resultIsReadOnly = true;
807
      }
808
      
809 810
      private bool resultIsReadOnly;
      private FileDescriptorProto result;
811 812
      
      private FileDescriptorProto PrepareBuilder() {
813
        if (resultIsReadOnly) {
814 815
          FileDescriptorProto original = result;
          result = new FileDescriptorProto();
816
          resultIsReadOnly = false;
817 818 819 820 821 822 823 824
          MergeFrom(original);
        }
        return result;
      }
      
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
825 826
      
      protected override FileDescriptorProto MessageBeingBuilt {
827
        get { return PrepareBuilder(); }
828 829 830
      }
      
      public override Builder Clear() {
831 832
        result = DefaultInstance;
        resultIsReadOnly = true;
833 834 835 836
        return this;
      }
      
      public override Builder Clone() {
837
        if (resultIsReadOnly) {
838 839 840 841
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
842 843 844 845 846 847 848 849 850 851 852
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Descriptor; }
      }
      
      public override FileDescriptorProto DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.DefaultInstance; }
      }
      
      public override FileDescriptorProto BuildPartial() {
853
        if (resultIsReadOnly) {
854
          return result;
855
        }
856 857
        resultIsReadOnly = true;
        return result.MakeReadOnly();
858 859 860 861 862 863 864 865 866 867 868 869 870
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is FileDescriptorProto) {
          return MergeFrom((FileDescriptorProto) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(FileDescriptorProto other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.DefaultInstance) return this;
871
        PrepareBuilder();
872 873 874 875 876 877 878
        if (other.HasName) {
          Name = other.Name;
        }
        if (other.HasPackage) {
          Package = other.Package;
        }
        if (other.dependency_.Count != 0) {
879
          result.dependency_.Add(other.dependency_);
880 881
        }
        if (other.messageType_.Count != 0) {
882
          result.messageType_.Add(other.messageType_);
883 884
        }
        if (other.enumType_.Count != 0) {
885
          result.enumType_.Add(other.enumType_);
886 887
        }
        if (other.service_.Count != 0) {
888
          result.service_.Add(other.service_);
889 890
        }
        if (other.extension_.Count != 0) {
891
          result.extension_.Add(other.extension_);
892 893 894 895 896 897 898 899
        }
        if (other.HasOptions) {
          MergeOptions(other.Options);
        }
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
900
      public override Builder MergeFrom(pb::ICodedInputStream input) {
901 902 903
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
904
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
905
        PrepareBuilder();
906
        pb::UnknownFieldSet.Builder unknownFields = null;
907 908 909
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
910 911 912 913 914 915 916 917 918 919 920 921
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_fileDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _fileDescriptorProtoFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
922 923
          switch (tag) {
            case 0: {
924
              throw pb::InvalidProtocolBufferException.InvalidTag();
925 926 927 928 929 930 931 932 933 934 935
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
936
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
937 938 939
              break;
            }
            case 10: {
940
              result.hasName = input.ReadString(ref result.name_);
941 942 943
              break;
            }
            case 18: {
944
              result.hasPackage = input.ReadString(ref result.package_);
945 946 947
              break;
            }
            case 26: {
948
              input.ReadStringArray(tag, field_name, result.dependency_);
949 950 951
              break;
            }
            case 34: {
952
              input.ReadMessageArray(tag, field_name, result.messageType_, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.DefaultInstance, extensionRegistry);
953 954 955
              break;
            }
            case 42: {
956
              input.ReadMessageArray(tag, field_name, result.enumType_, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.DefaultInstance, extensionRegistry);
957 958 959
              break;
            }
            case 50: {
960
              input.ReadMessageArray(tag, field_name, result.service_, global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.DefaultInstance, extensionRegistry);
961 962 963
              break;
            }
            case 58: {
964
              input.ReadMessageArray(tag, field_name, result.extension_, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.DefaultInstance, extensionRegistry);
965 966 967 968
              break;
            }
            case 66: {
              global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.CreateBuilder();
969
              if (result.hasOptions) {
970 971 972 973 974 975 976 977
                subBuilder.MergeFrom(Options);
              }
              input.ReadMessage(subBuilder, extensionRegistry);
              Options = subBuilder.BuildPartial();
              break;
            }
          }
        }
978 979 980 981 982
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
983 984 985 986
      }
      
      
      public bool HasName {
987
        get { return result.hasName; }
988 989 990 991 992 993 994
      }
      public string Name {
        get { return result.Name; }
        set { SetName(value); }
      }
      public Builder SetName(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
995
        PrepareBuilder();
996 997 998 999 1000
        result.hasName = true;
        result.name_ = value;
        return this;
      }
      public Builder ClearName() {
1001
        PrepareBuilder();
1002 1003 1004 1005 1006 1007
        result.hasName = false;
        result.name_ = "";
        return this;
      }
      
      public bool HasPackage {
1008
        get { return result.hasPackage; }
1009 1010 1011 1012 1013 1014 1015
      }
      public string Package {
        get { return result.Package; }
        set { SetPackage(value); }
      }
      public Builder SetPackage(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1016
        PrepareBuilder();
1017 1018 1019 1020 1021
        result.hasPackage = true;
        result.package_ = value;
        return this;
      }
      public Builder ClearPackage() {
1022
        PrepareBuilder();
1023 1024 1025 1026 1027 1028
        result.hasPackage = false;
        result.package_ = "";
        return this;
      }
      
      public pbc::IPopsicleList<string> DependencyList {
1029
        get { return PrepareBuilder().dependency_; }
1030 1031 1032 1033 1034 1035 1036 1037 1038
      }
      public int DependencyCount {
        get { return result.DependencyCount; }
      }
      public string GetDependency(int index) {
        return result.GetDependency(index);
      }
      public Builder SetDependency(int index, string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1039
        PrepareBuilder();
1040 1041 1042 1043 1044
        result.dependency_[index] = value;
        return this;
      }
      public Builder AddDependency(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1045
        PrepareBuilder();
1046 1047 1048 1049
        result.dependency_.Add(value);
        return this;
      }
      public Builder AddRangeDependency(scg::IEnumerable<string> values) {
1050
        PrepareBuilder();
1051
        result.dependency_.Add(values);
1052 1053 1054
        return this;
      }
      public Builder ClearDependency() {
1055
        PrepareBuilder();
1056 1057 1058 1059 1060
        result.dependency_.Clear();
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> MessageTypeList {
1061
        get { return PrepareBuilder().messageType_; }
1062 1063 1064 1065 1066 1067 1068 1069 1070
      }
      public int MessageTypeCount {
        get { return result.MessageTypeCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto GetMessageType(int index) {
        return result.GetMessageType(index);
      }
      public Builder SetMessageType(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1071
        PrepareBuilder();
1072 1073 1074 1075 1076
        result.messageType_[index] = value;
        return this;
      }
      public Builder SetMessageType(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
1077
        PrepareBuilder();
1078 1079 1080 1081 1082
        result.messageType_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddMessageType(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1083
        PrepareBuilder();
1084 1085 1086 1087 1088
        result.messageType_.Add(value);
        return this;
      }
      public Builder AddMessageType(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
1089
        PrepareBuilder();
1090 1091 1092 1093
        result.messageType_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeMessageType(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> values) {
1094
        PrepareBuilder();
1095
        result.messageType_.Add(values);
1096 1097 1098
        return this;
      }
      public Builder ClearMessageType() {
1099
        PrepareBuilder();
1100 1101 1102 1103 1104
        result.messageType_.Clear();
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> EnumTypeList {
1105
        get { return PrepareBuilder().enumType_; }
1106 1107 1108 1109 1110 1111 1112 1113 1114
      }
      public int EnumTypeCount {
        get { return result.EnumTypeCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto GetEnumType(int index) {
        return result.GetEnumType(index);
      }
      public Builder SetEnumType(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1115
        PrepareBuilder();
1116 1117 1118 1119 1120
        result.enumType_[index] = value;
        return this;
      }
      public Builder SetEnumType(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
1121
        PrepareBuilder();
1122 1123 1124 1125 1126
        result.enumType_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddEnumType(global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1127
        PrepareBuilder();
1128 1129 1130 1131 1132
        result.enumType_.Add(value);
        return this;
      }
      public Builder AddEnumType(global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
1133
        PrepareBuilder();
1134 1135 1136 1137
        result.enumType_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeEnumType(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> values) {
1138
        PrepareBuilder();
1139
        result.enumType_.Add(values);
1140 1141 1142
        return this;
      }
      public Builder ClearEnumType() {
1143
        PrepareBuilder();
1144 1145 1146 1147 1148
        result.enumType_.Clear();
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto> ServiceList {
1149
        get { return PrepareBuilder().service_; }
1150 1151 1152 1153 1154 1155 1156 1157 1158
      }
      public int ServiceCount {
        get { return result.ServiceCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto GetService(int index) {
        return result.GetService(index);
      }
      public Builder SetService(int index, global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1159
        PrepareBuilder();
1160 1161 1162 1163 1164
        result.service_[index] = value;
        return this;
      }
      public Builder SetService(int index, global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
1165
        PrepareBuilder();
1166 1167 1168 1169 1170
        result.service_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddService(global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1171
        PrepareBuilder();
1172 1173 1174 1175 1176
        result.service_.Add(value);
        return this;
      }
      public Builder AddService(global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
1177
        PrepareBuilder();
1178 1179 1180 1181
        result.service_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeService(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto> values) {
1182
        PrepareBuilder();
1183
        result.service_.Add(values);
1184 1185 1186
        return this;
      }
      public Builder ClearService() {
1187
        PrepareBuilder();
1188 1189 1190 1191 1192
        result.service_.Clear();
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> ExtensionList {
1193
        get { return PrepareBuilder().extension_; }
1194 1195 1196 1197 1198 1199 1200 1201 1202
      }
      public int ExtensionCount {
        get { return result.ExtensionCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetExtension(int index) {
        return result.GetExtension(index);
      }
      public Builder SetExtension(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1203
        PrepareBuilder();
1204 1205 1206 1207 1208
        result.extension_[index] = value;
        return this;
      }
      public Builder SetExtension(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
1209
        PrepareBuilder();
1210 1211 1212 1213 1214
        result.extension_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddExtension(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1215
        PrepareBuilder();
1216 1217 1218 1219 1220
        result.extension_.Add(value);
        return this;
      }
      public Builder AddExtension(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
1221
        PrepareBuilder();
1222 1223 1224 1225
        result.extension_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeExtension(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> values) {
1226
        PrepareBuilder();
1227
        result.extension_.Add(values);
1228 1229 1230
        return this;
      }
      public Builder ClearExtension() {
1231
        PrepareBuilder();
1232 1233 1234 1235 1236
        result.extension_.Clear();
        return this;
      }
      
      public bool HasOptions {
1237
       get { return result.hasOptions; }
1238 1239 1240 1241 1242 1243 1244
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.FileOptions Options {
        get { return result.Options; }
        set { SetOptions(value); }
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.FileOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1245
        PrepareBuilder();
1246 1247 1248 1249 1250 1251
        result.hasOptions = true;
        result.options_ = value;
        return this;
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
1252
        PrepareBuilder();
1253 1254 1255 1256 1257 1258
        result.hasOptions = true;
        result.options_ = builderForValue.Build();
        return this;
      }
      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.FileOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
1259
        PrepareBuilder();
1260
        if (result.hasOptions &&
1261 1262 1263 1264 1265 1266 1267 1268 1269
            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.DefaultInstance) {
            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
        } else {
          result.options_ = value;
        }
        result.hasOptions = true;
        return this;
      }
      public Builder ClearOptions() {
1270
        PrepareBuilder();
1271
        result.hasOptions = false;
1272
        result.options_ = null;
1273 1274 1275 1276 1277 1278 1279 1280
        return this;
      }
    }
    static FileDescriptorProto() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
1281 1282 1283
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
1284
  public sealed partial class DescriptorProto : pb::GeneratedMessage<DescriptorProto, DescriptorProto.Builder> {
1285
    private DescriptorProto() { }
1286
    private static readonly DescriptorProto defaultInstance = new DescriptorProto().MakeReadOnly();
1287 1288
    private static readonly string[] _descriptorProtoFieldNames = new string[] { "enum_type", "extension", "extension_range", "field", "name", "nested_type", "options" };
    private static readonly uint[] _descriptorProtoFieldTags = new uint[] { 34, 50, 42, 18, 10, 26, 58 };
1289 1290 1291 1292 1293
    public static DescriptorProto DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override DescriptorProto DefaultInstanceForType {
1294
      get { return DefaultInstance; }
1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309
    }
    
    protected override DescriptorProto ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<DescriptorProto, DescriptorProto.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto__FieldAccessorTable; }
    }
    
    #region Nested types
1310 1311 1312
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
1313
    public static class Types {
1314 1315 1316
      [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
1317
      public sealed partial class ExtensionRange : pb::GeneratedMessage<ExtensionRange, ExtensionRange.Builder> {
1318
        private ExtensionRange() { }
1319
        private static readonly ExtensionRange defaultInstance = new ExtensionRange().MakeReadOnly();
1320 1321
        private static readonly string[] _extensionRangeFieldNames = new string[] { "end", "start" };
        private static readonly uint[] _extensionRangeFieldTags = new uint[] { 16, 8 };
1322 1323 1324 1325 1326
        public static ExtensionRange DefaultInstance {
          get { return defaultInstance; }
        }
        
        public override ExtensionRange DefaultInstanceForType {
1327
          get { return DefaultInstance; }
1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343
        }
        
        protected override ExtensionRange ThisMessage {
          get { return this; }
        }
        
        public static pbd::MessageDescriptor Descriptor {
          get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor; }
        }
        
        protected override pb::FieldAccess.FieldAccessorTable<ExtensionRange, ExtensionRange.Builder> InternalFieldAccessors {
          get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto_ExtensionRange__FieldAccessorTable; }
        }
        
        public const int StartFieldNumber = 1;
        private bool hasStart;
csharptest's avatar
csharptest committed
1344
        private int start_;
1345 1346 1347 1348 1349 1350 1351 1352 1353
        public bool HasStart {
          get { return hasStart; }
        }
        public int Start {
          get { return start_; }
        }
        
        public const int EndFieldNumber = 2;
        private bool hasEnd;
csharptest's avatar
csharptest committed
1354
        private int end_;
1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367
        public bool HasEnd {
          get { return hasEnd; }
        }
        public int End {
          get { return end_; }
        }
        
        public override bool IsInitialized {
          get {
            return true;
          }
        }
        
1368
        public override void WriteTo(pb::ICodedOutputStream output) {
1369
          int size = SerializedSize;
1370
          string[] field_names = _extensionRangeFieldNames;
1371
          if (hasStart) {
1372
            output.WriteInt32(1, field_names[1], Start);
1373
          }
1374
          if (hasEnd) {
1375
            output.WriteInt32(2, field_names[0], End);
1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386
          }
          UnknownFields.WriteTo(output);
        }
        
        private int memoizedSerializedSize = -1;
        public override int SerializedSize {
          get {
            int size = memoizedSerializedSize;
            if (size != -1) return size;
            
            size = 0;
1387
            if (hasStart) {
1388
              size += pb::CodedOutputStream.ComputeInt32Size(1, Start);
1389
            }
1390
            if (hasEnd) {
1391
              size += pb::CodedOutputStream.ComputeInt32Size(2, End);
1392
            }
1393 1394 1395 1396
            size += UnknownFields.SerializedSize;
            memoizedSerializedSize = size;
            return size;
          }
1397
        }
1398 1399 1400
        
        public static ExtensionRange ParseFrom(pb::ByteString data) {
          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
1401
        }
1402 1403
        public static ExtensionRange ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
1404
        }
1405 1406
        public static ExtensionRange ParseFrom(byte[] data) {
          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
1407
        }
1408 1409
        public static ExtensionRange ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
1410
        }
1411 1412
        public static ExtensionRange ParseFrom(global::System.IO.Stream input) {
          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
1413
        }
1414 1415
        public static ExtensionRange ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
1416
        }
1417 1418
        public static ExtensionRange ParseDelimitedFrom(global::System.IO.Stream input) {
          return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
1419
        }
1420 1421
        public static ExtensionRange ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
          return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
1422
        }
1423
        public static ExtensionRange ParseFrom(pb::ICodedInputStream input) {
1424
          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
1425
        }
1426
        public static ExtensionRange ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
1427
          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
1428
        }
1429 1430 1431 1432
        private ExtensionRange MakeReadOnly() {
          return this;
        }
        
1433 1434 1435 1436
        public static Builder CreateBuilder() { return new Builder(); }
        public override Builder ToBuilder() { return CreateBuilder(this); }
        public override Builder CreateBuilderForType() { return new Builder(); }
        public static Builder CreateBuilder(ExtensionRange prototype) {
1437
          return new Builder(prototype);
1438
        }
1439
        
1440 1441 1442
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
        [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
1443 1444 1445 1446
        public sealed partial class Builder : pb::GeneratedBuilder<ExtensionRange, Builder> {
          protected override Builder ThisBuilder {
            get { return this; }
          }
1447
          public Builder() {
1448 1449
            result = DefaultInstance;
            resultIsReadOnly = true;
1450 1451 1452
          }
          internal Builder(ExtensionRange cloneFrom) {
            result = cloneFrom;
1453
            resultIsReadOnly = true;
1454
          }
1455
          
1456 1457
          private bool resultIsReadOnly;
          private ExtensionRange result;
1458 1459
          
          private ExtensionRange PrepareBuilder() {
1460
            if (resultIsReadOnly) {
1461 1462
              ExtensionRange original = result;
              result = new ExtensionRange();
1463
              resultIsReadOnly = false;
1464 1465 1466 1467 1468 1469 1470 1471
              MergeFrom(original);
            }
            return result;
          }
          
          public override bool IsInitialized {
            get { return result.IsInitialized; }
          }
1472 1473
          
          protected override ExtensionRange MessageBeingBuilt {
1474
            get { return PrepareBuilder(); }
1475 1476 1477
          }
          
          public override Builder Clear() {
1478 1479
            result = DefaultInstance;
            resultIsReadOnly = true;
1480 1481 1482 1483
            return this;
          }
          
          public override Builder Clone() {
1484
            if (resultIsReadOnly) {
1485 1486 1487 1488
              return new Builder(result);
            } else {
              return new Builder().MergeFrom(result);
            }
1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499
          }
          
          public override pbd::MessageDescriptor DescriptorForType {
            get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.Descriptor; }
          }
          
          public override ExtensionRange DefaultInstanceForType {
            get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.DefaultInstance; }
          }
          
          public override ExtensionRange BuildPartial() {
1500
            if (resultIsReadOnly) {
1501
              return result;
1502
            }
1503 1504
            resultIsReadOnly = true;
            return result.MakeReadOnly();
1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517
          }
          
          public override Builder MergeFrom(pb::IMessage other) {
            if (other is ExtensionRange) {
              return MergeFrom((ExtensionRange) other);
            } else {
              base.MergeFrom(other);
              return this;
            }
          }
          
          public override Builder MergeFrom(ExtensionRange other) {
            if (other == global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.DefaultInstance) return this;
1518
            PrepareBuilder();
1519 1520 1521 1522 1523 1524 1525 1526 1527 1528
            if (other.HasStart) {
              Start = other.Start;
            }
            if (other.HasEnd) {
              End = other.End;
            }
            this.MergeUnknownFields(other.UnknownFields);
            return this;
          }
          
1529
          public override Builder MergeFrom(pb::ICodedInputStream input) {
1530 1531 1532
            return MergeFrom(input, pb::ExtensionRegistry.Empty);
          }
          
1533
          public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
1534
            PrepareBuilder();
1535
            pb::UnknownFieldSet.Builder unknownFields = null;
1536 1537 1538
            uint tag;
            string field_name;
            while (input.ReadTag(out tag, out field_name)) {
1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550
              if(tag == 0 && field_name != null) {
                int field_ordinal = global::System.Array.BinarySearch(_extensionRangeFieldNames, field_name, global::System.StringComparer.Ordinal);
                if(field_ordinal >= 0)
                  tag = _extensionRangeFieldTags[field_ordinal];
                else {
                  if (unknownFields == null) {
                    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
                  }
                  ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
                  continue;
                }
              }
1551 1552
              switch (tag) {
                case 0: {
1553
                  throw pb::InvalidProtocolBufferException.InvalidTag();
1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564
                }
                default: {
                  if (pb::WireFormat.IsEndGroupTag(tag)) {
                    if (unknownFields != null) {
                      this.UnknownFields = unknownFields.Build();
                    }
                    return this;
                  }
                  if (unknownFields == null) {
                    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
                  }
1565
                  ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
1566 1567 1568
                  break;
                }
                case 8: {
1569
                  result.hasStart = input.ReadInt32(ref result.start_);
1570 1571 1572
                  break;
                }
                case 16: {
1573
                  result.hasEnd = input.ReadInt32(ref result.end_);
1574 1575 1576 1577
                  break;
                }
              }
            }
1578 1579 1580 1581 1582
            
            if (unknownFields != null) {
              this.UnknownFields = unknownFields.Build();
            }
            return this;
1583 1584 1585 1586
          }
          
          
          public bool HasStart {
1587
            get { return result.hasStart; }
1588 1589 1590 1591 1592 1593
          }
          public int Start {
            get { return result.Start; }
            set { SetStart(value); }
          }
          public Builder SetStart(int value) {
1594
            PrepareBuilder();
1595 1596 1597 1598 1599
            result.hasStart = true;
            result.start_ = value;
            return this;
          }
          public Builder ClearStart() {
1600
            PrepareBuilder();
1601 1602 1603 1604 1605 1606
            result.hasStart = false;
            result.start_ = 0;
            return this;
          }
          
          public bool HasEnd {
1607
            get { return result.hasEnd; }
1608 1609 1610 1611 1612 1613
          }
          public int End {
            get { return result.End; }
            set { SetEnd(value); }
          }
          public Builder SetEnd(int value) {
1614
            PrepareBuilder();
1615 1616 1617 1618 1619
            result.hasEnd = true;
            result.end_ = value;
            return this;
          }
          public Builder ClearEnd() {
1620
            PrepareBuilder();
1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705
            result.hasEnd = false;
            result.end_ = 0;
            return this;
          }
        }
        static ExtensionRange() {
          object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
        }
      }
      
    }
    #endregion
    
    public const int NameFieldNumber = 1;
    private bool hasName;
    private string name_ = "";
    public bool HasName {
      get { return hasName; }
    }
    public string Name {
      get { return name_; }
    }
    
    public const int FieldFieldNumber = 2;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> field_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> FieldList {
      get { return field_; }
    }
    public int FieldCount {
      get { return field_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetField(int index) {
      return field_[index];
    }
    
    public const int ExtensionFieldNumber = 6;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> extension_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> ExtensionList {
      get { return extension_; }
    }
    public int ExtensionCount {
      get { return extension_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetExtension(int index) {
      return extension_[index];
    }
    
    public const int NestedTypeFieldNumber = 3;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> nestedType_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> NestedTypeList {
      get { return nestedType_; }
    }
    public int NestedTypeCount {
      get { return nestedType_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto GetNestedType(int index) {
      return nestedType_[index];
    }
    
    public const int EnumTypeFieldNumber = 4;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> enumType_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> EnumTypeList {
      get { return enumType_; }
    }
    public int EnumTypeCount {
      get { return enumType_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto GetEnumType(int index) {
      return enumType_[index];
    }
    
    public const int ExtensionRangeFieldNumber = 5;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange> extensionRange_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange> ExtensionRangeList {
      get { return extensionRange_; }
    }
    public int ExtensionRangeCount {
      get { return extensionRange_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange GetExtensionRange(int index) {
      return extensionRange_[index];
    }
    
    public const int OptionsFieldNumber = 7;
    private bool hasOptions;
1706
    private global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions options_;
1707 1708 1709 1710
    public bool HasOptions {
      get { return hasOptions; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions Options {
1711
      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.DefaultInstance; }
1712 1713 1714 1715 1716 1717
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in FieldList) {
          if (!element.IsInitialized) return false;
1718
        }
1719 1720
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in ExtensionList) {
          if (!element.IsInitialized) return false;
1721
        }
1722 1723
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto element in NestedTypeList) {
          if (!element.IsInitialized) return false;
1724
        }
1725 1726
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto element in EnumTypeList) {
          if (!element.IsInitialized) return false;
1727
        }
1728 1729
        if (HasOptions) {
          if (!Options.IsInitialized) return false;
1730
        }
1731 1732
        return true;
      }
1733
    }
1734
    
1735
    public override void WriteTo(pb::ICodedOutputStream output) {
1736
      int size = SerializedSize;
1737
      string[] field_names = _descriptorProtoFieldNames;
1738
      if (hasName) {
1739
        output.WriteString(1, field_names[4], Name);
1740
      }
1741
      if (field_.Count > 0) {
1742
        output.WriteMessageArray(2, field_names[3], field_);
1743
      }
1744
      if (nestedType_.Count > 0) {
1745
        output.WriteMessageArray(3, field_names[5], nestedType_);
1746
      }
1747
      if (enumType_.Count > 0) {
1748
        output.WriteMessageArray(4, field_names[0], enumType_);
1749
      }
1750
      if (extensionRange_.Count > 0) {
1751
        output.WriteMessageArray(5, field_names[2], extensionRange_);
1752
      }
1753
      if (extension_.Count > 0) {
1754
        output.WriteMessageArray(6, field_names[1], extension_);
1755
      }
1756
      if (hasOptions) {
1757
        output.WriteMessage(7, field_names[6], Options);
1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768
      }
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
1769
        if (hasName) {
1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786
          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in FieldList) {
          size += pb::CodedOutputStream.ComputeMessageSize(2, element);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in ExtensionList) {
          size += pb::CodedOutputStream.ComputeMessageSize(6, element);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto element in NestedTypeList) {
          size += pb::CodedOutputStream.ComputeMessageSize(3, element);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto element in EnumTypeList) {
          size += pb::CodedOutputStream.ComputeMessageSize(4, element);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange element in ExtensionRangeList) {
          size += pb::CodedOutputStream.ComputeMessageSize(5, element);
        }
1787
        if (hasOptions) {
1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819
          size += pb::CodedOutputStream.ComputeMessageSize(7, Options);
        }
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static DescriptorProto ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static DescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static DescriptorProto ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static DescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static DescriptorProto ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static DescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static DescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static DescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
1820
    public static DescriptorProto ParseFrom(pb::ICodedInputStream input) {
1821 1822
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
1823
    public static DescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
1824 1825
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
1826 1827 1828 1829 1830 1831 1832 1833 1834
    private DescriptorProto MakeReadOnly() {
      field_.MakeReadOnly();
      extension_.MakeReadOnly();
      nestedType_.MakeReadOnly();
      enumType_.MakeReadOnly();
      extensionRange_.MakeReadOnly();
      return this;
    }
    
1835 1836 1837 1838
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(DescriptorProto prototype) {
1839
      return new Builder(prototype);
1840 1841
    }
    
1842 1843 1844
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
1845 1846 1847 1848
    public sealed partial class Builder : pb::GeneratedBuilder<DescriptorProto, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
1849
      public Builder() {
1850 1851
        result = DefaultInstance;
        resultIsReadOnly = true;
1852 1853 1854
      }
      internal Builder(DescriptorProto cloneFrom) {
        result = cloneFrom;
1855
        resultIsReadOnly = true;
1856 1857
      }
      
1858 1859
      private bool resultIsReadOnly;
      private DescriptorProto result;
1860 1861
      
      private DescriptorProto PrepareBuilder() {
1862
        if (resultIsReadOnly) {
1863 1864
          DescriptorProto original = result;
          result = new DescriptorProto();
1865
          resultIsReadOnly = false;
1866 1867 1868 1869
          MergeFrom(original);
        }
        return result;
      }
1870
      
1871 1872 1873
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
1874 1875
      
      protected override DescriptorProto MessageBeingBuilt {
1876
        get { return PrepareBuilder(); }
1877 1878 1879
      }
      
      public override Builder Clear() {
1880 1881
        result = DefaultInstance;
        resultIsReadOnly = true;
1882 1883 1884 1885
        return this;
      }
      
      public override Builder Clone() {
1886
        if (resultIsReadOnly) {
1887 1888 1889 1890
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Descriptor; }
      }
      
      public override DescriptorProto DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.DefaultInstance; }
      }
      
      public override DescriptorProto BuildPartial() {
1902
        if (resultIsReadOnly) {
1903
          return result;
1904
        }
1905 1906
        resultIsReadOnly = true;
        return result.MakeReadOnly();
1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is DescriptorProto) {
          return MergeFrom((DescriptorProto) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(DescriptorProto other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.DefaultInstance) return this;
1920
        PrepareBuilder();
1921 1922 1923 1924
        if (other.HasName) {
          Name = other.Name;
        }
        if (other.field_.Count != 0) {
1925
          result.field_.Add(other.field_);
1926 1927
        }
        if (other.extension_.Count != 0) {
1928
          result.extension_.Add(other.extension_);
1929 1930
        }
        if (other.nestedType_.Count != 0) {
1931
          result.nestedType_.Add(other.nestedType_);
1932 1933
        }
        if (other.enumType_.Count != 0) {
1934
          result.enumType_.Add(other.enumType_);
1935 1936
        }
        if (other.extensionRange_.Count != 0) {
1937
          result.extensionRange_.Add(other.extensionRange_);
1938 1939 1940 1941 1942 1943 1944 1945
        }
        if (other.HasOptions) {
          MergeOptions(other.Options);
        }
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
1946
      public override Builder MergeFrom(pb::ICodedInputStream input) {
1947 1948 1949
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
1950
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
1951
        PrepareBuilder();
1952
        pb::UnknownFieldSet.Builder unknownFields = null;
1953 1954 1955
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_descriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _descriptorProtoFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
1968 1969
          switch (tag) {
            case 0: {
1970
              throw pb::InvalidProtocolBufferException.InvalidTag();
1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
1982
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
1983 1984 1985
              break;
            }
            case 10: {
1986
              result.hasName = input.ReadString(ref result.name_);
1987 1988 1989
              break;
            }
            case 18: {
1990
              input.ReadMessageArray(tag, field_name, result.field_, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.DefaultInstance, extensionRegistry);
1991 1992 1993
              break;
            }
            case 26: {
1994
              input.ReadMessageArray(tag, field_name, result.nestedType_, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.DefaultInstance, extensionRegistry);
1995 1996 1997
              break;
            }
            case 34: {
1998
              input.ReadMessageArray(tag, field_name, result.enumType_, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.DefaultInstance, extensionRegistry);
1999 2000 2001
              break;
            }
            case 42: {
2002
              input.ReadMessageArray(tag, field_name, result.extensionRange_, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.DefaultInstance, extensionRegistry);
2003 2004 2005
              break;
            }
            case 50: {
2006
              input.ReadMessageArray(tag, field_name, result.extension_, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.DefaultInstance, extensionRegistry);
2007 2008 2009 2010
              break;
            }
            case 58: {
              global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.CreateBuilder();
2011
              if (result.hasOptions) {
2012 2013 2014 2015 2016 2017 2018 2019
                subBuilder.MergeFrom(Options);
              }
              input.ReadMessage(subBuilder, extensionRegistry);
              Options = subBuilder.BuildPartial();
              break;
            }
          }
        }
2020 2021 2022 2023 2024
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
2025 2026 2027 2028
      }
      
      
      public bool HasName {
2029
        get { return result.hasName; }
2030 2031 2032 2033 2034 2035 2036
      }
      public string Name {
        get { return result.Name; }
        set { SetName(value); }
      }
      public Builder SetName(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2037
        PrepareBuilder();
2038 2039 2040 2041 2042
        result.hasName = true;
        result.name_ = value;
        return this;
      }
      public Builder ClearName() {
2043
        PrepareBuilder();
2044 2045 2046 2047 2048 2049
        result.hasName = false;
        result.name_ = "";
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> FieldList {
2050
        get { return PrepareBuilder().field_; }
2051 2052 2053 2054 2055 2056 2057 2058 2059
      }
      public int FieldCount {
        get { return result.FieldCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetField(int index) {
        return result.GetField(index);
      }
      public Builder SetField(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2060
        PrepareBuilder();
2061 2062 2063 2064 2065
        result.field_[index] = value;
        return this;
      }
      public Builder SetField(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2066
        PrepareBuilder();
2067 2068 2069 2070 2071
        result.field_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddField(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2072
        PrepareBuilder();
2073 2074 2075 2076 2077
        result.field_.Add(value);
        return this;
      }
      public Builder AddField(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2078
        PrepareBuilder();
2079 2080 2081 2082
        result.field_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeField(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> values) {
2083
        PrepareBuilder();
2084
        result.field_.Add(values);
2085 2086 2087
        return this;
      }
      public Builder ClearField() {
2088
        PrepareBuilder();
2089 2090 2091 2092 2093
        result.field_.Clear();
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> ExtensionList {
2094
        get { return PrepareBuilder().extension_; }
2095 2096 2097 2098 2099 2100 2101 2102 2103
      }
      public int ExtensionCount {
        get { return result.ExtensionCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetExtension(int index) {
        return result.GetExtension(index);
      }
      public Builder SetExtension(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2104
        PrepareBuilder();
2105 2106 2107 2108 2109
        result.extension_[index] = value;
        return this;
      }
      public Builder SetExtension(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2110
        PrepareBuilder();
2111 2112 2113 2114 2115
        result.extension_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddExtension(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2116
        PrepareBuilder();
2117 2118 2119 2120 2121
        result.extension_.Add(value);
        return this;
      }
      public Builder AddExtension(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2122
        PrepareBuilder();
2123 2124 2125 2126
        result.extension_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeExtension(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> values) {
2127
        PrepareBuilder();
2128
        result.extension_.Add(values);
2129 2130 2131
        return this;
      }
      public Builder ClearExtension() {
2132
        PrepareBuilder();
2133 2134 2135 2136 2137
        result.extension_.Clear();
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> NestedTypeList {
2138
        get { return PrepareBuilder().nestedType_; }
2139 2140 2141 2142 2143 2144 2145 2146 2147
      }
      public int NestedTypeCount {
        get { return result.NestedTypeCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto GetNestedType(int index) {
        return result.GetNestedType(index);
      }
      public Builder SetNestedType(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2148
        PrepareBuilder();
2149 2150 2151 2152 2153
        result.nestedType_[index] = value;
        return this;
      }
      public Builder SetNestedType(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2154
        PrepareBuilder();
2155 2156 2157 2158 2159
        result.nestedType_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddNestedType(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2160
        PrepareBuilder();
2161 2162 2163 2164 2165
        result.nestedType_.Add(value);
        return this;
      }
      public Builder AddNestedType(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2166
        PrepareBuilder();
2167 2168 2169 2170
        result.nestedType_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeNestedType(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> values) {
2171
        PrepareBuilder();
2172
        result.nestedType_.Add(values);
2173 2174 2175
        return this;
      }
      public Builder ClearNestedType() {
2176
        PrepareBuilder();
2177 2178 2179 2180 2181
        result.nestedType_.Clear();
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> EnumTypeList {
2182
        get { return PrepareBuilder().enumType_; }
2183 2184 2185 2186 2187 2188 2189 2190 2191
      }
      public int EnumTypeCount {
        get { return result.EnumTypeCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto GetEnumType(int index) {
        return result.GetEnumType(index);
      }
      public Builder SetEnumType(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2192
        PrepareBuilder();
2193 2194 2195 2196 2197
        result.enumType_[index] = value;
        return this;
      }
      public Builder SetEnumType(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2198
        PrepareBuilder();
2199 2200 2201 2202 2203
        result.enumType_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddEnumType(global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2204
        PrepareBuilder();
2205 2206 2207 2208 2209
        result.enumType_.Add(value);
        return this;
      }
      public Builder AddEnumType(global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2210
        PrepareBuilder();
2211 2212 2213 2214
        result.enumType_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeEnumType(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> values) {
2215
        PrepareBuilder();
2216
        result.enumType_.Add(values);
2217 2218 2219
        return this;
      }
      public Builder ClearEnumType() {
2220
        PrepareBuilder();
2221 2222 2223 2224 2225
        result.enumType_.Clear();
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange> ExtensionRangeList {
2226
        get { return PrepareBuilder().extensionRange_; }
2227 2228 2229 2230 2231 2232 2233 2234 2235
      }
      public int ExtensionRangeCount {
        get { return result.ExtensionRangeCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange GetExtensionRange(int index) {
        return result.GetExtensionRange(index);
      }
      public Builder SetExtensionRange(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2236
        PrepareBuilder();
2237 2238 2239 2240 2241
        result.extensionRange_[index] = value;
        return this;
      }
      public Builder SetExtensionRange(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2242
        PrepareBuilder();
2243 2244 2245 2246 2247
        result.extensionRange_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddExtensionRange(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2248
        PrepareBuilder();
2249 2250 2251 2252 2253
        result.extensionRange_.Add(value);
        return this;
      }
      public Builder AddExtensionRange(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2254
        PrepareBuilder();
2255 2256 2257 2258
        result.extensionRange_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeExtensionRange(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange> values) {
2259
        PrepareBuilder();
2260
        result.extensionRange_.Add(values);
2261 2262 2263
        return this;
      }
      public Builder ClearExtensionRange() {
2264
        PrepareBuilder();
2265 2266 2267 2268 2269
        result.extensionRange_.Clear();
        return this;
      }
      
      public bool HasOptions {
2270
       get { return result.hasOptions; }
2271 2272 2273 2274 2275 2276 2277
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions Options {
        get { return result.Options; }
        set { SetOptions(value); }
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2278
        PrepareBuilder();
2279 2280 2281 2282 2283 2284
        result.hasOptions = true;
        result.options_ = value;
        return this;
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2285
        PrepareBuilder();
2286 2287 2288 2289 2290 2291
        result.hasOptions = true;
        result.options_ = builderForValue.Build();
        return this;
      }
      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2292
        PrepareBuilder();
2293
        if (result.hasOptions &&
2294 2295 2296 2297 2298 2299 2300 2301 2302
            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.DefaultInstance) {
            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
        } else {
          result.options_ = value;
        }
        result.hasOptions = true;
        return this;
      }
      public Builder ClearOptions() {
2303
        PrepareBuilder();
2304
        result.hasOptions = false;
2305
        result.options_ = null;
2306 2307 2308 2309 2310 2311 2312 2313
        return this;
      }
    }
    static DescriptorProto() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
2314 2315 2316
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
2317
  public sealed partial class FieldDescriptorProto : pb::GeneratedMessage<FieldDescriptorProto, FieldDescriptorProto.Builder> {
2318
    private FieldDescriptorProto() { }
2319
    private static readonly FieldDescriptorProto defaultInstance = new FieldDescriptorProto().MakeReadOnly();
2320 2321
    private static readonly string[] _fieldDescriptorProtoFieldNames = new string[] { "default_value", "extendee", "label", "name", "number", "options", "type", "type_name" };
    private static readonly uint[] _fieldDescriptorProtoFieldTags = new uint[] { 58, 18, 32, 10, 24, 66, 40, 50 };
2322 2323 2324 2325 2326
    public static FieldDescriptorProto DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override FieldDescriptorProto DefaultInstanceForType {
2327
      get { return DefaultInstance; }
2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342
    }
    
    protected override FieldDescriptorProto ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FieldDescriptorProto__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<FieldDescriptorProto, FieldDescriptorProto.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FieldDescriptorProto__FieldAccessorTable; }
    }
    
    #region Nested types
2343 2344 2345
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
2346
    public static class Types {
2347 2348
      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369
      public enum Type {
        TYPE_DOUBLE = 1,
        TYPE_FLOAT = 2,
        TYPE_INT64 = 3,
        TYPE_UINT64 = 4,
        TYPE_INT32 = 5,
        TYPE_FIXED64 = 6,
        TYPE_FIXED32 = 7,
        TYPE_BOOL = 8,
        TYPE_STRING = 9,
        TYPE_GROUP = 10,
        TYPE_MESSAGE = 11,
        TYPE_BYTES = 12,
        TYPE_UINT32 = 13,
        TYPE_ENUM = 14,
        TYPE_SFIXED32 = 15,
        TYPE_SFIXED64 = 16,
        TYPE_SINT32 = 17,
        TYPE_SINT64 = 18,
      }
      
2370 2371
      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392
      public enum Label {
        LABEL_OPTIONAL = 1,
        LABEL_REQUIRED = 2,
        LABEL_REPEATED = 3,
      }
      
    }
    #endregion
    
    public const int NameFieldNumber = 1;
    private bool hasName;
    private string name_ = "";
    public bool HasName {
      get { return hasName; }
    }
    public string Name {
      get { return name_; }
    }
    
    public const int NumberFieldNumber = 3;
    private bool hasNumber;
csharptest's avatar
csharptest committed
2393
    private int number_;
2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452
    public bool HasNumber {
      get { return hasNumber; }
    }
    public int Number {
      get { return number_; }
    }
    
    public const int LabelFieldNumber = 4;
    private bool hasLabel;
    private global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label label_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label.LABEL_OPTIONAL;
    public bool HasLabel {
      get { return hasLabel; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label Label {
      get { return label_; }
    }
    
    public const int TypeFieldNumber = 5;
    private bool hasType;
    private global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type type_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type.TYPE_DOUBLE;
    public bool HasType {
      get { return hasType; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type Type {
      get { return type_; }
    }
    
    public const int TypeNameFieldNumber = 6;
    private bool hasTypeName;
    private string typeName_ = "";
    public bool HasTypeName {
      get { return hasTypeName; }
    }
    public string TypeName {
      get { return typeName_; }
    }
    
    public const int ExtendeeFieldNumber = 2;
    private bool hasExtendee;
    private string extendee_ = "";
    public bool HasExtendee {
      get { return hasExtendee; }
    }
    public string Extendee {
      get { return extendee_; }
    }
    
    public const int DefaultValueFieldNumber = 7;
    private bool hasDefaultValue;
    private string defaultValue_ = "";
    public bool HasDefaultValue {
      get { return hasDefaultValue; }
    }
    public string DefaultValue {
      get { return defaultValue_; }
    }
    
    public const int OptionsFieldNumber = 8;
    private bool hasOptions;
2453
    private global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions options_;
2454 2455 2456 2457
    public bool HasOptions {
      get { return hasOptions; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions Options {
2458
      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.DefaultInstance; }
2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469
    }
    
    public override bool IsInitialized {
      get {
        if (HasOptions) {
          if (!Options.IsInitialized) return false;
        }
        return true;
      }
    }
    
2470
    public override void WriteTo(pb::ICodedOutputStream output) {
2471
      int size = SerializedSize;
2472
      string[] field_names = _fieldDescriptorProtoFieldNames;
2473
      if (hasName) {
2474
        output.WriteString(1, field_names[3], Name);
2475
      }
2476
      if (hasExtendee) {
2477
        output.WriteString(2, field_names[1], Extendee);
2478
      }
2479
      if (hasNumber) {
2480
        output.WriteInt32(3, field_names[4], Number);
2481
      }
2482
      if (hasLabel) {
csharptest's avatar
csharptest committed
2483
        output.WriteEnum(4, field_names[2], (int) Label, Label);
2484
      }
2485
      if (hasType) {
csharptest's avatar
csharptest committed
2486
        output.WriteEnum(5, field_names[6], (int) Type, Type);
2487
      }
2488
      if (hasTypeName) {
2489
        output.WriteString(6, field_names[7], TypeName);
2490
      }
2491
      if (hasDefaultValue) {
2492
        output.WriteString(7, field_names[0], DefaultValue);
2493
      }
2494
      if (hasOptions) {
2495
        output.WriteMessage(8, field_names[5], Options);
2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506
      }
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
2507
        if (hasName) {
2508 2509
          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
        }
2510
        if (hasNumber) {
2511 2512
          size += pb::CodedOutputStream.ComputeInt32Size(3, Number);
        }
2513
        if (hasLabel) {
2514 2515
          size += pb::CodedOutputStream.ComputeEnumSize(4, (int) Label);
        }
2516
        if (hasType) {
2517 2518
          size += pb::CodedOutputStream.ComputeEnumSize(5, (int) Type);
        }
2519
        if (hasTypeName) {
2520 2521
          size += pb::CodedOutputStream.ComputeStringSize(6, TypeName);
        }
2522
        if (hasExtendee) {
2523 2524
          size += pb::CodedOutputStream.ComputeStringSize(2, Extendee);
        }
2525
        if (hasDefaultValue) {
2526 2527
          size += pb::CodedOutputStream.ComputeStringSize(7, DefaultValue);
        }
2528
        if (hasOptions) {
2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560
          size += pb::CodedOutputStream.ComputeMessageSize(8, Options);
        }
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static FieldDescriptorProto ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static FieldDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static FieldDescriptorProto ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static FieldDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static FieldDescriptorProto ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static FieldDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static FieldDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static FieldDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
2561
    public static FieldDescriptorProto ParseFrom(pb::ICodedInputStream input) {
2562 2563
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
2564
    public static FieldDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
2565 2566
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
2567 2568 2569 2570
    private FieldDescriptorProto MakeReadOnly() {
      return this;
    }
    
2571 2572 2573 2574
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(FieldDescriptorProto prototype) {
2575
      return new Builder(prototype);
2576 2577
    }
    
2578 2579 2580
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
2581 2582 2583 2584
    public sealed partial class Builder : pb::GeneratedBuilder<FieldDescriptorProto, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
2585
      public Builder() {
2586 2587
        result = DefaultInstance;
        resultIsReadOnly = true;
2588 2589 2590
      }
      internal Builder(FieldDescriptorProto cloneFrom) {
        result = cloneFrom;
2591
        resultIsReadOnly = true;
2592 2593
      }
      
2594 2595
      private bool resultIsReadOnly;
      private FieldDescriptorProto result;
2596
      
2597
      private FieldDescriptorProto PrepareBuilder() {
2598
        if (resultIsReadOnly) {
2599 2600
          FieldDescriptorProto original = result;
          result = new FieldDescriptorProto();
2601
          resultIsReadOnly = false;
2602 2603 2604 2605 2606 2607 2608 2609
          MergeFrom(original);
        }
        return result;
      }
      
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
2610 2611
      
      protected override FieldDescriptorProto MessageBeingBuilt {
2612
        get { return PrepareBuilder(); }
2613 2614 2615
      }
      
      public override Builder Clear() {
2616 2617
        result = DefaultInstance;
        resultIsReadOnly = true;
2618 2619 2620 2621
        return this;
      }
      
      public override Builder Clone() {
2622
        if (resultIsReadOnly) {
2623 2624 2625 2626
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Descriptor; }
      }
      
      public override FieldDescriptorProto DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.DefaultInstance; }
      }
      
      public override FieldDescriptorProto BuildPartial() {
2638
        if (resultIsReadOnly) {
2639
          return result;
2640
        }
2641 2642
        resultIsReadOnly = true;
        return result.MakeReadOnly();
2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is FieldDescriptorProto) {
          return MergeFrom((FieldDescriptorProto) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(FieldDescriptorProto other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.DefaultInstance) return this;
2656
        PrepareBuilder();
2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684
        if (other.HasName) {
          Name = other.Name;
        }
        if (other.HasNumber) {
          Number = other.Number;
        }
        if (other.HasLabel) {
          Label = other.Label;
        }
        if (other.HasType) {
          Type = other.Type;
        }
        if (other.HasTypeName) {
          TypeName = other.TypeName;
        }
        if (other.HasExtendee) {
          Extendee = other.Extendee;
        }
        if (other.HasDefaultValue) {
          DefaultValue = other.DefaultValue;
        }
        if (other.HasOptions) {
          MergeOptions(other.Options);
        }
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
2685
      public override Builder MergeFrom(pb::ICodedInputStream input) {
2686 2687 2688
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
2689
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
2690
        PrepareBuilder();
2691
        pb::UnknownFieldSet.Builder unknownFields = null;
2692 2693 2694
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_fieldDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _fieldDescriptorProtoFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
2707 2708
          switch (tag) {
            case 0: {
2709
              throw pb::InvalidProtocolBufferException.InvalidTag();
2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
2721
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
2722 2723 2724
              break;
            }
            case 10: {
2725
              result.hasName = input.ReadString(ref result.name_);
2726 2727 2728
              break;
            }
            case 18: {
2729
              result.hasExtendee = input.ReadString(ref result.extendee_);
2730 2731 2732
              break;
            }
            case 24: {
2733
              result.hasNumber = input.ReadInt32(ref result.number_);
2734 2735 2736
              break;
            }
            case 32: {
2737 2738 2739 2740
              object unknown;
              if(input.ReadEnum(ref result.label_, out unknown)) {
                result.hasLabel = true;
              } else if(unknown is int) {
2741 2742 2743
                if (unknownFields == null) {
                  unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
                }
2744
                unknownFields.MergeVarintField(4, (ulong)(int)unknown);
2745 2746 2747 2748
              }
              break;
            }
            case 40: {
2749 2750 2751 2752
              object unknown;
              if(input.ReadEnum(ref result.type_, out unknown)) {
                result.hasType = true;
              } else if(unknown is int) {
2753 2754 2755
                if (unknownFields == null) {
                  unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
                }
2756
                unknownFields.MergeVarintField(5, (ulong)(int)unknown);
2757 2758 2759 2760
              }
              break;
            }
            case 50: {
2761
              result.hasTypeName = input.ReadString(ref result.typeName_);
2762 2763 2764
              break;
            }
            case 58: {
2765
              result.hasDefaultValue = input.ReadString(ref result.defaultValue_);
2766 2767 2768 2769
              break;
            }
            case 66: {
              global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.CreateBuilder();
2770
              if (result.hasOptions) {
2771 2772 2773 2774 2775 2776 2777 2778
                subBuilder.MergeFrom(Options);
              }
              input.ReadMessage(subBuilder, extensionRegistry);
              Options = subBuilder.BuildPartial();
              break;
            }
          }
        }
2779 2780 2781 2782 2783
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
2784 2785 2786 2787
      }
      
      
      public bool HasName {
2788
        get { return result.hasName; }
2789 2790 2791 2792 2793 2794 2795
      }
      public string Name {
        get { return result.Name; }
        set { SetName(value); }
      }
      public Builder SetName(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2796
        PrepareBuilder();
2797 2798 2799 2800 2801
        result.hasName = true;
        result.name_ = value;
        return this;
      }
      public Builder ClearName() {
2802
        PrepareBuilder();
2803 2804 2805 2806 2807 2808
        result.hasName = false;
        result.name_ = "";
        return this;
      }
      
      public bool HasNumber {
2809
        get { return result.hasNumber; }
2810 2811 2812 2813 2814 2815
      }
      public int Number {
        get { return result.Number; }
        set { SetNumber(value); }
      }
      public Builder SetNumber(int value) {
2816
        PrepareBuilder();
2817 2818 2819 2820 2821
        result.hasNumber = true;
        result.number_ = value;
        return this;
      }
      public Builder ClearNumber() {
2822
        PrepareBuilder();
2823 2824 2825 2826 2827 2828
        result.hasNumber = false;
        result.number_ = 0;
        return this;
      }
      
      public bool HasLabel {
2829
       get { return result.hasLabel; }
2830 2831 2832 2833 2834 2835
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label Label {
        get { return result.Label; }
        set { SetLabel(value); }
      }
      public Builder SetLabel(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label value) {
2836
        PrepareBuilder();
2837 2838 2839 2840 2841
        result.hasLabel = true;
        result.label_ = value;
        return this;
      }
      public Builder ClearLabel() {
2842
        PrepareBuilder();
2843 2844 2845 2846 2847 2848
        result.hasLabel = false;
        result.label_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label.LABEL_OPTIONAL;
        return this;
      }
      
      public bool HasType {
2849
       get { return result.hasType; }
2850 2851 2852 2853 2854 2855
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type Type {
        get { return result.Type; }
        set { SetType(value); }
      }
      public Builder SetType(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type value) {
2856
        PrepareBuilder();
2857 2858 2859 2860 2861
        result.hasType = true;
        result.type_ = value;
        return this;
      }
      public Builder ClearType() {
2862
        PrepareBuilder();
2863 2864 2865 2866 2867 2868
        result.hasType = false;
        result.type_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type.TYPE_DOUBLE;
        return this;
      }
      
      public bool HasTypeName {
2869
        get { return result.hasTypeName; }
2870 2871 2872 2873 2874 2875 2876
      }
      public string TypeName {
        get { return result.TypeName; }
        set { SetTypeName(value); }
      }
      public Builder SetTypeName(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2877
        PrepareBuilder();
2878 2879 2880 2881 2882
        result.hasTypeName = true;
        result.typeName_ = value;
        return this;
      }
      public Builder ClearTypeName() {
2883
        PrepareBuilder();
2884 2885 2886 2887 2888 2889
        result.hasTypeName = false;
        result.typeName_ = "";
        return this;
      }
      
      public bool HasExtendee {
2890
        get { return result.hasExtendee; }
2891 2892 2893 2894 2895 2896 2897
      }
      public string Extendee {
        get { return result.Extendee; }
        set { SetExtendee(value); }
      }
      public Builder SetExtendee(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2898
        PrepareBuilder();
2899 2900 2901 2902 2903
        result.hasExtendee = true;
        result.extendee_ = value;
        return this;
      }
      public Builder ClearExtendee() {
2904
        PrepareBuilder();
2905 2906 2907 2908 2909 2910
        result.hasExtendee = false;
        result.extendee_ = "";
        return this;
      }
      
      public bool HasDefaultValue {
2911
        get { return result.hasDefaultValue; }
2912 2913 2914 2915 2916 2917 2918
      }
      public string DefaultValue {
        get { return result.DefaultValue; }
        set { SetDefaultValue(value); }
      }
      public Builder SetDefaultValue(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2919
        PrepareBuilder();
2920 2921 2922 2923 2924
        result.hasDefaultValue = true;
        result.defaultValue_ = value;
        return this;
      }
      public Builder ClearDefaultValue() {
2925
        PrepareBuilder();
2926 2927 2928 2929 2930 2931
        result.hasDefaultValue = false;
        result.defaultValue_ = "";
        return this;
      }
      
      public bool HasOptions {
2932
       get { return result.hasOptions; }
2933 2934 2935 2936 2937 2938 2939
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions Options {
        get { return result.Options; }
        set { SetOptions(value); }
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2940
        PrepareBuilder();
2941 2942 2943 2944 2945 2946
        result.hasOptions = true;
        result.options_ = value;
        return this;
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
2947
        PrepareBuilder();
2948 2949 2950 2951 2952 2953
        result.hasOptions = true;
        result.options_ = builderForValue.Build();
        return this;
      }
      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
2954
        PrepareBuilder();
2955
        if (result.hasOptions &&
2956 2957 2958 2959 2960 2961 2962 2963 2964
            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.DefaultInstance) {
            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
        } else {
          result.options_ = value;
        }
        result.hasOptions = true;
        return this;
      }
      public Builder ClearOptions() {
2965
        PrepareBuilder();
2966
        result.hasOptions = false;
2967
        result.options_ = null;
2968 2969 2970 2971 2972 2973 2974 2975
        return this;
      }
    }
    static FieldDescriptorProto() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
2976 2977 2978
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
2979
  public sealed partial class EnumDescriptorProto : pb::GeneratedMessage<EnumDescriptorProto, EnumDescriptorProto.Builder> {
2980
    private EnumDescriptorProto() { }
2981
    private static readonly EnumDescriptorProto defaultInstance = new EnumDescriptorProto().MakeReadOnly();
2982 2983
    private static readonly string[] _enumDescriptorProtoFieldNames = new string[] { "name", "options", "value" };
    private static readonly uint[] _enumDescriptorProtoFieldTags = new uint[] { 10, 26, 18 };
2984 2985 2986 2987 2988
    public static EnumDescriptorProto DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override EnumDescriptorProto DefaultInstanceForType {
2989
      get { return DefaultInstance; }
2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027
    }
    
    protected override EnumDescriptorProto ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumDescriptorProto__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<EnumDescriptorProto, EnumDescriptorProto.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumDescriptorProto__FieldAccessorTable; }
    }
    
    public const int NameFieldNumber = 1;
    private bool hasName;
    private string name_ = "";
    public bool HasName {
      get { return hasName; }
    }
    public string Name {
      get { return name_; }
    }
    
    public const int ValueFieldNumber = 2;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto> value_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto> ValueList {
      get { return value_; }
    }
    public int ValueCount {
      get { return value_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto GetValue(int index) {
      return value_[index];
    }
    
    public const int OptionsFieldNumber = 3;
    private bool hasOptions;
3028
    private global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions options_;
3029 3030 3031 3032
    public bool HasOptions {
      get { return hasOptions; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions Options {
3033
      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.DefaultInstance; }
3034 3035 3036 3037 3038 3039
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto element in ValueList) {
          if (!element.IsInitialized) return false;
3040
        }
3041 3042
        if (HasOptions) {
          if (!Options.IsInitialized) return false;
3043
        }
3044 3045 3046 3047
        return true;
      }
    }
    
3048
    public override void WriteTo(pb::ICodedOutputStream output) {
3049
      int size = SerializedSize;
3050
      string[] field_names = _enumDescriptorProtoFieldNames;
3051
      if (hasName) {
3052
        output.WriteString(1, field_names[0], Name);
3053
      }
3054
      if (value_.Count > 0) {
3055
        output.WriteMessageArray(2, field_names[2], value_);
3056
      }
3057
      if (hasOptions) {
3058
        output.WriteMessage(3, field_names[1], Options);
3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069
      }
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
3070
        if (hasName) {
3071 3072 3073 3074 3075
          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto element in ValueList) {
          size += pb::CodedOutputStream.ComputeMessageSize(2, element);
        }
3076
        if (hasOptions) {
3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108
          size += pb::CodedOutputStream.ComputeMessageSize(3, Options);
        }
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static EnumDescriptorProto ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static EnumDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static EnumDescriptorProto ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static EnumDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static EnumDescriptorProto ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static EnumDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static EnumDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static EnumDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
3109
    public static EnumDescriptorProto ParseFrom(pb::ICodedInputStream input) {
3110 3111
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
3112
    public static EnumDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
3113 3114
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
3115 3116 3117 3118 3119
    private EnumDescriptorProto MakeReadOnly() {
      value_.MakeReadOnly();
      return this;
    }
    
3120 3121 3122 3123
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(EnumDescriptorProto prototype) {
3124
      return new Builder(prototype);
3125 3126
    }
    
3127 3128 3129
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
3130 3131 3132 3133
    public sealed partial class Builder : pb::GeneratedBuilder<EnumDescriptorProto, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
3134
      public Builder() {
3135 3136
        result = DefaultInstance;
        resultIsReadOnly = true;
3137 3138 3139
      }
      internal Builder(EnumDescriptorProto cloneFrom) {
        result = cloneFrom;
3140
        resultIsReadOnly = true;
3141 3142
      }
      
3143 3144
      private bool resultIsReadOnly;
      private EnumDescriptorProto result;
3145 3146
      
      private EnumDescriptorProto PrepareBuilder() {
3147
        if (resultIsReadOnly) {
3148 3149
          EnumDescriptorProto original = result;
          result = new EnumDescriptorProto();
3150
          resultIsReadOnly = false;
3151 3152 3153 3154
          MergeFrom(original);
        }
        return result;
      }
3155
      
3156 3157 3158
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
3159 3160
      
      protected override EnumDescriptorProto MessageBeingBuilt {
3161
        get { return PrepareBuilder(); }
3162 3163 3164
      }
      
      public override Builder Clear() {
3165 3166
        result = DefaultInstance;
        resultIsReadOnly = true;
3167 3168 3169 3170
        return this;
      }
      
      public override Builder Clone() {
3171
        if (resultIsReadOnly) {
3172 3173 3174 3175
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Descriptor; }
      }
      
      public override EnumDescriptorProto DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.DefaultInstance; }
      }
      
      public override EnumDescriptorProto BuildPartial() {
3187
        if (resultIsReadOnly) {
3188
          return result;
3189
        }
3190 3191
        resultIsReadOnly = true;
        return result.MakeReadOnly();
3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is EnumDescriptorProto) {
          return MergeFrom((EnumDescriptorProto) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(EnumDescriptorProto other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.DefaultInstance) return this;
3205
        PrepareBuilder();
3206 3207 3208 3209
        if (other.HasName) {
          Name = other.Name;
        }
        if (other.value_.Count != 0) {
3210
          result.value_.Add(other.value_);
3211 3212 3213 3214 3215 3216 3217 3218
        }
        if (other.HasOptions) {
          MergeOptions(other.Options);
        }
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
3219
      public override Builder MergeFrom(pb::ICodedInputStream input) {
3220 3221 3222
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
3223
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
3224
        PrepareBuilder();
3225
        pb::UnknownFieldSet.Builder unknownFields = null;
3226 3227 3228
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_enumDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _enumDescriptorProtoFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
3241 3242
          switch (tag) {
            case 0: {
3243
              throw pb::InvalidProtocolBufferException.InvalidTag();
3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
3255
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
3256 3257 3258
              break;
            }
            case 10: {
3259
              result.hasName = input.ReadString(ref result.name_);
3260 3261 3262
              break;
            }
            case 18: {
3263
              input.ReadMessageArray(tag, field_name, result.value_, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.DefaultInstance, extensionRegistry);
3264 3265 3266 3267
              break;
            }
            case 26: {
              global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.CreateBuilder();
3268
              if (result.hasOptions) {
3269 3270 3271 3272 3273 3274 3275 3276
                subBuilder.MergeFrom(Options);
              }
              input.ReadMessage(subBuilder, extensionRegistry);
              Options = subBuilder.BuildPartial();
              break;
            }
          }
        }
3277 3278 3279 3280 3281
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
3282 3283 3284 3285
      }
      
      
      public bool HasName {
3286
        get { return result.hasName; }
3287 3288 3289 3290 3291 3292 3293
      }
      public string Name {
        get { return result.Name; }
        set { SetName(value); }
      }
      public Builder SetName(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
3294
        PrepareBuilder();
3295 3296 3297 3298 3299
        result.hasName = true;
        result.name_ = value;
        return this;
      }
      public Builder ClearName() {
3300
        PrepareBuilder();
3301 3302 3303 3304 3305 3306
        result.hasName = false;
        result.name_ = "";
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto> ValueList {
3307
        get { return PrepareBuilder().value_; }
3308 3309 3310 3311 3312 3313 3314 3315 3316
      }
      public int ValueCount {
        get { return result.ValueCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto GetValue(int index) {
        return result.GetValue(index);
      }
      public Builder SetValue(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
3317
        PrepareBuilder();
3318 3319 3320 3321 3322
        result.value_[index] = value;
        return this;
      }
      public Builder SetValue(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
3323
        PrepareBuilder();
3324 3325 3326 3327 3328
        result.value_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddValue(global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
3329
        PrepareBuilder();
3330 3331 3332 3333 3334
        result.value_.Add(value);
        return this;
      }
      public Builder AddValue(global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
3335
        PrepareBuilder();
3336 3337 3338 3339
        result.value_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeValue(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto> values) {
3340
        PrepareBuilder();
3341
        result.value_.Add(values);
3342 3343 3344
        return this;
      }
      public Builder ClearValue() {
3345
        PrepareBuilder();
3346 3347 3348 3349 3350
        result.value_.Clear();
        return this;
      }
      
      public bool HasOptions {
3351
       get { return result.hasOptions; }
3352 3353 3354 3355 3356 3357 3358
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions Options {
        get { return result.Options; }
        set { SetOptions(value); }
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
3359
        PrepareBuilder();
3360 3361 3362 3363 3364 3365
        result.hasOptions = true;
        result.options_ = value;
        return this;
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
3366
        PrepareBuilder();
3367 3368 3369 3370 3371 3372
        result.hasOptions = true;
        result.options_ = builderForValue.Build();
        return this;
      }
      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
3373
        PrepareBuilder();
3374
        if (result.hasOptions &&
3375 3376 3377 3378 3379 3380 3381 3382 3383
            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.DefaultInstance) {
            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
        } else {
          result.options_ = value;
        }
        result.hasOptions = true;
        return this;
      }
      public Builder ClearOptions() {
3384
        PrepareBuilder();
3385
        result.hasOptions = false;
3386
        result.options_ = null;
3387 3388 3389 3390 3391 3392 3393 3394
        return this;
      }
    }
    static EnumDescriptorProto() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
3395 3396 3397
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
3398
  public sealed partial class EnumValueDescriptorProto : pb::GeneratedMessage<EnumValueDescriptorProto, EnumValueDescriptorProto.Builder> {
3399
    private EnumValueDescriptorProto() { }
3400
    private static readonly EnumValueDescriptorProto defaultInstance = new EnumValueDescriptorProto().MakeReadOnly();
3401 3402
    private static readonly string[] _enumValueDescriptorProtoFieldNames = new string[] { "name", "number", "options" };
    private static readonly uint[] _enumValueDescriptorProtoFieldTags = new uint[] { 10, 16, 26 };
3403 3404 3405 3406 3407
    public static EnumValueDescriptorProto DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override EnumValueDescriptorProto DefaultInstanceForType {
3408
      get { return DefaultInstance; }
3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434
    }
    
    protected override EnumValueDescriptorProto ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<EnumValueDescriptorProto, EnumValueDescriptorProto.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumValueDescriptorProto__FieldAccessorTable; }
    }
    
    public const int NameFieldNumber = 1;
    private bool hasName;
    private string name_ = "";
    public bool HasName {
      get { return hasName; }
    }
    public string Name {
      get { return name_; }
    }
    
    public const int NumberFieldNumber = 2;
    private bool hasNumber;
csharptest's avatar
csharptest committed
3435
    private int number_;
3436 3437 3438 3439 3440 3441 3442 3443 3444
    public bool HasNumber {
      get { return hasNumber; }
    }
    public int Number {
      get { return number_; }
    }
    
    public const int OptionsFieldNumber = 3;
    private bool hasOptions;
3445
    private global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions options_;
3446 3447 3448 3449
    public bool HasOptions {
      get { return hasOptions; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions Options {
3450
      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.DefaultInstance; }
3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461
    }
    
    public override bool IsInitialized {
      get {
        if (HasOptions) {
          if (!Options.IsInitialized) return false;
        }
        return true;
      }
    }
    
3462
    public override void WriteTo(pb::ICodedOutputStream output) {
3463
      int size = SerializedSize;
3464
      string[] field_names = _enumValueDescriptorProtoFieldNames;
3465
      if (hasName) {
3466
        output.WriteString(1, field_names[0], Name);
3467
      }
3468
      if (hasNumber) {
3469
        output.WriteInt32(2, field_names[1], Number);
3470
      }
3471
      if (hasOptions) {
3472
        output.WriteMessage(3, field_names[2], Options);
3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483
      }
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
3484
        if (hasName) {
3485 3486
          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
        }
3487
        if (hasNumber) {
3488 3489
          size += pb::CodedOutputStream.ComputeInt32Size(2, Number);
        }
3490
        if (hasOptions) {
3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522
          size += pb::CodedOutputStream.ComputeMessageSize(3, Options);
        }
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static EnumValueDescriptorProto ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static EnumValueDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static EnumValueDescriptorProto ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static EnumValueDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static EnumValueDescriptorProto ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static EnumValueDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static EnumValueDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static EnumValueDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
3523
    public static EnumValueDescriptorProto ParseFrom(pb::ICodedInputStream input) {
3524 3525
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
3526
    public static EnumValueDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
3527 3528
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
3529 3530 3531 3532
    private EnumValueDescriptorProto MakeReadOnly() {
      return this;
    }
    
3533 3534 3535 3536
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(EnumValueDescriptorProto prototype) {
3537
      return new Builder(prototype);
3538 3539
    }
    
3540 3541 3542
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
3543 3544 3545 3546
    public sealed partial class Builder : pb::GeneratedBuilder<EnumValueDescriptorProto, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
3547
      public Builder() {
3548 3549
        result = DefaultInstance;
        resultIsReadOnly = true;
3550 3551 3552
      }
      internal Builder(EnumValueDescriptorProto cloneFrom) {
        result = cloneFrom;
3553
        resultIsReadOnly = true;
3554
      }
3555
      
3556 3557
      private bool resultIsReadOnly;
      private EnumValueDescriptorProto result;
3558 3559
      
      private EnumValueDescriptorProto PrepareBuilder() {
3560
        if (resultIsReadOnly) {
3561 3562
          EnumValueDescriptorProto original = result;
          result = new EnumValueDescriptorProto();
3563
          resultIsReadOnly = false;
3564 3565 3566 3567 3568 3569 3570 3571
          MergeFrom(original);
        }
        return result;
      }
      
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
3572 3573
      
      protected override EnumValueDescriptorProto MessageBeingBuilt {
3574
        get { return PrepareBuilder(); }
3575 3576 3577
      }
      
      public override Builder Clear() {
3578 3579
        result = DefaultInstance;
        resultIsReadOnly = true;
3580 3581 3582 3583
        return this;
      }
      
      public override Builder Clone() {
3584
        if (resultIsReadOnly) {
3585 3586 3587 3588
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.Descriptor; }
      }
      
      public override EnumValueDescriptorProto DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.DefaultInstance; }
      }
      
      public override EnumValueDescriptorProto BuildPartial() {
3600
        if (resultIsReadOnly) {
3601
          return result;
3602
        }
3603 3604
        resultIsReadOnly = true;
        return result.MakeReadOnly();
3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is EnumValueDescriptorProto) {
          return MergeFrom((EnumValueDescriptorProto) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(EnumValueDescriptorProto other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.DefaultInstance) return this;
3618
        PrepareBuilder();
3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631
        if (other.HasName) {
          Name = other.Name;
        }
        if (other.HasNumber) {
          Number = other.Number;
        }
        if (other.HasOptions) {
          MergeOptions(other.Options);
        }
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
3632
      public override Builder MergeFrom(pb::ICodedInputStream input) {
3633 3634 3635
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
3636
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
3637
        PrepareBuilder();
3638
        pb::UnknownFieldSet.Builder unknownFields = null;
3639 3640 3641
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_enumValueDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _enumValueDescriptorProtoFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
3654 3655
          switch (tag) {
            case 0: {
3656
              throw pb::InvalidProtocolBufferException.InvalidTag();
3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
3668
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
3669 3670 3671
              break;
            }
            case 10: {
3672
              result.hasName = input.ReadString(ref result.name_);
3673 3674 3675
              break;
            }
            case 16: {
3676
              result.hasNumber = input.ReadInt32(ref result.number_);
3677 3678 3679 3680
              break;
            }
            case 26: {
              global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.CreateBuilder();
3681
              if (result.hasOptions) {
3682 3683 3684 3685 3686 3687 3688 3689
                subBuilder.MergeFrom(Options);
              }
              input.ReadMessage(subBuilder, extensionRegistry);
              Options = subBuilder.BuildPartial();
              break;
            }
          }
        }
3690 3691 3692 3693 3694
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
3695 3696 3697 3698
      }
      
      
      public bool HasName {
3699
        get { return result.hasName; }
3700 3701 3702 3703 3704 3705 3706
      }
      public string Name {
        get { return result.Name; }
        set { SetName(value); }
      }
      public Builder SetName(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
3707
        PrepareBuilder();
3708 3709 3710 3711 3712
        result.hasName = true;
        result.name_ = value;
        return this;
      }
      public Builder ClearName() {
3713
        PrepareBuilder();
3714 3715 3716 3717 3718 3719
        result.hasName = false;
        result.name_ = "";
        return this;
      }
      
      public bool HasNumber {
3720
        get { return result.hasNumber; }
3721 3722 3723 3724 3725 3726
      }
      public int Number {
        get { return result.Number; }
        set { SetNumber(value); }
      }
      public Builder SetNumber(int value) {
3727
        PrepareBuilder();
3728 3729 3730 3731 3732
        result.hasNumber = true;
        result.number_ = value;
        return this;
      }
      public Builder ClearNumber() {
3733
        PrepareBuilder();
3734 3735 3736 3737 3738 3739
        result.hasNumber = false;
        result.number_ = 0;
        return this;
      }
      
      public bool HasOptions {
3740
       get { return result.hasOptions; }
3741 3742 3743 3744 3745 3746 3747
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions Options {
        get { return result.Options; }
        set { SetOptions(value); }
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
3748
        PrepareBuilder();
3749 3750 3751 3752 3753 3754
        result.hasOptions = true;
        result.options_ = value;
        return this;
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
3755
        PrepareBuilder();
3756 3757 3758 3759 3760 3761
        result.hasOptions = true;
        result.options_ = builderForValue.Build();
        return this;
      }
      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
3762
        PrepareBuilder();
3763
        if (result.hasOptions &&
3764 3765 3766 3767 3768 3769 3770 3771 3772
            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.DefaultInstance) {
            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
        } else {
          result.options_ = value;
        }
        result.hasOptions = true;
        return this;
      }
      public Builder ClearOptions() {
3773
        PrepareBuilder();
3774
        result.hasOptions = false;
3775
        result.options_ = null;
3776 3777 3778 3779 3780 3781 3782 3783
        return this;
      }
    }
    static EnumValueDescriptorProto() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
3784 3785 3786
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
3787
  public sealed partial class ServiceDescriptorProto : pb::GeneratedMessage<ServiceDescriptorProto, ServiceDescriptorProto.Builder> {
3788
    private ServiceDescriptorProto() { }
3789
    private static readonly ServiceDescriptorProto defaultInstance = new ServiceDescriptorProto().MakeReadOnly();
3790 3791
    private static readonly string[] _serviceDescriptorProtoFieldNames = new string[] { "method", "name", "options" };
    private static readonly uint[] _serviceDescriptorProtoFieldTags = new uint[] { 18, 10, 26 };
3792 3793 3794 3795 3796
    public static ServiceDescriptorProto DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override ServiceDescriptorProto DefaultInstanceForType {
3797
      get { return DefaultInstance; }
3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835
    }
    
    protected override ServiceDescriptorProto ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_ServiceDescriptorProto__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<ServiceDescriptorProto, ServiceDescriptorProto.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_ServiceDescriptorProto__FieldAccessorTable; }
    }
    
    public const int NameFieldNumber = 1;
    private bool hasName;
    private string name_ = "";
    public bool HasName {
      get { return hasName; }
    }
    public string Name {
      get { return name_; }
    }
    
    public const int MethodFieldNumber = 2;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto> method_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto> MethodList {
      get { return method_; }
    }
    public int MethodCount {
      get { return method_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto GetMethod(int index) {
      return method_[index];
    }
    
    public const int OptionsFieldNumber = 3;
    private bool hasOptions;
3836
    private global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions options_;
3837 3838 3839 3840
    public bool HasOptions {
      get { return hasOptions; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions Options {
3841
      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.DefaultInstance; }
3842 3843 3844 3845 3846 3847
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto element in MethodList) {
          if (!element.IsInitialized) return false;
3848
        }
3849 3850
        if (HasOptions) {
          if (!Options.IsInitialized) return false;
3851
        }
3852 3853
        return true;
      }
3854
    }
3855
    
3856
    public override void WriteTo(pb::ICodedOutputStream output) {
3857
      int size = SerializedSize;
3858
      string[] field_names = _serviceDescriptorProtoFieldNames;
3859
      if (hasName) {
3860
        output.WriteString(1, field_names[1], Name);
3861
      }
3862
      if (method_.Count > 0) {
3863
        output.WriteMessageArray(2, field_names[0], method_);
3864
      }
3865
      if (hasOptions) {
3866
        output.WriteMessage(3, field_names[2], Options);
3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877
      }
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
3878
        if (hasName) {
3879 3880 3881 3882 3883
          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto element in MethodList) {
          size += pb::CodedOutputStream.ComputeMessageSize(2, element);
        }
3884
        if (hasOptions) {
3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916
          size += pb::CodedOutputStream.ComputeMessageSize(3, Options);
        }
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static ServiceDescriptorProto ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static ServiceDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static ServiceDescriptorProto ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static ServiceDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static ServiceDescriptorProto ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static ServiceDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static ServiceDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static ServiceDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
3917
    public static ServiceDescriptorProto ParseFrom(pb::ICodedInputStream input) {
3918 3919
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
3920
    public static ServiceDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
3921 3922
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
3923 3924 3925 3926 3927
    private ServiceDescriptorProto MakeReadOnly() {
      method_.MakeReadOnly();
      return this;
    }
    
3928 3929 3930 3931
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(ServiceDescriptorProto prototype) {
3932
      return new Builder(prototype);
3933 3934
    }
    
3935 3936 3937
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
3938 3939 3940 3941
    public sealed partial class Builder : pb::GeneratedBuilder<ServiceDescriptorProto, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
3942
      public Builder() {
3943 3944
        result = DefaultInstance;
        resultIsReadOnly = true;
3945 3946 3947
      }
      internal Builder(ServiceDescriptorProto cloneFrom) {
        result = cloneFrom;
3948
        resultIsReadOnly = true;
3949 3950
      }
      
3951 3952
      private bool resultIsReadOnly;
      private ServiceDescriptorProto result;
3953 3954
      
      private ServiceDescriptorProto PrepareBuilder() {
3955
        if (resultIsReadOnly) {
3956 3957
          ServiceDescriptorProto original = result;
          result = new ServiceDescriptorProto();
3958
          resultIsReadOnly = false;
3959 3960 3961 3962
          MergeFrom(original);
        }
        return result;
      }
3963
      
3964 3965 3966
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
3967 3968
      
      protected override ServiceDescriptorProto MessageBeingBuilt {
3969
        get { return PrepareBuilder(); }
3970 3971 3972
      }
      
      public override Builder Clear() {
3973 3974
        result = DefaultInstance;
        resultIsReadOnly = true;
3975 3976 3977 3978
        return this;
      }
      
      public override Builder Clone() {
3979
        if (resultIsReadOnly) {
3980 3981 3982 3983
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.Descriptor; }
      }
      
      public override ServiceDescriptorProto DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.DefaultInstance; }
      }
      
      public override ServiceDescriptorProto BuildPartial() {
3995
        if (resultIsReadOnly) {
3996
          return result;
3997
        }
3998 3999
        resultIsReadOnly = true;
        return result.MakeReadOnly();
4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is ServiceDescriptorProto) {
          return MergeFrom((ServiceDescriptorProto) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(ServiceDescriptorProto other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.DefaultInstance) return this;
4013
        PrepareBuilder();
4014 4015 4016 4017
        if (other.HasName) {
          Name = other.Name;
        }
        if (other.method_.Count != 0) {
4018
          result.method_.Add(other.method_);
4019 4020 4021 4022 4023 4024 4025 4026
        }
        if (other.HasOptions) {
          MergeOptions(other.Options);
        }
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
4027
      public override Builder MergeFrom(pb::ICodedInputStream input) {
4028 4029 4030
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
4031
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
4032
        PrepareBuilder();
4033
        pb::UnknownFieldSet.Builder unknownFields = null;
4034 4035 4036
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_serviceDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _serviceDescriptorProtoFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
4049 4050
          switch (tag) {
            case 0: {
4051
              throw pb::InvalidProtocolBufferException.InvalidTag();
4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
4063
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
4064 4065 4066
              break;
            }
            case 10: {
4067
              result.hasName = input.ReadString(ref result.name_);
4068 4069 4070
              break;
            }
            case 18: {
4071
              input.ReadMessageArray(tag, field_name, result.method_, global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.DefaultInstance, extensionRegistry);
4072 4073 4074 4075
              break;
            }
            case 26: {
              global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.CreateBuilder();
4076
              if (result.hasOptions) {
4077 4078 4079 4080 4081 4082 4083 4084
                subBuilder.MergeFrom(Options);
              }
              input.ReadMessage(subBuilder, extensionRegistry);
              Options = subBuilder.BuildPartial();
              break;
            }
          }
        }
4085 4086 4087 4088 4089
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
4090 4091 4092 4093
      }
      
      
      public bool HasName {
4094
        get { return result.hasName; }
4095 4096 4097 4098 4099 4100 4101
      }
      public string Name {
        get { return result.Name; }
        set { SetName(value); }
      }
      public Builder SetName(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
4102
        PrepareBuilder();
4103 4104 4105 4106 4107
        result.hasName = true;
        result.name_ = value;
        return this;
      }
      public Builder ClearName() {
4108
        PrepareBuilder();
4109 4110 4111 4112 4113 4114
        result.hasName = false;
        result.name_ = "";
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto> MethodList {
4115
        get { return PrepareBuilder().method_; }
4116 4117 4118 4119 4120 4121 4122 4123 4124
      }
      public int MethodCount {
        get { return result.MethodCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto GetMethod(int index) {
        return result.GetMethod(index);
      }
      public Builder SetMethod(int index, global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
4125
        PrepareBuilder();
4126 4127 4128 4129 4130
        result.method_[index] = value;
        return this;
      }
      public Builder SetMethod(int index, global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
4131
        PrepareBuilder();
4132 4133 4134 4135 4136
        result.method_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddMethod(global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
4137
        PrepareBuilder();
4138 4139 4140 4141 4142
        result.method_.Add(value);
        return this;
      }
      public Builder AddMethod(global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
4143
        PrepareBuilder();
4144 4145 4146 4147
        result.method_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeMethod(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto> values) {
4148
        PrepareBuilder();
4149
        result.method_.Add(values);
4150 4151 4152
        return this;
      }
      public Builder ClearMethod() {
4153
        PrepareBuilder();
4154 4155 4156 4157 4158
        result.method_.Clear();
        return this;
      }
      
      public bool HasOptions {
4159
       get { return result.hasOptions; }
4160 4161 4162 4163 4164 4165 4166
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions Options {
        get { return result.Options; }
        set { SetOptions(value); }
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
4167
        PrepareBuilder();
4168 4169 4170 4171 4172 4173
        result.hasOptions = true;
        result.options_ = value;
        return this;
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
4174
        PrepareBuilder();
4175 4176 4177 4178 4179 4180
        result.hasOptions = true;
        result.options_ = builderForValue.Build();
        return this;
      }
      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
4181
        PrepareBuilder();
4182
        if (result.hasOptions &&
4183 4184 4185 4186 4187 4188 4189 4190 4191
            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.DefaultInstance) {
            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
        } else {
          result.options_ = value;
        }
        result.hasOptions = true;
        return this;
      }
      public Builder ClearOptions() {
4192
        PrepareBuilder();
4193
        result.hasOptions = false;
4194
        result.options_ = null;
4195 4196 4197 4198 4199 4200 4201 4202
        return this;
      }
    }
    static ServiceDescriptorProto() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
4203 4204 4205
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
4206
  public sealed partial class MethodDescriptorProto : pb::GeneratedMessage<MethodDescriptorProto, MethodDescriptorProto.Builder> {
4207
    private MethodDescriptorProto() { }
4208
    private static readonly MethodDescriptorProto defaultInstance = new MethodDescriptorProto().MakeReadOnly();
4209 4210
    private static readonly string[] _methodDescriptorProtoFieldNames = new string[] { "input_type", "name", "options", "output_type" };
    private static readonly uint[] _methodDescriptorProtoFieldTags = new uint[] { 18, 10, 34, 26 };
4211 4212
    public static MethodDescriptorProto DefaultInstance {
      get { return defaultInstance; }
4213
    }
4214 4215
    
    public override MethodDescriptorProto DefaultInstanceForType {
4216
      get { return DefaultInstance; }
4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262
    }
    
    protected override MethodDescriptorProto ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MethodDescriptorProto__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<MethodDescriptorProto, MethodDescriptorProto.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MethodDescriptorProto__FieldAccessorTable; }
    }
    
    public const int NameFieldNumber = 1;
    private bool hasName;
    private string name_ = "";
    public bool HasName {
      get { return hasName; }
    }
    public string Name {
      get { return name_; }
    }
    
    public const int InputTypeFieldNumber = 2;
    private bool hasInputType;
    private string inputType_ = "";
    public bool HasInputType {
      get { return hasInputType; }
    }
    public string InputType {
      get { return inputType_; }
    }
    
    public const int OutputTypeFieldNumber = 3;
    private bool hasOutputType;
    private string outputType_ = "";
    public bool HasOutputType {
      get { return hasOutputType; }
    }
    public string OutputType {
      get { return outputType_; }
    }
    
    public const int OptionsFieldNumber = 4;
    private bool hasOptions;
4263
    private global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions options_;
4264 4265 4266 4267
    public bool HasOptions {
      get { return hasOptions; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions Options {
4268
      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.DefaultInstance; }
4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279
    }
    
    public override bool IsInitialized {
      get {
        if (HasOptions) {
          if (!Options.IsInitialized) return false;
        }
        return true;
      }
    }
    
4280
    public override void WriteTo(pb::ICodedOutputStream output) {
4281
      int size = SerializedSize;
4282
      string[] field_names = _methodDescriptorProtoFieldNames;
4283
      if (hasName) {
4284
        output.WriteString(1, field_names[1], Name);
4285
      }
4286
      if (hasInputType) {
4287
        output.WriteString(2, field_names[0], InputType);
4288
      }
4289
      if (hasOutputType) {
4290
        output.WriteString(3, field_names[3], OutputType);
4291
      }
4292
      if (hasOptions) {
4293
        output.WriteMessage(4, field_names[2], Options);
4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304
      }
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
4305
        if (hasName) {
4306 4307
          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
        }
4308
        if (hasInputType) {
4309 4310
          size += pb::CodedOutputStream.ComputeStringSize(2, InputType);
        }
4311
        if (hasOutputType) {
4312 4313
          size += pb::CodedOutputStream.ComputeStringSize(3, OutputType);
        }
4314
        if (hasOptions) {
4315 4316 4317 4318 4319 4320 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346
          size += pb::CodedOutputStream.ComputeMessageSize(4, Options);
        }
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static MethodDescriptorProto ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static MethodDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static MethodDescriptorProto ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static MethodDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static MethodDescriptorProto ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static MethodDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static MethodDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static MethodDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
4347
    public static MethodDescriptorProto ParseFrom(pb::ICodedInputStream input) {
4348 4349
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
4350
    public static MethodDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
4351 4352
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
4353 4354 4355 4356
    private MethodDescriptorProto MakeReadOnly() {
      return this;
    }
    
4357 4358 4359 4360
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(MethodDescriptorProto prototype) {
4361
      return new Builder(prototype);
4362 4363
    }
    
4364 4365 4366
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
4367 4368 4369 4370
    public sealed partial class Builder : pb::GeneratedBuilder<MethodDescriptorProto, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
4371
      public Builder() {
4372 4373
        result = DefaultInstance;
        resultIsReadOnly = true;
4374 4375 4376
      }
      internal Builder(MethodDescriptorProto cloneFrom) {
        result = cloneFrom;
4377
        resultIsReadOnly = true;
4378 4379
      }
      
4380 4381
      private bool resultIsReadOnly;
      private MethodDescriptorProto result;
4382 4383
      
      private MethodDescriptorProto PrepareBuilder() {
4384
        if (resultIsReadOnly) {
4385 4386
          MethodDescriptorProto original = result;
          result = new MethodDescriptorProto();
4387
          resultIsReadOnly = false;
4388 4389 4390 4391
          MergeFrom(original);
        }
        return result;
      }
4392
      
4393 4394 4395
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
4396 4397
      
      protected override MethodDescriptorProto MessageBeingBuilt {
4398
        get { return PrepareBuilder(); }
4399 4400 4401
      }
      
      public override Builder Clear() {
4402 4403
        result = DefaultInstance;
        resultIsReadOnly = true;
4404 4405 4406 4407
        return this;
      }
      
      public override Builder Clone() {
4408
        if (resultIsReadOnly) {
4409 4410 4411 4412
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
4413 4414 4415 4416 4417 4418 4419 4420 4421 4422 4423
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.Descriptor; }
      }
      
      public override MethodDescriptorProto DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.DefaultInstance; }
      }
      
      public override MethodDescriptorProto BuildPartial() {
4424
        if (resultIsReadOnly) {
4425
          return result;
4426
        }
4427 4428
        resultIsReadOnly = true;
        return result.MakeReadOnly();
4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is MethodDescriptorProto) {
          return MergeFrom((MethodDescriptorProto) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(MethodDescriptorProto other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.DefaultInstance) return this;
4442
        PrepareBuilder();
4443 4444 4445 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458
        if (other.HasName) {
          Name = other.Name;
        }
        if (other.HasInputType) {
          InputType = other.InputType;
        }
        if (other.HasOutputType) {
          OutputType = other.OutputType;
        }
        if (other.HasOptions) {
          MergeOptions(other.Options);
        }
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
4459
      public override Builder MergeFrom(pb::ICodedInputStream input) {
4460 4461 4462
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
4463
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
4464
        PrepareBuilder();
4465
        pb::UnknownFieldSet.Builder unknownFields = null;
4466 4467 4468
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4480
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_methodDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _methodDescriptorProtoFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
4481 4482
          switch (tag) {
            case 0: {
4483
              throw pb::InvalidProtocolBufferException.InvalidTag();
4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
4495
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
4496 4497 4498
              break;
            }
            case 10: {
4499
              result.hasName = input.ReadString(ref result.name_);
4500 4501 4502
              break;
            }
            case 18: {
4503
              result.hasInputType = input.ReadString(ref result.inputType_);
4504 4505 4506
              break;
            }
            case 26: {
4507
              result.hasOutputType = input.ReadString(ref result.outputType_);
4508 4509 4510 4511
              break;
            }
            case 34: {
              global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.CreateBuilder();
4512
              if (result.hasOptions) {
4513 4514 4515 4516 4517 4518 4519 4520
                subBuilder.MergeFrom(Options);
              }
              input.ReadMessage(subBuilder, extensionRegistry);
              Options = subBuilder.BuildPartial();
              break;
            }
          }
        }
4521 4522 4523 4524 4525
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
4526 4527 4528 4529
      }
      
      
      public bool HasName {
4530
        get { return result.hasName; }
4531 4532 4533 4534 4535 4536 4537
      }
      public string Name {
        get { return result.Name; }
        set { SetName(value); }
      }
      public Builder SetName(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
4538
        PrepareBuilder();
4539 4540 4541 4542 4543
        result.hasName = true;
        result.name_ = value;
        return this;
      }
      public Builder ClearName() {
4544
        PrepareBuilder();
4545 4546 4547 4548 4549 4550
        result.hasName = false;
        result.name_ = "";
        return this;
      }
      
      public bool HasInputType {
4551
        get { return result.hasInputType; }
4552 4553 4554 4555 4556 4557 4558
      }
      public string InputType {
        get { return result.InputType; }
        set { SetInputType(value); }
      }
      public Builder SetInputType(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
4559
        PrepareBuilder();
4560 4561 4562 4563 4564
        result.hasInputType = true;
        result.inputType_ = value;
        return this;
      }
      public Builder ClearInputType() {
4565
        PrepareBuilder();
4566 4567 4568 4569 4570 4571
        result.hasInputType = false;
        result.inputType_ = "";
        return this;
      }
      
      public bool HasOutputType {
4572
        get { return result.hasOutputType; }
4573 4574 4575 4576 4577 4578 4579
      }
      public string OutputType {
        get { return result.OutputType; }
        set { SetOutputType(value); }
      }
      public Builder SetOutputType(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
4580
        PrepareBuilder();
4581 4582 4583 4584 4585
        result.hasOutputType = true;
        result.outputType_ = value;
        return this;
      }
      public Builder ClearOutputType() {
4586
        PrepareBuilder();
4587 4588 4589 4590 4591 4592
        result.hasOutputType = false;
        result.outputType_ = "";
        return this;
      }
      
      public bool HasOptions {
4593
       get { return result.hasOptions; }
4594 4595 4596 4597 4598 4599 4600
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions Options {
        get { return result.Options; }
        set { SetOptions(value); }
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
4601
        PrepareBuilder();
4602 4603 4604 4605 4606 4607
        result.hasOptions = true;
        result.options_ = value;
        return this;
      }
      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
4608
        PrepareBuilder();
4609 4610 4611 4612 4613 4614
        result.hasOptions = true;
        result.options_ = builderForValue.Build();
        return this;
      }
      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
4615
        PrepareBuilder();
4616
        if (result.hasOptions &&
4617 4618 4619 4620 4621 4622 4623 4624 4625
            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.DefaultInstance) {
            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
        } else {
          result.options_ = value;
        }
        result.hasOptions = true;
        return this;
      }
      public Builder ClearOptions() {
4626
        PrepareBuilder();
4627
        result.hasOptions = false;
4628
        result.options_ = null;
4629 4630 4631 4632 4633 4634 4635 4636
        return this;
      }
    }
    static MethodDescriptorProto() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
4637 4638 4639
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
4640
  public sealed partial class FileOptions : pb::ExtendableMessage<FileOptions, FileOptions.Builder> {
4641
    private FileOptions() { }
4642
    private static readonly FileOptions defaultInstance = new FileOptions().MakeReadOnly();
4643 4644
    private static readonly string[] _fileOptionsFieldNames = new string[] { "cc_generic_services", "java_generic_services", "java_multiple_files", "java_outer_classname", "java_package", "optimize_for", "py_generic_services", "uninterpreted_option" };
    private static readonly uint[] _fileOptionsFieldTags = new uint[] { 128, 136, 80, 66, 10, 72, 144, 7994 };
4645 4646 4647 4648 4649
    public static FileOptions DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override FileOptions DefaultInstanceForType {
4650
      get { return DefaultInstance; }
4651 4652 4653 4654 4655 4656 4657 4658 4659 4660 4661 4662 4663 4664 4665
    }
    
    protected override FileOptions ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileOptions__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<FileOptions, FileOptions.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileOptions__FieldAccessorTable; }
    }
    
    #region Nested types
4666 4667 4668
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
4669
    public static class Types {
4670 4671
      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
4672 4673 4674 4675 4676 4677 4678 4679 4680 4681 4682 4683 4684 4685 4686 4687 4688 4689 4690 4691 4692 4693 4694 4695 4696 4697 4698 4699 4700 4701 4702
      public enum OptimizeMode {
        SPEED = 1,
        CODE_SIZE = 2,
        LITE_RUNTIME = 3,
      }
      
    }
    #endregion
    
    public const int JavaPackageFieldNumber = 1;
    private bool hasJavaPackage;
    private string javaPackage_ = "";
    public bool HasJavaPackage {
      get { return hasJavaPackage; }
    }
    public string JavaPackage {
      get { return javaPackage_; }
    }
    
    public const int JavaOuterClassnameFieldNumber = 8;
    private bool hasJavaOuterClassname;
    private string javaOuterClassname_ = "";
    public bool HasJavaOuterClassname {
      get { return hasJavaOuterClassname; }
    }
    public string JavaOuterClassname {
      get { return javaOuterClassname_; }
    }
    
    public const int JavaMultipleFilesFieldNumber = 10;
    private bool hasJavaMultipleFiles;
csharptest's avatar
csharptest committed
4703
    private bool javaMultipleFiles_;
4704 4705 4706 4707 4708 4709 4710 4711 4712 4713 4714 4715 4716 4717 4718 4719 4720 4721 4722 4723 4724 4725 4726 4727 4728 4729 4730 4731 4732 4733 4734 4735 4736 4737 4738 4739 4740 4741 4742 4743 4744 4745 4746 4747 4748 4749 4750 4751 4752 4753 4754 4755 4756 4757 4758 4759 4760 4761 4762 4763 4764 4765 4766 4767 4768 4769 4770 4771 4772
    public bool HasJavaMultipleFiles {
      get { return hasJavaMultipleFiles; }
    }
    public bool JavaMultipleFiles {
      get { return javaMultipleFiles_; }
    }
    
    public const int OptimizeForFieldNumber = 9;
    private bool hasOptimizeFor;
    private global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode optimizeFor_ = global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode.SPEED;
    public bool HasOptimizeFor {
      get { return hasOptimizeFor; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode OptimizeFor {
      get { return optimizeFor_; }
    }
    
    public const int CcGenericServicesFieldNumber = 16;
    private bool hasCcGenericServices;
    private bool ccGenericServices_ = true;
    public bool HasCcGenericServices {
      get { return hasCcGenericServices; }
    }
    public bool CcGenericServices {
      get { return ccGenericServices_; }
    }
    
    public const int JavaGenericServicesFieldNumber = 17;
    private bool hasJavaGenericServices;
    private bool javaGenericServices_ = true;
    public bool HasJavaGenericServices {
      get { return hasJavaGenericServices; }
    }
    public bool JavaGenericServices {
      get { return javaGenericServices_; }
    }
    
    public const int PyGenericServicesFieldNumber = 18;
    private bool hasPyGenericServices;
    private bool pyGenericServices_ = true;
    public bool HasPyGenericServices {
      get { return hasPyGenericServices; }
    }
    public bool PyGenericServices {
      get { return pyGenericServices_; }
    }
    
    public const int UninterpretedOptionFieldNumber = 999;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
      get { return uninterpretedOption_; }
    }
    public int UninterpretedOptionCount {
      get { return uninterpretedOption_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
      return uninterpretedOption_[index];
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          if (!element.IsInitialized) return false;
        }
        if (!ExtensionsAreInitialized) return false;
        return true;
      }
    }
    
4773
    public override void WriteTo(pb::ICodedOutputStream output) {
4774
      int size = SerializedSize;
4775
      string[] field_names = _fileOptionsFieldNames;
4776
      pb::ExtendableMessage<FileOptions, FileOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
4777
      if (hasJavaPackage) {
4778
        output.WriteString(1, field_names[4], JavaPackage);
4779
      }
4780
      if (hasJavaOuterClassname) {
4781
        output.WriteString(8, field_names[3], JavaOuterClassname);
4782
      }
4783
      if (hasOptimizeFor) {
csharptest's avatar
csharptest committed
4784
        output.WriteEnum(9, field_names[5], (int) OptimizeFor, OptimizeFor);
4785
      }
4786
      if (hasJavaMultipleFiles) {
4787
        output.WriteBool(10, field_names[2], JavaMultipleFiles);
4788
      }
4789
      if (hasCcGenericServices) {
4790
        output.WriteBool(16, field_names[0], CcGenericServices);
4791
      }
4792
      if (hasJavaGenericServices) {
4793
        output.WriteBool(17, field_names[1], JavaGenericServices);
4794
      }
4795
      if (hasPyGenericServices) {
4796
        output.WriteBool(18, field_names[6], PyGenericServices);
4797
      }
4798
      if (uninterpretedOption_.Count > 0) {
4799
        output.WriteMessageArray(999, field_names[7], uninterpretedOption_);
4800 4801 4802 4803 4804 4805 4806 4807 4808 4809 4810 4811
      }
      extensionWriter.WriteUntil(536870912, output);
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
4812
        if (hasJavaPackage) {
4813 4814
          size += pb::CodedOutputStream.ComputeStringSize(1, JavaPackage);
        }
4815
        if (hasJavaOuterClassname) {
4816 4817
          size += pb::CodedOutputStream.ComputeStringSize(8, JavaOuterClassname);
        }
4818
        if (hasJavaMultipleFiles) {
4819 4820
          size += pb::CodedOutputStream.ComputeBoolSize(10, JavaMultipleFiles);
        }
4821
        if (hasOptimizeFor) {
4822 4823
          size += pb::CodedOutputStream.ComputeEnumSize(9, (int) OptimizeFor);
        }
4824
        if (hasCcGenericServices) {
4825 4826
          size += pb::CodedOutputStream.ComputeBoolSize(16, CcGenericServices);
        }
4827
        if (hasJavaGenericServices) {
4828 4829
          size += pb::CodedOutputStream.ComputeBoolSize(17, JavaGenericServices);
        }
4830
        if (hasPyGenericServices) {
4831 4832 4833 4834 4835 4836 4837 4838 4839 4840 4841 4842 4843 4844 4845 4846 4847 4848 4849 4850 4851 4852 4853 4854 4855 4856 4857 4858 4859 4860 4861 4862 4863 4864 4865 4866
          size += pb::CodedOutputStream.ComputeBoolSize(18, PyGenericServices);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
        }
        size += ExtensionsSerializedSize;
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static FileOptions ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static FileOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static FileOptions ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static FileOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static FileOptions ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static FileOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static FileOptions ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static FileOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
4867
    public static FileOptions ParseFrom(pb::ICodedInputStream input) {
4868 4869
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
4870
    public static FileOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
4871 4872
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
4873 4874 4875 4876 4877
    private FileOptions MakeReadOnly() {
      uninterpretedOption_.MakeReadOnly();
      return this;
    }
    
4878 4879 4880 4881
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(FileOptions prototype) {
4882
      return new Builder(prototype);
4883 4884
    }
    
4885 4886 4887
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
4888 4889 4890 4891
    public sealed partial class Builder : pb::ExtendableBuilder<FileOptions, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
4892
      public Builder() {
4893 4894
        result = DefaultInstance;
        resultIsReadOnly = true;
4895 4896 4897
      }
      internal Builder(FileOptions cloneFrom) {
        result = cloneFrom;
4898
        resultIsReadOnly = true;
4899 4900
      }
      
4901 4902
      private bool resultIsReadOnly;
      private FileOptions result;
4903
      
4904
      private FileOptions PrepareBuilder() {
4905
        if (resultIsReadOnly) {
4906 4907
          FileOptions original = result;
          result = new FileOptions();
4908
          resultIsReadOnly = false;
4909 4910 4911 4912 4913 4914 4915 4916
          MergeFrom(original);
        }
        return result;
      }
      
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
4917 4918
      
      protected override FileOptions MessageBeingBuilt {
4919
        get { return PrepareBuilder(); }
4920 4921 4922
      }
      
      public override Builder Clear() {
4923 4924
        result = DefaultInstance;
        resultIsReadOnly = true;
4925 4926 4927 4928
        return this;
      }
      
      public override Builder Clone() {
4929
        if (resultIsReadOnly) {
4930 4931 4932 4933
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
4934 4935 4936 4937 4938 4939 4940 4941 4942 4943 4944
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Descriptor; }
      }
      
      public override FileOptions DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.DefaultInstance; }
      }
      
      public override FileOptions BuildPartial() {
4945
        if (resultIsReadOnly) {
4946
          return result;
4947
        }
4948 4949
        resultIsReadOnly = true;
        return result.MakeReadOnly();
4950 4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is FileOptions) {
          return MergeFrom((FileOptions) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(FileOptions other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.DefaultInstance) return this;
4963
        PrepareBuilder();
4964 4965 4966 4967 4968 4969 4970 4971 4972 4973 4974 4975 4976 4977 4978 4979 4980 4981 4982 4983 4984 4985
        if (other.HasJavaPackage) {
          JavaPackage = other.JavaPackage;
        }
        if (other.HasJavaOuterClassname) {
          JavaOuterClassname = other.JavaOuterClassname;
        }
        if (other.HasJavaMultipleFiles) {
          JavaMultipleFiles = other.JavaMultipleFiles;
        }
        if (other.HasOptimizeFor) {
          OptimizeFor = other.OptimizeFor;
        }
        if (other.HasCcGenericServices) {
          CcGenericServices = other.CcGenericServices;
        }
        if (other.HasJavaGenericServices) {
          JavaGenericServices = other.JavaGenericServices;
        }
        if (other.HasPyGenericServices) {
          PyGenericServices = other.PyGenericServices;
        }
        if (other.uninterpretedOption_.Count != 0) {
4986
          result.uninterpretedOption_.Add(other.uninterpretedOption_);
4987 4988 4989 4990 4991 4992
        }
          this.MergeExtensionFields(other);
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
4993
      public override Builder MergeFrom(pb::ICodedInputStream input) {
4994 4995 4996
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
4997
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
4998
        PrepareBuilder();
4999
        pb::UnknownFieldSet.Builder unknownFields = null;
5000 5001 5002
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
5003 5004 5005 5006 5007 5008 5009 5010 5011 5012 5013 5014
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_fileOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _fileOptionsFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
5015 5016
          switch (tag) {
            case 0: {
5017
              throw pb::InvalidProtocolBufferException.InvalidTag();
5018 5019 5020 5021 5022 5023 5024 5025 5026 5027 5028
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
5029
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
5030 5031 5032
              break;
            }
            case 10: {
5033
              result.hasJavaPackage = input.ReadString(ref result.javaPackage_);
5034 5035 5036
              break;
            }
            case 66: {
5037
              result.hasJavaOuterClassname = input.ReadString(ref result.javaOuterClassname_);
5038 5039 5040
              break;
            }
            case 72: {
5041 5042 5043 5044
              object unknown;
              if(input.ReadEnum(ref result.optimizeFor_, out unknown)) {
                result.hasOptimizeFor = true;
              } else if(unknown is int) {
5045 5046 5047
                if (unknownFields == null) {
                  unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
                }
5048
                unknownFields.MergeVarintField(9, (ulong)(int)unknown);
5049 5050 5051 5052
              }
              break;
            }
            case 80: {
5053
              result.hasJavaMultipleFiles = input.ReadBool(ref result.javaMultipleFiles_);
5054 5055 5056
              break;
            }
            case 128: {
5057
              result.hasCcGenericServices = input.ReadBool(ref result.ccGenericServices_);
5058 5059 5060
              break;
            }
            case 136: {
5061
              result.hasJavaGenericServices = input.ReadBool(ref result.javaGenericServices_);
5062 5063 5064
              break;
            }
            case 144: {
5065
              result.hasPyGenericServices = input.ReadBool(ref result.pyGenericServices_);
5066 5067 5068
              break;
            }
            case 7994: {
5069
              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
5070 5071 5072 5073
              break;
            }
          }
        }
5074 5075 5076 5077 5078
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
5079 5080 5081 5082
      }
      
      
      public bool HasJavaPackage {
5083
        get { return result.hasJavaPackage; }
5084 5085 5086 5087 5088 5089 5090
      }
      public string JavaPackage {
        get { return result.JavaPackage; }
        set { SetJavaPackage(value); }
      }
      public Builder SetJavaPackage(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
5091
        PrepareBuilder();
5092 5093 5094 5095 5096
        result.hasJavaPackage = true;
        result.javaPackage_ = value;
        return this;
      }
      public Builder ClearJavaPackage() {
5097
        PrepareBuilder();
5098 5099 5100 5101 5102 5103
        result.hasJavaPackage = false;
        result.javaPackage_ = "";
        return this;
      }
      
      public bool HasJavaOuterClassname {
5104
        get { return result.hasJavaOuterClassname; }
5105 5106 5107 5108 5109 5110 5111
      }
      public string JavaOuterClassname {
        get { return result.JavaOuterClassname; }
        set { SetJavaOuterClassname(value); }
      }
      public Builder SetJavaOuterClassname(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
5112
        PrepareBuilder();
5113 5114 5115 5116 5117
        result.hasJavaOuterClassname = true;
        result.javaOuterClassname_ = value;
        return this;
      }
      public Builder ClearJavaOuterClassname() {
5118
        PrepareBuilder();
5119 5120 5121 5122 5123 5124
        result.hasJavaOuterClassname = false;
        result.javaOuterClassname_ = "";
        return this;
      }
      
      public bool HasJavaMultipleFiles {
5125
        get { return result.hasJavaMultipleFiles; }
5126 5127 5128 5129 5130 5131
      }
      public bool JavaMultipleFiles {
        get { return result.JavaMultipleFiles; }
        set { SetJavaMultipleFiles(value); }
      }
      public Builder SetJavaMultipleFiles(bool value) {
5132
        PrepareBuilder();
5133 5134 5135 5136 5137
        result.hasJavaMultipleFiles = true;
        result.javaMultipleFiles_ = value;
        return this;
      }
      public Builder ClearJavaMultipleFiles() {
5138
        PrepareBuilder();
5139 5140 5141 5142 5143 5144
        result.hasJavaMultipleFiles = false;
        result.javaMultipleFiles_ = false;
        return this;
      }
      
      public bool HasOptimizeFor {
5145
       get { return result.hasOptimizeFor; }
5146 5147 5148 5149 5150 5151
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode OptimizeFor {
        get { return result.OptimizeFor; }
        set { SetOptimizeFor(value); }
      }
      public Builder SetOptimizeFor(global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode value) {
5152
        PrepareBuilder();
5153 5154 5155 5156 5157
        result.hasOptimizeFor = true;
        result.optimizeFor_ = value;
        return this;
      }
      public Builder ClearOptimizeFor() {
5158
        PrepareBuilder();
5159 5160 5161 5162 5163 5164
        result.hasOptimizeFor = false;
        result.optimizeFor_ = global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode.SPEED;
        return this;
      }
      
      public bool HasCcGenericServices {
5165
        get { return result.hasCcGenericServices; }
5166 5167 5168 5169 5170 5171
      }
      public bool CcGenericServices {
        get { return result.CcGenericServices; }
        set { SetCcGenericServices(value); }
      }
      public Builder SetCcGenericServices(bool value) {
5172
        PrepareBuilder();
5173 5174 5175 5176 5177
        result.hasCcGenericServices = true;
        result.ccGenericServices_ = value;
        return this;
      }
      public Builder ClearCcGenericServices() {
5178
        PrepareBuilder();
5179 5180 5181 5182 5183 5184
        result.hasCcGenericServices = false;
        result.ccGenericServices_ = true;
        return this;
      }
      
      public bool HasJavaGenericServices {
5185
        get { return result.hasJavaGenericServices; }
5186 5187 5188 5189 5190 5191
      }
      public bool JavaGenericServices {
        get { return result.JavaGenericServices; }
        set { SetJavaGenericServices(value); }
      }
      public Builder SetJavaGenericServices(bool value) {
5192
        PrepareBuilder();
5193 5194 5195 5196 5197
        result.hasJavaGenericServices = true;
        result.javaGenericServices_ = value;
        return this;
      }
      public Builder ClearJavaGenericServices() {
5198
        PrepareBuilder();
5199 5200 5201 5202 5203 5204
        result.hasJavaGenericServices = false;
        result.javaGenericServices_ = true;
        return this;
      }
      
      public bool HasPyGenericServices {
5205
        get { return result.hasPyGenericServices; }
5206 5207 5208 5209 5210 5211
      }
      public bool PyGenericServices {
        get { return result.PyGenericServices; }
        set { SetPyGenericServices(value); }
      }
      public Builder SetPyGenericServices(bool value) {
5212
        PrepareBuilder();
5213 5214 5215 5216 5217
        result.hasPyGenericServices = true;
        result.pyGenericServices_ = value;
        return this;
      }
      public Builder ClearPyGenericServices() {
5218
        PrepareBuilder();
5219 5220 5221 5222 5223 5224
        result.hasPyGenericServices = false;
        result.pyGenericServices_ = true;
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
5225
        get { return PrepareBuilder().uninterpretedOption_; }
5226 5227 5228 5229 5230 5231 5232 5233 5234
      }
      public int UninterpretedOptionCount {
        get { return result.UninterpretedOptionCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
        return result.GetUninterpretedOption(index);
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
5235
        PrepareBuilder();
5236 5237 5238 5239 5240
        result.uninterpretedOption_[index] = value;
        return this;
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
5241
        PrepareBuilder();
5242 5243 5244 5245 5246
        result.uninterpretedOption_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
5247
        PrepareBuilder();
5248 5249 5250 5251 5252
        result.uninterpretedOption_.Add(value);
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
5253
        PrepareBuilder();
5254 5255 5256 5257
        result.uninterpretedOption_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
5258
        PrepareBuilder();
5259
        result.uninterpretedOption_.Add(values);
5260 5261 5262
        return this;
      }
      public Builder ClearUninterpretedOption() {
5263
        PrepareBuilder();
5264 5265 5266 5267 5268 5269 5270 5271 5272
        result.uninterpretedOption_.Clear();
        return this;
      }
    }
    static FileOptions() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
5273 5274 5275
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
5276
  public sealed partial class MessageOptions : pb::ExtendableMessage<MessageOptions, MessageOptions.Builder> {
5277
    private MessageOptions() { }
5278
    private static readonly MessageOptions defaultInstance = new MessageOptions().MakeReadOnly();
5279 5280
    private static readonly string[] _messageOptionsFieldNames = new string[] { "message_set_wire_format", "no_standard_descriptor_accessor", "uninterpreted_option" };
    private static readonly uint[] _messageOptionsFieldTags = new uint[] { 8, 16, 7994 };
5281 5282 5283 5284 5285
    public static MessageOptions DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override MessageOptions DefaultInstanceForType {
5286
      get { return DefaultInstance; }
5287 5288 5289 5290 5291 5292 5293 5294 5295 5296 5297 5298 5299 5300 5301 5302
    }
    
    protected override MessageOptions ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MessageOptions__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<MessageOptions, MessageOptions.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MessageOptions__FieldAccessorTable; }
    }
    
    public const int MessageSetWireFormatFieldNumber = 1;
    private bool hasMessageSetWireFormat;
csharptest's avatar
csharptest committed
5303
    private bool messageSetWireFormat_;
5304 5305 5306 5307 5308 5309 5310 5311 5312
    public bool HasMessageSetWireFormat {
      get { return hasMessageSetWireFormat; }
    }
    public bool MessageSetWireFormat {
      get { return messageSetWireFormat_; }
    }
    
    public const int NoStandardDescriptorAccessorFieldNumber = 2;
    private bool hasNoStandardDescriptorAccessor;
csharptest's avatar
csharptest committed
5313
    private bool noStandardDescriptorAccessor_;
5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342
    public bool HasNoStandardDescriptorAccessor {
      get { return hasNoStandardDescriptorAccessor; }
    }
    public bool NoStandardDescriptorAccessor {
      get { return noStandardDescriptorAccessor_; }
    }
    
    public const int UninterpretedOptionFieldNumber = 999;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
      get { return uninterpretedOption_; }
    }
    public int UninterpretedOptionCount {
      get { return uninterpretedOption_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
      return uninterpretedOption_[index];
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          if (!element.IsInitialized) return false;
        }
        if (!ExtensionsAreInitialized) return false;
        return true;
      }
    }
    
5343
    public override void WriteTo(pb::ICodedOutputStream output) {
5344
      int size = SerializedSize;
5345
      string[] field_names = _messageOptionsFieldNames;
5346
      pb::ExtendableMessage<MessageOptions, MessageOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
5347
      if (hasMessageSetWireFormat) {
5348
        output.WriteBool(1, field_names[0], MessageSetWireFormat);
5349
      }
5350
      if (hasNoStandardDescriptorAccessor) {
5351
        output.WriteBool(2, field_names[1], NoStandardDescriptorAccessor);
5352
      }
5353
      if (uninterpretedOption_.Count > 0) {
5354
        output.WriteMessageArray(999, field_names[2], uninterpretedOption_);
5355 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366
      }
      extensionWriter.WriteUntil(536870912, output);
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
5367
        if (hasMessageSetWireFormat) {
5368 5369
          size += pb::CodedOutputStream.ComputeBoolSize(1, MessageSetWireFormat);
        }
5370
        if (hasNoStandardDescriptorAccessor) {
5371 5372 5373 5374 5375 5376 5377 5378 5379 5380 5381 5382 5383 5384 5385 5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406
          size += pb::CodedOutputStream.ComputeBoolSize(2, NoStandardDescriptorAccessor);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
        }
        size += ExtensionsSerializedSize;
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static MessageOptions ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static MessageOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static MessageOptions ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static MessageOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static MessageOptions ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static MessageOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static MessageOptions ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static MessageOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
5407
    public static MessageOptions ParseFrom(pb::ICodedInputStream input) {
5408 5409
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
5410
    public static MessageOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
5411 5412
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
5413 5414 5415 5416 5417
    private MessageOptions MakeReadOnly() {
      uninterpretedOption_.MakeReadOnly();
      return this;
    }
    
5418 5419 5420 5421
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(MessageOptions prototype) {
5422
      return new Builder(prototype);
5423 5424
    }
    
5425 5426 5427
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
5428 5429 5430 5431
    public sealed partial class Builder : pb::ExtendableBuilder<MessageOptions, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
5432
      public Builder() {
5433 5434
        result = DefaultInstance;
        resultIsReadOnly = true;
5435 5436 5437
      }
      internal Builder(MessageOptions cloneFrom) {
        result = cloneFrom;
5438
        resultIsReadOnly = true;
5439
      }
5440
      
5441 5442
      private bool resultIsReadOnly;
      private MessageOptions result;
5443 5444
      
      private MessageOptions PrepareBuilder() {
5445
        if (resultIsReadOnly) {
5446 5447
          MessageOptions original = result;
          result = new MessageOptions();
5448
          resultIsReadOnly = false;
5449 5450 5451 5452 5453 5454 5455 5456
          MergeFrom(original);
        }
        return result;
      }
      
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
5457 5458
      
      protected override MessageOptions MessageBeingBuilt {
5459
        get { return PrepareBuilder(); }
5460 5461 5462
      }
      
      public override Builder Clear() {
5463 5464
        result = DefaultInstance;
        resultIsReadOnly = true;
5465 5466 5467 5468
        return this;
      }
      
      public override Builder Clone() {
5469
        if (resultIsReadOnly) {
5470 5471 5472 5473
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
5474 5475 5476 5477 5478 5479 5480 5481 5482 5483 5484
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.Descriptor; }
      }
      
      public override MessageOptions DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.DefaultInstance; }
      }
      
      public override MessageOptions BuildPartial() {
5485
        if (resultIsReadOnly) {
5486
          return result;
5487
        }
5488 5489
        resultIsReadOnly = true;
        return result.MakeReadOnly();
5490 5491 5492 5493 5494 5495 5496 5497 5498 5499 5500 5501 5502
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is MessageOptions) {
          return MergeFrom((MessageOptions) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(MessageOptions other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.DefaultInstance) return this;
5503
        PrepareBuilder();
5504 5505 5506 5507 5508 5509 5510
        if (other.HasMessageSetWireFormat) {
          MessageSetWireFormat = other.MessageSetWireFormat;
        }
        if (other.HasNoStandardDescriptorAccessor) {
          NoStandardDescriptorAccessor = other.NoStandardDescriptorAccessor;
        }
        if (other.uninterpretedOption_.Count != 0) {
5511
          result.uninterpretedOption_.Add(other.uninterpretedOption_);
5512 5513 5514 5515 5516 5517
        }
          this.MergeExtensionFields(other);
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
5518
      public override Builder MergeFrom(pb::ICodedInputStream input) {
5519 5520 5521
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
5522
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
5523
        PrepareBuilder();
5524
        pb::UnknownFieldSet.Builder unknownFields = null;
5525 5526 5527
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
5528 5529 5530 5531 5532 5533 5534 5535 5536 5537 5538 5539
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_messageOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _messageOptionsFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
5540 5541
          switch (tag) {
            case 0: {
5542
              throw pb::InvalidProtocolBufferException.InvalidTag();
5543 5544 5545 5546 5547 5548 5549 5550 5551 5552 5553
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
5554
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
5555 5556 5557
              break;
            }
            case 8: {
5558
              result.hasMessageSetWireFormat = input.ReadBool(ref result.messageSetWireFormat_);
5559 5560 5561
              break;
            }
            case 16: {
5562
              result.hasNoStandardDescriptorAccessor = input.ReadBool(ref result.noStandardDescriptorAccessor_);
5563 5564 5565
              break;
            }
            case 7994: {
5566
              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
5567 5568 5569 5570
              break;
            }
          }
        }
5571 5572 5573 5574 5575
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
5576 5577 5578 5579
      }
      
      
      public bool HasMessageSetWireFormat {
5580
        get { return result.hasMessageSetWireFormat; }
5581 5582 5583 5584 5585 5586
      }
      public bool MessageSetWireFormat {
        get { return result.MessageSetWireFormat; }
        set { SetMessageSetWireFormat(value); }
      }
      public Builder SetMessageSetWireFormat(bool value) {
5587
        PrepareBuilder();
5588 5589 5590 5591 5592
        result.hasMessageSetWireFormat = true;
        result.messageSetWireFormat_ = value;
        return this;
      }
      public Builder ClearMessageSetWireFormat() {
5593
        PrepareBuilder();
5594 5595 5596 5597 5598 5599
        result.hasMessageSetWireFormat = false;
        result.messageSetWireFormat_ = false;
        return this;
      }
      
      public bool HasNoStandardDescriptorAccessor {
5600
        get { return result.hasNoStandardDescriptorAccessor; }
5601 5602 5603 5604 5605 5606
      }
      public bool NoStandardDescriptorAccessor {
        get { return result.NoStandardDescriptorAccessor; }
        set { SetNoStandardDescriptorAccessor(value); }
      }
      public Builder SetNoStandardDescriptorAccessor(bool value) {
5607
        PrepareBuilder();
5608 5609 5610 5611 5612
        result.hasNoStandardDescriptorAccessor = true;
        result.noStandardDescriptorAccessor_ = value;
        return this;
      }
      public Builder ClearNoStandardDescriptorAccessor() {
5613
        PrepareBuilder();
5614 5615 5616 5617 5618 5619
        result.hasNoStandardDescriptorAccessor = false;
        result.noStandardDescriptorAccessor_ = false;
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
5620
        get { return PrepareBuilder().uninterpretedOption_; }
5621 5622 5623 5624 5625 5626 5627 5628 5629
      }
      public int UninterpretedOptionCount {
        get { return result.UninterpretedOptionCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
        return result.GetUninterpretedOption(index);
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
5630
        PrepareBuilder();
5631 5632 5633 5634 5635
        result.uninterpretedOption_[index] = value;
        return this;
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
5636
        PrepareBuilder();
5637 5638 5639 5640 5641
        result.uninterpretedOption_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
5642
        PrepareBuilder();
5643 5644 5645 5646 5647
        result.uninterpretedOption_.Add(value);
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
5648
        PrepareBuilder();
5649 5650 5651 5652
        result.uninterpretedOption_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
5653
        PrepareBuilder();
5654
        result.uninterpretedOption_.Add(values);
5655 5656 5657
        return this;
      }
      public Builder ClearUninterpretedOption() {
5658
        PrepareBuilder();
5659 5660 5661 5662 5663 5664 5665 5666 5667
        result.uninterpretedOption_.Clear();
        return this;
      }
    }
    static MessageOptions() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
5668 5669 5670
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
5671
  public sealed partial class FieldOptions : pb::ExtendableMessage<FieldOptions, FieldOptions.Builder> {
5672
    private FieldOptions() { }
5673
    private static readonly FieldOptions defaultInstance = new FieldOptions().MakeReadOnly();
5674 5675
    private static readonly string[] _fieldOptionsFieldNames = new string[] { "ctype", "deprecated", "experimental_map_key", "packed", "uninterpreted_option" };
    private static readonly uint[] _fieldOptionsFieldTags = new uint[] { 8, 24, 74, 16, 7994 };
5676 5677 5678 5679 5680
    public static FieldOptions DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override FieldOptions DefaultInstanceForType {
5681
      get { return DefaultInstance; }
5682 5683 5684 5685 5686 5687 5688 5689 5690 5691 5692 5693 5694 5695 5696
    }
    
    protected override FieldOptions ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FieldOptions__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<FieldOptions, FieldOptions.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FieldOptions__FieldAccessorTable; }
    }
    
    #region Nested types
5697 5698 5699
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
5700
    public static class Types {
5701 5702
      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 5716
      public enum CType {
        STRING = 0,
        CORD = 1,
        STRING_PIECE = 2,
      }
      
    }
    #endregion
    
    public const int CtypeFieldNumber = 1;
    private bool hasCtype;
    private global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType ctype_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType.STRING;
    public bool HasCtype {
      get { return hasCtype; }
5717
    }
5718 5719 5720 5721 5722 5723
    public global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType Ctype {
      get { return ctype_; }
    }
    
    public const int PackedFieldNumber = 2;
    private bool hasPacked;
csharptest's avatar
csharptest committed
5724
    private bool packed_;
5725 5726 5727 5728 5729 5730 5731 5732 5733
    public bool HasPacked {
      get { return hasPacked; }
    }
    public bool Packed {
      get { return packed_; }
    }
    
    public const int DeprecatedFieldNumber = 3;
    private bool hasDeprecated;
csharptest's avatar
csharptest committed
5734
    private bool deprecated_;
5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773
    public bool HasDeprecated {
      get { return hasDeprecated; }
    }
    public bool Deprecated {
      get { return deprecated_; }
    }
    
    public const int ExperimentalMapKeyFieldNumber = 9;
    private bool hasExperimentalMapKey;
    private string experimentalMapKey_ = "";
    public bool HasExperimentalMapKey {
      get { return hasExperimentalMapKey; }
    }
    public string ExperimentalMapKey {
      get { return experimentalMapKey_; }
    }
    
    public const int UninterpretedOptionFieldNumber = 999;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
      get { return uninterpretedOption_; }
    }
    public int UninterpretedOptionCount {
      get { return uninterpretedOption_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
      return uninterpretedOption_[index];
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          if (!element.IsInitialized) return false;
        }
        if (!ExtensionsAreInitialized) return false;
        return true;
      }
    }
    
5774
    public override void WriteTo(pb::ICodedOutputStream output) {
5775
      int size = SerializedSize;
5776
      string[] field_names = _fieldOptionsFieldNames;
5777
      pb::ExtendableMessage<FieldOptions, FieldOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
5778
      if (hasCtype) {
csharptest's avatar
csharptest committed
5779
        output.WriteEnum(1, field_names[0], (int) Ctype, Ctype);
5780
      }
5781
      if (hasPacked) {
5782
        output.WriteBool(2, field_names[3], Packed);
5783
      }
5784
      if (hasDeprecated) {
5785
        output.WriteBool(3, field_names[1], Deprecated);
5786
      }
5787
      if (hasExperimentalMapKey) {
5788
        output.WriteString(9, field_names[2], ExperimentalMapKey);
5789
      }
5790
      if (uninterpretedOption_.Count > 0) {
5791
        output.WriteMessageArray(999, field_names[4], uninterpretedOption_);
5792 5793 5794 5795 5796 5797 5798 5799 5800 5801 5802 5803
      }
      extensionWriter.WriteUntil(536870912, output);
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
5804
        if (hasCtype) {
5805 5806
          size += pb::CodedOutputStream.ComputeEnumSize(1, (int) Ctype);
        }
5807
        if (hasPacked) {
5808 5809
          size += pb::CodedOutputStream.ComputeBoolSize(2, Packed);
        }
5810
        if (hasDeprecated) {
5811 5812
          size += pb::CodedOutputStream.ComputeBoolSize(3, Deprecated);
        }
5813
        if (hasExperimentalMapKey) {
5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839 5840 5841 5842 5843 5844 5845 5846 5847 5848 5849
          size += pb::CodedOutputStream.ComputeStringSize(9, ExperimentalMapKey);
        }
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
        }
        size += ExtensionsSerializedSize;
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static FieldOptions ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static FieldOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static FieldOptions ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static FieldOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static FieldOptions ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static FieldOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static FieldOptions ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static FieldOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
5850
    public static FieldOptions ParseFrom(pb::ICodedInputStream input) {
5851 5852
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
5853
    public static FieldOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
5854 5855
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
5856 5857 5858 5859 5860
    private FieldOptions MakeReadOnly() {
      uninterpretedOption_.MakeReadOnly();
      return this;
    }
    
5861 5862 5863 5864
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(FieldOptions prototype) {
5865
      return new Builder(prototype);
5866 5867
    }
    
5868 5869 5870
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
5871 5872 5873 5874
    public sealed partial class Builder : pb::ExtendableBuilder<FieldOptions, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
5875
      public Builder() {
5876 5877
        result = DefaultInstance;
        resultIsReadOnly = true;
5878 5879 5880
      }
      internal Builder(FieldOptions cloneFrom) {
        result = cloneFrom;
5881
        resultIsReadOnly = true;
5882
      }
5883
      
5884 5885
      private bool resultIsReadOnly;
      private FieldOptions result;
5886 5887
      
      private FieldOptions PrepareBuilder() {
5888
        if (resultIsReadOnly) {
5889 5890
          FieldOptions original = result;
          result = new FieldOptions();
5891
          resultIsReadOnly = false;
5892 5893 5894 5895 5896 5897 5898 5899
          MergeFrom(original);
        }
        return result;
      }
      
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
5900 5901
      
      protected override FieldOptions MessageBeingBuilt {
5902
        get { return PrepareBuilder(); }
5903 5904 5905
      }
      
      public override Builder Clear() {
5906 5907
        result = DefaultInstance;
        resultIsReadOnly = true;
5908 5909 5910 5911
        return this;
      }
      
      public override Builder Clone() {
5912
        if (resultIsReadOnly) {
5913 5914 5915 5916
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Descriptor; }
      }
      
      public override FieldOptions DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.DefaultInstance; }
      }
      
      public override FieldOptions BuildPartial() {
5928
        if (resultIsReadOnly) {
5929
          return result;
5930
        }
5931 5932
        resultIsReadOnly = true;
        return result.MakeReadOnly();
5933 5934 5935 5936 5937 5938 5939 5940 5941 5942 5943 5944 5945
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is FieldOptions) {
          return MergeFrom((FieldOptions) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(FieldOptions other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.DefaultInstance) return this;
5946
        PrepareBuilder();
5947 5948 5949 5950 5951 5952 5953 5954 5955 5956 5957 5958 5959
        if (other.HasCtype) {
          Ctype = other.Ctype;
        }
        if (other.HasPacked) {
          Packed = other.Packed;
        }
        if (other.HasDeprecated) {
          Deprecated = other.Deprecated;
        }
        if (other.HasExperimentalMapKey) {
          ExperimentalMapKey = other.ExperimentalMapKey;
        }
        if (other.uninterpretedOption_.Count != 0) {
5960
          result.uninterpretedOption_.Add(other.uninterpretedOption_);
5961 5962 5963 5964 5965 5966
        }
          this.MergeExtensionFields(other);
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
5967
      public override Builder MergeFrom(pb::ICodedInputStream input) {
5968 5969 5970
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
5971
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
5972
        PrepareBuilder();
5973
        pb::UnknownFieldSet.Builder unknownFields = null;
5974 5975 5976
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_fieldOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _fieldOptionsFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
5989 5990
          switch (tag) {
            case 0: {
5991
              throw pb::InvalidProtocolBufferException.InvalidTag();
5992 5993 5994 5995 5996 5997 5998 5999 6000 6001 6002
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
6003
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
6004 6005 6006
              break;
            }
            case 8: {
6007 6008 6009 6010
              object unknown;
              if(input.ReadEnum(ref result.ctype_, out unknown)) {
                result.hasCtype = true;
              } else if(unknown is int) {
6011 6012 6013
                if (unknownFields == null) {
                  unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
                }
6014
                unknownFields.MergeVarintField(1, (ulong)(int)unknown);
6015 6016 6017 6018
              }
              break;
            }
            case 16: {
6019
              result.hasPacked = input.ReadBool(ref result.packed_);
6020 6021 6022
              break;
            }
            case 24: {
6023
              result.hasDeprecated = input.ReadBool(ref result.deprecated_);
6024 6025 6026
              break;
            }
            case 74: {
6027
              result.hasExperimentalMapKey = input.ReadString(ref result.experimentalMapKey_);
6028 6029 6030
              break;
            }
            case 7994: {
6031
              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
6032 6033 6034 6035
              break;
            }
          }
        }
6036 6037 6038 6039 6040
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
6041 6042 6043 6044
      }
      
      
      public bool HasCtype {
6045
       get { return result.hasCtype; }
6046 6047 6048 6049 6050 6051
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType Ctype {
        get { return result.Ctype; }
        set { SetCtype(value); }
      }
      public Builder SetCtype(global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType value) {
6052
        PrepareBuilder();
6053 6054 6055 6056 6057
        result.hasCtype = true;
        result.ctype_ = value;
        return this;
      }
      public Builder ClearCtype() {
6058
        PrepareBuilder();
6059 6060 6061 6062 6063 6064
        result.hasCtype = false;
        result.ctype_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType.STRING;
        return this;
      }
      
      public bool HasPacked {
6065
        get { return result.hasPacked; }
6066 6067 6068 6069 6070 6071
      }
      public bool Packed {
        get { return result.Packed; }
        set { SetPacked(value); }
      }
      public Builder SetPacked(bool value) {
6072
        PrepareBuilder();
6073 6074 6075 6076 6077
        result.hasPacked = true;
        result.packed_ = value;
        return this;
      }
      public Builder ClearPacked() {
6078
        PrepareBuilder();
6079 6080 6081 6082 6083 6084
        result.hasPacked = false;
        result.packed_ = false;
        return this;
      }
      
      public bool HasDeprecated {
6085
        get { return result.hasDeprecated; }
6086 6087 6088 6089 6090 6091
      }
      public bool Deprecated {
        get { return result.Deprecated; }
        set { SetDeprecated(value); }
      }
      public Builder SetDeprecated(bool value) {
6092
        PrepareBuilder();
6093 6094 6095 6096 6097
        result.hasDeprecated = true;
        result.deprecated_ = value;
        return this;
      }
      public Builder ClearDeprecated() {
6098
        PrepareBuilder();
6099 6100 6101 6102 6103 6104
        result.hasDeprecated = false;
        result.deprecated_ = false;
        return this;
      }
      
      public bool HasExperimentalMapKey {
6105
        get { return result.hasExperimentalMapKey; }
6106 6107 6108 6109 6110 6111 6112
      }
      public string ExperimentalMapKey {
        get { return result.ExperimentalMapKey; }
        set { SetExperimentalMapKey(value); }
      }
      public Builder SetExperimentalMapKey(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
6113
        PrepareBuilder();
6114 6115 6116 6117 6118
        result.hasExperimentalMapKey = true;
        result.experimentalMapKey_ = value;
        return this;
      }
      public Builder ClearExperimentalMapKey() {
6119
        PrepareBuilder();
6120 6121 6122 6123 6124 6125
        result.hasExperimentalMapKey = false;
        result.experimentalMapKey_ = "";
        return this;
      }
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
6126
        get { return PrepareBuilder().uninterpretedOption_; }
6127 6128 6129 6130 6131 6132 6133 6134 6135
      }
      public int UninterpretedOptionCount {
        get { return result.UninterpretedOptionCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
        return result.GetUninterpretedOption(index);
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
6136
        PrepareBuilder();
6137 6138 6139 6140 6141
        result.uninterpretedOption_[index] = value;
        return this;
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
6142
        PrepareBuilder();
6143 6144 6145 6146 6147
        result.uninterpretedOption_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
6148
        PrepareBuilder();
6149 6150 6151 6152 6153
        result.uninterpretedOption_.Add(value);
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
6154
        PrepareBuilder();
6155 6156 6157 6158
        result.uninterpretedOption_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
6159
        PrepareBuilder();
6160
        result.uninterpretedOption_.Add(values);
6161 6162 6163
        return this;
      }
      public Builder ClearUninterpretedOption() {
6164
        PrepareBuilder();
6165 6166 6167 6168 6169 6170 6171 6172 6173
        result.uninterpretedOption_.Clear();
        return this;
      }
    }
    static FieldOptions() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
6174 6175 6176
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
6177
  public sealed partial class EnumOptions : pb::ExtendableMessage<EnumOptions, EnumOptions.Builder> {
6178
    private EnumOptions() { }
6179
    private static readonly EnumOptions defaultInstance = new EnumOptions().MakeReadOnly();
6180 6181
    private static readonly string[] _enumOptionsFieldNames = new string[] { "uninterpreted_option" };
    private static readonly uint[] _enumOptionsFieldTags = new uint[] { 7994 };
6182 6183 6184 6185 6186
    public static EnumOptions DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override EnumOptions DefaultInstanceForType {
6187
      get { return DefaultInstance; }
6188 6189 6190 6191 6192 6193 6194 6195 6196 6197 6198 6199 6200 6201 6202 6203 6204 6205 6206 6207 6208 6209 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219 6220 6221 6222 6223
    }
    
    protected override EnumOptions ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumOptions__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<EnumOptions, EnumOptions.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumOptions__FieldAccessorTable; }
    }
    
    public const int UninterpretedOptionFieldNumber = 999;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
      get { return uninterpretedOption_; }
    }
    public int UninterpretedOptionCount {
      get { return uninterpretedOption_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
      return uninterpretedOption_[index];
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          if (!element.IsInitialized) return false;
        }
        if (!ExtensionsAreInitialized) return false;
        return true;
      }
    }
    
6224
    public override void WriteTo(pb::ICodedOutputStream output) {
6225
      int size = SerializedSize;
6226
      string[] field_names = _enumOptionsFieldNames;
6227
      pb::ExtendableMessage<EnumOptions, EnumOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
6228
      if (uninterpretedOption_.Count > 0) {
6229
        output.WriteMessageArray(999, field_names[0], uninterpretedOption_);
6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271 6272 6273 6274 6275
      }
      extensionWriter.WriteUntil(536870912, output);
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
        }
        size += ExtensionsSerializedSize;
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static EnumOptions ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static EnumOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static EnumOptions ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static EnumOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static EnumOptions ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static EnumOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static EnumOptions ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static EnumOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
6276
    public static EnumOptions ParseFrom(pb::ICodedInputStream input) {
6277 6278
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
6279
    public static EnumOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
6280 6281
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
6282 6283 6284 6285 6286
    private EnumOptions MakeReadOnly() {
      uninterpretedOption_.MakeReadOnly();
      return this;
    }
    
6287 6288 6289 6290
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(EnumOptions prototype) {
6291
      return new Builder(prototype);
6292 6293
    }
    
6294 6295 6296
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
6297 6298 6299 6300
    public sealed partial class Builder : pb::ExtendableBuilder<EnumOptions, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
6301
      public Builder() {
6302 6303
        result = DefaultInstance;
        resultIsReadOnly = true;
6304 6305 6306
      }
      internal Builder(EnumOptions cloneFrom) {
        result = cloneFrom;
6307
        resultIsReadOnly = true;
6308 6309
      }
      
6310 6311
      private bool resultIsReadOnly;
      private EnumOptions result;
6312 6313
      
      private EnumOptions PrepareBuilder() {
6314
        if (resultIsReadOnly) {
6315 6316
          EnumOptions original = result;
          result = new EnumOptions();
6317
          resultIsReadOnly = false;
6318 6319 6320 6321
          MergeFrom(original);
        }
        return result;
      }
6322
      
6323 6324 6325
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
6326 6327
      
      protected override EnumOptions MessageBeingBuilt {
6328
        get { return PrepareBuilder(); }
6329 6330 6331
      }
      
      public override Builder Clear() {
6332 6333
        result = DefaultInstance;
        resultIsReadOnly = true;
6334 6335 6336 6337
        return this;
      }
      
      public override Builder Clone() {
6338
        if (resultIsReadOnly) {
6339 6340 6341 6342
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
6343 6344 6345 6346 6347 6348 6349 6350 6351 6352 6353
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.Descriptor; }
      }
      
      public override EnumOptions DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.DefaultInstance; }
      }
      
      public override EnumOptions BuildPartial() {
6354
        if (resultIsReadOnly) {
6355
          return result;
6356
        }
6357 6358
        resultIsReadOnly = true;
        return result.MakeReadOnly();
6359 6360 6361 6362 6363 6364 6365 6366 6367 6368 6369 6370 6371
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is EnumOptions) {
          return MergeFrom((EnumOptions) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(EnumOptions other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.DefaultInstance) return this;
6372
        PrepareBuilder();
6373
        if (other.uninterpretedOption_.Count != 0) {
6374
          result.uninterpretedOption_.Add(other.uninterpretedOption_);
6375 6376 6377 6378 6379 6380
        }
          this.MergeExtensionFields(other);
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
6381
      public override Builder MergeFrom(pb::ICodedInputStream input) {
6382 6383 6384
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
6385
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
6386
        PrepareBuilder();
6387
        pb::UnknownFieldSet.Builder unknownFields = null;
6388 6389 6390
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
6391 6392 6393 6394 6395 6396 6397 6398 6399 6400 6401 6402
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_enumOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _enumOptionsFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
6403 6404
          switch (tag) {
            case 0: {
6405
              throw pb::InvalidProtocolBufferException.InvalidTag();
6406 6407 6408 6409 6410 6411 6412 6413 6414 6415 6416
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
6417
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
6418 6419 6420
              break;
            }
            case 7994: {
6421
              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
6422 6423 6424 6425
              break;
            }
          }
        }
6426 6427 6428 6429 6430
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
6431 6432 6433 6434
      }
      
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
6435
        get { return PrepareBuilder().uninterpretedOption_; }
6436 6437 6438 6439 6440 6441 6442 6443 6444
      }
      public int UninterpretedOptionCount {
        get { return result.UninterpretedOptionCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
        return result.GetUninterpretedOption(index);
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
6445
        PrepareBuilder();
6446 6447 6448 6449 6450
        result.uninterpretedOption_[index] = value;
        return this;
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
6451
        PrepareBuilder();
6452 6453 6454 6455 6456
        result.uninterpretedOption_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
6457
        PrepareBuilder();
6458 6459 6460 6461 6462
        result.uninterpretedOption_.Add(value);
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
6463
        PrepareBuilder();
6464 6465 6466 6467
        result.uninterpretedOption_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
6468
        PrepareBuilder();
6469
        result.uninterpretedOption_.Add(values);
6470 6471 6472
        return this;
      }
      public Builder ClearUninterpretedOption() {
6473
        PrepareBuilder();
6474 6475 6476 6477 6478 6479 6480 6481 6482
        result.uninterpretedOption_.Clear();
        return this;
      }
    }
    static EnumOptions() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
6483 6484 6485
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
6486
  public sealed partial class EnumValueOptions : pb::ExtendableMessage<EnumValueOptions, EnumValueOptions.Builder> {
6487
    private EnumValueOptions() { }
6488
    private static readonly EnumValueOptions defaultInstance = new EnumValueOptions().MakeReadOnly();
6489 6490
    private static readonly string[] _enumValueOptionsFieldNames = new string[] { "uninterpreted_option" };
    private static readonly uint[] _enumValueOptionsFieldTags = new uint[] { 7994 };
6491 6492 6493 6494 6495
    public static EnumValueOptions DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override EnumValueOptions DefaultInstanceForType {
6496
      get { return DefaultInstance; }
6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 6515 6516 6517 6518 6519 6520 6521 6522 6523 6524 6525 6526 6527 6528 6529 6530 6531 6532
    }
    
    protected override EnumValueOptions ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumValueOptions__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<EnumValueOptions, EnumValueOptions.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumValueOptions__FieldAccessorTable; }
    }
    
    public const int UninterpretedOptionFieldNumber = 999;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
      get { return uninterpretedOption_; }
    }
    public int UninterpretedOptionCount {
      get { return uninterpretedOption_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
      return uninterpretedOption_[index];
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          if (!element.IsInitialized) return false;
        }
        if (!ExtensionsAreInitialized) return false;
        return true;
      }
    }
    
6533
    public override void WriteTo(pb::ICodedOutputStream output) {
6534
      int size = SerializedSize;
6535
      string[] field_names = _enumValueOptionsFieldNames;
6536
      pb::ExtendableMessage<EnumValueOptions, EnumValueOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
6537
      if (uninterpretedOption_.Count > 0) {
6538
        output.WriteMessageArray(999, field_names[0], uninterpretedOption_);
6539 6540 6541 6542 6543 6544 6545 6546 6547 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 6582 6583 6584
      }
      extensionWriter.WriteUntil(536870912, output);
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
        }
        size += ExtensionsSerializedSize;
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static EnumValueOptions ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static EnumValueOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static EnumValueOptions ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static EnumValueOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static EnumValueOptions ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static EnumValueOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static EnumValueOptions ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static EnumValueOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
6585
    public static EnumValueOptions ParseFrom(pb::ICodedInputStream input) {
6586 6587
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
6588
    public static EnumValueOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
6589 6590
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
6591 6592 6593 6594 6595
    private EnumValueOptions MakeReadOnly() {
      uninterpretedOption_.MakeReadOnly();
      return this;
    }
    
6596 6597 6598 6599
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(EnumValueOptions prototype) {
6600
      return new Builder(prototype);
6601 6602
    }
    
6603 6604 6605
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
6606 6607 6608 6609
    public sealed partial class Builder : pb::ExtendableBuilder<EnumValueOptions, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
6610
      public Builder() {
6611 6612
        result = DefaultInstance;
        resultIsReadOnly = true;
6613 6614 6615
      }
      internal Builder(EnumValueOptions cloneFrom) {
        result = cloneFrom;
6616
        resultIsReadOnly = true;
6617 6618
      }
      
6619 6620
      private bool resultIsReadOnly;
      private EnumValueOptions result;
6621
      
6622
      private EnumValueOptions PrepareBuilder() {
6623
        if (resultIsReadOnly) {
6624 6625
          EnumValueOptions original = result;
          result = new EnumValueOptions();
6626
          resultIsReadOnly = false;
6627 6628 6629 6630 6631 6632 6633 6634
          MergeFrom(original);
        }
        return result;
      }
      
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
6635 6636
      
      protected override EnumValueOptions MessageBeingBuilt {
6637
        get { return PrepareBuilder(); }
6638 6639 6640
      }
      
      public override Builder Clear() {
6641 6642
        result = DefaultInstance;
        resultIsReadOnly = true;
6643 6644 6645 6646
        return this;
      }
      
      public override Builder Clone() {
6647
        if (resultIsReadOnly) {
6648 6649 6650 6651
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
6652 6653 6654 6655 6656 6657 6658 6659 6660 6661 6662
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.Descriptor; }
      }
      
      public override EnumValueOptions DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.DefaultInstance; }
      }
      
      public override EnumValueOptions BuildPartial() {
6663
        if (resultIsReadOnly) {
6664
          return result;
6665
        }
6666 6667
        resultIsReadOnly = true;
        return result.MakeReadOnly();
6668 6669 6670 6671 6672 6673 6674 6675 6676 6677 6678 6679 6680
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is EnumValueOptions) {
          return MergeFrom((EnumValueOptions) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(EnumValueOptions other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.DefaultInstance) return this;
6681
        PrepareBuilder();
6682
        if (other.uninterpretedOption_.Count != 0) {
6683
          result.uninterpretedOption_.Add(other.uninterpretedOption_);
6684 6685 6686 6687 6688 6689
        }
          this.MergeExtensionFields(other);
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
6690
      public override Builder MergeFrom(pb::ICodedInputStream input) {
6691 6692 6693
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
6694
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
6695
        PrepareBuilder();
6696
        pb::UnknownFieldSet.Builder unknownFields = null;
6697 6698 6699
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
6700 6701 6702 6703 6704 6705 6706 6707 6708 6709 6710 6711
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_enumValueOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _enumValueOptionsFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
6712 6713
          switch (tag) {
            case 0: {
6714
              throw pb::InvalidProtocolBufferException.InvalidTag();
6715 6716 6717 6718 6719 6720 6721 6722 6723 6724 6725
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
6726
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
6727 6728 6729
              break;
            }
            case 7994: {
6730
              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
6731 6732 6733 6734
              break;
            }
          }
        }
6735 6736 6737 6738 6739
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
6740 6741 6742 6743
      }
      
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
6744
        get { return PrepareBuilder().uninterpretedOption_; }
6745 6746 6747 6748 6749 6750 6751 6752 6753
      }
      public int UninterpretedOptionCount {
        get { return result.UninterpretedOptionCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
        return result.GetUninterpretedOption(index);
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
6754
        PrepareBuilder();
6755 6756 6757 6758 6759
        result.uninterpretedOption_[index] = value;
        return this;
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
6760
        PrepareBuilder();
6761 6762 6763 6764 6765
        result.uninterpretedOption_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
6766
        PrepareBuilder();
6767 6768 6769 6770 6771
        result.uninterpretedOption_.Add(value);
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
6772
        PrepareBuilder();
6773 6774 6775 6776
        result.uninterpretedOption_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
6777
        PrepareBuilder();
6778
        result.uninterpretedOption_.Add(values);
6779 6780 6781
        return this;
      }
      public Builder ClearUninterpretedOption() {
6782
        PrepareBuilder();
6783 6784 6785 6786 6787 6788 6789 6790 6791
        result.uninterpretedOption_.Clear();
        return this;
      }
    }
    static EnumValueOptions() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
6792 6793 6794
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
6795
  public sealed partial class ServiceOptions : pb::ExtendableMessage<ServiceOptions, ServiceOptions.Builder> {
6796
    private ServiceOptions() { }
6797
    private static readonly ServiceOptions defaultInstance = new ServiceOptions().MakeReadOnly();
6798 6799
    private static readonly string[] _serviceOptionsFieldNames = new string[] { "uninterpreted_option" };
    private static readonly uint[] _serviceOptionsFieldTags = new uint[] { 7994 };
6800 6801 6802 6803 6804
    public static ServiceOptions DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override ServiceOptions DefaultInstanceForType {
6805
      get { return DefaultInstance; }
6806 6807 6808 6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819 6820 6821 6822 6823 6824 6825 6826 6827 6828 6829 6830 6831 6832 6833 6834 6835 6836 6837 6838 6839 6840 6841
    }
    
    protected override ServiceOptions ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_ServiceOptions__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<ServiceOptions, ServiceOptions.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_ServiceOptions__FieldAccessorTable; }
    }
    
    public const int UninterpretedOptionFieldNumber = 999;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
      get { return uninterpretedOption_; }
    }
    public int UninterpretedOptionCount {
      get { return uninterpretedOption_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
      return uninterpretedOption_[index];
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          if (!element.IsInitialized) return false;
        }
        if (!ExtensionsAreInitialized) return false;
        return true;
      }
    }
    
6842
    public override void WriteTo(pb::ICodedOutputStream output) {
6843
      int size = SerializedSize;
6844
      string[] field_names = _serviceOptionsFieldNames;
6845
      pb::ExtendableMessage<ServiceOptions, ServiceOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
6846
      if (uninterpretedOption_.Count > 0) {
6847
        output.WriteMessageArray(999, field_names[0], uninterpretedOption_);
6848 6849 6850 6851 6852 6853 6854 6855 6856 6857 6858 6859 6860 6861 6862 6863 6864 6865 6866 6867 6868 6869 6870 6871 6872 6873 6874 6875 6876 6877 6878 6879 6880 6881 6882 6883 6884 6885 6886 6887 6888 6889 6890 6891 6892 6893
      }
      extensionWriter.WriteUntil(536870912, output);
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
        }
        size += ExtensionsSerializedSize;
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static ServiceOptions ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static ServiceOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static ServiceOptions ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static ServiceOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static ServiceOptions ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static ServiceOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static ServiceOptions ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static ServiceOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
6894
    public static ServiceOptions ParseFrom(pb::ICodedInputStream input) {
6895 6896
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
6897
    public static ServiceOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
6898 6899
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
6900 6901 6902 6903 6904
    private ServiceOptions MakeReadOnly() {
      uninterpretedOption_.MakeReadOnly();
      return this;
    }
    
6905 6906 6907 6908
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(ServiceOptions prototype) {
6909
      return new Builder(prototype);
6910 6911
    }
    
6912 6913 6914
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
6915 6916 6917 6918
    public sealed partial class Builder : pb::ExtendableBuilder<ServiceOptions, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
6919
      public Builder() {
6920 6921
        result = DefaultInstance;
        resultIsReadOnly = true;
6922 6923 6924
      }
      internal Builder(ServiceOptions cloneFrom) {
        result = cloneFrom;
6925
        resultIsReadOnly = true;
6926 6927
      }
      
6928 6929
      private bool resultIsReadOnly;
      private ServiceOptions result;
6930 6931
      
      private ServiceOptions PrepareBuilder() {
6932
        if (resultIsReadOnly) {
6933 6934
          ServiceOptions original = result;
          result = new ServiceOptions();
6935
          resultIsReadOnly = false;
6936 6937 6938 6939
          MergeFrom(original);
        }
        return result;
      }
6940
      
6941 6942 6943
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
6944 6945
      
      protected override ServiceOptions MessageBeingBuilt {
6946
        get { return PrepareBuilder(); }
6947 6948 6949
      }
      
      public override Builder Clear() {
6950 6951
        result = DefaultInstance;
        resultIsReadOnly = true;
6952 6953 6954 6955
        return this;
      }
      
      public override Builder Clone() {
6956
        if (resultIsReadOnly) {
6957 6958 6959 6960
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
6961 6962 6963 6964 6965 6966 6967 6968 6969 6970 6971
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.Descriptor; }
      }
      
      public override ServiceOptions DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.DefaultInstance; }
      }
      
      public override ServiceOptions BuildPartial() {
6972
        if (resultIsReadOnly) {
6973
          return result;
6974
        }
6975 6976
        resultIsReadOnly = true;
        return result.MakeReadOnly();
6977 6978 6979 6980 6981 6982 6983 6984 6985 6986 6987 6988 6989
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is ServiceOptions) {
          return MergeFrom((ServiceOptions) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(ServiceOptions other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.DefaultInstance) return this;
6990
        PrepareBuilder();
6991
        if (other.uninterpretedOption_.Count != 0) {
6992
          result.uninterpretedOption_.Add(other.uninterpretedOption_);
6993 6994 6995 6996 6997 6998
        }
          this.MergeExtensionFields(other);
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
6999
      public override Builder MergeFrom(pb::ICodedInputStream input) {
7000 7001 7002
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
7003
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
7004
        PrepareBuilder();
7005
        pb::UnknownFieldSet.Builder unknownFields = null;
7006 7007 7008
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
7009 7010 7011 7012 7013 7014 7015 7016 7017 7018 7019 7020
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_serviceOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _serviceOptionsFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
7021 7022
          switch (tag) {
            case 0: {
7023
              throw pb::InvalidProtocolBufferException.InvalidTag();
7024 7025 7026 7027 7028 7029 7030 7031 7032 7033 7034
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
7035
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
7036 7037 7038
              break;
            }
            case 7994: {
7039
              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
7040 7041 7042 7043
              break;
            }
          }
        }
7044 7045 7046 7047 7048
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
7049 7050 7051 7052
      }
      
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
7053
        get { return PrepareBuilder().uninterpretedOption_; }
7054 7055 7056 7057 7058 7059 7060 7061 7062
      }
      public int UninterpretedOptionCount {
        get { return result.UninterpretedOptionCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
        return result.GetUninterpretedOption(index);
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
7063
        PrepareBuilder();
7064 7065 7066 7067 7068
        result.uninterpretedOption_[index] = value;
        return this;
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
7069
        PrepareBuilder();
7070 7071 7072 7073 7074
        result.uninterpretedOption_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
7075
        PrepareBuilder();
7076 7077 7078 7079 7080
        result.uninterpretedOption_.Add(value);
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
7081
        PrepareBuilder();
7082 7083 7084 7085
        result.uninterpretedOption_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
7086
        PrepareBuilder();
7087
        result.uninterpretedOption_.Add(values);
7088 7089 7090
        return this;
      }
      public Builder ClearUninterpretedOption() {
7091
        PrepareBuilder();
7092 7093 7094 7095 7096 7097 7098 7099 7100
        result.uninterpretedOption_.Clear();
        return this;
      }
    }
    static ServiceOptions() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
7101 7102 7103
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
7104
  public sealed partial class MethodOptions : pb::ExtendableMessage<MethodOptions, MethodOptions.Builder> {
7105
    private MethodOptions() { }
7106
    private static readonly MethodOptions defaultInstance = new MethodOptions().MakeReadOnly();
7107 7108
    private static readonly string[] _methodOptionsFieldNames = new string[] { "uninterpreted_option" };
    private static readonly uint[] _methodOptionsFieldTags = new uint[] { 7994 };
7109 7110 7111 7112 7113
    public static MethodOptions DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override MethodOptions DefaultInstanceForType {
7114
      get { return DefaultInstance; }
7115 7116 7117 7118 7119 7120 7121 7122 7123 7124 7125 7126 7127 7128 7129 7130 7131 7132 7133 7134 7135 7136 7137 7138 7139 7140 7141 7142 7143 7144 7145 7146 7147 7148 7149 7150
    }
    
    protected override MethodOptions ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MethodOptions__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<MethodOptions, MethodOptions.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MethodOptions__FieldAccessorTable; }
    }
    
    public const int UninterpretedOptionFieldNumber = 999;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
      get { return uninterpretedOption_; }
    }
    public int UninterpretedOptionCount {
      get { return uninterpretedOption_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
      return uninterpretedOption_[index];
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          if (!element.IsInitialized) return false;
        }
        if (!ExtensionsAreInitialized) return false;
        return true;
      }
    }
    
7151
    public override void WriteTo(pb::ICodedOutputStream output) {
7152
      int size = SerializedSize;
7153
      string[] field_names = _methodOptionsFieldNames;
7154
      pb::ExtendableMessage<MethodOptions, MethodOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
7155
      if (uninterpretedOption_.Count > 0) {
7156
        output.WriteMessageArray(999, field_names[0], uninterpretedOption_);
7157 7158 7159 7160 7161 7162 7163 7164 7165 7166 7167 7168 7169 7170 7171 7172 7173 7174 7175 7176 7177 7178 7179 7180 7181 7182 7183 7184 7185 7186 7187 7188 7189 7190 7191 7192 7193 7194 7195 7196 7197 7198 7199 7200 7201 7202
      }
      extensionWriter.WriteUntil(536870912, output);
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
        }
        size += ExtensionsSerializedSize;
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static MethodOptions ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static MethodOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static MethodOptions ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static MethodOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static MethodOptions ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static MethodOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static MethodOptions ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static MethodOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
7203
    public static MethodOptions ParseFrom(pb::ICodedInputStream input) {
7204 7205
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
7206
    public static MethodOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
7207 7208
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
7209 7210 7211 7212 7213
    private MethodOptions MakeReadOnly() {
      uninterpretedOption_.MakeReadOnly();
      return this;
    }
    
7214 7215 7216 7217
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(MethodOptions prototype) {
7218
      return new Builder(prototype);
7219 7220
    }
    
7221 7222 7223
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
7224 7225 7226 7227
    public sealed partial class Builder : pb::ExtendableBuilder<MethodOptions, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
7228
      public Builder() {
7229 7230
        result = DefaultInstance;
        resultIsReadOnly = true;
7231 7232 7233
      }
      internal Builder(MethodOptions cloneFrom) {
        result = cloneFrom;
7234
        resultIsReadOnly = true;
7235
      }
7236
      
7237 7238
      private bool resultIsReadOnly;
      private MethodOptions result;
7239 7240
      
      private MethodOptions PrepareBuilder() {
7241
        if (resultIsReadOnly) {
7242 7243
          MethodOptions original = result;
          result = new MethodOptions();
7244
          resultIsReadOnly = false;
7245 7246 7247 7248 7249 7250 7251 7252
          MergeFrom(original);
        }
        return result;
      }
      
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
7253 7254
      
      protected override MethodOptions MessageBeingBuilt {
7255
        get { return PrepareBuilder(); }
7256 7257 7258
      }
      
      public override Builder Clear() {
7259 7260
        result = DefaultInstance;
        resultIsReadOnly = true;
7261 7262 7263 7264
        return this;
      }
      
      public override Builder Clone() {
7265
        if (resultIsReadOnly) {
7266 7267 7268 7269
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
7270 7271 7272 7273 7274 7275 7276 7277 7278 7279 7280
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.Descriptor; }
      }
      
      public override MethodOptions DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.DefaultInstance; }
      }
      
      public override MethodOptions BuildPartial() {
7281
        if (resultIsReadOnly) {
7282
          return result;
7283
        }
7284 7285
        resultIsReadOnly = true;
        return result.MakeReadOnly();
7286 7287 7288 7289 7290 7291 7292 7293 7294 7295 7296 7297 7298
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is MethodOptions) {
          return MergeFrom((MethodOptions) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(MethodOptions other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.DefaultInstance) return this;
7299
        PrepareBuilder();
7300
        if (other.uninterpretedOption_.Count != 0) {
7301
          result.uninterpretedOption_.Add(other.uninterpretedOption_);
7302 7303 7304 7305 7306 7307
        }
          this.MergeExtensionFields(other);
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
7308
      public override Builder MergeFrom(pb::ICodedInputStream input) {
7309 7310 7311
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
7312
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
7313
        PrepareBuilder();
7314
        pb::UnknownFieldSet.Builder unknownFields = null;
7315 7316 7317
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
7318 7319 7320 7321 7322 7323 7324 7325 7326 7327 7328 7329
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_methodOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _methodOptionsFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
7330 7331
          switch (tag) {
            case 0: {
7332
              throw pb::InvalidProtocolBufferException.InvalidTag();
7333 7334 7335 7336 7337 7338 7339 7340 7341 7342 7343
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
7344
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
7345 7346 7347
              break;
            }
            case 7994: {
7348
              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
7349 7350 7351 7352
              break;
            }
          }
        }
7353 7354 7355 7356 7357
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
7358 7359 7360 7361
      }
      
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
7362
        get { return PrepareBuilder().uninterpretedOption_; }
7363 7364 7365 7366 7367 7368 7369 7370 7371
      }
      public int UninterpretedOptionCount {
        get { return result.UninterpretedOptionCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
        return result.GetUninterpretedOption(index);
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
7372
        PrepareBuilder();
7373 7374 7375 7376 7377
        result.uninterpretedOption_[index] = value;
        return this;
      }
      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
7378
        PrepareBuilder();
7379 7380 7381 7382 7383
        result.uninterpretedOption_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
7384
        PrepareBuilder();
7385 7386 7387 7388 7389
        result.uninterpretedOption_.Add(value);
        return this;
      }
      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
7390
        PrepareBuilder();
7391 7392 7393 7394
        result.uninterpretedOption_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
7395
        PrepareBuilder();
7396
        result.uninterpretedOption_.Add(values);
7397 7398 7399
        return this;
      }
      public Builder ClearUninterpretedOption() {
7400
        PrepareBuilder();
7401 7402 7403 7404 7405 7406 7407 7408 7409
        result.uninterpretedOption_.Clear();
        return this;
      }
    }
    static MethodOptions() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
7410 7411 7412
  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
7413
  public sealed partial class UninterpretedOption : pb::GeneratedMessage<UninterpretedOption, UninterpretedOption.Builder> {
7414
    private UninterpretedOption() { }
7415
    private static readonly UninterpretedOption defaultInstance = new UninterpretedOption().MakeReadOnly();
7416 7417
    private static readonly string[] _uninterpretedOptionFieldNames = new string[] { "double_value", "identifier_value", "name", "negative_int_value", "positive_int_value", "string_value" };
    private static readonly uint[] _uninterpretedOptionFieldTags = new uint[] { 49, 26, 18, 40, 32, 58 };
7418 7419 7420 7421 7422
    public static UninterpretedOption DefaultInstance {
      get { return defaultInstance; }
    }
    
    public override UninterpretedOption DefaultInstanceForType {
7423
      get { return DefaultInstance; }
7424 7425 7426 7427 7428 7429 7430 7431 7432 7433 7434 7435 7436 7437 7438
    }
    
    protected override UninterpretedOption ThisMessage {
      get { return this; }
    }
    
    public static pbd::MessageDescriptor Descriptor {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_UninterpretedOption__Descriptor; }
    }
    
    protected override pb::FieldAccess.FieldAccessorTable<UninterpretedOption, UninterpretedOption.Builder> InternalFieldAccessors {
      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_UninterpretedOption__FieldAccessorTable; }
    }
    
    #region Nested types
7439 7440 7441
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
7442
    public static class Types {
7443 7444 7445
      [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
7446
      public sealed partial class NamePart : pb::GeneratedMessage<NamePart, NamePart.Builder> {
7447
        private NamePart() { }
7448
        private static readonly NamePart defaultInstance = new NamePart().MakeReadOnly();
7449 7450
        private static readonly string[] _namePartFieldNames = new string[] { "is_extension", "name_part" };
        private static readonly uint[] _namePartFieldTags = new uint[] { 16, 10 };
7451 7452 7453 7454 7455
        public static NamePart DefaultInstance {
          get { return defaultInstance; }
        }
        
        public override NamePart DefaultInstanceForType {
7456
          get { return DefaultInstance; }
7457 7458 7459 7460 7461 7462 7463 7464 7465 7466 7467 7468 7469 7470 7471 7472 7473 7474 7475 7476 7477 7478 7479 7480 7481 7482
        }
        
        protected override NamePart ThisMessage {
          get { return this; }
        }
        
        public static pbd::MessageDescriptor Descriptor {
          get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_UninterpretedOption_NamePart__Descriptor; }
        }
        
        protected override pb::FieldAccess.FieldAccessorTable<NamePart, NamePart.Builder> InternalFieldAccessors {
          get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_UninterpretedOption_NamePart__FieldAccessorTable; }
        }
        
        public const int NamePart_FieldNumber = 1;
        private bool hasNamePart_;
        private string namePart_ = "";
        public bool HasNamePart_ {
          get { return hasNamePart_; }
        }
        public string NamePart_ {
          get { return namePart_; }
        }
        
        public const int IsExtensionFieldNumber = 2;
        private bool hasIsExtension;
csharptest's avatar
csharptest committed
7483
        private bool isExtension_;
7484 7485 7486 7487 7488 7489 7490 7491 7492 7493 7494 7495 7496 7497 7498
        public bool HasIsExtension {
          get { return hasIsExtension; }
        }
        public bool IsExtension {
          get { return isExtension_; }
        }
        
        public override bool IsInitialized {
          get {
            if (!hasNamePart_) return false;
            if (!hasIsExtension) return false;
            return true;
          }
        }
        
7499
        public override void WriteTo(pb::ICodedOutputStream output) {
7500
          int size = SerializedSize;
7501
          string[] field_names = _namePartFieldNames;
7502
          if (hasNamePart_) {
7503
            output.WriteString(1, field_names[1], NamePart_);
7504
          }
7505
          if (hasIsExtension) {
7506
            output.WriteBool(2, field_names[0], IsExtension);
7507 7508 7509 7510
          }
          UnknownFields.WriteTo(output);
        }
        
7511
        private int memoizedSerializedSize = -1;
7512 7513 7514 7515 7516 7517
        public override int SerializedSize {
          get {
            int size = memoizedSerializedSize;
            if (size != -1) return size;
            
            size = 0;
7518
            if (hasNamePart_) {
7519
              size += pb::CodedOutputStream.ComputeStringSize(1, NamePart_);
7520
            }
7521
            if (hasIsExtension) {
7522 7523 7524 7525 7526 7527
              size += pb::CodedOutputStream.ComputeBoolSize(2, IsExtension);
            }
            size += UnknownFields.SerializedSize;
            memoizedSerializedSize = size;
            return size;
          }
7528
        }
7529 7530 7531
        
        public static NamePart ParseFrom(pb::ByteString data) {
          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
7532
        }
7533 7534
        public static NamePart ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
7535
        }
7536 7537
        public static NamePart ParseFrom(byte[] data) {
          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
7538
        }
7539 7540
        public static NamePart ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
7541
        }
7542 7543
        public static NamePart ParseFrom(global::System.IO.Stream input) {
          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
7544
        }
7545 7546
        public static NamePart ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
7547
        }
7548 7549
        public static NamePart ParseDelimitedFrom(global::System.IO.Stream input) {
          return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
7550
        }
7551 7552
        public static NamePart ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
          return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
7553
        }
7554
        public static NamePart ParseFrom(pb::ICodedInputStream input) {
7555
          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
7556
        }
7557
        public static NamePart ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
7558
          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
7559
        }
7560 7561 7562 7563
        private NamePart MakeReadOnly() {
          return this;
        }
        
7564 7565 7566 7567
        public static Builder CreateBuilder() { return new Builder(); }
        public override Builder ToBuilder() { return CreateBuilder(this); }
        public override Builder CreateBuilderForType() { return new Builder(); }
        public static Builder CreateBuilder(NamePart prototype) {
7568
          return new Builder(prototype);
7569
        }
7570
        
7571 7572 7573
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
        [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
7574 7575 7576 7577
        public sealed partial class Builder : pb::GeneratedBuilder<NamePart, Builder> {
          protected override Builder ThisBuilder {
            get { return this; }
          }
7578
          public Builder() {
7579 7580
            result = DefaultInstance;
            resultIsReadOnly = true;
7581 7582 7583
          }
          internal Builder(NamePart cloneFrom) {
            result = cloneFrom;
7584
            resultIsReadOnly = true;
7585 7586
          }
          
7587 7588
          private bool resultIsReadOnly;
          private NamePart result;
7589 7590
          
          private NamePart PrepareBuilder() {
7591
            if (resultIsReadOnly) {
7592 7593
              NamePart original = result;
              result = new NamePart();
7594
              resultIsReadOnly = false;
7595 7596 7597 7598
              MergeFrom(original);
            }
            return result;
          }
7599
          
7600 7601 7602
          public override bool IsInitialized {
            get { return result.IsInitialized; }
          }
7603 7604
          
          protected override NamePart MessageBeingBuilt {
7605
            get { return PrepareBuilder(); }
7606 7607 7608
          }
          
          public override Builder Clear() {
7609 7610
            result = DefaultInstance;
            resultIsReadOnly = true;
7611 7612 7613 7614
            return this;
          }
          
          public override Builder Clone() {
7615
            if (resultIsReadOnly) {
7616 7617 7618 7619
              return new Builder(result);
            } else {
              return new Builder().MergeFrom(result);
            }
7620 7621 7622 7623 7624 7625 7626 7627 7628 7629 7630
          }
          
          public override pbd::MessageDescriptor DescriptorForType {
            get { return global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.Descriptor; }
          }
          
          public override NamePart DefaultInstanceForType {
            get { return global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.DefaultInstance; }
          }
          
          public override NamePart BuildPartial() {
7631
            if (resultIsReadOnly) {
7632
              return result;
7633
            }
7634 7635
            resultIsReadOnly = true;
            return result.MakeReadOnly();
7636 7637 7638 7639 7640 7641 7642 7643 7644 7645 7646 7647 7648
          }
          
          public override Builder MergeFrom(pb::IMessage other) {
            if (other is NamePart) {
              return MergeFrom((NamePart) other);
            } else {
              base.MergeFrom(other);
              return this;
            }
          }
          
          public override Builder MergeFrom(NamePart other) {
            if (other == global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.DefaultInstance) return this;
7649
            PrepareBuilder();
7650 7651 7652 7653 7654 7655 7656 7657 7658 7659
            if (other.HasNamePart_) {
              NamePart_ = other.NamePart_;
            }
            if (other.HasIsExtension) {
              IsExtension = other.IsExtension;
            }
            this.MergeUnknownFields(other.UnknownFields);
            return this;
          }
          
7660
          public override Builder MergeFrom(pb::ICodedInputStream input) {
7661 7662 7663
            return MergeFrom(input, pb::ExtensionRegistry.Empty);
          }
          
7664
          public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
7665
            PrepareBuilder();
7666
            pb::UnknownFieldSet.Builder unknownFields = null;
7667 7668 7669
            uint tag;
            string field_name;
            while (input.ReadTag(out tag, out field_name)) {
7670 7671 7672 7673 7674 7675 7676 7677 7678 7679 7680 7681
              if(tag == 0 && field_name != null) {
                int field_ordinal = global::System.Array.BinarySearch(_namePartFieldNames, field_name, global::System.StringComparer.Ordinal);
                if(field_ordinal >= 0)
                  tag = _namePartFieldTags[field_ordinal];
                else {
                  if (unknownFields == null) {
                    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
                  }
                  ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
                  continue;
                }
              }
7682 7683
              switch (tag) {
                case 0: {
7684
                  throw pb::InvalidProtocolBufferException.InvalidTag();
7685 7686 7687 7688 7689
                }
                default: {
                  if (pb::WireFormat.IsEndGroupTag(tag)) {
                    if (unknownFields != null) {
                      this.UnknownFields = unknownFields.Build();
7690
                    }
7691 7692 7693 7694 7695
                    return this;
                  }
                  if (unknownFields == null) {
                    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
                  }
7696
                  ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
7697 7698 7699
                  break;
                }
                case 10: {
7700
                  result.hasNamePart_ = input.ReadString(ref result.namePart_);
7701 7702 7703
                  break;
                }
                case 16: {
7704
                  result.hasIsExtension = input.ReadBool(ref result.isExtension_);
7705 7706 7707 7708
                  break;
                }
              }
            }
7709 7710 7711 7712 7713
            
            if (unknownFields != null) {
              this.UnknownFields = unknownFields.Build();
            }
            return this;
7714 7715 7716 7717
          }
          
          
          public bool HasNamePart_ {
7718
            get { return result.hasNamePart_; }
7719 7720 7721 7722 7723 7724 7725
          }
          public string NamePart_ {
            get { return result.NamePart_; }
            set { SetNamePart_(value); }
          }
          public Builder SetNamePart_(string value) {
            pb::ThrowHelper.ThrowIfNull(value, "value");
7726
            PrepareBuilder();
7727 7728 7729 7730 7731
            result.hasNamePart_ = true;
            result.namePart_ = value;
            return this;
          }
          public Builder ClearNamePart_() {
7732
            PrepareBuilder();
7733 7734 7735 7736 7737 7738
            result.hasNamePart_ = false;
            result.namePart_ = "";
            return this;
          }
          
          public bool HasIsExtension {
7739
            get { return result.hasIsExtension; }
7740 7741 7742 7743 7744 7745
          }
          public bool IsExtension {
            get { return result.IsExtension; }
            set { SetIsExtension(value); }
          }
          public Builder SetIsExtension(bool value) {
7746
            PrepareBuilder();
7747 7748 7749 7750 7751
            result.hasIsExtension = true;
            result.isExtension_ = value;
            return this;
          }
          public Builder ClearIsExtension() {
7752
            PrepareBuilder();
7753 7754 7755 7756 7757 7758 7759 7760 7761 7762
            result.hasIsExtension = false;
            result.isExtension_ = false;
            return this;
          }
        }
        static NamePart() {
          object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
        }
      }
      
7763 7764
    }
    #endregion
7765 7766 7767 7768 7769 7770 7771 7772 7773 7774 7775 7776 7777 7778 7779 7780 7781 7782 7783 7784 7785 7786 7787 7788 7789
    
    public const int NameFieldNumber = 2;
    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart> name_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart>();
    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart> NameList {
      get { return name_; }
    }
    public int NameCount {
      get { return name_.Count; }
    }
    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart GetName(int index) {
      return name_[index];
    }
    
    public const int IdentifierValueFieldNumber = 3;
    private bool hasIdentifierValue;
    private string identifierValue_ = "";
    public bool HasIdentifierValue {
      get { return hasIdentifierValue; }
    }
    public string IdentifierValue {
      get { return identifierValue_; }
    }
    
    public const int PositiveIntValueFieldNumber = 4;
    private bool hasPositiveIntValue;
csharptest's avatar
csharptest committed
7790
    private ulong positiveIntValue_;
7791 7792 7793 7794 7795 7796 7797 7798 7799 7800
    public bool HasPositiveIntValue {
      get { return hasPositiveIntValue; }
    }
    [global::System.CLSCompliant(false)]
    public ulong PositiveIntValue {
      get { return positiveIntValue_; }
    }
    
    public const int NegativeIntValueFieldNumber = 5;
    private bool hasNegativeIntValue;
csharptest's avatar
csharptest committed
7801
    private long negativeIntValue_;
7802 7803 7804 7805 7806 7807 7808 7809 7810
    public bool HasNegativeIntValue {
      get { return hasNegativeIntValue; }
    }
    public long NegativeIntValue {
      get { return negativeIntValue_; }
    }
    
    public const int DoubleValueFieldNumber = 6;
    private bool hasDoubleValue;
csharptest's avatar
csharptest committed
7811
    private double doubleValue_;
7812 7813 7814 7815 7816 7817 7818 7819 7820 7821 7822 7823 7824 7825 7826 7827 7828 7829 7830 7831 7832 7833 7834 7835 7836 7837
    public bool HasDoubleValue {
      get { return hasDoubleValue; }
    }
    public double DoubleValue {
      get { return doubleValue_; }
    }
    
    public const int StringValueFieldNumber = 7;
    private bool hasStringValue;
    private pb::ByteString stringValue_ = pb::ByteString.Empty;
    public bool HasStringValue {
      get { return hasStringValue; }
    }
    public pb::ByteString StringValue {
      get { return stringValue_; }
    }
    
    public override bool IsInitialized {
      get {
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart element in NameList) {
          if (!element.IsInitialized) return false;
        }
        return true;
      }
    }
    
7838
    public override void WriteTo(pb::ICodedOutputStream output) {
7839
      int size = SerializedSize;
7840
      string[] field_names = _uninterpretedOptionFieldNames;
7841
      if (name_.Count > 0) {
7842
        output.WriteMessageArray(2, field_names[2], name_);
7843
      }
7844
      if (hasIdentifierValue) {
7845
        output.WriteString(3, field_names[1], IdentifierValue);
7846
      }
7847
      if (hasPositiveIntValue) {
7848
        output.WriteUInt64(4, field_names[4], PositiveIntValue);
7849
      }
7850
      if (hasNegativeIntValue) {
7851
        output.WriteInt64(5, field_names[3], NegativeIntValue);
7852
      }
7853
      if (hasDoubleValue) {
7854
        output.WriteDouble(6, field_names[0], DoubleValue);
7855
      }
7856
      if (hasStringValue) {
7857
        output.WriteBytes(7, field_names[5], StringValue);
7858 7859 7860 7861 7862 7863 7864 7865 7866 7867 7868 7869 7870 7871
      }
      UnknownFields.WriteTo(output);
    }
    
    private int memoizedSerializedSize = -1;
    public override int SerializedSize {
      get {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
        
        size = 0;
        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart element in NameList) {
          size += pb::CodedOutputStream.ComputeMessageSize(2, element);
        }
7872
        if (hasIdentifierValue) {
7873 7874
          size += pb::CodedOutputStream.ComputeStringSize(3, IdentifierValue);
        }
7875
        if (hasPositiveIntValue) {
7876 7877
          size += pb::CodedOutputStream.ComputeUInt64Size(4, PositiveIntValue);
        }
7878
        if (hasNegativeIntValue) {
7879 7880
          size += pb::CodedOutputStream.ComputeInt64Size(5, NegativeIntValue);
        }
7881
        if (hasDoubleValue) {
7882 7883
          size += pb::CodedOutputStream.ComputeDoubleSize(6, DoubleValue);
        }
7884
        if (hasStringValue) {
7885 7886 7887 7888 7889 7890 7891 7892 7893 7894 7895 7896 7897 7898 7899 7900 7901 7902 7903 7904 7905 7906 7907 7908 7909 7910 7911 7912 7913 7914 7915 7916
          size += pb::CodedOutputStream.ComputeBytesSize(7, StringValue);
        }
        size += UnknownFields.SerializedSize;
        memoizedSerializedSize = size;
        return size;
      }
    }
    
    public static UninterpretedOption ParseFrom(pb::ByteString data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static UninterpretedOption ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static UninterpretedOption ParseFrom(byte[] data) {
      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
    }
    public static UninterpretedOption ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
    }
    public static UninterpretedOption ParseFrom(global::System.IO.Stream input) {
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
    public static UninterpretedOption ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
    public static UninterpretedOption ParseDelimitedFrom(global::System.IO.Stream input) {
      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
    }
    public static UninterpretedOption ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
    }
7917
    public static UninterpretedOption ParseFrom(pb::ICodedInputStream input) {
7918 7919
      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
    }
7920
    public static UninterpretedOption ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
7921 7922
      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
    }
7923 7924 7925 7926 7927
    private UninterpretedOption MakeReadOnly() {
      name_.MakeReadOnly();
      return this;
    }
    
7928 7929 7930 7931
    public static Builder CreateBuilder() { return new Builder(); }
    public override Builder ToBuilder() { return CreateBuilder(this); }
    public override Builder CreateBuilderForType() { return new Builder(); }
    public static Builder CreateBuilder(UninterpretedOption prototype) {
7932
      return new Builder(prototype);
7933 7934
    }
    
7935 7936 7937
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]
7938 7939 7940 7941
    public sealed partial class Builder : pb::GeneratedBuilder<UninterpretedOption, Builder> {
      protected override Builder ThisBuilder {
        get { return this; }
      }
7942
      public Builder() {
7943 7944
        result = DefaultInstance;
        resultIsReadOnly = true;
7945 7946 7947
      }
      internal Builder(UninterpretedOption cloneFrom) {
        result = cloneFrom;
7948
        resultIsReadOnly = true;
7949 7950
      }
      
7951 7952
      private bool resultIsReadOnly;
      private UninterpretedOption result;
7953 7954
      
      private UninterpretedOption PrepareBuilder() {
7955
        if (resultIsReadOnly) {
7956 7957
          UninterpretedOption original = result;
          result = new UninterpretedOption();
7958
          resultIsReadOnly = false;
7959 7960 7961 7962
          MergeFrom(original);
        }
        return result;
      }
7963
      
7964 7965 7966
      public override bool IsInitialized {
        get { return result.IsInitialized; }
      }
7967 7968
      
      protected override UninterpretedOption MessageBeingBuilt {
7969
        get { return PrepareBuilder(); }
7970 7971 7972
      }
      
      public override Builder Clear() {
7973 7974
        result = DefaultInstance;
        resultIsReadOnly = true;
7975 7976 7977 7978
        return this;
      }
      
      public override Builder Clone() {
7979
        if (resultIsReadOnly) {
7980 7981 7982 7983
          return new Builder(result);
        } else {
          return new Builder().MergeFrom(result);
        }
7984 7985 7986 7987 7988 7989 7990 7991 7992 7993 7994
      }
      
      public override pbd::MessageDescriptor DescriptorForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Descriptor; }
      }
      
      public override UninterpretedOption DefaultInstanceForType {
        get { return global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance; }
      }
      
      public override UninterpretedOption BuildPartial() {
7995
        if (resultIsReadOnly) {
7996
          return result;
7997
        }
7998 7999
        resultIsReadOnly = true;
        return result.MakeReadOnly();
8000 8001 8002 8003 8004 8005 8006 8007 8008 8009 8010 8011 8012
      }
      
      public override Builder MergeFrom(pb::IMessage other) {
        if (other is UninterpretedOption) {
          return MergeFrom((UninterpretedOption) other);
        } else {
          base.MergeFrom(other);
          return this;
        }
      }
      
      public override Builder MergeFrom(UninterpretedOption other) {
        if (other == global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance) return this;
8013
        PrepareBuilder();
8014
        if (other.name_.Count != 0) {
8015
          result.name_.Add(other.name_);
8016 8017 8018 8019 8020 8021 8022 8023 8024 8025 8026 8027 8028 8029 8030 8031 8032 8033 8034 8035
        }
        if (other.HasIdentifierValue) {
          IdentifierValue = other.IdentifierValue;
        }
        if (other.HasPositiveIntValue) {
          PositiveIntValue = other.PositiveIntValue;
        }
        if (other.HasNegativeIntValue) {
          NegativeIntValue = other.NegativeIntValue;
        }
        if (other.HasDoubleValue) {
          DoubleValue = other.DoubleValue;
        }
        if (other.HasStringValue) {
          StringValue = other.StringValue;
        }
        this.MergeUnknownFields(other.UnknownFields);
        return this;
      }
      
8036
      public override Builder MergeFrom(pb::ICodedInputStream input) {
8037 8038 8039
        return MergeFrom(input, pb::ExtensionRegistry.Empty);
      }
      
8040
      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
8041
        PrepareBuilder();
8042
        pb::UnknownFieldSet.Builder unknownFields = null;
8043 8044 8045
        uint tag;
        string field_name;
        while (input.ReadTag(out tag, out field_name)) {
8046 8047 8048 8049 8050 8051 8052 8053 8054 8055 8056 8057
          if(tag == 0 && field_name != null) {
            int field_ordinal = global::System.Array.BinarySearch(_uninterpretedOptionFieldNames, field_name, global::System.StringComparer.Ordinal);
            if(field_ordinal >= 0)
              tag = _uninterpretedOptionFieldTags[field_ordinal];
            else {
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
              continue;
            }
          }
8058 8059
          switch (tag) {
            case 0: {
8060
              throw pb::InvalidProtocolBufferException.InvalidTag();
8061 8062 8063 8064 8065 8066 8067 8068 8069 8070 8071
            }
            default: {
              if (pb::WireFormat.IsEndGroupTag(tag)) {
                if (unknownFields != null) {
                  this.UnknownFields = unknownFields.Build();
                }
                return this;
              }
              if (unknownFields == null) {
                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
              }
8072
              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
8073 8074 8075
              break;
            }
            case 18: {
8076
              input.ReadMessageArray(tag, field_name, result.name_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.DefaultInstance, extensionRegistry);
8077 8078 8079
              break;
            }
            case 26: {
8080
              result.hasIdentifierValue = input.ReadString(ref result.identifierValue_);
8081 8082 8083
              break;
            }
            case 32: {
8084
              result.hasPositiveIntValue = input.ReadUInt64(ref result.positiveIntValue_);
8085 8086 8087
              break;
            }
            case 40: {
8088
              result.hasNegativeIntValue = input.ReadInt64(ref result.negativeIntValue_);
8089 8090 8091
              break;
            }
            case 49: {
8092
              result.hasDoubleValue = input.ReadDouble(ref result.doubleValue_);
8093 8094 8095
              break;
            }
            case 58: {
8096
              result.hasStringValue = input.ReadBytes(ref result.stringValue_);
8097 8098 8099 8100
              break;
            }
          }
        }
8101 8102 8103 8104 8105
        
        if (unknownFields != null) {
          this.UnknownFields = unknownFields.Build();
        }
        return this;
8106 8107 8108 8109
      }
      
      
      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart> NameList {
8110
        get { return PrepareBuilder().name_; }
8111 8112 8113 8114 8115 8116 8117 8118 8119
      }
      public int NameCount {
        get { return result.NameCount; }
      }
      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart GetName(int index) {
        return result.GetName(index);
      }
      public Builder SetName(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
8120
        PrepareBuilder();
8121 8122 8123 8124 8125
        result.name_[index] = value;
        return this;
      }
      public Builder SetName(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
8126
        PrepareBuilder();
8127 8128 8129 8130 8131
        result.name_[index] = builderForValue.Build();
        return this;
      }
      public Builder AddName(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
8132
        PrepareBuilder();
8133 8134 8135 8136 8137
        result.name_.Add(value);
        return this;
      }
      public Builder AddName(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.Builder builderForValue) {
        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
8138
        PrepareBuilder();
8139 8140 8141 8142
        result.name_.Add(builderForValue.Build());
        return this;
      }
      public Builder AddRangeName(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart> values) {
8143
        PrepareBuilder();
8144
        result.name_.Add(values);
8145 8146 8147
        return this;
      }
      public Builder ClearName() {
8148
        PrepareBuilder();
8149 8150 8151 8152 8153
        result.name_.Clear();
        return this;
      }
      
      public bool HasIdentifierValue {
8154
        get { return result.hasIdentifierValue; }
8155 8156 8157 8158 8159 8160 8161
      }
      public string IdentifierValue {
        get { return result.IdentifierValue; }
        set { SetIdentifierValue(value); }
      }
      public Builder SetIdentifierValue(string value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
8162
        PrepareBuilder();
8163 8164 8165 8166 8167
        result.hasIdentifierValue = true;
        result.identifierValue_ = value;
        return this;
      }
      public Builder ClearIdentifierValue() {
8168
        PrepareBuilder();
8169 8170 8171 8172 8173 8174
        result.hasIdentifierValue = false;
        result.identifierValue_ = "";
        return this;
      }
      
      public bool HasPositiveIntValue {
8175
        get { return result.hasPositiveIntValue; }
8176 8177 8178 8179 8180 8181 8182 8183
      }
      [global::System.CLSCompliant(false)]
      public ulong PositiveIntValue {
        get { return result.PositiveIntValue; }
        set { SetPositiveIntValue(value); }
      }
      [global::System.CLSCompliant(false)]
      public Builder SetPositiveIntValue(ulong value) {
8184
        PrepareBuilder();
8185 8186 8187 8188 8189
        result.hasPositiveIntValue = true;
        result.positiveIntValue_ = value;
        return this;
      }
      public Builder ClearPositiveIntValue() {
8190
        PrepareBuilder();
8191 8192 8193 8194 8195 8196
        result.hasPositiveIntValue = false;
        result.positiveIntValue_ = 0UL;
        return this;
      }
      
      public bool HasNegativeIntValue {
8197
        get { return result.hasNegativeIntValue; }
8198 8199 8200 8201 8202 8203
      }
      public long NegativeIntValue {
        get { return result.NegativeIntValue; }
        set { SetNegativeIntValue(value); }
      }
      public Builder SetNegativeIntValue(long value) {
8204
        PrepareBuilder();
8205 8206 8207 8208 8209
        result.hasNegativeIntValue = true;
        result.negativeIntValue_ = value;
        return this;
      }
      public Builder ClearNegativeIntValue() {
8210
        PrepareBuilder();
8211 8212 8213 8214 8215 8216
        result.hasNegativeIntValue = false;
        result.negativeIntValue_ = 0L;
        return this;
      }
      
      public bool HasDoubleValue {
8217
        get { return result.hasDoubleValue; }
8218 8219 8220 8221 8222 8223
      }
      public double DoubleValue {
        get { return result.DoubleValue; }
        set { SetDoubleValue(value); }
      }
      public Builder SetDoubleValue(double value) {
8224
        PrepareBuilder();
8225 8226 8227 8228 8229
        result.hasDoubleValue = true;
        result.doubleValue_ = value;
        return this;
      }
      public Builder ClearDoubleValue() {
8230
        PrepareBuilder();
8231 8232 8233 8234 8235 8236
        result.hasDoubleValue = false;
        result.doubleValue_ = 0D;
        return this;
      }
      
      public bool HasStringValue {
8237
        get { return result.hasStringValue; }
8238 8239 8240 8241 8242 8243 8244
      }
      public pb::ByteString StringValue {
        get { return result.StringValue; }
        set { SetStringValue(value); }
      }
      public Builder SetStringValue(pb::ByteString value) {
        pb::ThrowHelper.ThrowIfNull(value, "value");
8245
        PrepareBuilder();
8246 8247 8248 8249 8250
        result.hasStringValue = true;
        result.stringValue_ = value;
        return this;
      }
      public Builder ClearStringValue() {
8251
        PrepareBuilder();
8252 8253 8254 8255 8256 8257 8258 8259 8260 8261 8262 8263 8264
        result.hasStringValue = false;
        result.stringValue_ = pb::ByteString.Empty;
        return this;
      }
    }
    static UninterpretedOption() {
      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
    }
  }
  
  #endregion
  
}
8265 8266

#endregion Designer generated code