descriptor.pb.cc revision fbaaef999ba563838ebd00874ed8a1c01fbf286d
1// Generated by the protocol buffer compiler.  DO NOT EDIT!
2
3#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
4#include "google/protobuf/descriptor.pb.h"
5#include <google/protobuf/stubs/once.h>
6#include <google/protobuf/io/coded_stream.h>
7#include <google/protobuf/wire_format_lite_inl.h>
8#include <google/protobuf/descriptor.h>
9#include <google/protobuf/reflection_ops.h>
10#include <google/protobuf/wire_format.h>
11
12namespace google {
13namespace protobuf {
14
15namespace {
16
17const ::google::protobuf::Descriptor* FileDescriptorSet_descriptor_ = NULL;
18const ::google::protobuf::internal::GeneratedMessageReflection*
19  FileDescriptorSet_reflection_ = NULL;
20const ::google::protobuf::Descriptor* FileDescriptorProto_descriptor_ = NULL;
21const ::google::protobuf::internal::GeneratedMessageReflection*
22  FileDescriptorProto_reflection_ = NULL;
23const ::google::protobuf::Descriptor* DescriptorProto_descriptor_ = NULL;
24const ::google::protobuf::internal::GeneratedMessageReflection*
25  DescriptorProto_reflection_ = NULL;
26const ::google::protobuf::Descriptor* DescriptorProto_ExtensionRange_descriptor_ = NULL;
27const ::google::protobuf::internal::GeneratedMessageReflection*
28  DescriptorProto_ExtensionRange_reflection_ = NULL;
29const ::google::protobuf::Descriptor* FieldDescriptorProto_descriptor_ = NULL;
30const ::google::protobuf::internal::GeneratedMessageReflection*
31  FieldDescriptorProto_reflection_ = NULL;
32const ::google::protobuf::EnumDescriptor* FieldDescriptorProto_Type_descriptor_ = NULL;
33const ::google::protobuf::EnumDescriptor* FieldDescriptorProto_Label_descriptor_ = NULL;
34const ::google::protobuf::Descriptor* EnumDescriptorProto_descriptor_ = NULL;
35const ::google::protobuf::internal::GeneratedMessageReflection*
36  EnumDescriptorProto_reflection_ = NULL;
37const ::google::protobuf::Descriptor* EnumValueDescriptorProto_descriptor_ = NULL;
38const ::google::protobuf::internal::GeneratedMessageReflection*
39  EnumValueDescriptorProto_reflection_ = NULL;
40const ::google::protobuf::Descriptor* ServiceDescriptorProto_descriptor_ = NULL;
41const ::google::protobuf::internal::GeneratedMessageReflection*
42  ServiceDescriptorProto_reflection_ = NULL;
43const ::google::protobuf::Descriptor* MethodDescriptorProto_descriptor_ = NULL;
44const ::google::protobuf::internal::GeneratedMessageReflection*
45  MethodDescriptorProto_reflection_ = NULL;
46const ::google::protobuf::Descriptor* FileOptions_descriptor_ = NULL;
47const ::google::protobuf::internal::GeneratedMessageReflection*
48  FileOptions_reflection_ = NULL;
49const ::google::protobuf::EnumDescriptor* FileOptions_OptimizeMode_descriptor_ = NULL;
50const ::google::protobuf::Descriptor* MessageOptions_descriptor_ = NULL;
51const ::google::protobuf::internal::GeneratedMessageReflection*
52  MessageOptions_reflection_ = NULL;
53const ::google::protobuf::Descriptor* FieldOptions_descriptor_ = NULL;
54const ::google::protobuf::internal::GeneratedMessageReflection*
55  FieldOptions_reflection_ = NULL;
56const ::google::protobuf::EnumDescriptor* FieldOptions_CType_descriptor_ = NULL;
57const ::google::protobuf::Descriptor* EnumOptions_descriptor_ = NULL;
58const ::google::protobuf::internal::GeneratedMessageReflection*
59  EnumOptions_reflection_ = NULL;
60const ::google::protobuf::Descriptor* EnumValueOptions_descriptor_ = NULL;
61const ::google::protobuf::internal::GeneratedMessageReflection*
62  EnumValueOptions_reflection_ = NULL;
63const ::google::protobuf::Descriptor* ServiceOptions_descriptor_ = NULL;
64const ::google::protobuf::internal::GeneratedMessageReflection*
65  ServiceOptions_reflection_ = NULL;
66const ::google::protobuf::Descriptor* MethodOptions_descriptor_ = NULL;
67const ::google::protobuf::internal::GeneratedMessageReflection*
68  MethodOptions_reflection_ = NULL;
69const ::google::protobuf::Descriptor* UninterpretedOption_descriptor_ = NULL;
70const ::google::protobuf::internal::GeneratedMessageReflection*
71  UninterpretedOption_reflection_ = NULL;
72const ::google::protobuf::Descriptor* UninterpretedOption_NamePart_descriptor_ = NULL;
73const ::google::protobuf::internal::GeneratedMessageReflection*
74  UninterpretedOption_NamePart_reflection_ = NULL;
75
76}  // namespace
77
78
79void protobuf_AssignDesc_google_2fprotobuf_2fdescriptor_2eproto() {
80  protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
81  const ::google::protobuf::FileDescriptor* file =
82    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
83      "google/protobuf/descriptor.proto");
84  GOOGLE_CHECK(file != NULL);
85  FileDescriptorSet_descriptor_ = file->message_type(0);
86  static const int FileDescriptorSet_offsets_[1] = {
87    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorSet, file_),
88  };
89  FileDescriptorSet_reflection_ =
90    new ::google::protobuf::internal::GeneratedMessageReflection(
91      FileDescriptorSet_descriptor_,
92      FileDescriptorSet::default_instance_,
93      FileDescriptorSet_offsets_,
94      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorSet, _has_bits_[0]),
95      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorSet, _unknown_fields_),
96      -1,
97      ::google::protobuf::DescriptorPool::generated_pool(),
98      ::google::protobuf::MessageFactory::generated_factory(),
99      sizeof(FileDescriptorSet));
100  FileDescriptorProto_descriptor_ = file->message_type(1);
101  static const int FileDescriptorProto_offsets_[8] = {
102    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, name_),
103    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, package_),
104    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, dependency_),
105    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, message_type_),
106    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, enum_type_),
107    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, service_),
108    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, extension_),
109    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, options_),
110  };
111  FileDescriptorProto_reflection_ =
112    new ::google::protobuf::internal::GeneratedMessageReflection(
113      FileDescriptorProto_descriptor_,
114      FileDescriptorProto::default_instance_,
115      FileDescriptorProto_offsets_,
116      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, _has_bits_[0]),
117      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, _unknown_fields_),
118      -1,
119      ::google::protobuf::DescriptorPool::generated_pool(),
120      ::google::protobuf::MessageFactory::generated_factory(),
121      sizeof(FileDescriptorProto));
122  DescriptorProto_descriptor_ = file->message_type(2);
123  static const int DescriptorProto_offsets_[7] = {
124    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, name_),
125    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, field_),
126    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, extension_),
127    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, nested_type_),
128    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, enum_type_),
129    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, extension_range_),
130    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, options_),
131  };
132  DescriptorProto_reflection_ =
133    new ::google::protobuf::internal::GeneratedMessageReflection(
134      DescriptorProto_descriptor_,
135      DescriptorProto::default_instance_,
136      DescriptorProto_offsets_,
137      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, _has_bits_[0]),
138      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, _unknown_fields_),
139      -1,
140      ::google::protobuf::DescriptorPool::generated_pool(),
141      ::google::protobuf::MessageFactory::generated_factory(),
142      sizeof(DescriptorProto));
143  DescriptorProto_ExtensionRange_descriptor_ = DescriptorProto_descriptor_->nested_type(0);
144  static const int DescriptorProto_ExtensionRange_offsets_[2] = {
145    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ExtensionRange, start_),
146    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ExtensionRange, end_),
147  };
148  DescriptorProto_ExtensionRange_reflection_ =
149    new ::google::protobuf::internal::GeneratedMessageReflection(
150      DescriptorProto_ExtensionRange_descriptor_,
151      DescriptorProto_ExtensionRange::default_instance_,
152      DescriptorProto_ExtensionRange_offsets_,
153      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ExtensionRange, _has_bits_[0]),
154      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ExtensionRange, _unknown_fields_),
155      -1,
156      ::google::protobuf::DescriptorPool::generated_pool(),
157      ::google::protobuf::MessageFactory::generated_factory(),
158      sizeof(DescriptorProto_ExtensionRange));
159  FieldDescriptorProto_descriptor_ = file->message_type(3);
160  static const int FieldDescriptorProto_offsets_[8] = {
161    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, name_),
162    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, number_),
163    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, label_),
164    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, type_),
165    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, type_name_),
166    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, extendee_),
167    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, default_value_),
168    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, options_),
169  };
170  FieldDescriptorProto_reflection_ =
171    new ::google::protobuf::internal::GeneratedMessageReflection(
172      FieldDescriptorProto_descriptor_,
173      FieldDescriptorProto::default_instance_,
174      FieldDescriptorProto_offsets_,
175      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, _has_bits_[0]),
176      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, _unknown_fields_),
177      -1,
178      ::google::protobuf::DescriptorPool::generated_pool(),
179      ::google::protobuf::MessageFactory::generated_factory(),
180      sizeof(FieldDescriptorProto));
181  FieldDescriptorProto_Type_descriptor_ = FieldDescriptorProto_descriptor_->enum_type(0);
182  FieldDescriptorProto_Label_descriptor_ = FieldDescriptorProto_descriptor_->enum_type(1);
183  EnumDescriptorProto_descriptor_ = file->message_type(4);
184  static const int EnumDescriptorProto_offsets_[3] = {
185    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumDescriptorProto, name_),
186    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumDescriptorProto, value_),
187    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumDescriptorProto, options_),
188  };
189  EnumDescriptorProto_reflection_ =
190    new ::google::protobuf::internal::GeneratedMessageReflection(
191      EnumDescriptorProto_descriptor_,
192      EnumDescriptorProto::default_instance_,
193      EnumDescriptorProto_offsets_,
194      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumDescriptorProto, _has_bits_[0]),
195      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumDescriptorProto, _unknown_fields_),
196      -1,
197      ::google::protobuf::DescriptorPool::generated_pool(),
198      ::google::protobuf::MessageFactory::generated_factory(),
199      sizeof(EnumDescriptorProto));
200  EnumValueDescriptorProto_descriptor_ = file->message_type(5);
201  static const int EnumValueDescriptorProto_offsets_[3] = {
202    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueDescriptorProto, name_),
203    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueDescriptorProto, number_),
204    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueDescriptorProto, options_),
205  };
206  EnumValueDescriptorProto_reflection_ =
207    new ::google::protobuf::internal::GeneratedMessageReflection(
208      EnumValueDescriptorProto_descriptor_,
209      EnumValueDescriptorProto::default_instance_,
210      EnumValueDescriptorProto_offsets_,
211      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueDescriptorProto, _has_bits_[0]),
212      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueDescriptorProto, _unknown_fields_),
213      -1,
214      ::google::protobuf::DescriptorPool::generated_pool(),
215      ::google::protobuf::MessageFactory::generated_factory(),
216      sizeof(EnumValueDescriptorProto));
217  ServiceDescriptorProto_descriptor_ = file->message_type(6);
218  static const int ServiceDescriptorProto_offsets_[3] = {
219    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceDescriptorProto, name_),
220    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceDescriptorProto, method_),
221    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceDescriptorProto, options_),
222  };
223  ServiceDescriptorProto_reflection_ =
224    new ::google::protobuf::internal::GeneratedMessageReflection(
225      ServiceDescriptorProto_descriptor_,
226      ServiceDescriptorProto::default_instance_,
227      ServiceDescriptorProto_offsets_,
228      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceDescriptorProto, _has_bits_[0]),
229      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceDescriptorProto, _unknown_fields_),
230      -1,
231      ::google::protobuf::DescriptorPool::generated_pool(),
232      ::google::protobuf::MessageFactory::generated_factory(),
233      sizeof(ServiceDescriptorProto));
234  MethodDescriptorProto_descriptor_ = file->message_type(7);
235  static const int MethodDescriptorProto_offsets_[4] = {
236    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, name_),
237    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, input_type_),
238    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, output_type_),
239    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, options_),
240  };
241  MethodDescriptorProto_reflection_ =
242    new ::google::protobuf::internal::GeneratedMessageReflection(
243      MethodDescriptorProto_descriptor_,
244      MethodDescriptorProto::default_instance_,
245      MethodDescriptorProto_offsets_,
246      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, _has_bits_[0]),
247      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, _unknown_fields_),
248      -1,
249      ::google::protobuf::DescriptorPool::generated_pool(),
250      ::google::protobuf::MessageFactory::generated_factory(),
251      sizeof(MethodDescriptorProto));
252  FileOptions_descriptor_ = file->message_type(8);
253  static const int FileOptions_offsets_[5] = {
254    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, java_package_),
255    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, java_outer_classname_),
256    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, java_multiple_files_),
257    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, optimize_for_),
258    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, uninterpreted_option_),
259  };
260  FileOptions_reflection_ =
261    new ::google::protobuf::internal::GeneratedMessageReflection(
262      FileOptions_descriptor_,
263      FileOptions::default_instance_,
264      FileOptions_offsets_,
265      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, _has_bits_[0]),
266      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, _unknown_fields_),
267      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, _extensions_),
268      ::google::protobuf::DescriptorPool::generated_pool(),
269      ::google::protobuf::MessageFactory::generated_factory(),
270      sizeof(FileOptions));
271  FileOptions_OptimizeMode_descriptor_ = FileOptions_descriptor_->enum_type(0);
272  MessageOptions_descriptor_ = file->message_type(9);
273  static const int MessageOptions_offsets_[3] = {
274    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, message_set_wire_format_),
275    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, no_standard_descriptor_accessor_),
276    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, uninterpreted_option_),
277  };
278  MessageOptions_reflection_ =
279    new ::google::protobuf::internal::GeneratedMessageReflection(
280      MessageOptions_descriptor_,
281      MessageOptions::default_instance_,
282      MessageOptions_offsets_,
283      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, _has_bits_[0]),
284      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, _unknown_fields_),
285      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, _extensions_),
286      ::google::protobuf::DescriptorPool::generated_pool(),
287      ::google::protobuf::MessageFactory::generated_factory(),
288      sizeof(MessageOptions));
289  FieldOptions_descriptor_ = file->message_type(10);
290  static const int FieldOptions_offsets_[5] = {
291    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, ctype_),
292    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, packed_),
293    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, deprecated_),
294    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, experimental_map_key_),
295    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, uninterpreted_option_),
296  };
297  FieldOptions_reflection_ =
298    new ::google::protobuf::internal::GeneratedMessageReflection(
299      FieldOptions_descriptor_,
300      FieldOptions::default_instance_,
301      FieldOptions_offsets_,
302      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, _has_bits_[0]),
303      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, _unknown_fields_),
304      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, _extensions_),
305      ::google::protobuf::DescriptorPool::generated_pool(),
306      ::google::protobuf::MessageFactory::generated_factory(),
307      sizeof(FieldOptions));
308  FieldOptions_CType_descriptor_ = FieldOptions_descriptor_->enum_type(0);
309  EnumOptions_descriptor_ = file->message_type(11);
310  static const int EnumOptions_offsets_[1] = {
311    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumOptions, uninterpreted_option_),
312  };
313  EnumOptions_reflection_ =
314    new ::google::protobuf::internal::GeneratedMessageReflection(
315      EnumOptions_descriptor_,
316      EnumOptions::default_instance_,
317      EnumOptions_offsets_,
318      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumOptions, _has_bits_[0]),
319      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumOptions, _unknown_fields_),
320      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumOptions, _extensions_),
321      ::google::protobuf::DescriptorPool::generated_pool(),
322      ::google::protobuf::MessageFactory::generated_factory(),
323      sizeof(EnumOptions));
324  EnumValueOptions_descriptor_ = file->message_type(12);
325  static const int EnumValueOptions_offsets_[1] = {
326    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueOptions, uninterpreted_option_),
327  };
328  EnumValueOptions_reflection_ =
329    new ::google::protobuf::internal::GeneratedMessageReflection(
330      EnumValueOptions_descriptor_,
331      EnumValueOptions::default_instance_,
332      EnumValueOptions_offsets_,
333      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueOptions, _has_bits_[0]),
334      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueOptions, _unknown_fields_),
335      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueOptions, _extensions_),
336      ::google::protobuf::DescriptorPool::generated_pool(),
337      ::google::protobuf::MessageFactory::generated_factory(),
338      sizeof(EnumValueOptions));
339  ServiceOptions_descriptor_ = file->message_type(13);
340  static const int ServiceOptions_offsets_[1] = {
341    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceOptions, uninterpreted_option_),
342  };
343  ServiceOptions_reflection_ =
344    new ::google::protobuf::internal::GeneratedMessageReflection(
345      ServiceOptions_descriptor_,
346      ServiceOptions::default_instance_,
347      ServiceOptions_offsets_,
348      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceOptions, _has_bits_[0]),
349      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceOptions, _unknown_fields_),
350      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceOptions, _extensions_),
351      ::google::protobuf::DescriptorPool::generated_pool(),
352      ::google::protobuf::MessageFactory::generated_factory(),
353      sizeof(ServiceOptions));
354  MethodOptions_descriptor_ = file->message_type(14);
355  static const int MethodOptions_offsets_[1] = {
356    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodOptions, uninterpreted_option_),
357  };
358  MethodOptions_reflection_ =
359    new ::google::protobuf::internal::GeneratedMessageReflection(
360      MethodOptions_descriptor_,
361      MethodOptions::default_instance_,
362      MethodOptions_offsets_,
363      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodOptions, _has_bits_[0]),
364      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodOptions, _unknown_fields_),
365      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodOptions, _extensions_),
366      ::google::protobuf::DescriptorPool::generated_pool(),
367      ::google::protobuf::MessageFactory::generated_factory(),
368      sizeof(MethodOptions));
369  UninterpretedOption_descriptor_ = file->message_type(15);
370  static const int UninterpretedOption_offsets_[6] = {
371    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, name_),
372    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, identifier_value_),
373    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, positive_int_value_),
374    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, negative_int_value_),
375    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, double_value_),
376    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, string_value_),
377  };
378  UninterpretedOption_reflection_ =
379    new ::google::protobuf::internal::GeneratedMessageReflection(
380      UninterpretedOption_descriptor_,
381      UninterpretedOption::default_instance_,
382      UninterpretedOption_offsets_,
383      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, _has_bits_[0]),
384      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, _unknown_fields_),
385      -1,
386      ::google::protobuf::DescriptorPool::generated_pool(),
387      ::google::protobuf::MessageFactory::generated_factory(),
388      sizeof(UninterpretedOption));
389  UninterpretedOption_NamePart_descriptor_ = UninterpretedOption_descriptor_->nested_type(0);
390  static const int UninterpretedOption_NamePart_offsets_[2] = {
391    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption_NamePart, name_part_),
392    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption_NamePart, is_extension_),
393  };
394  UninterpretedOption_NamePart_reflection_ =
395    new ::google::protobuf::internal::GeneratedMessageReflection(
396      UninterpretedOption_NamePart_descriptor_,
397      UninterpretedOption_NamePart::default_instance_,
398      UninterpretedOption_NamePart_offsets_,
399      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption_NamePart, _has_bits_[0]),
400      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption_NamePart, _unknown_fields_),
401      -1,
402      ::google::protobuf::DescriptorPool::generated_pool(),
403      ::google::protobuf::MessageFactory::generated_factory(),
404      sizeof(UninterpretedOption_NamePart));
405}
406
407namespace {
408
409GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
410inline void protobuf_AssignDescriptorsOnce() {
411  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
412                 &protobuf_AssignDesc_google_2fprotobuf_2fdescriptor_2eproto);
413}
414
415void protobuf_RegisterTypes(const ::std::string&) {
416  protobuf_AssignDescriptorsOnce();
417  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
418    FileDescriptorSet_descriptor_, &FileDescriptorSet::default_instance());
419  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
420    FileDescriptorProto_descriptor_, &FileDescriptorProto::default_instance());
421  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
422    DescriptorProto_descriptor_, &DescriptorProto::default_instance());
423  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
424    DescriptorProto_ExtensionRange_descriptor_, &DescriptorProto_ExtensionRange::default_instance());
425  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
426    FieldDescriptorProto_descriptor_, &FieldDescriptorProto::default_instance());
427  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
428    EnumDescriptorProto_descriptor_, &EnumDescriptorProto::default_instance());
429  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
430    EnumValueDescriptorProto_descriptor_, &EnumValueDescriptorProto::default_instance());
431  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
432    ServiceDescriptorProto_descriptor_, &ServiceDescriptorProto::default_instance());
433  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
434    MethodDescriptorProto_descriptor_, &MethodDescriptorProto::default_instance());
435  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
436    FileOptions_descriptor_, &FileOptions::default_instance());
437  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
438    MessageOptions_descriptor_, &MessageOptions::default_instance());
439  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
440    FieldOptions_descriptor_, &FieldOptions::default_instance());
441  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
442    EnumOptions_descriptor_, &EnumOptions::default_instance());
443  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
444    EnumValueOptions_descriptor_, &EnumValueOptions::default_instance());
445  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
446    ServiceOptions_descriptor_, &ServiceOptions::default_instance());
447  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
448    MethodOptions_descriptor_, &MethodOptions::default_instance());
449  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
450    UninterpretedOption_descriptor_, &UninterpretedOption::default_instance());
451  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
452    UninterpretedOption_NamePart_descriptor_, &UninterpretedOption_NamePart::default_instance());
453}
454
455}  // namespace
456
457void protobuf_ShutdownFile_google_2fprotobuf_2fdescriptor_2eproto() {
458  delete FileDescriptorSet::default_instance_;
459  delete FileDescriptorSet_reflection_;
460  delete FileDescriptorProto::default_instance_;
461  delete FileDescriptorProto_reflection_;
462  delete DescriptorProto::default_instance_;
463  delete DescriptorProto_reflection_;
464  delete DescriptorProto_ExtensionRange::default_instance_;
465  delete DescriptorProto_ExtensionRange_reflection_;
466  delete FieldDescriptorProto::default_instance_;
467  delete FieldDescriptorProto_reflection_;
468  delete EnumDescriptorProto::default_instance_;
469  delete EnumDescriptorProto_reflection_;
470  delete EnumValueDescriptorProto::default_instance_;
471  delete EnumValueDescriptorProto_reflection_;
472  delete ServiceDescriptorProto::default_instance_;
473  delete ServiceDescriptorProto_reflection_;
474  delete MethodDescriptorProto::default_instance_;
475  delete MethodDescriptorProto_reflection_;
476  delete FileOptions::default_instance_;
477  delete FileOptions_reflection_;
478  delete MessageOptions::default_instance_;
479  delete MessageOptions_reflection_;
480  delete FieldOptions::default_instance_;
481  delete FieldOptions_reflection_;
482  delete EnumOptions::default_instance_;
483  delete EnumOptions_reflection_;
484  delete EnumValueOptions::default_instance_;
485  delete EnumValueOptions_reflection_;
486  delete ServiceOptions::default_instance_;
487  delete ServiceOptions_reflection_;
488  delete MethodOptions::default_instance_;
489  delete MethodOptions_reflection_;
490  delete UninterpretedOption::default_instance_;
491  delete UninterpretedOption_reflection_;
492  delete UninterpretedOption_NamePart::default_instance_;
493  delete UninterpretedOption_NamePart_reflection_;
494}
495
496void protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto() {
497  static bool already_here = false;
498  if (already_here) return;
499  already_here = true;
500  GOOGLE_PROTOBUF_VERIFY_VERSION;
501
502  ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
503    "\n google/protobuf/descriptor.proto\022\017goog"
504    "le.protobuf\"G\n\021FileDescriptorSet\0222\n\004file"
505    "\030\001 \003(\0132$.google.protobuf.FileDescriptorP"
506    "roto\"\334\002\n\023FileDescriptorProto\022\014\n\004name\030\001 \001"
507    "(\t\022\017\n\007package\030\002 \001(\t\022\022\n\ndependency\030\003 \003(\t\022"
508    "6\n\014message_type\030\004 \003(\0132 .google.protobuf."
509    "DescriptorProto\0227\n\tenum_type\030\005 \003(\0132$.goo"
510    "gle.protobuf.EnumDescriptorProto\0228\n\007serv"
511    "ice\030\006 \003(\0132\'.google.protobuf.ServiceDescr"
512    "iptorProto\0228\n\textension\030\007 \003(\0132%.google.p"
513    "rotobuf.FieldDescriptorProto\022-\n\007options\030"
514    "\010 \001(\0132\034.google.protobuf.FileOptions\"\251\003\n\017"
515    "DescriptorProto\022\014\n\004name\030\001 \001(\t\0224\n\005field\030\002"
516    " \003(\0132%.google.protobuf.FieldDescriptorPr"
517    "oto\0228\n\textension\030\006 \003(\0132%.google.protobuf"
518    ".FieldDescriptorProto\0225\n\013nested_type\030\003 \003"
519    "(\0132 .google.protobuf.DescriptorProto\0227\n\t"
520    "enum_type\030\004 \003(\0132$.google.protobuf.EnumDe"
521    "scriptorProto\022H\n\017extension_range\030\005 \003(\0132/"
522    ".google.protobuf.DescriptorProto.Extensi"
523    "onRange\0220\n\007options\030\007 \001(\0132\037.google.protob"
524    "uf.MessageOptions\032,\n\016ExtensionRange\022\r\n\005s"
525    "tart\030\001 \001(\005\022\013\n\003end\030\002 \001(\005\"\224\005\n\024FieldDescrip"
526    "torProto\022\014\n\004name\030\001 \001(\t\022\016\n\006number\030\003 \001(\005\022:"
527    "\n\005label\030\004 \001(\0162+.google.protobuf.FieldDes"
528    "criptorProto.Label\0228\n\004type\030\005 \001(\0162*.googl"
529    "e.protobuf.FieldDescriptorProto.Type\022\021\n\t"
530    "type_name\030\006 \001(\t\022\020\n\010extendee\030\002 \001(\t\022\025\n\rdef"
531    "ault_value\030\007 \001(\t\022.\n\007options\030\010 \001(\0132\035.goog"
532    "le.protobuf.FieldOptions\"\266\002\n\004Type\022\017\n\013TYP"
533    "E_DOUBLE\020\001\022\016\n\nTYPE_FLOAT\020\002\022\016\n\nTYPE_INT64"
534    "\020\003\022\017\n\013TYPE_UINT64\020\004\022\016\n\nTYPE_INT32\020\005\022\020\n\014T"
535    "YPE_FIXED64\020\006\022\020\n\014TYPE_FIXED32\020\007\022\r\n\tTYPE_"
536    "BOOL\020\010\022\017\n\013TYPE_STRING\020\t\022\016\n\nTYPE_GROUP\020\n\022"
537    "\020\n\014TYPE_MESSAGE\020\013\022\016\n\nTYPE_BYTES\020\014\022\017\n\013TYP"
538    "E_UINT32\020\r\022\r\n\tTYPE_ENUM\020\016\022\021\n\rTYPE_SFIXED"
539    "32\020\017\022\021\n\rTYPE_SFIXED64\020\020\022\017\n\013TYPE_SINT32\020\021"
540    "\022\017\n\013TYPE_SINT64\020\022\"C\n\005Label\022\022\n\016LABEL_OPTI"
541    "ONAL\020\001\022\022\n\016LABEL_REQUIRED\020\002\022\022\n\016LABEL_REPE"
542    "ATED\020\003\"\214\001\n\023EnumDescriptorProto\022\014\n\004name\030\001"
543    " \001(\t\0228\n\005value\030\002 \003(\0132).google.protobuf.En"
544    "umValueDescriptorProto\022-\n\007options\030\003 \001(\0132"
545    "\034.google.protobuf.EnumOptions\"l\n\030EnumVal"
546    "ueDescriptorProto\022\014\n\004name\030\001 \001(\t\022\016\n\006numbe"
547    "r\030\002 \001(\005\0222\n\007options\030\003 \001(\0132!.google.protob"
548    "uf.EnumValueOptions\"\220\001\n\026ServiceDescripto"
549    "rProto\022\014\n\004name\030\001 \001(\t\0226\n\006method\030\002 \003(\0132&.g"
550    "oogle.protobuf.MethodDescriptorProto\0220\n\007"
551    "options\030\003 \001(\0132\037.google.protobuf.ServiceO"
552    "ptions\"\177\n\025MethodDescriptorProto\022\014\n\004name\030"
553    "\001 \001(\t\022\022\n\ninput_type\030\002 \001(\t\022\023\n\013output_type"
554    "\030\003 \001(\t\022/\n\007options\030\004 \001(\0132\036.google.protobu"
555    "f.MethodOptions\"\271\002\n\013FileOptions\022\024\n\014java_"
556    "package\030\001 \001(\t\022\034\n\024java_outer_classname\030\010 "
557    "\001(\t\022\"\n\023java_multiple_files\030\n \001(\010:\005false\022"
558    "F\n\014optimize_for\030\t \001(\0162).google.protobuf."
559    "FileOptions.OptimizeMode:\005SPEED\022C\n\024unint"
560    "erpreted_option\030\347\007 \003(\0132$.google.protobuf"
561    ".UninterpretedOption\":\n\014OptimizeMode\022\t\n\005"
562    "SPEED\020\001\022\r\n\tCODE_SIZE\020\002\022\020\n\014LITE_RUNTIME\020\003"
563    "*\t\010\350\007\020\200\200\200\200\002\"\270\001\n\016MessageOptions\022&\n\027messag"
564    "e_set_wire_format\030\001 \001(\010:\005false\022.\n\037no_sta"
565    "ndard_descriptor_accessor\030\002 \001(\010:\005false\022C"
566    "\n\024uninterpreted_option\030\347\007 \003(\0132$.google.p"
567    "rotobuf.UninterpretedOption*\t\010\350\007\020\200\200\200\200\002\"\200"
568    "\002\n\014FieldOptions\0222\n\005ctype\030\001 \001(\0162#.google."
569    "protobuf.FieldOptions.CType\022\016\n\006packed\030\002 "
570    "\001(\010\022\031\n\ndeprecated\030\003 \001(\010:\005false\022\034\n\024experi"
571    "mental_map_key\030\t \001(\t\022C\n\024uninterpreted_op"
572    "tion\030\347\007 \003(\0132$.google.protobuf.Uninterpre"
573    "tedOption\"#\n\005CType\022\010\n\004CORD\020\001\022\020\n\014STRING_P"
574    "IECE\020\002*\t\010\350\007\020\200\200\200\200\002\"]\n\013EnumOptions\022C\n\024unin"
575    "terpreted_option\030\347\007 \003(\0132$.google.protobu"
576    "f.UninterpretedOption*\t\010\350\007\020\200\200\200\200\002\"b\n\020Enum"
577    "ValueOptions\022C\n\024uninterpreted_option\030\347\007 "
578    "\003(\0132$.google.protobuf.UninterpretedOptio"
579    "n*\t\010\350\007\020\200\200\200\200\002\"`\n\016ServiceOptions\022C\n\024uninte"
580    "rpreted_option\030\347\007 \003(\0132$.google.protobuf."
581    "UninterpretedOption*\t\010\350\007\020\200\200\200\200\002\"_\n\rMethod"
582    "Options\022C\n\024uninterpreted_option\030\347\007 \003(\0132$"
583    ".google.protobuf.UninterpretedOption*\t\010\350"
584    "\007\020\200\200\200\200\002\"\205\002\n\023UninterpretedOption\022;\n\004name\030"
585    "\002 \003(\0132-.google.protobuf.UninterpretedOpt"
586    "ion.NamePart\022\030\n\020identifier_value\030\003 \001(\t\022\032"
587    "\n\022positive_int_value\030\004 \001(\004\022\032\n\022negative_i"
588    "nt_value\030\005 \001(\003\022\024\n\014double_value\030\006 \001(\001\022\024\n\014"
589    "string_value\030\007 \001(\014\0323\n\010NamePart\022\021\n\tname_p"
590    "art\030\001 \002(\t\022\024\n\014is_extension\030\002 \002(\010B)\n\023com.g"
591    "oogle.protobufB\020DescriptorProtosH\001", 3554);
592  ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
593    "google/protobuf/descriptor.proto", &protobuf_RegisterTypes);
594  FileDescriptorSet::default_instance_ = new FileDescriptorSet();
595  FileDescriptorProto::default_instance_ = new FileDescriptorProto();
596  DescriptorProto::default_instance_ = new DescriptorProto();
597  DescriptorProto_ExtensionRange::default_instance_ = new DescriptorProto_ExtensionRange();
598  FieldDescriptorProto::default_instance_ = new FieldDescriptorProto();
599  EnumDescriptorProto::default_instance_ = new EnumDescriptorProto();
600  EnumValueDescriptorProto::default_instance_ = new EnumValueDescriptorProto();
601  ServiceDescriptorProto::default_instance_ = new ServiceDescriptorProto();
602  MethodDescriptorProto::default_instance_ = new MethodDescriptorProto();
603  FileOptions::default_instance_ = new FileOptions();
604  MessageOptions::default_instance_ = new MessageOptions();
605  FieldOptions::default_instance_ = new FieldOptions();
606  EnumOptions::default_instance_ = new EnumOptions();
607  EnumValueOptions::default_instance_ = new EnumValueOptions();
608  ServiceOptions::default_instance_ = new ServiceOptions();
609  MethodOptions::default_instance_ = new MethodOptions();
610  UninterpretedOption::default_instance_ = new UninterpretedOption();
611  UninterpretedOption_NamePart::default_instance_ = new UninterpretedOption_NamePart();
612  FileDescriptorSet::default_instance_->InitAsDefaultInstance();
613  FileDescriptorProto::default_instance_->InitAsDefaultInstance();
614  DescriptorProto::default_instance_->InitAsDefaultInstance();
615  DescriptorProto_ExtensionRange::default_instance_->InitAsDefaultInstance();
616  FieldDescriptorProto::default_instance_->InitAsDefaultInstance();
617  EnumDescriptorProto::default_instance_->InitAsDefaultInstance();
618  EnumValueDescriptorProto::default_instance_->InitAsDefaultInstance();
619  ServiceDescriptorProto::default_instance_->InitAsDefaultInstance();
620  MethodDescriptorProto::default_instance_->InitAsDefaultInstance();
621  FileOptions::default_instance_->InitAsDefaultInstance();
622  MessageOptions::default_instance_->InitAsDefaultInstance();
623  FieldOptions::default_instance_->InitAsDefaultInstance();
624  EnumOptions::default_instance_->InitAsDefaultInstance();
625  EnumValueOptions::default_instance_->InitAsDefaultInstance();
626  ServiceOptions::default_instance_->InitAsDefaultInstance();
627  MethodOptions::default_instance_->InitAsDefaultInstance();
628  UninterpretedOption::default_instance_->InitAsDefaultInstance();
629  UninterpretedOption_NamePart::default_instance_->InitAsDefaultInstance();
630  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_google_2fprotobuf_2fdescriptor_2eproto);
631}
632
633// Force AddDescriptors() to be called at static initialization time.
634struct StaticDescriptorInitializer_google_2fprotobuf_2fdescriptor_2eproto {
635  StaticDescriptorInitializer_google_2fprotobuf_2fdescriptor_2eproto() {
636    protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
637  }
638} static_descriptor_initializer_google_2fprotobuf_2fdescriptor_2eproto_;
639
640
641// ===================================================================
642
643#ifndef _MSC_VER
644const int FileDescriptorSet::kFileFieldNumber;
645#endif  // !_MSC_VER
646
647FileDescriptorSet::FileDescriptorSet() {
648  SharedCtor();
649}
650
651void FileDescriptorSet::InitAsDefaultInstance() {
652}
653
654FileDescriptorSet::FileDescriptorSet(const FileDescriptorSet& from) {
655  SharedCtor();
656  MergeFrom(from);
657}
658
659void FileDescriptorSet::SharedCtor() {
660  _cached_size_ = 0;
661  ::memset(_has_bits_, 0, sizeof(_has_bits_));
662}
663
664FileDescriptorSet::~FileDescriptorSet() {
665  SharedDtor();
666}
667
668void FileDescriptorSet::SharedDtor() {
669  if (this != default_instance_) {
670  }
671}
672
673const ::google::protobuf::Descriptor* FileDescriptorSet::descriptor() {
674  protobuf_AssignDescriptorsOnce();
675  return FileDescriptorSet_descriptor_;
676}
677
678const FileDescriptorSet& FileDescriptorSet::default_instance() {
679  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
680}
681
682FileDescriptorSet* FileDescriptorSet::default_instance_ = NULL;
683
684FileDescriptorSet* FileDescriptorSet::New() const {
685  return new FileDescriptorSet;
686}
687
688void FileDescriptorSet::Clear() {
689  file_.Clear();
690  ::memset(_has_bits_, 0, sizeof(_has_bits_));
691  mutable_unknown_fields()->Clear();
692}
693
694bool FileDescriptorSet::MergePartialFromCodedStream(
695    ::google::protobuf::io::CodedInputStream* input) {
696#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
697  ::google::protobuf::uint32 tag;
698  while ((tag = input->ReadTag()) != 0) {
699    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
700      // repeated .google.protobuf.FileDescriptorProto file = 1;
701      case 1: {
702        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
703            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
704          goto handle_uninterpreted;
705        }
706       parse_file:
707        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
708              input, add_file()));
709        if (input->ExpectTag(10)) goto parse_file;
710        if (input->ExpectAtEnd()) return true;
711        break;
712      }
713
714      default: {
715      handle_uninterpreted:
716        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
717            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
718          return true;
719        }
720        DO_(::google::protobuf::internal::WireFormat::SkipField(
721              input, tag, mutable_unknown_fields()));
722        break;
723      }
724    }
725  }
726  return true;
727#undef DO_
728}
729
730void FileDescriptorSet::SerializeWithCachedSizes(
731    ::google::protobuf::io::CodedOutputStream* output) const {
732  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
733  if (raw_buffer != NULL) {
734    FileDescriptorSet::SerializeWithCachedSizesToArray(raw_buffer);
735    return;
736  }
737
738  // repeated .google.protobuf.FileDescriptorProto file = 1;
739  for (int i = 0; i < this->file_size(); i++) {
740    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
741      1, this->file(i), output);
742  }
743
744  if (!unknown_fields().empty()) {
745    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
746        unknown_fields(), output);
747  }
748}
749
750::google::protobuf::uint8* FileDescriptorSet::SerializeWithCachedSizesToArray(
751    ::google::protobuf::uint8* target) const {
752  // repeated .google.protobuf.FileDescriptorProto file = 1;
753  for (int i = 0; i < this->file_size(); i++) {
754    target = ::google::protobuf::internal::WireFormatLite::
755      WriteMessageNoVirtualToArray(
756        1, this->file(i), target);
757  }
758
759  if (!unknown_fields().empty()) {
760    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
761        unknown_fields(), target);
762  }
763  return target;
764}
765
766int FileDescriptorSet::ByteSize() const {
767  int total_size = 0;
768
769  // repeated .google.protobuf.FileDescriptorProto file = 1;
770  total_size += 1 * this->file_size();
771  for (int i = 0; i < this->file_size(); i++) {
772    total_size +=
773      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
774        this->file(i));
775  }
776
777  if (!unknown_fields().empty()) {
778    total_size +=
779      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
780        unknown_fields());
781  }
782  _cached_size_ = total_size;
783  return total_size;
784}
785
786void FileDescriptorSet::MergeFrom(const ::google::protobuf::Message& from) {
787  GOOGLE_CHECK_NE(&from, this);
788  const FileDescriptorSet* source =
789    ::google::protobuf::internal::dynamic_cast_if_available<const FileDescriptorSet*>(
790      &from);
791  if (source == NULL) {
792    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
793  } else {
794    MergeFrom(*source);
795  }
796}
797
798void FileDescriptorSet::MergeFrom(const FileDescriptorSet& from) {
799  GOOGLE_CHECK_NE(&from, this);
800  file_.MergeFrom(from.file_);
801  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
802}
803
804void FileDescriptorSet::CopyFrom(const ::google::protobuf::Message& from) {
805  if (&from == this) return;
806  Clear();
807  MergeFrom(from);
808}
809
810void FileDescriptorSet::CopyFrom(const FileDescriptorSet& from) {
811  if (&from == this) return;
812  Clear();
813  MergeFrom(from);
814}
815
816bool FileDescriptorSet::IsInitialized() const {
817
818  for (int i = 0; i < file_size(); i++) {
819    if (!this->file(i).IsInitialized()) return false;
820  }
821  return true;
822}
823
824void FileDescriptorSet::Swap(FileDescriptorSet* other) {
825  if (other != this) {
826    file_.Swap(&other->file_);
827    std::swap(_has_bits_[0], other->_has_bits_[0]);
828    _unknown_fields_.Swap(&other->_unknown_fields_);
829    std::swap(_cached_size_, other->_cached_size_);
830  }
831}
832
833::google::protobuf::Metadata FileDescriptorSet::GetMetadata() const {
834  protobuf_AssignDescriptorsOnce();
835  ::google::protobuf::Metadata metadata;
836  metadata.descriptor = FileDescriptorSet_descriptor_;
837  metadata.reflection = FileDescriptorSet_reflection_;
838  return metadata;
839}
840
841
842// ===================================================================
843
844const ::std::string FileDescriptorProto::_default_name_;
845const ::std::string FileDescriptorProto::_default_package_;
846#ifndef _MSC_VER
847const int FileDescriptorProto::kNameFieldNumber;
848const int FileDescriptorProto::kPackageFieldNumber;
849const int FileDescriptorProto::kDependencyFieldNumber;
850const int FileDescriptorProto::kMessageTypeFieldNumber;
851const int FileDescriptorProto::kEnumTypeFieldNumber;
852const int FileDescriptorProto::kServiceFieldNumber;
853const int FileDescriptorProto::kExtensionFieldNumber;
854const int FileDescriptorProto::kOptionsFieldNumber;
855#endif  // !_MSC_VER
856
857FileDescriptorProto::FileDescriptorProto() {
858  SharedCtor();
859}
860
861void FileDescriptorProto::InitAsDefaultInstance() {
862  options_ = const_cast< ::google::protobuf::FileOptions*>(&::google::protobuf::FileOptions::default_instance());
863}
864
865FileDescriptorProto::FileDescriptorProto(const FileDescriptorProto& from) {
866  SharedCtor();
867  MergeFrom(from);
868}
869
870void FileDescriptorProto::SharedCtor() {
871  _cached_size_ = 0;
872  name_ = const_cast< ::std::string*>(&_default_name_);
873  package_ = const_cast< ::std::string*>(&_default_package_);
874  options_ = NULL;
875  ::memset(_has_bits_, 0, sizeof(_has_bits_));
876}
877
878FileDescriptorProto::~FileDescriptorProto() {
879  SharedDtor();
880}
881
882void FileDescriptorProto::SharedDtor() {
883  if (name_ != &_default_name_) {
884    delete name_;
885  }
886  if (package_ != &_default_package_) {
887    delete package_;
888  }
889  if (this != default_instance_) {
890    delete options_;
891  }
892}
893
894const ::google::protobuf::Descriptor* FileDescriptorProto::descriptor() {
895  protobuf_AssignDescriptorsOnce();
896  return FileDescriptorProto_descriptor_;
897}
898
899const FileDescriptorProto& FileDescriptorProto::default_instance() {
900  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
901}
902
903FileDescriptorProto* FileDescriptorProto::default_instance_ = NULL;
904
905FileDescriptorProto* FileDescriptorProto::New() const {
906  return new FileDescriptorProto;
907}
908
909void FileDescriptorProto::Clear() {
910  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
911    if (_has_bit(0)) {
912      if (name_ != &_default_name_) {
913        name_->clear();
914      }
915    }
916    if (_has_bit(1)) {
917      if (package_ != &_default_package_) {
918        package_->clear();
919      }
920    }
921    if (_has_bit(7)) {
922      if (options_ != NULL) options_->::google::protobuf::FileOptions::Clear();
923    }
924  }
925  dependency_.Clear();
926  message_type_.Clear();
927  enum_type_.Clear();
928  service_.Clear();
929  extension_.Clear();
930  ::memset(_has_bits_, 0, sizeof(_has_bits_));
931  mutable_unknown_fields()->Clear();
932}
933
934bool FileDescriptorProto::MergePartialFromCodedStream(
935    ::google::protobuf::io::CodedInputStream* input) {
936#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
937  ::google::protobuf::uint32 tag;
938  while ((tag = input->ReadTag()) != 0) {
939    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
940      // optional string name = 1;
941      case 1: {
942        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
943            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
944          goto handle_uninterpreted;
945        }
946        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
947              input, this->mutable_name()));
948        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
949          this->name().data(), this->name().length(),
950          ::google::protobuf::internal::WireFormat::PARSE);
951        if (input->ExpectTag(18)) goto parse_package;
952        break;
953      }
954
955      // optional string package = 2;
956      case 2: {
957        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
958            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
959          goto handle_uninterpreted;
960        }
961       parse_package:
962        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
963              input, this->mutable_package()));
964        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
965          this->package().data(), this->package().length(),
966          ::google::protobuf::internal::WireFormat::PARSE);
967        if (input->ExpectTag(26)) goto parse_dependency;
968        break;
969      }
970
971      // repeated string dependency = 3;
972      case 3: {
973        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
974            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
975          goto handle_uninterpreted;
976        }
977       parse_dependency:
978        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
979              input, this->add_dependency()));
980        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
981          this->dependency(0).data(), this->dependency(0).length(),
982          ::google::protobuf::internal::WireFormat::PARSE);
983        if (input->ExpectTag(26)) goto parse_dependency;
984        if (input->ExpectTag(34)) goto parse_message_type;
985        break;
986      }
987
988      // repeated .google.protobuf.DescriptorProto message_type = 4;
989      case 4: {
990        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
991            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
992          goto handle_uninterpreted;
993        }
994       parse_message_type:
995        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
996              input, add_message_type()));
997        if (input->ExpectTag(34)) goto parse_message_type;
998        if (input->ExpectTag(42)) goto parse_enum_type;
999        break;
1000      }
1001
1002      // repeated .google.protobuf.EnumDescriptorProto enum_type = 5;
1003      case 5: {
1004        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1005            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1006          goto handle_uninterpreted;
1007        }
1008       parse_enum_type:
1009        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1010              input, add_enum_type()));
1011        if (input->ExpectTag(42)) goto parse_enum_type;
1012        if (input->ExpectTag(50)) goto parse_service;
1013        break;
1014      }
1015
1016      // repeated .google.protobuf.ServiceDescriptorProto service = 6;
1017      case 6: {
1018        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1019            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1020          goto handle_uninterpreted;
1021        }
1022       parse_service:
1023        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1024              input, add_service()));
1025        if (input->ExpectTag(50)) goto parse_service;
1026        if (input->ExpectTag(58)) goto parse_extension;
1027        break;
1028      }
1029
1030      // repeated .google.protobuf.FieldDescriptorProto extension = 7;
1031      case 7: {
1032        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1033            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1034          goto handle_uninterpreted;
1035        }
1036       parse_extension:
1037        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1038              input, add_extension()));
1039        if (input->ExpectTag(58)) goto parse_extension;
1040        if (input->ExpectTag(66)) goto parse_options;
1041        break;
1042      }
1043
1044      // optional .google.protobuf.FileOptions options = 8;
1045      case 8: {
1046        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1047            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1048          goto handle_uninterpreted;
1049        }
1050       parse_options:
1051        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1052             input, mutable_options()));
1053        if (input->ExpectAtEnd()) return true;
1054        break;
1055      }
1056
1057      default: {
1058      handle_uninterpreted:
1059        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
1060            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
1061          return true;
1062        }
1063        DO_(::google::protobuf::internal::WireFormat::SkipField(
1064              input, tag, mutable_unknown_fields()));
1065        break;
1066      }
1067    }
1068  }
1069  return true;
1070#undef DO_
1071}
1072
1073void FileDescriptorProto::SerializeWithCachedSizes(
1074    ::google::protobuf::io::CodedOutputStream* output) const {
1075  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
1076  if (raw_buffer != NULL) {
1077    FileDescriptorProto::SerializeWithCachedSizesToArray(raw_buffer);
1078    return;
1079  }
1080
1081  // optional string name = 1;
1082  if (_has_bit(0)) {
1083    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
1084      this->name().data(), this->name().length(),
1085      ::google::protobuf::internal::WireFormat::SERIALIZE);
1086    ::google::protobuf::internal::WireFormatLite::WriteString(
1087      1, this->name(), output);
1088  }
1089
1090  // optional string package = 2;
1091  if (_has_bit(1)) {
1092    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
1093      this->package().data(), this->package().length(),
1094      ::google::protobuf::internal::WireFormat::SERIALIZE);
1095    ::google::protobuf::internal::WireFormatLite::WriteString(
1096      2, this->package(), output);
1097  }
1098
1099  // repeated string dependency = 3;
1100  for (int i = 0; i < this->dependency_size(); i++) {
1101  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
1102    this->dependency(i).data(), this->dependency(i).length(),
1103    ::google::protobuf::internal::WireFormat::SERIALIZE);
1104    ::google::protobuf::internal::WireFormatLite::WriteString(
1105      3, this->dependency(i), output);
1106  }
1107
1108  // repeated .google.protobuf.DescriptorProto message_type = 4;
1109  for (int i = 0; i < this->message_type_size(); i++) {
1110    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1111      4, this->message_type(i), output);
1112  }
1113
1114  // repeated .google.protobuf.EnumDescriptorProto enum_type = 5;
1115  for (int i = 0; i < this->enum_type_size(); i++) {
1116    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1117      5, this->enum_type(i), output);
1118  }
1119
1120  // repeated .google.protobuf.ServiceDescriptorProto service = 6;
1121  for (int i = 0; i < this->service_size(); i++) {
1122    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1123      6, this->service(i), output);
1124  }
1125
1126  // repeated .google.protobuf.FieldDescriptorProto extension = 7;
1127  for (int i = 0; i < this->extension_size(); i++) {
1128    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1129      7, this->extension(i), output);
1130  }
1131
1132  // optional .google.protobuf.FileOptions options = 8;
1133  if (_has_bit(7)) {
1134    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1135      8, this->options(), output);
1136  }
1137
1138  if (!unknown_fields().empty()) {
1139    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
1140        unknown_fields(), output);
1141  }
1142}
1143
1144::google::protobuf::uint8* FileDescriptorProto::SerializeWithCachedSizesToArray(
1145    ::google::protobuf::uint8* target) const {
1146  // optional string name = 1;
1147  if (_has_bit(0)) {
1148    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
1149      this->name().data(), this->name().length(),
1150      ::google::protobuf::internal::WireFormat::SERIALIZE);
1151    target =
1152      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
1153        1, this->name(), target);
1154  }
1155
1156  // optional string package = 2;
1157  if (_has_bit(1)) {
1158    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
1159      this->package().data(), this->package().length(),
1160      ::google::protobuf::internal::WireFormat::SERIALIZE);
1161    target =
1162      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
1163        2, this->package(), target);
1164  }
1165
1166  // repeated string dependency = 3;
1167  for (int i = 0; i < this->dependency_size(); i++) {
1168    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
1169      this->dependency(i).data(), this->dependency(i).length(),
1170      ::google::protobuf::internal::WireFormat::SERIALIZE);
1171    target = ::google::protobuf::internal::WireFormatLite::
1172      WriteStringToArray(3, this->dependency(i), target);
1173  }
1174
1175  // repeated .google.protobuf.DescriptorProto message_type = 4;
1176  for (int i = 0; i < this->message_type_size(); i++) {
1177    target = ::google::protobuf::internal::WireFormatLite::
1178      WriteMessageNoVirtualToArray(
1179        4, this->message_type(i), target);
1180  }
1181
1182  // repeated .google.protobuf.EnumDescriptorProto enum_type = 5;
1183  for (int i = 0; i < this->enum_type_size(); i++) {
1184    target = ::google::protobuf::internal::WireFormatLite::
1185      WriteMessageNoVirtualToArray(
1186        5, this->enum_type(i), target);
1187  }
1188
1189  // repeated .google.protobuf.ServiceDescriptorProto service = 6;
1190  for (int i = 0; i < this->service_size(); i++) {
1191    target = ::google::protobuf::internal::WireFormatLite::
1192      WriteMessageNoVirtualToArray(
1193        6, this->service(i), target);
1194  }
1195
1196  // repeated .google.protobuf.FieldDescriptorProto extension = 7;
1197  for (int i = 0; i < this->extension_size(); i++) {
1198    target = ::google::protobuf::internal::WireFormatLite::
1199      WriteMessageNoVirtualToArray(
1200        7, this->extension(i), target);
1201  }
1202
1203  // optional .google.protobuf.FileOptions options = 8;
1204  if (_has_bit(7)) {
1205    target = ::google::protobuf::internal::WireFormatLite::
1206      WriteMessageNoVirtualToArray(
1207        8, this->options(), target);
1208  }
1209
1210  if (!unknown_fields().empty()) {
1211    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
1212        unknown_fields(), target);
1213  }
1214  return target;
1215}
1216
1217int FileDescriptorProto::ByteSize() const {
1218  int total_size = 0;
1219
1220  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
1221    // optional string name = 1;
1222    if (has_name()) {
1223      total_size += 1 +
1224        ::google::protobuf::internal::WireFormatLite::StringSize(
1225          this->name());
1226    }
1227
1228    // optional string package = 2;
1229    if (has_package()) {
1230      total_size += 1 +
1231        ::google::protobuf::internal::WireFormatLite::StringSize(
1232          this->package());
1233    }
1234
1235    // optional .google.protobuf.FileOptions options = 8;
1236    if (has_options()) {
1237      total_size += 1 +
1238        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1239          this->options());
1240    }
1241
1242  }
1243  // repeated string dependency = 3;
1244  total_size += 1 * this->dependency_size();
1245  for (int i = 0; i < this->dependency_size(); i++) {
1246    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
1247      this->dependency(i));
1248  }
1249
1250  // repeated .google.protobuf.DescriptorProto message_type = 4;
1251  total_size += 1 * this->message_type_size();
1252  for (int i = 0; i < this->message_type_size(); i++) {
1253    total_size +=
1254      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1255        this->message_type(i));
1256  }
1257
1258  // repeated .google.protobuf.EnumDescriptorProto enum_type = 5;
1259  total_size += 1 * this->enum_type_size();
1260  for (int i = 0; i < this->enum_type_size(); i++) {
1261    total_size +=
1262      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1263        this->enum_type(i));
1264  }
1265
1266  // repeated .google.protobuf.ServiceDescriptorProto service = 6;
1267  total_size += 1 * this->service_size();
1268  for (int i = 0; i < this->service_size(); i++) {
1269    total_size +=
1270      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1271        this->service(i));
1272  }
1273
1274  // repeated .google.protobuf.FieldDescriptorProto extension = 7;
1275  total_size += 1 * this->extension_size();
1276  for (int i = 0; i < this->extension_size(); i++) {
1277    total_size +=
1278      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1279        this->extension(i));
1280  }
1281
1282  if (!unknown_fields().empty()) {
1283    total_size +=
1284      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
1285        unknown_fields());
1286  }
1287  _cached_size_ = total_size;
1288  return total_size;
1289}
1290
1291void FileDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
1292  GOOGLE_CHECK_NE(&from, this);
1293  const FileDescriptorProto* source =
1294    ::google::protobuf::internal::dynamic_cast_if_available<const FileDescriptorProto*>(
1295      &from);
1296  if (source == NULL) {
1297    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
1298  } else {
1299    MergeFrom(*source);
1300  }
1301}
1302
1303void FileDescriptorProto::MergeFrom(const FileDescriptorProto& from) {
1304  GOOGLE_CHECK_NE(&from, this);
1305  dependency_.MergeFrom(from.dependency_);
1306  message_type_.MergeFrom(from.message_type_);
1307  enum_type_.MergeFrom(from.enum_type_);
1308  service_.MergeFrom(from.service_);
1309  extension_.MergeFrom(from.extension_);
1310  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
1311    if (from._has_bit(0)) {
1312      set_name(from.name());
1313    }
1314    if (from._has_bit(1)) {
1315      set_package(from.package());
1316    }
1317    if (from._has_bit(7)) {
1318      mutable_options()->::google::protobuf::FileOptions::MergeFrom(from.options());
1319    }
1320  }
1321  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
1322}
1323
1324void FileDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
1325  if (&from == this) return;
1326  Clear();
1327  MergeFrom(from);
1328}
1329
1330void FileDescriptorProto::CopyFrom(const FileDescriptorProto& from) {
1331  if (&from == this) return;
1332  Clear();
1333  MergeFrom(from);
1334}
1335
1336bool FileDescriptorProto::IsInitialized() const {
1337
1338  for (int i = 0; i < message_type_size(); i++) {
1339    if (!this->message_type(i).IsInitialized()) return false;
1340  }
1341  for (int i = 0; i < enum_type_size(); i++) {
1342    if (!this->enum_type(i).IsInitialized()) return false;
1343  }
1344  for (int i = 0; i < service_size(); i++) {
1345    if (!this->service(i).IsInitialized()) return false;
1346  }
1347  for (int i = 0; i < extension_size(); i++) {
1348    if (!this->extension(i).IsInitialized()) return false;
1349  }
1350  if (has_options()) {
1351    if (!this->options().IsInitialized()) return false;
1352  }
1353  return true;
1354}
1355
1356void FileDescriptorProto::Swap(FileDescriptorProto* other) {
1357  if (other != this) {
1358    std::swap(name_, other->name_);
1359    std::swap(package_, other->package_);
1360    dependency_.Swap(&other->dependency_);
1361    message_type_.Swap(&other->message_type_);
1362    enum_type_.Swap(&other->enum_type_);
1363    service_.Swap(&other->service_);
1364    extension_.Swap(&other->extension_);
1365    std::swap(options_, other->options_);
1366    std::swap(_has_bits_[0], other->_has_bits_[0]);
1367    _unknown_fields_.Swap(&other->_unknown_fields_);
1368    std::swap(_cached_size_, other->_cached_size_);
1369  }
1370}
1371
1372::google::protobuf::Metadata FileDescriptorProto::GetMetadata() const {
1373  protobuf_AssignDescriptorsOnce();
1374  ::google::protobuf::Metadata metadata;
1375  metadata.descriptor = FileDescriptorProto_descriptor_;
1376  metadata.reflection = FileDescriptorProto_reflection_;
1377  return metadata;
1378}
1379
1380
1381// ===================================================================
1382
1383#ifndef _MSC_VER
1384const int DescriptorProto_ExtensionRange::kStartFieldNumber;
1385const int DescriptorProto_ExtensionRange::kEndFieldNumber;
1386#endif  // !_MSC_VER
1387
1388DescriptorProto_ExtensionRange::DescriptorProto_ExtensionRange() {
1389  SharedCtor();
1390}
1391
1392void DescriptorProto_ExtensionRange::InitAsDefaultInstance() {
1393}
1394
1395DescriptorProto_ExtensionRange::DescriptorProto_ExtensionRange(const DescriptorProto_ExtensionRange& from) {
1396  SharedCtor();
1397  MergeFrom(from);
1398}
1399
1400void DescriptorProto_ExtensionRange::SharedCtor() {
1401  _cached_size_ = 0;
1402  start_ = 0;
1403  end_ = 0;
1404  ::memset(_has_bits_, 0, sizeof(_has_bits_));
1405}
1406
1407DescriptorProto_ExtensionRange::~DescriptorProto_ExtensionRange() {
1408  SharedDtor();
1409}
1410
1411void DescriptorProto_ExtensionRange::SharedDtor() {
1412  if (this != default_instance_) {
1413  }
1414}
1415
1416const ::google::protobuf::Descriptor* DescriptorProto_ExtensionRange::descriptor() {
1417  protobuf_AssignDescriptorsOnce();
1418  return DescriptorProto_ExtensionRange_descriptor_;
1419}
1420
1421const DescriptorProto_ExtensionRange& DescriptorProto_ExtensionRange::default_instance() {
1422  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
1423}
1424
1425DescriptorProto_ExtensionRange* DescriptorProto_ExtensionRange::default_instance_ = NULL;
1426
1427DescriptorProto_ExtensionRange* DescriptorProto_ExtensionRange::New() const {
1428  return new DescriptorProto_ExtensionRange;
1429}
1430
1431void DescriptorProto_ExtensionRange::Clear() {
1432  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
1433    start_ = 0;
1434    end_ = 0;
1435  }
1436  ::memset(_has_bits_, 0, sizeof(_has_bits_));
1437  mutable_unknown_fields()->Clear();
1438}
1439
1440bool DescriptorProto_ExtensionRange::MergePartialFromCodedStream(
1441    ::google::protobuf::io::CodedInputStream* input) {
1442#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
1443  ::google::protobuf::uint32 tag;
1444  while ((tag = input->ReadTag()) != 0) {
1445    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
1446      // optional int32 start = 1;
1447      case 1: {
1448        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1449            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
1450          goto handle_uninterpreted;
1451        }
1452        DO_(::google::protobuf::internal::WireFormatLite::ReadInt32(
1453              input, &start_));
1454        _set_bit(0);
1455        if (input->ExpectTag(16)) goto parse_end;
1456        break;
1457      }
1458
1459      // optional int32 end = 2;
1460      case 2: {
1461        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1462            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
1463          goto handle_uninterpreted;
1464        }
1465       parse_end:
1466        DO_(::google::protobuf::internal::WireFormatLite::ReadInt32(
1467              input, &end_));
1468        _set_bit(1);
1469        if (input->ExpectAtEnd()) return true;
1470        break;
1471      }
1472
1473      default: {
1474      handle_uninterpreted:
1475        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
1476            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
1477          return true;
1478        }
1479        DO_(::google::protobuf::internal::WireFormat::SkipField(
1480              input, tag, mutable_unknown_fields()));
1481        break;
1482      }
1483    }
1484  }
1485  return true;
1486#undef DO_
1487}
1488
1489void DescriptorProto_ExtensionRange::SerializeWithCachedSizes(
1490    ::google::protobuf::io::CodedOutputStream* output) const {
1491  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
1492  if (raw_buffer != NULL) {
1493    DescriptorProto_ExtensionRange::SerializeWithCachedSizesToArray(raw_buffer);
1494    return;
1495  }
1496
1497  // optional int32 start = 1;
1498  if (_has_bit(0)) {
1499    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->start(), output);
1500  }
1501
1502  // optional int32 end = 2;
1503  if (_has_bit(1)) {
1504    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->end(), output);
1505  }
1506
1507  if (!unknown_fields().empty()) {
1508    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
1509        unknown_fields(), output);
1510  }
1511}
1512
1513::google::protobuf::uint8* DescriptorProto_ExtensionRange::SerializeWithCachedSizesToArray(
1514    ::google::protobuf::uint8* target) const {
1515  // optional int32 start = 1;
1516  if (_has_bit(0)) {
1517    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->start(), target);
1518  }
1519
1520  // optional int32 end = 2;
1521  if (_has_bit(1)) {
1522    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->end(), target);
1523  }
1524
1525  if (!unknown_fields().empty()) {
1526    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
1527        unknown_fields(), target);
1528  }
1529  return target;
1530}
1531
1532int DescriptorProto_ExtensionRange::ByteSize() const {
1533  int total_size = 0;
1534
1535  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
1536    // optional int32 start = 1;
1537    if (has_start()) {
1538      total_size += 1 +
1539        ::google::protobuf::internal::WireFormatLite::Int32Size(
1540          this->start());
1541    }
1542
1543    // optional int32 end = 2;
1544    if (has_end()) {
1545      total_size += 1 +
1546        ::google::protobuf::internal::WireFormatLite::Int32Size(
1547          this->end());
1548    }
1549
1550  }
1551  if (!unknown_fields().empty()) {
1552    total_size +=
1553      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
1554        unknown_fields());
1555  }
1556  _cached_size_ = total_size;
1557  return total_size;
1558}
1559
1560void DescriptorProto_ExtensionRange::MergeFrom(const ::google::protobuf::Message& from) {
1561  GOOGLE_CHECK_NE(&from, this);
1562  const DescriptorProto_ExtensionRange* source =
1563    ::google::protobuf::internal::dynamic_cast_if_available<const DescriptorProto_ExtensionRange*>(
1564      &from);
1565  if (source == NULL) {
1566    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
1567  } else {
1568    MergeFrom(*source);
1569  }
1570}
1571
1572void DescriptorProto_ExtensionRange::MergeFrom(const DescriptorProto_ExtensionRange& from) {
1573  GOOGLE_CHECK_NE(&from, this);
1574  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
1575    if (from._has_bit(0)) {
1576      set_start(from.start());
1577    }
1578    if (from._has_bit(1)) {
1579      set_end(from.end());
1580    }
1581  }
1582  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
1583}
1584
1585void DescriptorProto_ExtensionRange::CopyFrom(const ::google::protobuf::Message& from) {
1586  if (&from == this) return;
1587  Clear();
1588  MergeFrom(from);
1589}
1590
1591void DescriptorProto_ExtensionRange::CopyFrom(const DescriptorProto_ExtensionRange& from) {
1592  if (&from == this) return;
1593  Clear();
1594  MergeFrom(from);
1595}
1596
1597bool DescriptorProto_ExtensionRange::IsInitialized() const {
1598
1599  return true;
1600}
1601
1602void DescriptorProto_ExtensionRange::Swap(DescriptorProto_ExtensionRange* other) {
1603  if (other != this) {
1604    std::swap(start_, other->start_);
1605    std::swap(end_, other->end_);
1606    std::swap(_has_bits_[0], other->_has_bits_[0]);
1607    _unknown_fields_.Swap(&other->_unknown_fields_);
1608    std::swap(_cached_size_, other->_cached_size_);
1609  }
1610}
1611
1612::google::protobuf::Metadata DescriptorProto_ExtensionRange::GetMetadata() const {
1613  protobuf_AssignDescriptorsOnce();
1614  ::google::protobuf::Metadata metadata;
1615  metadata.descriptor = DescriptorProto_ExtensionRange_descriptor_;
1616  metadata.reflection = DescriptorProto_ExtensionRange_reflection_;
1617  return metadata;
1618}
1619
1620
1621// -------------------------------------------------------------------
1622
1623const ::std::string DescriptorProto::_default_name_;
1624#ifndef _MSC_VER
1625const int DescriptorProto::kNameFieldNumber;
1626const int DescriptorProto::kFieldFieldNumber;
1627const int DescriptorProto::kExtensionFieldNumber;
1628const int DescriptorProto::kNestedTypeFieldNumber;
1629const int DescriptorProto::kEnumTypeFieldNumber;
1630const int DescriptorProto::kExtensionRangeFieldNumber;
1631const int DescriptorProto::kOptionsFieldNumber;
1632#endif  // !_MSC_VER
1633
1634DescriptorProto::DescriptorProto() {
1635  SharedCtor();
1636}
1637
1638void DescriptorProto::InitAsDefaultInstance() {
1639  options_ = const_cast< ::google::protobuf::MessageOptions*>(&::google::protobuf::MessageOptions::default_instance());
1640}
1641
1642DescriptorProto::DescriptorProto(const DescriptorProto& from) {
1643  SharedCtor();
1644  MergeFrom(from);
1645}
1646
1647void DescriptorProto::SharedCtor() {
1648  _cached_size_ = 0;
1649  name_ = const_cast< ::std::string*>(&_default_name_);
1650  options_ = NULL;
1651  ::memset(_has_bits_, 0, sizeof(_has_bits_));
1652}
1653
1654DescriptorProto::~DescriptorProto() {
1655  SharedDtor();
1656}
1657
1658void DescriptorProto::SharedDtor() {
1659  if (name_ != &_default_name_) {
1660    delete name_;
1661  }
1662  if (this != default_instance_) {
1663    delete options_;
1664  }
1665}
1666
1667const ::google::protobuf::Descriptor* DescriptorProto::descriptor() {
1668  protobuf_AssignDescriptorsOnce();
1669  return DescriptorProto_descriptor_;
1670}
1671
1672const DescriptorProto& DescriptorProto::default_instance() {
1673  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
1674}
1675
1676DescriptorProto* DescriptorProto::default_instance_ = NULL;
1677
1678DescriptorProto* DescriptorProto::New() const {
1679  return new DescriptorProto;
1680}
1681
1682void DescriptorProto::Clear() {
1683  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
1684    if (_has_bit(0)) {
1685      if (name_ != &_default_name_) {
1686        name_->clear();
1687      }
1688    }
1689    if (_has_bit(6)) {
1690      if (options_ != NULL) options_->::google::protobuf::MessageOptions::Clear();
1691    }
1692  }
1693  field_.Clear();
1694  extension_.Clear();
1695  nested_type_.Clear();
1696  enum_type_.Clear();
1697  extension_range_.Clear();
1698  ::memset(_has_bits_, 0, sizeof(_has_bits_));
1699  mutable_unknown_fields()->Clear();
1700}
1701
1702bool DescriptorProto::MergePartialFromCodedStream(
1703    ::google::protobuf::io::CodedInputStream* input) {
1704#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
1705  ::google::protobuf::uint32 tag;
1706  while ((tag = input->ReadTag()) != 0) {
1707    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
1708      // optional string name = 1;
1709      case 1: {
1710        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1711            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1712          goto handle_uninterpreted;
1713        }
1714        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
1715              input, this->mutable_name()));
1716        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
1717          this->name().data(), this->name().length(),
1718          ::google::protobuf::internal::WireFormat::PARSE);
1719        if (input->ExpectTag(18)) goto parse_field;
1720        break;
1721      }
1722
1723      // repeated .google.protobuf.FieldDescriptorProto field = 2;
1724      case 2: {
1725        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1726            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1727          goto handle_uninterpreted;
1728        }
1729       parse_field:
1730        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1731              input, add_field()));
1732        if (input->ExpectTag(18)) goto parse_field;
1733        if (input->ExpectTag(26)) goto parse_nested_type;
1734        break;
1735      }
1736
1737      // repeated .google.protobuf.DescriptorProto nested_type = 3;
1738      case 3: {
1739        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1740            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1741          goto handle_uninterpreted;
1742        }
1743       parse_nested_type:
1744        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1745              input, add_nested_type()));
1746        if (input->ExpectTag(26)) goto parse_nested_type;
1747        if (input->ExpectTag(34)) goto parse_enum_type;
1748        break;
1749      }
1750
1751      // repeated .google.protobuf.EnumDescriptorProto enum_type = 4;
1752      case 4: {
1753        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1754            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1755          goto handle_uninterpreted;
1756        }
1757       parse_enum_type:
1758        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1759              input, add_enum_type()));
1760        if (input->ExpectTag(34)) goto parse_enum_type;
1761        if (input->ExpectTag(42)) goto parse_extension_range;
1762        break;
1763      }
1764
1765      // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;
1766      case 5: {
1767        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1768            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1769          goto handle_uninterpreted;
1770        }
1771       parse_extension_range:
1772        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1773              input, add_extension_range()));
1774        if (input->ExpectTag(42)) goto parse_extension_range;
1775        if (input->ExpectTag(50)) goto parse_extension;
1776        break;
1777      }
1778
1779      // repeated .google.protobuf.FieldDescriptorProto extension = 6;
1780      case 6: {
1781        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1782            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1783          goto handle_uninterpreted;
1784        }
1785       parse_extension:
1786        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1787              input, add_extension()));
1788        if (input->ExpectTag(50)) goto parse_extension;
1789        if (input->ExpectTag(58)) goto parse_options;
1790        break;
1791      }
1792
1793      // optional .google.protobuf.MessageOptions options = 7;
1794      case 7: {
1795        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
1796            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
1797          goto handle_uninterpreted;
1798        }
1799       parse_options:
1800        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1801             input, mutable_options()));
1802        if (input->ExpectAtEnd()) return true;
1803        break;
1804      }
1805
1806      default: {
1807      handle_uninterpreted:
1808        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
1809            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
1810          return true;
1811        }
1812        DO_(::google::protobuf::internal::WireFormat::SkipField(
1813              input, tag, mutable_unknown_fields()));
1814        break;
1815      }
1816    }
1817  }
1818  return true;
1819#undef DO_
1820}
1821
1822void DescriptorProto::SerializeWithCachedSizes(
1823    ::google::protobuf::io::CodedOutputStream* output) const {
1824  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
1825  if (raw_buffer != NULL) {
1826    DescriptorProto::SerializeWithCachedSizesToArray(raw_buffer);
1827    return;
1828  }
1829
1830  // optional string name = 1;
1831  if (_has_bit(0)) {
1832    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
1833      this->name().data(), this->name().length(),
1834      ::google::protobuf::internal::WireFormat::SERIALIZE);
1835    ::google::protobuf::internal::WireFormatLite::WriteString(
1836      1, this->name(), output);
1837  }
1838
1839  // repeated .google.protobuf.FieldDescriptorProto field = 2;
1840  for (int i = 0; i < this->field_size(); i++) {
1841    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1842      2, this->field(i), output);
1843  }
1844
1845  // repeated .google.protobuf.DescriptorProto nested_type = 3;
1846  for (int i = 0; i < this->nested_type_size(); i++) {
1847    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1848      3, this->nested_type(i), output);
1849  }
1850
1851  // repeated .google.protobuf.EnumDescriptorProto enum_type = 4;
1852  for (int i = 0; i < this->enum_type_size(); i++) {
1853    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1854      4, this->enum_type(i), output);
1855  }
1856
1857  // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;
1858  for (int i = 0; i < this->extension_range_size(); i++) {
1859    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1860      5, this->extension_range(i), output);
1861  }
1862
1863  // repeated .google.protobuf.FieldDescriptorProto extension = 6;
1864  for (int i = 0; i < this->extension_size(); i++) {
1865    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1866      6, this->extension(i), output);
1867  }
1868
1869  // optional .google.protobuf.MessageOptions options = 7;
1870  if (_has_bit(6)) {
1871    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
1872      7, this->options(), output);
1873  }
1874
1875  if (!unknown_fields().empty()) {
1876    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
1877        unknown_fields(), output);
1878  }
1879}
1880
1881::google::protobuf::uint8* DescriptorProto::SerializeWithCachedSizesToArray(
1882    ::google::protobuf::uint8* target) const {
1883  // optional string name = 1;
1884  if (_has_bit(0)) {
1885    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
1886      this->name().data(), this->name().length(),
1887      ::google::protobuf::internal::WireFormat::SERIALIZE);
1888    target =
1889      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
1890        1, this->name(), target);
1891  }
1892
1893  // repeated .google.protobuf.FieldDescriptorProto field = 2;
1894  for (int i = 0; i < this->field_size(); i++) {
1895    target = ::google::protobuf::internal::WireFormatLite::
1896      WriteMessageNoVirtualToArray(
1897        2, this->field(i), target);
1898  }
1899
1900  // repeated .google.protobuf.DescriptorProto nested_type = 3;
1901  for (int i = 0; i < this->nested_type_size(); i++) {
1902    target = ::google::protobuf::internal::WireFormatLite::
1903      WriteMessageNoVirtualToArray(
1904        3, this->nested_type(i), target);
1905  }
1906
1907  // repeated .google.protobuf.EnumDescriptorProto enum_type = 4;
1908  for (int i = 0; i < this->enum_type_size(); i++) {
1909    target = ::google::protobuf::internal::WireFormatLite::
1910      WriteMessageNoVirtualToArray(
1911        4, this->enum_type(i), target);
1912  }
1913
1914  // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;
1915  for (int i = 0; i < this->extension_range_size(); i++) {
1916    target = ::google::protobuf::internal::WireFormatLite::
1917      WriteMessageNoVirtualToArray(
1918        5, this->extension_range(i), target);
1919  }
1920
1921  // repeated .google.protobuf.FieldDescriptorProto extension = 6;
1922  for (int i = 0; i < this->extension_size(); i++) {
1923    target = ::google::protobuf::internal::WireFormatLite::
1924      WriteMessageNoVirtualToArray(
1925        6, this->extension(i), target);
1926  }
1927
1928  // optional .google.protobuf.MessageOptions options = 7;
1929  if (_has_bit(6)) {
1930    target = ::google::protobuf::internal::WireFormatLite::
1931      WriteMessageNoVirtualToArray(
1932        7, this->options(), target);
1933  }
1934
1935  if (!unknown_fields().empty()) {
1936    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
1937        unknown_fields(), target);
1938  }
1939  return target;
1940}
1941
1942int DescriptorProto::ByteSize() const {
1943  int total_size = 0;
1944
1945  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
1946    // optional string name = 1;
1947    if (has_name()) {
1948      total_size += 1 +
1949        ::google::protobuf::internal::WireFormatLite::StringSize(
1950          this->name());
1951    }
1952
1953    // optional .google.protobuf.MessageOptions options = 7;
1954    if (has_options()) {
1955      total_size += 1 +
1956        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1957          this->options());
1958    }
1959
1960  }
1961  // repeated .google.protobuf.FieldDescriptorProto field = 2;
1962  total_size += 1 * this->field_size();
1963  for (int i = 0; i < this->field_size(); i++) {
1964    total_size +=
1965      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1966        this->field(i));
1967  }
1968
1969  // repeated .google.protobuf.FieldDescriptorProto extension = 6;
1970  total_size += 1 * this->extension_size();
1971  for (int i = 0; i < this->extension_size(); i++) {
1972    total_size +=
1973      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1974        this->extension(i));
1975  }
1976
1977  // repeated .google.protobuf.DescriptorProto nested_type = 3;
1978  total_size += 1 * this->nested_type_size();
1979  for (int i = 0; i < this->nested_type_size(); i++) {
1980    total_size +=
1981      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1982        this->nested_type(i));
1983  }
1984
1985  // repeated .google.protobuf.EnumDescriptorProto enum_type = 4;
1986  total_size += 1 * this->enum_type_size();
1987  for (int i = 0; i < this->enum_type_size(); i++) {
1988    total_size +=
1989      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1990        this->enum_type(i));
1991  }
1992
1993  // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;
1994  total_size += 1 * this->extension_range_size();
1995  for (int i = 0; i < this->extension_range_size(); i++) {
1996    total_size +=
1997      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1998        this->extension_range(i));
1999  }
2000
2001  if (!unknown_fields().empty()) {
2002    total_size +=
2003      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
2004        unknown_fields());
2005  }
2006  _cached_size_ = total_size;
2007  return total_size;
2008}
2009
2010void DescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
2011  GOOGLE_CHECK_NE(&from, this);
2012  const DescriptorProto* source =
2013    ::google::protobuf::internal::dynamic_cast_if_available<const DescriptorProto*>(
2014      &from);
2015  if (source == NULL) {
2016    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
2017  } else {
2018    MergeFrom(*source);
2019  }
2020}
2021
2022void DescriptorProto::MergeFrom(const DescriptorProto& from) {
2023  GOOGLE_CHECK_NE(&from, this);
2024  field_.MergeFrom(from.field_);
2025  extension_.MergeFrom(from.extension_);
2026  nested_type_.MergeFrom(from.nested_type_);
2027  enum_type_.MergeFrom(from.enum_type_);
2028  extension_range_.MergeFrom(from.extension_range_);
2029  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
2030    if (from._has_bit(0)) {
2031      set_name(from.name());
2032    }
2033    if (from._has_bit(6)) {
2034      mutable_options()->::google::protobuf::MessageOptions::MergeFrom(from.options());
2035    }
2036  }
2037  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
2038}
2039
2040void DescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
2041  if (&from == this) return;
2042  Clear();
2043  MergeFrom(from);
2044}
2045
2046void DescriptorProto::CopyFrom(const DescriptorProto& from) {
2047  if (&from == this) return;
2048  Clear();
2049  MergeFrom(from);
2050}
2051
2052bool DescriptorProto::IsInitialized() const {
2053
2054  for (int i = 0; i < field_size(); i++) {
2055    if (!this->field(i).IsInitialized()) return false;
2056  }
2057  for (int i = 0; i < extension_size(); i++) {
2058    if (!this->extension(i).IsInitialized()) return false;
2059  }
2060  for (int i = 0; i < nested_type_size(); i++) {
2061    if (!this->nested_type(i).IsInitialized()) return false;
2062  }
2063  for (int i = 0; i < enum_type_size(); i++) {
2064    if (!this->enum_type(i).IsInitialized()) return false;
2065  }
2066  if (has_options()) {
2067    if (!this->options().IsInitialized()) return false;
2068  }
2069  return true;
2070}
2071
2072void DescriptorProto::Swap(DescriptorProto* other) {
2073  if (other != this) {
2074    std::swap(name_, other->name_);
2075    field_.Swap(&other->field_);
2076    extension_.Swap(&other->extension_);
2077    nested_type_.Swap(&other->nested_type_);
2078    enum_type_.Swap(&other->enum_type_);
2079    extension_range_.Swap(&other->extension_range_);
2080    std::swap(options_, other->options_);
2081    std::swap(_has_bits_[0], other->_has_bits_[0]);
2082    _unknown_fields_.Swap(&other->_unknown_fields_);
2083    std::swap(_cached_size_, other->_cached_size_);
2084  }
2085}
2086
2087::google::protobuf::Metadata DescriptorProto::GetMetadata() const {
2088  protobuf_AssignDescriptorsOnce();
2089  ::google::protobuf::Metadata metadata;
2090  metadata.descriptor = DescriptorProto_descriptor_;
2091  metadata.reflection = DescriptorProto_reflection_;
2092  return metadata;
2093}
2094
2095
2096// ===================================================================
2097
2098const ::google::protobuf::EnumDescriptor* FieldDescriptorProto_Type_descriptor() {
2099  protobuf_AssignDescriptorsOnce();
2100  return FieldDescriptorProto_Type_descriptor_;
2101}
2102bool FieldDescriptorProto_Type_IsValid(int value) {
2103  switch(value) {
2104    case 1:
2105    case 2:
2106    case 3:
2107    case 4:
2108    case 5:
2109    case 6:
2110    case 7:
2111    case 8:
2112    case 9:
2113    case 10:
2114    case 11:
2115    case 12:
2116    case 13:
2117    case 14:
2118    case 15:
2119    case 16:
2120    case 17:
2121    case 18:
2122      return true;
2123    default:
2124      return false;
2125  }
2126}
2127
2128#ifndef _MSC_VER
2129const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_DOUBLE;
2130const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_FLOAT;
2131const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_INT64;
2132const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_UINT64;
2133const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_INT32;
2134const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_FIXED64;
2135const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_FIXED32;
2136const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_BOOL;
2137const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_STRING;
2138const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_GROUP;
2139const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_MESSAGE;
2140const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_BYTES;
2141const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_UINT32;
2142const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_ENUM;
2143const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_SFIXED32;
2144const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_SFIXED64;
2145const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_SINT32;
2146const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_SINT64;
2147const FieldDescriptorProto_Type FieldDescriptorProto::Type_MIN;
2148const FieldDescriptorProto_Type FieldDescriptorProto::Type_MAX;
2149#endif  // _MSC_VER
2150const ::google::protobuf::EnumDescriptor* FieldDescriptorProto_Label_descriptor() {
2151  protobuf_AssignDescriptorsOnce();
2152  return FieldDescriptorProto_Label_descriptor_;
2153}
2154bool FieldDescriptorProto_Label_IsValid(int value) {
2155  switch(value) {
2156    case 1:
2157    case 2:
2158    case 3:
2159      return true;
2160    default:
2161      return false;
2162  }
2163}
2164
2165#ifndef _MSC_VER
2166const FieldDescriptorProto_Label FieldDescriptorProto::LABEL_OPTIONAL;
2167const FieldDescriptorProto_Label FieldDescriptorProto::LABEL_REQUIRED;
2168const FieldDescriptorProto_Label FieldDescriptorProto::LABEL_REPEATED;
2169const FieldDescriptorProto_Label FieldDescriptorProto::Label_MIN;
2170const FieldDescriptorProto_Label FieldDescriptorProto::Label_MAX;
2171#endif  // _MSC_VER
2172const ::std::string FieldDescriptorProto::_default_name_;
2173const ::std::string FieldDescriptorProto::_default_type_name_;
2174const ::std::string FieldDescriptorProto::_default_extendee_;
2175const ::std::string FieldDescriptorProto::_default_default_value_;
2176#ifndef _MSC_VER
2177const int FieldDescriptorProto::kNameFieldNumber;
2178const int FieldDescriptorProto::kNumberFieldNumber;
2179const int FieldDescriptorProto::kLabelFieldNumber;
2180const int FieldDescriptorProto::kTypeFieldNumber;
2181const int FieldDescriptorProto::kTypeNameFieldNumber;
2182const int FieldDescriptorProto::kExtendeeFieldNumber;
2183const int FieldDescriptorProto::kDefaultValueFieldNumber;
2184const int FieldDescriptorProto::kOptionsFieldNumber;
2185#endif  // !_MSC_VER
2186
2187FieldDescriptorProto::FieldDescriptorProto() {
2188  SharedCtor();
2189}
2190
2191void FieldDescriptorProto::InitAsDefaultInstance() {
2192  options_ = const_cast< ::google::protobuf::FieldOptions*>(&::google::protobuf::FieldOptions::default_instance());
2193}
2194
2195FieldDescriptorProto::FieldDescriptorProto(const FieldDescriptorProto& from) {
2196  SharedCtor();
2197  MergeFrom(from);
2198}
2199
2200void FieldDescriptorProto::SharedCtor() {
2201  _cached_size_ = 0;
2202  name_ = const_cast< ::std::string*>(&_default_name_);
2203  number_ = 0;
2204  label_ = 1;
2205  type_ = 1;
2206  type_name_ = const_cast< ::std::string*>(&_default_type_name_);
2207  extendee_ = const_cast< ::std::string*>(&_default_extendee_);
2208  default_value_ = const_cast< ::std::string*>(&_default_default_value_);
2209  options_ = NULL;
2210  ::memset(_has_bits_, 0, sizeof(_has_bits_));
2211}
2212
2213FieldDescriptorProto::~FieldDescriptorProto() {
2214  SharedDtor();
2215}
2216
2217void FieldDescriptorProto::SharedDtor() {
2218  if (name_ != &_default_name_) {
2219    delete name_;
2220  }
2221  if (type_name_ != &_default_type_name_) {
2222    delete type_name_;
2223  }
2224  if (extendee_ != &_default_extendee_) {
2225    delete extendee_;
2226  }
2227  if (default_value_ != &_default_default_value_) {
2228    delete default_value_;
2229  }
2230  if (this != default_instance_) {
2231    delete options_;
2232  }
2233}
2234
2235const ::google::protobuf::Descriptor* FieldDescriptorProto::descriptor() {
2236  protobuf_AssignDescriptorsOnce();
2237  return FieldDescriptorProto_descriptor_;
2238}
2239
2240const FieldDescriptorProto& FieldDescriptorProto::default_instance() {
2241  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
2242}
2243
2244FieldDescriptorProto* FieldDescriptorProto::default_instance_ = NULL;
2245
2246FieldDescriptorProto* FieldDescriptorProto::New() const {
2247  return new FieldDescriptorProto;
2248}
2249
2250void FieldDescriptorProto::Clear() {
2251  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
2252    if (_has_bit(0)) {
2253      if (name_ != &_default_name_) {
2254        name_->clear();
2255      }
2256    }
2257    number_ = 0;
2258    label_ = 1;
2259    type_ = 1;
2260    if (_has_bit(4)) {
2261      if (type_name_ != &_default_type_name_) {
2262        type_name_->clear();
2263      }
2264    }
2265    if (_has_bit(5)) {
2266      if (extendee_ != &_default_extendee_) {
2267        extendee_->clear();
2268      }
2269    }
2270    if (_has_bit(6)) {
2271      if (default_value_ != &_default_default_value_) {
2272        default_value_->clear();
2273      }
2274    }
2275    if (_has_bit(7)) {
2276      if (options_ != NULL) options_->::google::protobuf::FieldOptions::Clear();
2277    }
2278  }
2279  ::memset(_has_bits_, 0, sizeof(_has_bits_));
2280  mutable_unknown_fields()->Clear();
2281}
2282
2283bool FieldDescriptorProto::MergePartialFromCodedStream(
2284    ::google::protobuf::io::CodedInputStream* input) {
2285#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
2286  ::google::protobuf::uint32 tag;
2287  while ((tag = input->ReadTag()) != 0) {
2288    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
2289      // optional string name = 1;
2290      case 1: {
2291        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2292            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
2293          goto handle_uninterpreted;
2294        }
2295        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
2296              input, this->mutable_name()));
2297        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2298          this->name().data(), this->name().length(),
2299          ::google::protobuf::internal::WireFormat::PARSE);
2300        if (input->ExpectTag(18)) goto parse_extendee;
2301        break;
2302      }
2303
2304      // optional string extendee = 2;
2305      case 2: {
2306        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2307            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
2308          goto handle_uninterpreted;
2309        }
2310       parse_extendee:
2311        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
2312              input, this->mutable_extendee()));
2313        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2314          this->extendee().data(), this->extendee().length(),
2315          ::google::protobuf::internal::WireFormat::PARSE);
2316        if (input->ExpectTag(24)) goto parse_number;
2317        break;
2318      }
2319
2320      // optional int32 number = 3;
2321      case 3: {
2322        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2323            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
2324          goto handle_uninterpreted;
2325        }
2326       parse_number:
2327        DO_(::google::protobuf::internal::WireFormatLite::ReadInt32(
2328              input, &number_));
2329        _set_bit(1);
2330        if (input->ExpectTag(32)) goto parse_label;
2331        break;
2332      }
2333
2334      // optional .google.protobuf.FieldDescriptorProto.Label label = 4;
2335      case 4: {
2336        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2337            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
2338          goto handle_uninterpreted;
2339        }
2340       parse_label:
2341        int value;
2342        DO_(::google::protobuf::internal::WireFormatLite::ReadEnum(input, &value));
2343        if (::google::protobuf::FieldDescriptorProto_Label_IsValid(value)) {
2344          set_label(static_cast< ::google::protobuf::FieldDescriptorProto_Label >(value));
2345        } else {
2346          mutable_unknown_fields()->AddVarint(4, value);
2347        }
2348        if (input->ExpectTag(40)) goto parse_type;
2349        break;
2350      }
2351
2352      // optional .google.protobuf.FieldDescriptorProto.Type type = 5;
2353      case 5: {
2354        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2355            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
2356          goto handle_uninterpreted;
2357        }
2358       parse_type:
2359        int value;
2360        DO_(::google::protobuf::internal::WireFormatLite::ReadEnum(input, &value));
2361        if (::google::protobuf::FieldDescriptorProto_Type_IsValid(value)) {
2362          set_type(static_cast< ::google::protobuf::FieldDescriptorProto_Type >(value));
2363        } else {
2364          mutable_unknown_fields()->AddVarint(5, value);
2365        }
2366        if (input->ExpectTag(50)) goto parse_type_name;
2367        break;
2368      }
2369
2370      // optional string type_name = 6;
2371      case 6: {
2372        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2373            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
2374          goto handle_uninterpreted;
2375        }
2376       parse_type_name:
2377        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
2378              input, this->mutable_type_name()));
2379        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2380          this->type_name().data(), this->type_name().length(),
2381          ::google::protobuf::internal::WireFormat::PARSE);
2382        if (input->ExpectTag(58)) goto parse_default_value;
2383        break;
2384      }
2385
2386      // optional string default_value = 7;
2387      case 7: {
2388        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2389            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
2390          goto handle_uninterpreted;
2391        }
2392       parse_default_value:
2393        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
2394              input, this->mutable_default_value()));
2395        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2396          this->default_value().data(), this->default_value().length(),
2397          ::google::protobuf::internal::WireFormat::PARSE);
2398        if (input->ExpectTag(66)) goto parse_options;
2399        break;
2400      }
2401
2402      // optional .google.protobuf.FieldOptions options = 8;
2403      case 8: {
2404        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2405            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
2406          goto handle_uninterpreted;
2407        }
2408       parse_options:
2409        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
2410             input, mutable_options()));
2411        if (input->ExpectAtEnd()) return true;
2412        break;
2413      }
2414
2415      default: {
2416      handle_uninterpreted:
2417        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
2418            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
2419          return true;
2420        }
2421        DO_(::google::protobuf::internal::WireFormat::SkipField(
2422              input, tag, mutable_unknown_fields()));
2423        break;
2424      }
2425    }
2426  }
2427  return true;
2428#undef DO_
2429}
2430
2431void FieldDescriptorProto::SerializeWithCachedSizes(
2432    ::google::protobuf::io::CodedOutputStream* output) const {
2433  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
2434  if (raw_buffer != NULL) {
2435    FieldDescriptorProto::SerializeWithCachedSizesToArray(raw_buffer);
2436    return;
2437  }
2438
2439  // optional string name = 1;
2440  if (_has_bit(0)) {
2441    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2442      this->name().data(), this->name().length(),
2443      ::google::protobuf::internal::WireFormat::SERIALIZE);
2444    ::google::protobuf::internal::WireFormatLite::WriteString(
2445      1, this->name(), output);
2446  }
2447
2448  // optional string extendee = 2;
2449  if (_has_bit(5)) {
2450    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2451      this->extendee().data(), this->extendee().length(),
2452      ::google::protobuf::internal::WireFormat::SERIALIZE);
2453    ::google::protobuf::internal::WireFormatLite::WriteString(
2454      2, this->extendee(), output);
2455  }
2456
2457  // optional int32 number = 3;
2458  if (_has_bit(1)) {
2459    ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->number(), output);
2460  }
2461
2462  // optional .google.protobuf.FieldDescriptorProto.Label label = 4;
2463  if (_has_bit(2)) {
2464    ::google::protobuf::internal::WireFormatLite::WriteEnum(
2465      4, this->label(), output);
2466  }
2467
2468  // optional .google.protobuf.FieldDescriptorProto.Type type = 5;
2469  if (_has_bit(3)) {
2470    ::google::protobuf::internal::WireFormatLite::WriteEnum(
2471      5, this->type(), output);
2472  }
2473
2474  // optional string type_name = 6;
2475  if (_has_bit(4)) {
2476    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2477      this->type_name().data(), this->type_name().length(),
2478      ::google::protobuf::internal::WireFormat::SERIALIZE);
2479    ::google::protobuf::internal::WireFormatLite::WriteString(
2480      6, this->type_name(), output);
2481  }
2482
2483  // optional string default_value = 7;
2484  if (_has_bit(6)) {
2485    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2486      this->default_value().data(), this->default_value().length(),
2487      ::google::protobuf::internal::WireFormat::SERIALIZE);
2488    ::google::protobuf::internal::WireFormatLite::WriteString(
2489      7, this->default_value(), output);
2490  }
2491
2492  // optional .google.protobuf.FieldOptions options = 8;
2493  if (_has_bit(7)) {
2494    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
2495      8, this->options(), output);
2496  }
2497
2498  if (!unknown_fields().empty()) {
2499    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
2500        unknown_fields(), output);
2501  }
2502}
2503
2504::google::protobuf::uint8* FieldDescriptorProto::SerializeWithCachedSizesToArray(
2505    ::google::protobuf::uint8* target) const {
2506  // optional string name = 1;
2507  if (_has_bit(0)) {
2508    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2509      this->name().data(), this->name().length(),
2510      ::google::protobuf::internal::WireFormat::SERIALIZE);
2511    target =
2512      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
2513        1, this->name(), target);
2514  }
2515
2516  // optional string extendee = 2;
2517  if (_has_bit(5)) {
2518    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2519      this->extendee().data(), this->extendee().length(),
2520      ::google::protobuf::internal::WireFormat::SERIALIZE);
2521    target =
2522      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
2523        2, this->extendee(), target);
2524  }
2525
2526  // optional int32 number = 3;
2527  if (_has_bit(1)) {
2528    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->number(), target);
2529  }
2530
2531  // optional .google.protobuf.FieldDescriptorProto.Label label = 4;
2532  if (_has_bit(2)) {
2533    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
2534      4, this->label(), target);
2535  }
2536
2537  // optional .google.protobuf.FieldDescriptorProto.Type type = 5;
2538  if (_has_bit(3)) {
2539    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
2540      5, this->type(), target);
2541  }
2542
2543  // optional string type_name = 6;
2544  if (_has_bit(4)) {
2545    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2546      this->type_name().data(), this->type_name().length(),
2547      ::google::protobuf::internal::WireFormat::SERIALIZE);
2548    target =
2549      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
2550        6, this->type_name(), target);
2551  }
2552
2553  // optional string default_value = 7;
2554  if (_has_bit(6)) {
2555    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2556      this->default_value().data(), this->default_value().length(),
2557      ::google::protobuf::internal::WireFormat::SERIALIZE);
2558    target =
2559      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
2560        7, this->default_value(), target);
2561  }
2562
2563  // optional .google.protobuf.FieldOptions options = 8;
2564  if (_has_bit(7)) {
2565    target = ::google::protobuf::internal::WireFormatLite::
2566      WriteMessageNoVirtualToArray(
2567        8, this->options(), target);
2568  }
2569
2570  if (!unknown_fields().empty()) {
2571    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
2572        unknown_fields(), target);
2573  }
2574  return target;
2575}
2576
2577int FieldDescriptorProto::ByteSize() const {
2578  int total_size = 0;
2579
2580  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
2581    // optional string name = 1;
2582    if (has_name()) {
2583      total_size += 1 +
2584        ::google::protobuf::internal::WireFormatLite::StringSize(
2585          this->name());
2586    }
2587
2588    // optional int32 number = 3;
2589    if (has_number()) {
2590      total_size += 1 +
2591        ::google::protobuf::internal::WireFormatLite::Int32Size(
2592          this->number());
2593    }
2594
2595    // optional .google.protobuf.FieldDescriptorProto.Label label = 4;
2596    if (has_label()) {
2597      total_size += 1 +
2598        ::google::protobuf::internal::WireFormatLite::EnumSize(this->label());
2599    }
2600
2601    // optional .google.protobuf.FieldDescriptorProto.Type type = 5;
2602    if (has_type()) {
2603      total_size += 1 +
2604        ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
2605    }
2606
2607    // optional string type_name = 6;
2608    if (has_type_name()) {
2609      total_size += 1 +
2610        ::google::protobuf::internal::WireFormatLite::StringSize(
2611          this->type_name());
2612    }
2613
2614    // optional string extendee = 2;
2615    if (has_extendee()) {
2616      total_size += 1 +
2617        ::google::protobuf::internal::WireFormatLite::StringSize(
2618          this->extendee());
2619    }
2620
2621    // optional string default_value = 7;
2622    if (has_default_value()) {
2623      total_size += 1 +
2624        ::google::protobuf::internal::WireFormatLite::StringSize(
2625          this->default_value());
2626    }
2627
2628    // optional .google.protobuf.FieldOptions options = 8;
2629    if (has_options()) {
2630      total_size += 1 +
2631        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
2632          this->options());
2633    }
2634
2635  }
2636  if (!unknown_fields().empty()) {
2637    total_size +=
2638      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
2639        unknown_fields());
2640  }
2641  _cached_size_ = total_size;
2642  return total_size;
2643}
2644
2645void FieldDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
2646  GOOGLE_CHECK_NE(&from, this);
2647  const FieldDescriptorProto* source =
2648    ::google::protobuf::internal::dynamic_cast_if_available<const FieldDescriptorProto*>(
2649      &from);
2650  if (source == NULL) {
2651    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
2652  } else {
2653    MergeFrom(*source);
2654  }
2655}
2656
2657void FieldDescriptorProto::MergeFrom(const FieldDescriptorProto& from) {
2658  GOOGLE_CHECK_NE(&from, this);
2659  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
2660    if (from._has_bit(0)) {
2661      set_name(from.name());
2662    }
2663    if (from._has_bit(1)) {
2664      set_number(from.number());
2665    }
2666    if (from._has_bit(2)) {
2667      set_label(from.label());
2668    }
2669    if (from._has_bit(3)) {
2670      set_type(from.type());
2671    }
2672    if (from._has_bit(4)) {
2673      set_type_name(from.type_name());
2674    }
2675    if (from._has_bit(5)) {
2676      set_extendee(from.extendee());
2677    }
2678    if (from._has_bit(6)) {
2679      set_default_value(from.default_value());
2680    }
2681    if (from._has_bit(7)) {
2682      mutable_options()->::google::protobuf::FieldOptions::MergeFrom(from.options());
2683    }
2684  }
2685  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
2686}
2687
2688void FieldDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
2689  if (&from == this) return;
2690  Clear();
2691  MergeFrom(from);
2692}
2693
2694void FieldDescriptorProto::CopyFrom(const FieldDescriptorProto& from) {
2695  if (&from == this) return;
2696  Clear();
2697  MergeFrom(from);
2698}
2699
2700bool FieldDescriptorProto::IsInitialized() const {
2701
2702  if (has_options()) {
2703    if (!this->options().IsInitialized()) return false;
2704  }
2705  return true;
2706}
2707
2708void FieldDescriptorProto::Swap(FieldDescriptorProto* other) {
2709  if (other != this) {
2710    std::swap(name_, other->name_);
2711    std::swap(number_, other->number_);
2712    std::swap(label_, other->label_);
2713    std::swap(type_, other->type_);
2714    std::swap(type_name_, other->type_name_);
2715    std::swap(extendee_, other->extendee_);
2716    std::swap(default_value_, other->default_value_);
2717    std::swap(options_, other->options_);
2718    std::swap(_has_bits_[0], other->_has_bits_[0]);
2719    _unknown_fields_.Swap(&other->_unknown_fields_);
2720    std::swap(_cached_size_, other->_cached_size_);
2721  }
2722}
2723
2724::google::protobuf::Metadata FieldDescriptorProto::GetMetadata() const {
2725  protobuf_AssignDescriptorsOnce();
2726  ::google::protobuf::Metadata metadata;
2727  metadata.descriptor = FieldDescriptorProto_descriptor_;
2728  metadata.reflection = FieldDescriptorProto_reflection_;
2729  return metadata;
2730}
2731
2732
2733// ===================================================================
2734
2735const ::std::string EnumDescriptorProto::_default_name_;
2736#ifndef _MSC_VER
2737const int EnumDescriptorProto::kNameFieldNumber;
2738const int EnumDescriptorProto::kValueFieldNumber;
2739const int EnumDescriptorProto::kOptionsFieldNumber;
2740#endif  // !_MSC_VER
2741
2742EnumDescriptorProto::EnumDescriptorProto() {
2743  SharedCtor();
2744}
2745
2746void EnumDescriptorProto::InitAsDefaultInstance() {
2747  options_ = const_cast< ::google::protobuf::EnumOptions*>(&::google::protobuf::EnumOptions::default_instance());
2748}
2749
2750EnumDescriptorProto::EnumDescriptorProto(const EnumDescriptorProto& from) {
2751  SharedCtor();
2752  MergeFrom(from);
2753}
2754
2755void EnumDescriptorProto::SharedCtor() {
2756  _cached_size_ = 0;
2757  name_ = const_cast< ::std::string*>(&_default_name_);
2758  options_ = NULL;
2759  ::memset(_has_bits_, 0, sizeof(_has_bits_));
2760}
2761
2762EnumDescriptorProto::~EnumDescriptorProto() {
2763  SharedDtor();
2764}
2765
2766void EnumDescriptorProto::SharedDtor() {
2767  if (name_ != &_default_name_) {
2768    delete name_;
2769  }
2770  if (this != default_instance_) {
2771    delete options_;
2772  }
2773}
2774
2775const ::google::protobuf::Descriptor* EnumDescriptorProto::descriptor() {
2776  protobuf_AssignDescriptorsOnce();
2777  return EnumDescriptorProto_descriptor_;
2778}
2779
2780const EnumDescriptorProto& EnumDescriptorProto::default_instance() {
2781  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
2782}
2783
2784EnumDescriptorProto* EnumDescriptorProto::default_instance_ = NULL;
2785
2786EnumDescriptorProto* EnumDescriptorProto::New() const {
2787  return new EnumDescriptorProto;
2788}
2789
2790void EnumDescriptorProto::Clear() {
2791  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
2792    if (_has_bit(0)) {
2793      if (name_ != &_default_name_) {
2794        name_->clear();
2795      }
2796    }
2797    if (_has_bit(2)) {
2798      if (options_ != NULL) options_->::google::protobuf::EnumOptions::Clear();
2799    }
2800  }
2801  value_.Clear();
2802  ::memset(_has_bits_, 0, sizeof(_has_bits_));
2803  mutable_unknown_fields()->Clear();
2804}
2805
2806bool EnumDescriptorProto::MergePartialFromCodedStream(
2807    ::google::protobuf::io::CodedInputStream* input) {
2808#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
2809  ::google::protobuf::uint32 tag;
2810  while ((tag = input->ReadTag()) != 0) {
2811    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
2812      // optional string name = 1;
2813      case 1: {
2814        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2815            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
2816          goto handle_uninterpreted;
2817        }
2818        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
2819              input, this->mutable_name()));
2820        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2821          this->name().data(), this->name().length(),
2822          ::google::protobuf::internal::WireFormat::PARSE);
2823        if (input->ExpectTag(18)) goto parse_value;
2824        break;
2825      }
2826
2827      // repeated .google.protobuf.EnumValueDescriptorProto value = 2;
2828      case 2: {
2829        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2830            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
2831          goto handle_uninterpreted;
2832        }
2833       parse_value:
2834        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
2835              input, add_value()));
2836        if (input->ExpectTag(18)) goto parse_value;
2837        if (input->ExpectTag(26)) goto parse_options;
2838        break;
2839      }
2840
2841      // optional .google.protobuf.EnumOptions options = 3;
2842      case 3: {
2843        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
2844            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
2845          goto handle_uninterpreted;
2846        }
2847       parse_options:
2848        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
2849             input, mutable_options()));
2850        if (input->ExpectAtEnd()) return true;
2851        break;
2852      }
2853
2854      default: {
2855      handle_uninterpreted:
2856        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
2857            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
2858          return true;
2859        }
2860        DO_(::google::protobuf::internal::WireFormat::SkipField(
2861              input, tag, mutable_unknown_fields()));
2862        break;
2863      }
2864    }
2865  }
2866  return true;
2867#undef DO_
2868}
2869
2870void EnumDescriptorProto::SerializeWithCachedSizes(
2871    ::google::protobuf::io::CodedOutputStream* output) const {
2872  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
2873  if (raw_buffer != NULL) {
2874    EnumDescriptorProto::SerializeWithCachedSizesToArray(raw_buffer);
2875    return;
2876  }
2877
2878  // optional string name = 1;
2879  if (_has_bit(0)) {
2880    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2881      this->name().data(), this->name().length(),
2882      ::google::protobuf::internal::WireFormat::SERIALIZE);
2883    ::google::protobuf::internal::WireFormatLite::WriteString(
2884      1, this->name(), output);
2885  }
2886
2887  // repeated .google.protobuf.EnumValueDescriptorProto value = 2;
2888  for (int i = 0; i < this->value_size(); i++) {
2889    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
2890      2, this->value(i), output);
2891  }
2892
2893  // optional .google.protobuf.EnumOptions options = 3;
2894  if (_has_bit(2)) {
2895    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
2896      3, this->options(), output);
2897  }
2898
2899  if (!unknown_fields().empty()) {
2900    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
2901        unknown_fields(), output);
2902  }
2903}
2904
2905::google::protobuf::uint8* EnumDescriptorProto::SerializeWithCachedSizesToArray(
2906    ::google::protobuf::uint8* target) const {
2907  // optional string name = 1;
2908  if (_has_bit(0)) {
2909    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
2910      this->name().data(), this->name().length(),
2911      ::google::protobuf::internal::WireFormat::SERIALIZE);
2912    target =
2913      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
2914        1, this->name(), target);
2915  }
2916
2917  // repeated .google.protobuf.EnumValueDescriptorProto value = 2;
2918  for (int i = 0; i < this->value_size(); i++) {
2919    target = ::google::protobuf::internal::WireFormatLite::
2920      WriteMessageNoVirtualToArray(
2921        2, this->value(i), target);
2922  }
2923
2924  // optional .google.protobuf.EnumOptions options = 3;
2925  if (_has_bit(2)) {
2926    target = ::google::protobuf::internal::WireFormatLite::
2927      WriteMessageNoVirtualToArray(
2928        3, this->options(), target);
2929  }
2930
2931  if (!unknown_fields().empty()) {
2932    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
2933        unknown_fields(), target);
2934  }
2935  return target;
2936}
2937
2938int EnumDescriptorProto::ByteSize() const {
2939  int total_size = 0;
2940
2941  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
2942    // optional string name = 1;
2943    if (has_name()) {
2944      total_size += 1 +
2945        ::google::protobuf::internal::WireFormatLite::StringSize(
2946          this->name());
2947    }
2948
2949    // optional .google.protobuf.EnumOptions options = 3;
2950    if (has_options()) {
2951      total_size += 1 +
2952        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
2953          this->options());
2954    }
2955
2956  }
2957  // repeated .google.protobuf.EnumValueDescriptorProto value = 2;
2958  total_size += 1 * this->value_size();
2959  for (int i = 0; i < this->value_size(); i++) {
2960    total_size +=
2961      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
2962        this->value(i));
2963  }
2964
2965  if (!unknown_fields().empty()) {
2966    total_size +=
2967      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
2968        unknown_fields());
2969  }
2970  _cached_size_ = total_size;
2971  return total_size;
2972}
2973
2974void EnumDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
2975  GOOGLE_CHECK_NE(&from, this);
2976  const EnumDescriptorProto* source =
2977    ::google::protobuf::internal::dynamic_cast_if_available<const EnumDescriptorProto*>(
2978      &from);
2979  if (source == NULL) {
2980    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
2981  } else {
2982    MergeFrom(*source);
2983  }
2984}
2985
2986void EnumDescriptorProto::MergeFrom(const EnumDescriptorProto& from) {
2987  GOOGLE_CHECK_NE(&from, this);
2988  value_.MergeFrom(from.value_);
2989  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
2990    if (from._has_bit(0)) {
2991      set_name(from.name());
2992    }
2993    if (from._has_bit(2)) {
2994      mutable_options()->::google::protobuf::EnumOptions::MergeFrom(from.options());
2995    }
2996  }
2997  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
2998}
2999
3000void EnumDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
3001  if (&from == this) return;
3002  Clear();
3003  MergeFrom(from);
3004}
3005
3006void EnumDescriptorProto::CopyFrom(const EnumDescriptorProto& from) {
3007  if (&from == this) return;
3008  Clear();
3009  MergeFrom(from);
3010}
3011
3012bool EnumDescriptorProto::IsInitialized() const {
3013
3014  for (int i = 0; i < value_size(); i++) {
3015    if (!this->value(i).IsInitialized()) return false;
3016  }
3017  if (has_options()) {
3018    if (!this->options().IsInitialized()) return false;
3019  }
3020  return true;
3021}
3022
3023void EnumDescriptorProto::Swap(EnumDescriptorProto* other) {
3024  if (other != this) {
3025    std::swap(name_, other->name_);
3026    value_.Swap(&other->value_);
3027    std::swap(options_, other->options_);
3028    std::swap(_has_bits_[0], other->_has_bits_[0]);
3029    _unknown_fields_.Swap(&other->_unknown_fields_);
3030    std::swap(_cached_size_, other->_cached_size_);
3031  }
3032}
3033
3034::google::protobuf::Metadata EnumDescriptorProto::GetMetadata() const {
3035  protobuf_AssignDescriptorsOnce();
3036  ::google::protobuf::Metadata metadata;
3037  metadata.descriptor = EnumDescriptorProto_descriptor_;
3038  metadata.reflection = EnumDescriptorProto_reflection_;
3039  return metadata;
3040}
3041
3042
3043// ===================================================================
3044
3045const ::std::string EnumValueDescriptorProto::_default_name_;
3046#ifndef _MSC_VER
3047const int EnumValueDescriptorProto::kNameFieldNumber;
3048const int EnumValueDescriptorProto::kNumberFieldNumber;
3049const int EnumValueDescriptorProto::kOptionsFieldNumber;
3050#endif  // !_MSC_VER
3051
3052EnumValueDescriptorProto::EnumValueDescriptorProto() {
3053  SharedCtor();
3054}
3055
3056void EnumValueDescriptorProto::InitAsDefaultInstance() {
3057  options_ = const_cast< ::google::protobuf::EnumValueOptions*>(&::google::protobuf::EnumValueOptions::default_instance());
3058}
3059
3060EnumValueDescriptorProto::EnumValueDescriptorProto(const EnumValueDescriptorProto& from) {
3061  SharedCtor();
3062  MergeFrom(from);
3063}
3064
3065void EnumValueDescriptorProto::SharedCtor() {
3066  _cached_size_ = 0;
3067  name_ = const_cast< ::std::string*>(&_default_name_);
3068  number_ = 0;
3069  options_ = NULL;
3070  ::memset(_has_bits_, 0, sizeof(_has_bits_));
3071}
3072
3073EnumValueDescriptorProto::~EnumValueDescriptorProto() {
3074  SharedDtor();
3075}
3076
3077void EnumValueDescriptorProto::SharedDtor() {
3078  if (name_ != &_default_name_) {
3079    delete name_;
3080  }
3081  if (this != default_instance_) {
3082    delete options_;
3083  }
3084}
3085
3086const ::google::protobuf::Descriptor* EnumValueDescriptorProto::descriptor() {
3087  protobuf_AssignDescriptorsOnce();
3088  return EnumValueDescriptorProto_descriptor_;
3089}
3090
3091const EnumValueDescriptorProto& EnumValueDescriptorProto::default_instance() {
3092  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
3093}
3094
3095EnumValueDescriptorProto* EnumValueDescriptorProto::default_instance_ = NULL;
3096
3097EnumValueDescriptorProto* EnumValueDescriptorProto::New() const {
3098  return new EnumValueDescriptorProto;
3099}
3100
3101void EnumValueDescriptorProto::Clear() {
3102  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
3103    if (_has_bit(0)) {
3104      if (name_ != &_default_name_) {
3105        name_->clear();
3106      }
3107    }
3108    number_ = 0;
3109    if (_has_bit(2)) {
3110      if (options_ != NULL) options_->::google::protobuf::EnumValueOptions::Clear();
3111    }
3112  }
3113  ::memset(_has_bits_, 0, sizeof(_has_bits_));
3114  mutable_unknown_fields()->Clear();
3115}
3116
3117bool EnumValueDescriptorProto::MergePartialFromCodedStream(
3118    ::google::protobuf::io::CodedInputStream* input) {
3119#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
3120  ::google::protobuf::uint32 tag;
3121  while ((tag = input->ReadTag()) != 0) {
3122    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
3123      // optional string name = 1;
3124      case 1: {
3125        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
3126            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
3127          goto handle_uninterpreted;
3128        }
3129        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
3130              input, this->mutable_name()));
3131        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3132          this->name().data(), this->name().length(),
3133          ::google::protobuf::internal::WireFormat::PARSE);
3134        if (input->ExpectTag(16)) goto parse_number;
3135        break;
3136      }
3137
3138      // optional int32 number = 2;
3139      case 2: {
3140        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
3141            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
3142          goto handle_uninterpreted;
3143        }
3144       parse_number:
3145        DO_(::google::protobuf::internal::WireFormatLite::ReadInt32(
3146              input, &number_));
3147        _set_bit(1);
3148        if (input->ExpectTag(26)) goto parse_options;
3149        break;
3150      }
3151
3152      // optional .google.protobuf.EnumValueOptions options = 3;
3153      case 3: {
3154        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
3155            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
3156          goto handle_uninterpreted;
3157        }
3158       parse_options:
3159        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
3160             input, mutable_options()));
3161        if (input->ExpectAtEnd()) return true;
3162        break;
3163      }
3164
3165      default: {
3166      handle_uninterpreted:
3167        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
3168            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
3169          return true;
3170        }
3171        DO_(::google::protobuf::internal::WireFormat::SkipField(
3172              input, tag, mutable_unknown_fields()));
3173        break;
3174      }
3175    }
3176  }
3177  return true;
3178#undef DO_
3179}
3180
3181void EnumValueDescriptorProto::SerializeWithCachedSizes(
3182    ::google::protobuf::io::CodedOutputStream* output) const {
3183  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
3184  if (raw_buffer != NULL) {
3185    EnumValueDescriptorProto::SerializeWithCachedSizesToArray(raw_buffer);
3186    return;
3187  }
3188
3189  // optional string name = 1;
3190  if (_has_bit(0)) {
3191    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3192      this->name().data(), this->name().length(),
3193      ::google::protobuf::internal::WireFormat::SERIALIZE);
3194    ::google::protobuf::internal::WireFormatLite::WriteString(
3195      1, this->name(), output);
3196  }
3197
3198  // optional int32 number = 2;
3199  if (_has_bit(1)) {
3200    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->number(), output);
3201  }
3202
3203  // optional .google.protobuf.EnumValueOptions options = 3;
3204  if (_has_bit(2)) {
3205    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
3206      3, this->options(), output);
3207  }
3208
3209  if (!unknown_fields().empty()) {
3210    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
3211        unknown_fields(), output);
3212  }
3213}
3214
3215::google::protobuf::uint8* EnumValueDescriptorProto::SerializeWithCachedSizesToArray(
3216    ::google::protobuf::uint8* target) const {
3217  // optional string name = 1;
3218  if (_has_bit(0)) {
3219    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3220      this->name().data(), this->name().length(),
3221      ::google::protobuf::internal::WireFormat::SERIALIZE);
3222    target =
3223      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
3224        1, this->name(), target);
3225  }
3226
3227  // optional int32 number = 2;
3228  if (_has_bit(1)) {
3229    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->number(), target);
3230  }
3231
3232  // optional .google.protobuf.EnumValueOptions options = 3;
3233  if (_has_bit(2)) {
3234    target = ::google::protobuf::internal::WireFormatLite::
3235      WriteMessageNoVirtualToArray(
3236        3, this->options(), target);
3237  }
3238
3239  if (!unknown_fields().empty()) {
3240    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
3241        unknown_fields(), target);
3242  }
3243  return target;
3244}
3245
3246int EnumValueDescriptorProto::ByteSize() const {
3247  int total_size = 0;
3248
3249  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
3250    // optional string name = 1;
3251    if (has_name()) {
3252      total_size += 1 +
3253        ::google::protobuf::internal::WireFormatLite::StringSize(
3254          this->name());
3255    }
3256
3257    // optional int32 number = 2;
3258    if (has_number()) {
3259      total_size += 1 +
3260        ::google::protobuf::internal::WireFormatLite::Int32Size(
3261          this->number());
3262    }
3263
3264    // optional .google.protobuf.EnumValueOptions options = 3;
3265    if (has_options()) {
3266      total_size += 1 +
3267        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3268          this->options());
3269    }
3270
3271  }
3272  if (!unknown_fields().empty()) {
3273    total_size +=
3274      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
3275        unknown_fields());
3276  }
3277  _cached_size_ = total_size;
3278  return total_size;
3279}
3280
3281void EnumValueDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
3282  GOOGLE_CHECK_NE(&from, this);
3283  const EnumValueDescriptorProto* source =
3284    ::google::protobuf::internal::dynamic_cast_if_available<const EnumValueDescriptorProto*>(
3285      &from);
3286  if (source == NULL) {
3287    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
3288  } else {
3289    MergeFrom(*source);
3290  }
3291}
3292
3293void EnumValueDescriptorProto::MergeFrom(const EnumValueDescriptorProto& from) {
3294  GOOGLE_CHECK_NE(&from, this);
3295  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
3296    if (from._has_bit(0)) {
3297      set_name(from.name());
3298    }
3299    if (from._has_bit(1)) {
3300      set_number(from.number());
3301    }
3302    if (from._has_bit(2)) {
3303      mutable_options()->::google::protobuf::EnumValueOptions::MergeFrom(from.options());
3304    }
3305  }
3306  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
3307}
3308
3309void EnumValueDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
3310  if (&from == this) return;
3311  Clear();
3312  MergeFrom(from);
3313}
3314
3315void EnumValueDescriptorProto::CopyFrom(const EnumValueDescriptorProto& from) {
3316  if (&from == this) return;
3317  Clear();
3318  MergeFrom(from);
3319}
3320
3321bool EnumValueDescriptorProto::IsInitialized() const {
3322
3323  if (has_options()) {
3324    if (!this->options().IsInitialized()) return false;
3325  }
3326  return true;
3327}
3328
3329void EnumValueDescriptorProto::Swap(EnumValueDescriptorProto* other) {
3330  if (other != this) {
3331    std::swap(name_, other->name_);
3332    std::swap(number_, other->number_);
3333    std::swap(options_, other->options_);
3334    std::swap(_has_bits_[0], other->_has_bits_[0]);
3335    _unknown_fields_.Swap(&other->_unknown_fields_);
3336    std::swap(_cached_size_, other->_cached_size_);
3337  }
3338}
3339
3340::google::protobuf::Metadata EnumValueDescriptorProto::GetMetadata() const {
3341  protobuf_AssignDescriptorsOnce();
3342  ::google::protobuf::Metadata metadata;
3343  metadata.descriptor = EnumValueDescriptorProto_descriptor_;
3344  metadata.reflection = EnumValueDescriptorProto_reflection_;
3345  return metadata;
3346}
3347
3348
3349// ===================================================================
3350
3351const ::std::string ServiceDescriptorProto::_default_name_;
3352#ifndef _MSC_VER
3353const int ServiceDescriptorProto::kNameFieldNumber;
3354const int ServiceDescriptorProto::kMethodFieldNumber;
3355const int ServiceDescriptorProto::kOptionsFieldNumber;
3356#endif  // !_MSC_VER
3357
3358ServiceDescriptorProto::ServiceDescriptorProto() {
3359  SharedCtor();
3360}
3361
3362void ServiceDescriptorProto::InitAsDefaultInstance() {
3363  options_ = const_cast< ::google::protobuf::ServiceOptions*>(&::google::protobuf::ServiceOptions::default_instance());
3364}
3365
3366ServiceDescriptorProto::ServiceDescriptorProto(const ServiceDescriptorProto& from) {
3367  SharedCtor();
3368  MergeFrom(from);
3369}
3370
3371void ServiceDescriptorProto::SharedCtor() {
3372  _cached_size_ = 0;
3373  name_ = const_cast< ::std::string*>(&_default_name_);
3374  options_ = NULL;
3375  ::memset(_has_bits_, 0, sizeof(_has_bits_));
3376}
3377
3378ServiceDescriptorProto::~ServiceDescriptorProto() {
3379  SharedDtor();
3380}
3381
3382void ServiceDescriptorProto::SharedDtor() {
3383  if (name_ != &_default_name_) {
3384    delete name_;
3385  }
3386  if (this != default_instance_) {
3387    delete options_;
3388  }
3389}
3390
3391const ::google::protobuf::Descriptor* ServiceDescriptorProto::descriptor() {
3392  protobuf_AssignDescriptorsOnce();
3393  return ServiceDescriptorProto_descriptor_;
3394}
3395
3396const ServiceDescriptorProto& ServiceDescriptorProto::default_instance() {
3397  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
3398}
3399
3400ServiceDescriptorProto* ServiceDescriptorProto::default_instance_ = NULL;
3401
3402ServiceDescriptorProto* ServiceDescriptorProto::New() const {
3403  return new ServiceDescriptorProto;
3404}
3405
3406void ServiceDescriptorProto::Clear() {
3407  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
3408    if (_has_bit(0)) {
3409      if (name_ != &_default_name_) {
3410        name_->clear();
3411      }
3412    }
3413    if (_has_bit(2)) {
3414      if (options_ != NULL) options_->::google::protobuf::ServiceOptions::Clear();
3415    }
3416  }
3417  method_.Clear();
3418  ::memset(_has_bits_, 0, sizeof(_has_bits_));
3419  mutable_unknown_fields()->Clear();
3420}
3421
3422bool ServiceDescriptorProto::MergePartialFromCodedStream(
3423    ::google::protobuf::io::CodedInputStream* input) {
3424#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
3425  ::google::protobuf::uint32 tag;
3426  while ((tag = input->ReadTag()) != 0) {
3427    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
3428      // optional string name = 1;
3429      case 1: {
3430        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
3431            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
3432          goto handle_uninterpreted;
3433        }
3434        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
3435              input, this->mutable_name()));
3436        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3437          this->name().data(), this->name().length(),
3438          ::google::protobuf::internal::WireFormat::PARSE);
3439        if (input->ExpectTag(18)) goto parse_method;
3440        break;
3441      }
3442
3443      // repeated .google.protobuf.MethodDescriptorProto method = 2;
3444      case 2: {
3445        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
3446            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
3447          goto handle_uninterpreted;
3448        }
3449       parse_method:
3450        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
3451              input, add_method()));
3452        if (input->ExpectTag(18)) goto parse_method;
3453        if (input->ExpectTag(26)) goto parse_options;
3454        break;
3455      }
3456
3457      // optional .google.protobuf.ServiceOptions options = 3;
3458      case 3: {
3459        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
3460            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
3461          goto handle_uninterpreted;
3462        }
3463       parse_options:
3464        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
3465             input, mutable_options()));
3466        if (input->ExpectAtEnd()) return true;
3467        break;
3468      }
3469
3470      default: {
3471      handle_uninterpreted:
3472        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
3473            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
3474          return true;
3475        }
3476        DO_(::google::protobuf::internal::WireFormat::SkipField(
3477              input, tag, mutable_unknown_fields()));
3478        break;
3479      }
3480    }
3481  }
3482  return true;
3483#undef DO_
3484}
3485
3486void ServiceDescriptorProto::SerializeWithCachedSizes(
3487    ::google::protobuf::io::CodedOutputStream* output) const {
3488  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
3489  if (raw_buffer != NULL) {
3490    ServiceDescriptorProto::SerializeWithCachedSizesToArray(raw_buffer);
3491    return;
3492  }
3493
3494  // optional string name = 1;
3495  if (_has_bit(0)) {
3496    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3497      this->name().data(), this->name().length(),
3498      ::google::protobuf::internal::WireFormat::SERIALIZE);
3499    ::google::protobuf::internal::WireFormatLite::WriteString(
3500      1, this->name(), output);
3501  }
3502
3503  // repeated .google.protobuf.MethodDescriptorProto method = 2;
3504  for (int i = 0; i < this->method_size(); i++) {
3505    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
3506      2, this->method(i), output);
3507  }
3508
3509  // optional .google.protobuf.ServiceOptions options = 3;
3510  if (_has_bit(2)) {
3511    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
3512      3, this->options(), output);
3513  }
3514
3515  if (!unknown_fields().empty()) {
3516    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
3517        unknown_fields(), output);
3518  }
3519}
3520
3521::google::protobuf::uint8* ServiceDescriptorProto::SerializeWithCachedSizesToArray(
3522    ::google::protobuf::uint8* target) const {
3523  // optional string name = 1;
3524  if (_has_bit(0)) {
3525    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3526      this->name().data(), this->name().length(),
3527      ::google::protobuf::internal::WireFormat::SERIALIZE);
3528    target =
3529      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
3530        1, this->name(), target);
3531  }
3532
3533  // repeated .google.protobuf.MethodDescriptorProto method = 2;
3534  for (int i = 0; i < this->method_size(); i++) {
3535    target = ::google::protobuf::internal::WireFormatLite::
3536      WriteMessageNoVirtualToArray(
3537        2, this->method(i), target);
3538  }
3539
3540  // optional .google.protobuf.ServiceOptions options = 3;
3541  if (_has_bit(2)) {
3542    target = ::google::protobuf::internal::WireFormatLite::
3543      WriteMessageNoVirtualToArray(
3544        3, this->options(), target);
3545  }
3546
3547  if (!unknown_fields().empty()) {
3548    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
3549        unknown_fields(), target);
3550  }
3551  return target;
3552}
3553
3554int ServiceDescriptorProto::ByteSize() const {
3555  int total_size = 0;
3556
3557  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
3558    // optional string name = 1;
3559    if (has_name()) {
3560      total_size += 1 +
3561        ::google::protobuf::internal::WireFormatLite::StringSize(
3562          this->name());
3563    }
3564
3565    // optional .google.protobuf.ServiceOptions options = 3;
3566    if (has_options()) {
3567      total_size += 1 +
3568        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3569          this->options());
3570    }
3571
3572  }
3573  // repeated .google.protobuf.MethodDescriptorProto method = 2;
3574  total_size += 1 * this->method_size();
3575  for (int i = 0; i < this->method_size(); i++) {
3576    total_size +=
3577      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3578        this->method(i));
3579  }
3580
3581  if (!unknown_fields().empty()) {
3582    total_size +=
3583      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
3584        unknown_fields());
3585  }
3586  _cached_size_ = total_size;
3587  return total_size;
3588}
3589
3590void ServiceDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
3591  GOOGLE_CHECK_NE(&from, this);
3592  const ServiceDescriptorProto* source =
3593    ::google::protobuf::internal::dynamic_cast_if_available<const ServiceDescriptorProto*>(
3594      &from);
3595  if (source == NULL) {
3596    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
3597  } else {
3598    MergeFrom(*source);
3599  }
3600}
3601
3602void ServiceDescriptorProto::MergeFrom(const ServiceDescriptorProto& from) {
3603  GOOGLE_CHECK_NE(&from, this);
3604  method_.MergeFrom(from.method_);
3605  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
3606    if (from._has_bit(0)) {
3607      set_name(from.name());
3608    }
3609    if (from._has_bit(2)) {
3610      mutable_options()->::google::protobuf::ServiceOptions::MergeFrom(from.options());
3611    }
3612  }
3613  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
3614}
3615
3616void ServiceDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
3617  if (&from == this) return;
3618  Clear();
3619  MergeFrom(from);
3620}
3621
3622void ServiceDescriptorProto::CopyFrom(const ServiceDescriptorProto& from) {
3623  if (&from == this) return;
3624  Clear();
3625  MergeFrom(from);
3626}
3627
3628bool ServiceDescriptorProto::IsInitialized() const {
3629
3630  for (int i = 0; i < method_size(); i++) {
3631    if (!this->method(i).IsInitialized()) return false;
3632  }
3633  if (has_options()) {
3634    if (!this->options().IsInitialized()) return false;
3635  }
3636  return true;
3637}
3638
3639void ServiceDescriptorProto::Swap(ServiceDescriptorProto* other) {
3640  if (other != this) {
3641    std::swap(name_, other->name_);
3642    method_.Swap(&other->method_);
3643    std::swap(options_, other->options_);
3644    std::swap(_has_bits_[0], other->_has_bits_[0]);
3645    _unknown_fields_.Swap(&other->_unknown_fields_);
3646    std::swap(_cached_size_, other->_cached_size_);
3647  }
3648}
3649
3650::google::protobuf::Metadata ServiceDescriptorProto::GetMetadata() const {
3651  protobuf_AssignDescriptorsOnce();
3652  ::google::protobuf::Metadata metadata;
3653  metadata.descriptor = ServiceDescriptorProto_descriptor_;
3654  metadata.reflection = ServiceDescriptorProto_reflection_;
3655  return metadata;
3656}
3657
3658
3659// ===================================================================
3660
3661const ::std::string MethodDescriptorProto::_default_name_;
3662const ::std::string MethodDescriptorProto::_default_input_type_;
3663const ::std::string MethodDescriptorProto::_default_output_type_;
3664#ifndef _MSC_VER
3665const int MethodDescriptorProto::kNameFieldNumber;
3666const int MethodDescriptorProto::kInputTypeFieldNumber;
3667const int MethodDescriptorProto::kOutputTypeFieldNumber;
3668const int MethodDescriptorProto::kOptionsFieldNumber;
3669#endif  // !_MSC_VER
3670
3671MethodDescriptorProto::MethodDescriptorProto() {
3672  SharedCtor();
3673}
3674
3675void MethodDescriptorProto::InitAsDefaultInstance() {
3676  options_ = const_cast< ::google::protobuf::MethodOptions*>(&::google::protobuf::MethodOptions::default_instance());
3677}
3678
3679MethodDescriptorProto::MethodDescriptorProto(const MethodDescriptorProto& from) {
3680  SharedCtor();
3681  MergeFrom(from);
3682}
3683
3684void MethodDescriptorProto::SharedCtor() {
3685  _cached_size_ = 0;
3686  name_ = const_cast< ::std::string*>(&_default_name_);
3687  input_type_ = const_cast< ::std::string*>(&_default_input_type_);
3688  output_type_ = const_cast< ::std::string*>(&_default_output_type_);
3689  options_ = NULL;
3690  ::memset(_has_bits_, 0, sizeof(_has_bits_));
3691}
3692
3693MethodDescriptorProto::~MethodDescriptorProto() {
3694  SharedDtor();
3695}
3696
3697void MethodDescriptorProto::SharedDtor() {
3698  if (name_ != &_default_name_) {
3699    delete name_;
3700  }
3701  if (input_type_ != &_default_input_type_) {
3702    delete input_type_;
3703  }
3704  if (output_type_ != &_default_output_type_) {
3705    delete output_type_;
3706  }
3707  if (this != default_instance_) {
3708    delete options_;
3709  }
3710}
3711
3712const ::google::protobuf::Descriptor* MethodDescriptorProto::descriptor() {
3713  protobuf_AssignDescriptorsOnce();
3714  return MethodDescriptorProto_descriptor_;
3715}
3716
3717const MethodDescriptorProto& MethodDescriptorProto::default_instance() {
3718  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
3719}
3720
3721MethodDescriptorProto* MethodDescriptorProto::default_instance_ = NULL;
3722
3723MethodDescriptorProto* MethodDescriptorProto::New() const {
3724  return new MethodDescriptorProto;
3725}
3726
3727void MethodDescriptorProto::Clear() {
3728  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
3729    if (_has_bit(0)) {
3730      if (name_ != &_default_name_) {
3731        name_->clear();
3732      }
3733    }
3734    if (_has_bit(1)) {
3735      if (input_type_ != &_default_input_type_) {
3736        input_type_->clear();
3737      }
3738    }
3739    if (_has_bit(2)) {
3740      if (output_type_ != &_default_output_type_) {
3741        output_type_->clear();
3742      }
3743    }
3744    if (_has_bit(3)) {
3745      if (options_ != NULL) options_->::google::protobuf::MethodOptions::Clear();
3746    }
3747  }
3748  ::memset(_has_bits_, 0, sizeof(_has_bits_));
3749  mutable_unknown_fields()->Clear();
3750}
3751
3752bool MethodDescriptorProto::MergePartialFromCodedStream(
3753    ::google::protobuf::io::CodedInputStream* input) {
3754#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
3755  ::google::protobuf::uint32 tag;
3756  while ((tag = input->ReadTag()) != 0) {
3757    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
3758      // optional string name = 1;
3759      case 1: {
3760        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
3761            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
3762          goto handle_uninterpreted;
3763        }
3764        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
3765              input, this->mutable_name()));
3766        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3767          this->name().data(), this->name().length(),
3768          ::google::protobuf::internal::WireFormat::PARSE);
3769        if (input->ExpectTag(18)) goto parse_input_type;
3770        break;
3771      }
3772
3773      // optional string input_type = 2;
3774      case 2: {
3775        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
3776            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
3777          goto handle_uninterpreted;
3778        }
3779       parse_input_type:
3780        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
3781              input, this->mutable_input_type()));
3782        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3783          this->input_type().data(), this->input_type().length(),
3784          ::google::protobuf::internal::WireFormat::PARSE);
3785        if (input->ExpectTag(26)) goto parse_output_type;
3786        break;
3787      }
3788
3789      // optional string output_type = 3;
3790      case 3: {
3791        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
3792            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
3793          goto handle_uninterpreted;
3794        }
3795       parse_output_type:
3796        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
3797              input, this->mutable_output_type()));
3798        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3799          this->output_type().data(), this->output_type().length(),
3800          ::google::protobuf::internal::WireFormat::PARSE);
3801        if (input->ExpectTag(34)) goto parse_options;
3802        break;
3803      }
3804
3805      // optional .google.protobuf.MethodOptions options = 4;
3806      case 4: {
3807        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
3808            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
3809          goto handle_uninterpreted;
3810        }
3811       parse_options:
3812        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
3813             input, mutable_options()));
3814        if (input->ExpectAtEnd()) return true;
3815        break;
3816      }
3817
3818      default: {
3819      handle_uninterpreted:
3820        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
3821            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
3822          return true;
3823        }
3824        DO_(::google::protobuf::internal::WireFormat::SkipField(
3825              input, tag, mutable_unknown_fields()));
3826        break;
3827      }
3828    }
3829  }
3830  return true;
3831#undef DO_
3832}
3833
3834void MethodDescriptorProto::SerializeWithCachedSizes(
3835    ::google::protobuf::io::CodedOutputStream* output) const {
3836  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
3837  if (raw_buffer != NULL) {
3838    MethodDescriptorProto::SerializeWithCachedSizesToArray(raw_buffer);
3839    return;
3840  }
3841
3842  // optional string name = 1;
3843  if (_has_bit(0)) {
3844    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3845      this->name().data(), this->name().length(),
3846      ::google::protobuf::internal::WireFormat::SERIALIZE);
3847    ::google::protobuf::internal::WireFormatLite::WriteString(
3848      1, this->name(), output);
3849  }
3850
3851  // optional string input_type = 2;
3852  if (_has_bit(1)) {
3853    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3854      this->input_type().data(), this->input_type().length(),
3855      ::google::protobuf::internal::WireFormat::SERIALIZE);
3856    ::google::protobuf::internal::WireFormatLite::WriteString(
3857      2, this->input_type(), output);
3858  }
3859
3860  // optional string output_type = 3;
3861  if (_has_bit(2)) {
3862    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3863      this->output_type().data(), this->output_type().length(),
3864      ::google::protobuf::internal::WireFormat::SERIALIZE);
3865    ::google::protobuf::internal::WireFormatLite::WriteString(
3866      3, this->output_type(), output);
3867  }
3868
3869  // optional .google.protobuf.MethodOptions options = 4;
3870  if (_has_bit(3)) {
3871    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
3872      4, this->options(), output);
3873  }
3874
3875  if (!unknown_fields().empty()) {
3876    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
3877        unknown_fields(), output);
3878  }
3879}
3880
3881::google::protobuf::uint8* MethodDescriptorProto::SerializeWithCachedSizesToArray(
3882    ::google::protobuf::uint8* target) const {
3883  // optional string name = 1;
3884  if (_has_bit(0)) {
3885    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3886      this->name().data(), this->name().length(),
3887      ::google::protobuf::internal::WireFormat::SERIALIZE);
3888    target =
3889      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
3890        1, this->name(), target);
3891  }
3892
3893  // optional string input_type = 2;
3894  if (_has_bit(1)) {
3895    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3896      this->input_type().data(), this->input_type().length(),
3897      ::google::protobuf::internal::WireFormat::SERIALIZE);
3898    target =
3899      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
3900        2, this->input_type(), target);
3901  }
3902
3903  // optional string output_type = 3;
3904  if (_has_bit(2)) {
3905    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
3906      this->output_type().data(), this->output_type().length(),
3907      ::google::protobuf::internal::WireFormat::SERIALIZE);
3908    target =
3909      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
3910        3, this->output_type(), target);
3911  }
3912
3913  // optional .google.protobuf.MethodOptions options = 4;
3914  if (_has_bit(3)) {
3915    target = ::google::protobuf::internal::WireFormatLite::
3916      WriteMessageNoVirtualToArray(
3917        4, this->options(), target);
3918  }
3919
3920  if (!unknown_fields().empty()) {
3921    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
3922        unknown_fields(), target);
3923  }
3924  return target;
3925}
3926
3927int MethodDescriptorProto::ByteSize() const {
3928  int total_size = 0;
3929
3930  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
3931    // optional string name = 1;
3932    if (has_name()) {
3933      total_size += 1 +
3934        ::google::protobuf::internal::WireFormatLite::StringSize(
3935          this->name());
3936    }
3937
3938    // optional string input_type = 2;
3939    if (has_input_type()) {
3940      total_size += 1 +
3941        ::google::protobuf::internal::WireFormatLite::StringSize(
3942          this->input_type());
3943    }
3944
3945    // optional string output_type = 3;
3946    if (has_output_type()) {
3947      total_size += 1 +
3948        ::google::protobuf::internal::WireFormatLite::StringSize(
3949          this->output_type());
3950    }
3951
3952    // optional .google.protobuf.MethodOptions options = 4;
3953    if (has_options()) {
3954      total_size += 1 +
3955        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3956          this->options());
3957    }
3958
3959  }
3960  if (!unknown_fields().empty()) {
3961    total_size +=
3962      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
3963        unknown_fields());
3964  }
3965  _cached_size_ = total_size;
3966  return total_size;
3967}
3968
3969void MethodDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
3970  GOOGLE_CHECK_NE(&from, this);
3971  const MethodDescriptorProto* source =
3972    ::google::protobuf::internal::dynamic_cast_if_available<const MethodDescriptorProto*>(
3973      &from);
3974  if (source == NULL) {
3975    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
3976  } else {
3977    MergeFrom(*source);
3978  }
3979}
3980
3981void MethodDescriptorProto::MergeFrom(const MethodDescriptorProto& from) {
3982  GOOGLE_CHECK_NE(&from, this);
3983  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
3984    if (from._has_bit(0)) {
3985      set_name(from.name());
3986    }
3987    if (from._has_bit(1)) {
3988      set_input_type(from.input_type());
3989    }
3990    if (from._has_bit(2)) {
3991      set_output_type(from.output_type());
3992    }
3993    if (from._has_bit(3)) {
3994      mutable_options()->::google::protobuf::MethodOptions::MergeFrom(from.options());
3995    }
3996  }
3997  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
3998}
3999
4000void MethodDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
4001  if (&from == this) return;
4002  Clear();
4003  MergeFrom(from);
4004}
4005
4006void MethodDescriptorProto::CopyFrom(const MethodDescriptorProto& from) {
4007  if (&from == this) return;
4008  Clear();
4009  MergeFrom(from);
4010}
4011
4012bool MethodDescriptorProto::IsInitialized() const {
4013
4014  if (has_options()) {
4015    if (!this->options().IsInitialized()) return false;
4016  }
4017  return true;
4018}
4019
4020void MethodDescriptorProto::Swap(MethodDescriptorProto* other) {
4021  if (other != this) {
4022    std::swap(name_, other->name_);
4023    std::swap(input_type_, other->input_type_);
4024    std::swap(output_type_, other->output_type_);
4025    std::swap(options_, other->options_);
4026    std::swap(_has_bits_[0], other->_has_bits_[0]);
4027    _unknown_fields_.Swap(&other->_unknown_fields_);
4028    std::swap(_cached_size_, other->_cached_size_);
4029  }
4030}
4031
4032::google::protobuf::Metadata MethodDescriptorProto::GetMetadata() const {
4033  protobuf_AssignDescriptorsOnce();
4034  ::google::protobuf::Metadata metadata;
4035  metadata.descriptor = MethodDescriptorProto_descriptor_;
4036  metadata.reflection = MethodDescriptorProto_reflection_;
4037  return metadata;
4038}
4039
4040
4041// ===================================================================
4042
4043const ::google::protobuf::EnumDescriptor* FileOptions_OptimizeMode_descriptor() {
4044  protobuf_AssignDescriptorsOnce();
4045  return FileOptions_OptimizeMode_descriptor_;
4046}
4047bool FileOptions_OptimizeMode_IsValid(int value) {
4048  switch(value) {
4049    case 1:
4050    case 2:
4051    case 3:
4052      return true;
4053    default:
4054      return false;
4055  }
4056}
4057
4058#ifndef _MSC_VER
4059const FileOptions_OptimizeMode FileOptions::SPEED;
4060const FileOptions_OptimizeMode FileOptions::CODE_SIZE;
4061const FileOptions_OptimizeMode FileOptions::LITE_RUNTIME;
4062const FileOptions_OptimizeMode FileOptions::OptimizeMode_MIN;
4063const FileOptions_OptimizeMode FileOptions::OptimizeMode_MAX;
4064#endif  // _MSC_VER
4065const ::std::string FileOptions::_default_java_package_;
4066const ::std::string FileOptions::_default_java_outer_classname_;
4067#ifndef _MSC_VER
4068const int FileOptions::kJavaPackageFieldNumber;
4069const int FileOptions::kJavaOuterClassnameFieldNumber;
4070const int FileOptions::kJavaMultipleFilesFieldNumber;
4071const int FileOptions::kOptimizeForFieldNumber;
4072const int FileOptions::kUninterpretedOptionFieldNumber;
4073#endif  // !_MSC_VER
4074
4075FileOptions::FileOptions() {
4076  SharedCtor();
4077}
4078
4079void FileOptions::InitAsDefaultInstance() {
4080}
4081
4082FileOptions::FileOptions(const FileOptions& from) {
4083  SharedCtor();
4084  MergeFrom(from);
4085}
4086
4087void FileOptions::SharedCtor() {
4088  _cached_size_ = 0;
4089  java_package_ = const_cast< ::std::string*>(&_default_java_package_);
4090  java_outer_classname_ = const_cast< ::std::string*>(&_default_java_outer_classname_);
4091  java_multiple_files_ = false;
4092  optimize_for_ = 1;
4093  ::memset(_has_bits_, 0, sizeof(_has_bits_));
4094}
4095
4096FileOptions::~FileOptions() {
4097  SharedDtor();
4098}
4099
4100void FileOptions::SharedDtor() {
4101  if (java_package_ != &_default_java_package_) {
4102    delete java_package_;
4103  }
4104  if (java_outer_classname_ != &_default_java_outer_classname_) {
4105    delete java_outer_classname_;
4106  }
4107  if (this != default_instance_) {
4108  }
4109}
4110
4111const ::google::protobuf::Descriptor* FileOptions::descriptor() {
4112  protobuf_AssignDescriptorsOnce();
4113  return FileOptions_descriptor_;
4114}
4115
4116const FileOptions& FileOptions::default_instance() {
4117  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
4118}
4119
4120FileOptions* FileOptions::default_instance_ = NULL;
4121
4122FileOptions* FileOptions::New() const {
4123  return new FileOptions;
4124}
4125
4126void FileOptions::Clear() {
4127  _extensions_.Clear();
4128  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
4129    if (_has_bit(0)) {
4130      if (java_package_ != &_default_java_package_) {
4131        java_package_->clear();
4132      }
4133    }
4134    if (_has_bit(1)) {
4135      if (java_outer_classname_ != &_default_java_outer_classname_) {
4136        java_outer_classname_->clear();
4137      }
4138    }
4139    java_multiple_files_ = false;
4140    optimize_for_ = 1;
4141  }
4142  uninterpreted_option_.Clear();
4143  ::memset(_has_bits_, 0, sizeof(_has_bits_));
4144  mutable_unknown_fields()->Clear();
4145}
4146
4147bool FileOptions::MergePartialFromCodedStream(
4148    ::google::protobuf::io::CodedInputStream* input) {
4149#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
4150  ::google::protobuf::uint32 tag;
4151  while ((tag = input->ReadTag()) != 0) {
4152    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
4153      // optional string java_package = 1;
4154      case 1: {
4155        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4156            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
4157          goto handle_uninterpreted;
4158        }
4159        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
4160              input, this->mutable_java_package()));
4161        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
4162          this->java_package().data(), this->java_package().length(),
4163          ::google::protobuf::internal::WireFormat::PARSE);
4164        if (input->ExpectTag(66)) goto parse_java_outer_classname;
4165        break;
4166      }
4167
4168      // optional string java_outer_classname = 8;
4169      case 8: {
4170        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4171            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
4172          goto handle_uninterpreted;
4173        }
4174       parse_java_outer_classname:
4175        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
4176              input, this->mutable_java_outer_classname()));
4177        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
4178          this->java_outer_classname().data(), this->java_outer_classname().length(),
4179          ::google::protobuf::internal::WireFormat::PARSE);
4180        if (input->ExpectTag(72)) goto parse_optimize_for;
4181        break;
4182      }
4183
4184      // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];
4185      case 9: {
4186        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4187            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
4188          goto handle_uninterpreted;
4189        }
4190       parse_optimize_for:
4191        int value;
4192        DO_(::google::protobuf::internal::WireFormatLite::ReadEnum(input, &value));
4193        if (::google::protobuf::FileOptions_OptimizeMode_IsValid(value)) {
4194          set_optimize_for(static_cast< ::google::protobuf::FileOptions_OptimizeMode >(value));
4195        } else {
4196          mutable_unknown_fields()->AddVarint(9, value);
4197        }
4198        if (input->ExpectTag(80)) goto parse_java_multiple_files;
4199        break;
4200      }
4201
4202      // optional bool java_multiple_files = 10 [default = false];
4203      case 10: {
4204        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4205            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
4206          goto handle_uninterpreted;
4207        }
4208       parse_java_multiple_files:
4209        DO_(::google::protobuf::internal::WireFormatLite::ReadBool(
4210              input, &java_multiple_files_));
4211        _set_bit(2);
4212        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
4213        break;
4214      }
4215
4216      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
4217      case 999: {
4218        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4219            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
4220          goto handle_uninterpreted;
4221        }
4222       parse_uninterpreted_option:
4223        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
4224              input, add_uninterpreted_option()));
4225        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
4226        if (input->ExpectAtEnd()) return true;
4227        break;
4228      }
4229
4230      default: {
4231      handle_uninterpreted:
4232        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
4233            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
4234          return true;
4235        }
4236        if ((8000u <= tag)) {
4237          DO_(_extensions_.ParseField(tag, input, default_instance_,
4238                                      mutable_unknown_fields()));
4239          continue;
4240        }
4241        DO_(::google::protobuf::internal::WireFormat::SkipField(
4242              input, tag, mutable_unknown_fields()));
4243        break;
4244      }
4245    }
4246  }
4247  return true;
4248#undef DO_
4249}
4250
4251void FileOptions::SerializeWithCachedSizes(
4252    ::google::protobuf::io::CodedOutputStream* output) const {
4253  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
4254  if (raw_buffer != NULL) {
4255    FileOptions::SerializeWithCachedSizesToArray(raw_buffer);
4256    return;
4257  }
4258
4259  // optional string java_package = 1;
4260  if (_has_bit(0)) {
4261    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
4262      this->java_package().data(), this->java_package().length(),
4263      ::google::protobuf::internal::WireFormat::SERIALIZE);
4264    ::google::protobuf::internal::WireFormatLite::WriteString(
4265      1, this->java_package(), output);
4266  }
4267
4268  // optional string java_outer_classname = 8;
4269  if (_has_bit(1)) {
4270    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
4271      this->java_outer_classname().data(), this->java_outer_classname().length(),
4272      ::google::protobuf::internal::WireFormat::SERIALIZE);
4273    ::google::protobuf::internal::WireFormatLite::WriteString(
4274      8, this->java_outer_classname(), output);
4275  }
4276
4277  // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];
4278  if (_has_bit(3)) {
4279    ::google::protobuf::internal::WireFormatLite::WriteEnum(
4280      9, this->optimize_for(), output);
4281  }
4282
4283  // optional bool java_multiple_files = 10 [default = false];
4284  if (_has_bit(2)) {
4285    ::google::protobuf::internal::WireFormatLite::WriteBool(10, this->java_multiple_files(), output);
4286  }
4287
4288  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
4289  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
4290    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
4291      999, this->uninterpreted_option(i), output);
4292  }
4293
4294  // Extension range [1000, 536870912)
4295  _extensions_.SerializeWithCachedSizes(
4296      1000, 536870912, output);
4297
4298  if (!unknown_fields().empty()) {
4299    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
4300        unknown_fields(), output);
4301  }
4302}
4303
4304::google::protobuf::uint8* FileOptions::SerializeWithCachedSizesToArray(
4305    ::google::protobuf::uint8* target) const {
4306  // optional string java_package = 1;
4307  if (_has_bit(0)) {
4308    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
4309      this->java_package().data(), this->java_package().length(),
4310      ::google::protobuf::internal::WireFormat::SERIALIZE);
4311    target =
4312      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
4313        1, this->java_package(), target);
4314  }
4315
4316  // optional string java_outer_classname = 8;
4317  if (_has_bit(1)) {
4318    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
4319      this->java_outer_classname().data(), this->java_outer_classname().length(),
4320      ::google::protobuf::internal::WireFormat::SERIALIZE);
4321    target =
4322      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
4323        8, this->java_outer_classname(), target);
4324  }
4325
4326  // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];
4327  if (_has_bit(3)) {
4328    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
4329      9, this->optimize_for(), target);
4330  }
4331
4332  // optional bool java_multiple_files = 10 [default = false];
4333  if (_has_bit(2)) {
4334    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(10, this->java_multiple_files(), target);
4335  }
4336
4337  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
4338  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
4339    target = ::google::protobuf::internal::WireFormatLite::
4340      WriteMessageNoVirtualToArray(
4341        999, this->uninterpreted_option(i), target);
4342  }
4343
4344  // Extension range [1000, 536870912)
4345  target = _extensions_.SerializeWithCachedSizesToArray(
4346      1000, 536870912, target);
4347
4348  if (!unknown_fields().empty()) {
4349    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
4350        unknown_fields(), target);
4351  }
4352  return target;
4353}
4354
4355int FileOptions::ByteSize() const {
4356  int total_size = 0;
4357
4358  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
4359    // optional string java_package = 1;
4360    if (has_java_package()) {
4361      total_size += 1 +
4362        ::google::protobuf::internal::WireFormatLite::StringSize(
4363          this->java_package());
4364    }
4365
4366    // optional string java_outer_classname = 8;
4367    if (has_java_outer_classname()) {
4368      total_size += 1 +
4369        ::google::protobuf::internal::WireFormatLite::StringSize(
4370          this->java_outer_classname());
4371    }
4372
4373    // optional bool java_multiple_files = 10 [default = false];
4374    if (has_java_multiple_files()) {
4375      total_size += 1 + 1;
4376    }
4377
4378    // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];
4379    if (has_optimize_for()) {
4380      total_size += 1 +
4381        ::google::protobuf::internal::WireFormatLite::EnumSize(this->optimize_for());
4382    }
4383
4384  }
4385  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
4386  total_size += 2 * this->uninterpreted_option_size();
4387  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
4388    total_size +=
4389      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
4390        this->uninterpreted_option(i));
4391  }
4392
4393  total_size += _extensions_.ByteSize();
4394
4395  if (!unknown_fields().empty()) {
4396    total_size +=
4397      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
4398        unknown_fields());
4399  }
4400  _cached_size_ = total_size;
4401  return total_size;
4402}
4403
4404void FileOptions::MergeFrom(const ::google::protobuf::Message& from) {
4405  GOOGLE_CHECK_NE(&from, this);
4406  const FileOptions* source =
4407    ::google::protobuf::internal::dynamic_cast_if_available<const FileOptions*>(
4408      &from);
4409  if (source == NULL) {
4410    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
4411  } else {
4412    MergeFrom(*source);
4413  }
4414}
4415
4416void FileOptions::MergeFrom(const FileOptions& from) {
4417  GOOGLE_CHECK_NE(&from, this);
4418  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
4419  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
4420    if (from._has_bit(0)) {
4421      set_java_package(from.java_package());
4422    }
4423    if (from._has_bit(1)) {
4424      set_java_outer_classname(from.java_outer_classname());
4425    }
4426    if (from._has_bit(2)) {
4427      set_java_multiple_files(from.java_multiple_files());
4428    }
4429    if (from._has_bit(3)) {
4430      set_optimize_for(from.optimize_for());
4431    }
4432  }
4433  _extensions_.MergeFrom(from._extensions_);
4434  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
4435}
4436
4437void FileOptions::CopyFrom(const ::google::protobuf::Message& from) {
4438  if (&from == this) return;
4439  Clear();
4440  MergeFrom(from);
4441}
4442
4443void FileOptions::CopyFrom(const FileOptions& from) {
4444  if (&from == this) return;
4445  Clear();
4446  MergeFrom(from);
4447}
4448
4449bool FileOptions::IsInitialized() const {
4450
4451  for (int i = 0; i < uninterpreted_option_size(); i++) {
4452    if (!this->uninterpreted_option(i).IsInitialized()) return false;
4453  }
4454
4455  if (!_extensions_.IsInitialized()) return false;  return true;
4456}
4457
4458void FileOptions::Swap(FileOptions* other) {
4459  if (other != this) {
4460    std::swap(java_package_, other->java_package_);
4461    std::swap(java_outer_classname_, other->java_outer_classname_);
4462    std::swap(java_multiple_files_, other->java_multiple_files_);
4463    std::swap(optimize_for_, other->optimize_for_);
4464    uninterpreted_option_.Swap(&other->uninterpreted_option_);
4465    std::swap(_has_bits_[0], other->_has_bits_[0]);
4466    _unknown_fields_.Swap(&other->_unknown_fields_);
4467    std::swap(_cached_size_, other->_cached_size_);
4468    _extensions_.Swap(&other->_extensions_);
4469  }
4470}
4471
4472::google::protobuf::Metadata FileOptions::GetMetadata() const {
4473  protobuf_AssignDescriptorsOnce();
4474  ::google::protobuf::Metadata metadata;
4475  metadata.descriptor = FileOptions_descriptor_;
4476  metadata.reflection = FileOptions_reflection_;
4477  return metadata;
4478}
4479
4480
4481// ===================================================================
4482
4483#ifndef _MSC_VER
4484const int MessageOptions::kMessageSetWireFormatFieldNumber;
4485const int MessageOptions::kNoStandardDescriptorAccessorFieldNumber;
4486const int MessageOptions::kUninterpretedOptionFieldNumber;
4487#endif  // !_MSC_VER
4488
4489MessageOptions::MessageOptions() {
4490  SharedCtor();
4491}
4492
4493void MessageOptions::InitAsDefaultInstance() {
4494}
4495
4496MessageOptions::MessageOptions(const MessageOptions& from) {
4497  SharedCtor();
4498  MergeFrom(from);
4499}
4500
4501void MessageOptions::SharedCtor() {
4502  _cached_size_ = 0;
4503  message_set_wire_format_ = false;
4504  no_standard_descriptor_accessor_ = false;
4505  ::memset(_has_bits_, 0, sizeof(_has_bits_));
4506}
4507
4508MessageOptions::~MessageOptions() {
4509  SharedDtor();
4510}
4511
4512void MessageOptions::SharedDtor() {
4513  if (this != default_instance_) {
4514  }
4515}
4516
4517const ::google::protobuf::Descriptor* MessageOptions::descriptor() {
4518  protobuf_AssignDescriptorsOnce();
4519  return MessageOptions_descriptor_;
4520}
4521
4522const MessageOptions& MessageOptions::default_instance() {
4523  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
4524}
4525
4526MessageOptions* MessageOptions::default_instance_ = NULL;
4527
4528MessageOptions* MessageOptions::New() const {
4529  return new MessageOptions;
4530}
4531
4532void MessageOptions::Clear() {
4533  _extensions_.Clear();
4534  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
4535    message_set_wire_format_ = false;
4536    no_standard_descriptor_accessor_ = false;
4537  }
4538  uninterpreted_option_.Clear();
4539  ::memset(_has_bits_, 0, sizeof(_has_bits_));
4540  mutable_unknown_fields()->Clear();
4541}
4542
4543bool MessageOptions::MergePartialFromCodedStream(
4544    ::google::protobuf::io::CodedInputStream* input) {
4545#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
4546  ::google::protobuf::uint32 tag;
4547  while ((tag = input->ReadTag()) != 0) {
4548    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
4549      // optional bool message_set_wire_format = 1 [default = false];
4550      case 1: {
4551        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4552            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
4553          goto handle_uninterpreted;
4554        }
4555        DO_(::google::protobuf::internal::WireFormatLite::ReadBool(
4556              input, &message_set_wire_format_));
4557        _set_bit(0);
4558        if (input->ExpectTag(16)) goto parse_no_standard_descriptor_accessor;
4559        break;
4560      }
4561
4562      // optional bool no_standard_descriptor_accessor = 2 [default = false];
4563      case 2: {
4564        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4565            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
4566          goto handle_uninterpreted;
4567        }
4568       parse_no_standard_descriptor_accessor:
4569        DO_(::google::protobuf::internal::WireFormatLite::ReadBool(
4570              input, &no_standard_descriptor_accessor_));
4571        _set_bit(1);
4572        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
4573        break;
4574      }
4575
4576      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
4577      case 999: {
4578        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4579            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
4580          goto handle_uninterpreted;
4581        }
4582       parse_uninterpreted_option:
4583        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
4584              input, add_uninterpreted_option()));
4585        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
4586        if (input->ExpectAtEnd()) return true;
4587        break;
4588      }
4589
4590      default: {
4591      handle_uninterpreted:
4592        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
4593            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
4594          return true;
4595        }
4596        if ((8000u <= tag)) {
4597          DO_(_extensions_.ParseField(tag, input, default_instance_,
4598                                      mutable_unknown_fields()));
4599          continue;
4600        }
4601        DO_(::google::protobuf::internal::WireFormat::SkipField(
4602              input, tag, mutable_unknown_fields()));
4603        break;
4604      }
4605    }
4606  }
4607  return true;
4608#undef DO_
4609}
4610
4611void MessageOptions::SerializeWithCachedSizes(
4612    ::google::protobuf::io::CodedOutputStream* output) const {
4613  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
4614  if (raw_buffer != NULL) {
4615    MessageOptions::SerializeWithCachedSizesToArray(raw_buffer);
4616    return;
4617  }
4618
4619  // optional bool message_set_wire_format = 1 [default = false];
4620  if (_has_bit(0)) {
4621    ::google::protobuf::internal::WireFormatLite::WriteBool(1, this->message_set_wire_format(), output);
4622  }
4623
4624  // optional bool no_standard_descriptor_accessor = 2 [default = false];
4625  if (_has_bit(1)) {
4626    ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->no_standard_descriptor_accessor(), output);
4627  }
4628
4629  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
4630  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
4631    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
4632      999, this->uninterpreted_option(i), output);
4633  }
4634
4635  // Extension range [1000, 536870912)
4636  _extensions_.SerializeWithCachedSizes(
4637      1000, 536870912, output);
4638
4639  if (!unknown_fields().empty()) {
4640    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
4641        unknown_fields(), output);
4642  }
4643}
4644
4645::google::protobuf::uint8* MessageOptions::SerializeWithCachedSizesToArray(
4646    ::google::protobuf::uint8* target) const {
4647  // optional bool message_set_wire_format = 1 [default = false];
4648  if (_has_bit(0)) {
4649    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(1, this->message_set_wire_format(), target);
4650  }
4651
4652  // optional bool no_standard_descriptor_accessor = 2 [default = false];
4653  if (_has_bit(1)) {
4654    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(2, this->no_standard_descriptor_accessor(), target);
4655  }
4656
4657  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
4658  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
4659    target = ::google::protobuf::internal::WireFormatLite::
4660      WriteMessageNoVirtualToArray(
4661        999, this->uninterpreted_option(i), target);
4662  }
4663
4664  // Extension range [1000, 536870912)
4665  target = _extensions_.SerializeWithCachedSizesToArray(
4666      1000, 536870912, target);
4667
4668  if (!unknown_fields().empty()) {
4669    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
4670        unknown_fields(), target);
4671  }
4672  return target;
4673}
4674
4675int MessageOptions::ByteSize() const {
4676  int total_size = 0;
4677
4678  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
4679    // optional bool message_set_wire_format = 1 [default = false];
4680    if (has_message_set_wire_format()) {
4681      total_size += 1 + 1;
4682    }
4683
4684    // optional bool no_standard_descriptor_accessor = 2 [default = false];
4685    if (has_no_standard_descriptor_accessor()) {
4686      total_size += 1 + 1;
4687    }
4688
4689  }
4690  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
4691  total_size += 2 * this->uninterpreted_option_size();
4692  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
4693    total_size +=
4694      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
4695        this->uninterpreted_option(i));
4696  }
4697
4698  total_size += _extensions_.ByteSize();
4699
4700  if (!unknown_fields().empty()) {
4701    total_size +=
4702      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
4703        unknown_fields());
4704  }
4705  _cached_size_ = total_size;
4706  return total_size;
4707}
4708
4709void MessageOptions::MergeFrom(const ::google::protobuf::Message& from) {
4710  GOOGLE_CHECK_NE(&from, this);
4711  const MessageOptions* source =
4712    ::google::protobuf::internal::dynamic_cast_if_available<const MessageOptions*>(
4713      &from);
4714  if (source == NULL) {
4715    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
4716  } else {
4717    MergeFrom(*source);
4718  }
4719}
4720
4721void MessageOptions::MergeFrom(const MessageOptions& from) {
4722  GOOGLE_CHECK_NE(&from, this);
4723  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
4724  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
4725    if (from._has_bit(0)) {
4726      set_message_set_wire_format(from.message_set_wire_format());
4727    }
4728    if (from._has_bit(1)) {
4729      set_no_standard_descriptor_accessor(from.no_standard_descriptor_accessor());
4730    }
4731  }
4732  _extensions_.MergeFrom(from._extensions_);
4733  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
4734}
4735
4736void MessageOptions::CopyFrom(const ::google::protobuf::Message& from) {
4737  if (&from == this) return;
4738  Clear();
4739  MergeFrom(from);
4740}
4741
4742void MessageOptions::CopyFrom(const MessageOptions& from) {
4743  if (&from == this) return;
4744  Clear();
4745  MergeFrom(from);
4746}
4747
4748bool MessageOptions::IsInitialized() const {
4749
4750  for (int i = 0; i < uninterpreted_option_size(); i++) {
4751    if (!this->uninterpreted_option(i).IsInitialized()) return false;
4752  }
4753
4754  if (!_extensions_.IsInitialized()) return false;  return true;
4755}
4756
4757void MessageOptions::Swap(MessageOptions* other) {
4758  if (other != this) {
4759    std::swap(message_set_wire_format_, other->message_set_wire_format_);
4760    std::swap(no_standard_descriptor_accessor_, other->no_standard_descriptor_accessor_);
4761    uninterpreted_option_.Swap(&other->uninterpreted_option_);
4762    std::swap(_has_bits_[0], other->_has_bits_[0]);
4763    _unknown_fields_.Swap(&other->_unknown_fields_);
4764    std::swap(_cached_size_, other->_cached_size_);
4765    _extensions_.Swap(&other->_extensions_);
4766  }
4767}
4768
4769::google::protobuf::Metadata MessageOptions::GetMetadata() const {
4770  protobuf_AssignDescriptorsOnce();
4771  ::google::protobuf::Metadata metadata;
4772  metadata.descriptor = MessageOptions_descriptor_;
4773  metadata.reflection = MessageOptions_reflection_;
4774  return metadata;
4775}
4776
4777
4778// ===================================================================
4779
4780const ::google::protobuf::EnumDescriptor* FieldOptions_CType_descriptor() {
4781  protobuf_AssignDescriptorsOnce();
4782  return FieldOptions_CType_descriptor_;
4783}
4784bool FieldOptions_CType_IsValid(int value) {
4785  switch(value) {
4786    case 1:
4787    case 2:
4788      return true;
4789    default:
4790      return false;
4791  }
4792}
4793
4794#ifndef _MSC_VER
4795const FieldOptions_CType FieldOptions::CORD;
4796const FieldOptions_CType FieldOptions::STRING_PIECE;
4797const FieldOptions_CType FieldOptions::CType_MIN;
4798const FieldOptions_CType FieldOptions::CType_MAX;
4799#endif  // _MSC_VER
4800const ::std::string FieldOptions::_default_experimental_map_key_;
4801#ifndef _MSC_VER
4802const int FieldOptions::kCtypeFieldNumber;
4803const int FieldOptions::kPackedFieldNumber;
4804const int FieldOptions::kDeprecatedFieldNumber;
4805const int FieldOptions::kExperimentalMapKeyFieldNumber;
4806const int FieldOptions::kUninterpretedOptionFieldNumber;
4807#endif  // !_MSC_VER
4808
4809FieldOptions::FieldOptions() {
4810  SharedCtor();
4811}
4812
4813void FieldOptions::InitAsDefaultInstance() {
4814}
4815
4816FieldOptions::FieldOptions(const FieldOptions& from) {
4817  SharedCtor();
4818  MergeFrom(from);
4819}
4820
4821void FieldOptions::SharedCtor() {
4822  _cached_size_ = 0;
4823  ctype_ = 1;
4824  packed_ = false;
4825  deprecated_ = false;
4826  experimental_map_key_ = const_cast< ::std::string*>(&_default_experimental_map_key_);
4827  ::memset(_has_bits_, 0, sizeof(_has_bits_));
4828}
4829
4830FieldOptions::~FieldOptions() {
4831  SharedDtor();
4832}
4833
4834void FieldOptions::SharedDtor() {
4835  if (experimental_map_key_ != &_default_experimental_map_key_) {
4836    delete experimental_map_key_;
4837  }
4838  if (this != default_instance_) {
4839  }
4840}
4841
4842const ::google::protobuf::Descriptor* FieldOptions::descriptor() {
4843  protobuf_AssignDescriptorsOnce();
4844  return FieldOptions_descriptor_;
4845}
4846
4847const FieldOptions& FieldOptions::default_instance() {
4848  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
4849}
4850
4851FieldOptions* FieldOptions::default_instance_ = NULL;
4852
4853FieldOptions* FieldOptions::New() const {
4854  return new FieldOptions;
4855}
4856
4857void FieldOptions::Clear() {
4858  _extensions_.Clear();
4859  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
4860    ctype_ = 1;
4861    packed_ = false;
4862    deprecated_ = false;
4863    if (_has_bit(3)) {
4864      if (experimental_map_key_ != &_default_experimental_map_key_) {
4865        experimental_map_key_->clear();
4866      }
4867    }
4868  }
4869  uninterpreted_option_.Clear();
4870  ::memset(_has_bits_, 0, sizeof(_has_bits_));
4871  mutable_unknown_fields()->Clear();
4872}
4873
4874bool FieldOptions::MergePartialFromCodedStream(
4875    ::google::protobuf::io::CodedInputStream* input) {
4876#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
4877  ::google::protobuf::uint32 tag;
4878  while ((tag = input->ReadTag()) != 0) {
4879    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
4880      // optional .google.protobuf.FieldOptions.CType ctype = 1;
4881      case 1: {
4882        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4883            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
4884          goto handle_uninterpreted;
4885        }
4886        int value;
4887        DO_(::google::protobuf::internal::WireFormatLite::ReadEnum(input, &value));
4888        if (::google::protobuf::FieldOptions_CType_IsValid(value)) {
4889          set_ctype(static_cast< ::google::protobuf::FieldOptions_CType >(value));
4890        } else {
4891          mutable_unknown_fields()->AddVarint(1, value);
4892        }
4893        if (input->ExpectTag(16)) goto parse_packed;
4894        break;
4895      }
4896
4897      // optional bool packed = 2;
4898      case 2: {
4899        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4900            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
4901          goto handle_uninterpreted;
4902        }
4903       parse_packed:
4904        DO_(::google::protobuf::internal::WireFormatLite::ReadBool(
4905              input, &packed_));
4906        _set_bit(1);
4907        if (input->ExpectTag(24)) goto parse_deprecated;
4908        break;
4909      }
4910
4911      // optional bool deprecated = 3 [default = false];
4912      case 3: {
4913        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4914            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
4915          goto handle_uninterpreted;
4916        }
4917       parse_deprecated:
4918        DO_(::google::protobuf::internal::WireFormatLite::ReadBool(
4919              input, &deprecated_));
4920        _set_bit(2);
4921        if (input->ExpectTag(74)) goto parse_experimental_map_key;
4922        break;
4923      }
4924
4925      // optional string experimental_map_key = 9;
4926      case 9: {
4927        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4928            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
4929          goto handle_uninterpreted;
4930        }
4931       parse_experimental_map_key:
4932        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
4933              input, this->mutable_experimental_map_key()));
4934        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
4935          this->experimental_map_key().data(), this->experimental_map_key().length(),
4936          ::google::protobuf::internal::WireFormat::PARSE);
4937        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
4938        break;
4939      }
4940
4941      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
4942      case 999: {
4943        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
4944            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
4945          goto handle_uninterpreted;
4946        }
4947       parse_uninterpreted_option:
4948        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
4949              input, add_uninterpreted_option()));
4950        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
4951        if (input->ExpectAtEnd()) return true;
4952        break;
4953      }
4954
4955      default: {
4956      handle_uninterpreted:
4957        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
4958            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
4959          return true;
4960        }
4961        if ((8000u <= tag)) {
4962          DO_(_extensions_.ParseField(tag, input, default_instance_,
4963                                      mutable_unknown_fields()));
4964          continue;
4965        }
4966        DO_(::google::protobuf::internal::WireFormat::SkipField(
4967              input, tag, mutable_unknown_fields()));
4968        break;
4969      }
4970    }
4971  }
4972  return true;
4973#undef DO_
4974}
4975
4976void FieldOptions::SerializeWithCachedSizes(
4977    ::google::protobuf::io::CodedOutputStream* output) const {
4978  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
4979  if (raw_buffer != NULL) {
4980    FieldOptions::SerializeWithCachedSizesToArray(raw_buffer);
4981    return;
4982  }
4983
4984  // optional .google.protobuf.FieldOptions.CType ctype = 1;
4985  if (_has_bit(0)) {
4986    ::google::protobuf::internal::WireFormatLite::WriteEnum(
4987      1, this->ctype(), output);
4988  }
4989
4990  // optional bool packed = 2;
4991  if (_has_bit(1)) {
4992    ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->packed(), output);
4993  }
4994
4995  // optional bool deprecated = 3 [default = false];
4996  if (_has_bit(2)) {
4997    ::google::protobuf::internal::WireFormatLite::WriteBool(3, this->deprecated(), output);
4998  }
4999
5000  // optional string experimental_map_key = 9;
5001  if (_has_bit(3)) {
5002    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
5003      this->experimental_map_key().data(), this->experimental_map_key().length(),
5004      ::google::protobuf::internal::WireFormat::SERIALIZE);
5005    ::google::protobuf::internal::WireFormatLite::WriteString(
5006      9, this->experimental_map_key(), output);
5007  }
5008
5009  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5010  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5011    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
5012      999, this->uninterpreted_option(i), output);
5013  }
5014
5015  // Extension range [1000, 536870912)
5016  _extensions_.SerializeWithCachedSizes(
5017      1000, 536870912, output);
5018
5019  if (!unknown_fields().empty()) {
5020    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
5021        unknown_fields(), output);
5022  }
5023}
5024
5025::google::protobuf::uint8* FieldOptions::SerializeWithCachedSizesToArray(
5026    ::google::protobuf::uint8* target) const {
5027  // optional .google.protobuf.FieldOptions.CType ctype = 1;
5028  if (_has_bit(0)) {
5029    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
5030      1, this->ctype(), target);
5031  }
5032
5033  // optional bool packed = 2;
5034  if (_has_bit(1)) {
5035    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(2, this->packed(), target);
5036  }
5037
5038  // optional bool deprecated = 3 [default = false];
5039  if (_has_bit(2)) {
5040    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(3, this->deprecated(), target);
5041  }
5042
5043  // optional string experimental_map_key = 9;
5044  if (_has_bit(3)) {
5045    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
5046      this->experimental_map_key().data(), this->experimental_map_key().length(),
5047      ::google::protobuf::internal::WireFormat::SERIALIZE);
5048    target =
5049      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
5050        9, this->experimental_map_key(), target);
5051  }
5052
5053  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5054  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5055    target = ::google::protobuf::internal::WireFormatLite::
5056      WriteMessageNoVirtualToArray(
5057        999, this->uninterpreted_option(i), target);
5058  }
5059
5060  // Extension range [1000, 536870912)
5061  target = _extensions_.SerializeWithCachedSizesToArray(
5062      1000, 536870912, target);
5063
5064  if (!unknown_fields().empty()) {
5065    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
5066        unknown_fields(), target);
5067  }
5068  return target;
5069}
5070
5071int FieldOptions::ByteSize() const {
5072  int total_size = 0;
5073
5074  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
5075    // optional .google.protobuf.FieldOptions.CType ctype = 1;
5076    if (has_ctype()) {
5077      total_size += 1 +
5078        ::google::protobuf::internal::WireFormatLite::EnumSize(this->ctype());
5079    }
5080
5081    // optional bool packed = 2;
5082    if (has_packed()) {
5083      total_size += 1 + 1;
5084    }
5085
5086    // optional bool deprecated = 3 [default = false];
5087    if (has_deprecated()) {
5088      total_size += 1 + 1;
5089    }
5090
5091    // optional string experimental_map_key = 9;
5092    if (has_experimental_map_key()) {
5093      total_size += 1 +
5094        ::google::protobuf::internal::WireFormatLite::StringSize(
5095          this->experimental_map_key());
5096    }
5097
5098  }
5099  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5100  total_size += 2 * this->uninterpreted_option_size();
5101  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5102    total_size +=
5103      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
5104        this->uninterpreted_option(i));
5105  }
5106
5107  total_size += _extensions_.ByteSize();
5108
5109  if (!unknown_fields().empty()) {
5110    total_size +=
5111      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
5112        unknown_fields());
5113  }
5114  _cached_size_ = total_size;
5115  return total_size;
5116}
5117
5118void FieldOptions::MergeFrom(const ::google::protobuf::Message& from) {
5119  GOOGLE_CHECK_NE(&from, this);
5120  const FieldOptions* source =
5121    ::google::protobuf::internal::dynamic_cast_if_available<const FieldOptions*>(
5122      &from);
5123  if (source == NULL) {
5124    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
5125  } else {
5126    MergeFrom(*source);
5127  }
5128}
5129
5130void FieldOptions::MergeFrom(const FieldOptions& from) {
5131  GOOGLE_CHECK_NE(&from, this);
5132  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
5133  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
5134    if (from._has_bit(0)) {
5135      set_ctype(from.ctype());
5136    }
5137    if (from._has_bit(1)) {
5138      set_packed(from.packed());
5139    }
5140    if (from._has_bit(2)) {
5141      set_deprecated(from.deprecated());
5142    }
5143    if (from._has_bit(3)) {
5144      set_experimental_map_key(from.experimental_map_key());
5145    }
5146  }
5147  _extensions_.MergeFrom(from._extensions_);
5148  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
5149}
5150
5151void FieldOptions::CopyFrom(const ::google::protobuf::Message& from) {
5152  if (&from == this) return;
5153  Clear();
5154  MergeFrom(from);
5155}
5156
5157void FieldOptions::CopyFrom(const FieldOptions& from) {
5158  if (&from == this) return;
5159  Clear();
5160  MergeFrom(from);
5161}
5162
5163bool FieldOptions::IsInitialized() const {
5164
5165  for (int i = 0; i < uninterpreted_option_size(); i++) {
5166    if (!this->uninterpreted_option(i).IsInitialized()) return false;
5167  }
5168
5169  if (!_extensions_.IsInitialized()) return false;  return true;
5170}
5171
5172void FieldOptions::Swap(FieldOptions* other) {
5173  if (other != this) {
5174    std::swap(ctype_, other->ctype_);
5175    std::swap(packed_, other->packed_);
5176    std::swap(deprecated_, other->deprecated_);
5177    std::swap(experimental_map_key_, other->experimental_map_key_);
5178    uninterpreted_option_.Swap(&other->uninterpreted_option_);
5179    std::swap(_has_bits_[0], other->_has_bits_[0]);
5180    _unknown_fields_.Swap(&other->_unknown_fields_);
5181    std::swap(_cached_size_, other->_cached_size_);
5182    _extensions_.Swap(&other->_extensions_);
5183  }
5184}
5185
5186::google::protobuf::Metadata FieldOptions::GetMetadata() const {
5187  protobuf_AssignDescriptorsOnce();
5188  ::google::protobuf::Metadata metadata;
5189  metadata.descriptor = FieldOptions_descriptor_;
5190  metadata.reflection = FieldOptions_reflection_;
5191  return metadata;
5192}
5193
5194
5195// ===================================================================
5196
5197#ifndef _MSC_VER
5198const int EnumOptions::kUninterpretedOptionFieldNumber;
5199#endif  // !_MSC_VER
5200
5201EnumOptions::EnumOptions() {
5202  SharedCtor();
5203}
5204
5205void EnumOptions::InitAsDefaultInstance() {
5206}
5207
5208EnumOptions::EnumOptions(const EnumOptions& from) {
5209  SharedCtor();
5210  MergeFrom(from);
5211}
5212
5213void EnumOptions::SharedCtor() {
5214  _cached_size_ = 0;
5215  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5216}
5217
5218EnumOptions::~EnumOptions() {
5219  SharedDtor();
5220}
5221
5222void EnumOptions::SharedDtor() {
5223  if (this != default_instance_) {
5224  }
5225}
5226
5227const ::google::protobuf::Descriptor* EnumOptions::descriptor() {
5228  protobuf_AssignDescriptorsOnce();
5229  return EnumOptions_descriptor_;
5230}
5231
5232const EnumOptions& EnumOptions::default_instance() {
5233  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
5234}
5235
5236EnumOptions* EnumOptions::default_instance_ = NULL;
5237
5238EnumOptions* EnumOptions::New() const {
5239  return new EnumOptions;
5240}
5241
5242void EnumOptions::Clear() {
5243  _extensions_.Clear();
5244  uninterpreted_option_.Clear();
5245  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5246  mutable_unknown_fields()->Clear();
5247}
5248
5249bool EnumOptions::MergePartialFromCodedStream(
5250    ::google::protobuf::io::CodedInputStream* input) {
5251#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
5252  ::google::protobuf::uint32 tag;
5253  while ((tag = input->ReadTag()) != 0) {
5254    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
5255      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5256      case 999: {
5257        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
5258            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
5259          goto handle_uninterpreted;
5260        }
5261       parse_uninterpreted_option:
5262        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
5263              input, add_uninterpreted_option()));
5264        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
5265        if (input->ExpectAtEnd()) return true;
5266        break;
5267      }
5268
5269      default: {
5270      handle_uninterpreted:
5271        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
5272            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
5273          return true;
5274        }
5275        if ((8000u <= tag)) {
5276          DO_(_extensions_.ParseField(tag, input, default_instance_,
5277                                      mutable_unknown_fields()));
5278          continue;
5279        }
5280        DO_(::google::protobuf::internal::WireFormat::SkipField(
5281              input, tag, mutable_unknown_fields()));
5282        break;
5283      }
5284    }
5285  }
5286  return true;
5287#undef DO_
5288}
5289
5290void EnumOptions::SerializeWithCachedSizes(
5291    ::google::protobuf::io::CodedOutputStream* output) const {
5292  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
5293  if (raw_buffer != NULL) {
5294    EnumOptions::SerializeWithCachedSizesToArray(raw_buffer);
5295    return;
5296  }
5297
5298  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5299  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5300    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
5301      999, this->uninterpreted_option(i), output);
5302  }
5303
5304  // Extension range [1000, 536870912)
5305  _extensions_.SerializeWithCachedSizes(
5306      1000, 536870912, output);
5307
5308  if (!unknown_fields().empty()) {
5309    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
5310        unknown_fields(), output);
5311  }
5312}
5313
5314::google::protobuf::uint8* EnumOptions::SerializeWithCachedSizesToArray(
5315    ::google::protobuf::uint8* target) const {
5316  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5317  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5318    target = ::google::protobuf::internal::WireFormatLite::
5319      WriteMessageNoVirtualToArray(
5320        999, this->uninterpreted_option(i), target);
5321  }
5322
5323  // Extension range [1000, 536870912)
5324  target = _extensions_.SerializeWithCachedSizesToArray(
5325      1000, 536870912, target);
5326
5327  if (!unknown_fields().empty()) {
5328    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
5329        unknown_fields(), target);
5330  }
5331  return target;
5332}
5333
5334int EnumOptions::ByteSize() const {
5335  int total_size = 0;
5336
5337  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5338  total_size += 2 * this->uninterpreted_option_size();
5339  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5340    total_size +=
5341      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
5342        this->uninterpreted_option(i));
5343  }
5344
5345  total_size += _extensions_.ByteSize();
5346
5347  if (!unknown_fields().empty()) {
5348    total_size +=
5349      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
5350        unknown_fields());
5351  }
5352  _cached_size_ = total_size;
5353  return total_size;
5354}
5355
5356void EnumOptions::MergeFrom(const ::google::protobuf::Message& from) {
5357  GOOGLE_CHECK_NE(&from, this);
5358  const EnumOptions* source =
5359    ::google::protobuf::internal::dynamic_cast_if_available<const EnumOptions*>(
5360      &from);
5361  if (source == NULL) {
5362    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
5363  } else {
5364    MergeFrom(*source);
5365  }
5366}
5367
5368void EnumOptions::MergeFrom(const EnumOptions& from) {
5369  GOOGLE_CHECK_NE(&from, this);
5370  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
5371  _extensions_.MergeFrom(from._extensions_);
5372  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
5373}
5374
5375void EnumOptions::CopyFrom(const ::google::protobuf::Message& from) {
5376  if (&from == this) return;
5377  Clear();
5378  MergeFrom(from);
5379}
5380
5381void EnumOptions::CopyFrom(const EnumOptions& from) {
5382  if (&from == this) return;
5383  Clear();
5384  MergeFrom(from);
5385}
5386
5387bool EnumOptions::IsInitialized() const {
5388
5389  for (int i = 0; i < uninterpreted_option_size(); i++) {
5390    if (!this->uninterpreted_option(i).IsInitialized()) return false;
5391  }
5392
5393  if (!_extensions_.IsInitialized()) return false;  return true;
5394}
5395
5396void EnumOptions::Swap(EnumOptions* other) {
5397  if (other != this) {
5398    uninterpreted_option_.Swap(&other->uninterpreted_option_);
5399    std::swap(_has_bits_[0], other->_has_bits_[0]);
5400    _unknown_fields_.Swap(&other->_unknown_fields_);
5401    std::swap(_cached_size_, other->_cached_size_);
5402    _extensions_.Swap(&other->_extensions_);
5403  }
5404}
5405
5406::google::protobuf::Metadata EnumOptions::GetMetadata() const {
5407  protobuf_AssignDescriptorsOnce();
5408  ::google::protobuf::Metadata metadata;
5409  metadata.descriptor = EnumOptions_descriptor_;
5410  metadata.reflection = EnumOptions_reflection_;
5411  return metadata;
5412}
5413
5414
5415// ===================================================================
5416
5417#ifndef _MSC_VER
5418const int EnumValueOptions::kUninterpretedOptionFieldNumber;
5419#endif  // !_MSC_VER
5420
5421EnumValueOptions::EnumValueOptions() {
5422  SharedCtor();
5423}
5424
5425void EnumValueOptions::InitAsDefaultInstance() {
5426}
5427
5428EnumValueOptions::EnumValueOptions(const EnumValueOptions& from) {
5429  SharedCtor();
5430  MergeFrom(from);
5431}
5432
5433void EnumValueOptions::SharedCtor() {
5434  _cached_size_ = 0;
5435  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5436}
5437
5438EnumValueOptions::~EnumValueOptions() {
5439  SharedDtor();
5440}
5441
5442void EnumValueOptions::SharedDtor() {
5443  if (this != default_instance_) {
5444  }
5445}
5446
5447const ::google::protobuf::Descriptor* EnumValueOptions::descriptor() {
5448  protobuf_AssignDescriptorsOnce();
5449  return EnumValueOptions_descriptor_;
5450}
5451
5452const EnumValueOptions& EnumValueOptions::default_instance() {
5453  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
5454}
5455
5456EnumValueOptions* EnumValueOptions::default_instance_ = NULL;
5457
5458EnumValueOptions* EnumValueOptions::New() const {
5459  return new EnumValueOptions;
5460}
5461
5462void EnumValueOptions::Clear() {
5463  _extensions_.Clear();
5464  uninterpreted_option_.Clear();
5465  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5466  mutable_unknown_fields()->Clear();
5467}
5468
5469bool EnumValueOptions::MergePartialFromCodedStream(
5470    ::google::protobuf::io::CodedInputStream* input) {
5471#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
5472  ::google::protobuf::uint32 tag;
5473  while ((tag = input->ReadTag()) != 0) {
5474    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
5475      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5476      case 999: {
5477        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
5478            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
5479          goto handle_uninterpreted;
5480        }
5481       parse_uninterpreted_option:
5482        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
5483              input, add_uninterpreted_option()));
5484        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
5485        if (input->ExpectAtEnd()) return true;
5486        break;
5487      }
5488
5489      default: {
5490      handle_uninterpreted:
5491        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
5492            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
5493          return true;
5494        }
5495        if ((8000u <= tag)) {
5496          DO_(_extensions_.ParseField(tag, input, default_instance_,
5497                                      mutable_unknown_fields()));
5498          continue;
5499        }
5500        DO_(::google::protobuf::internal::WireFormat::SkipField(
5501              input, tag, mutable_unknown_fields()));
5502        break;
5503      }
5504    }
5505  }
5506  return true;
5507#undef DO_
5508}
5509
5510void EnumValueOptions::SerializeWithCachedSizes(
5511    ::google::protobuf::io::CodedOutputStream* output) const {
5512  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
5513  if (raw_buffer != NULL) {
5514    EnumValueOptions::SerializeWithCachedSizesToArray(raw_buffer);
5515    return;
5516  }
5517
5518  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5519  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5520    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
5521      999, this->uninterpreted_option(i), output);
5522  }
5523
5524  // Extension range [1000, 536870912)
5525  _extensions_.SerializeWithCachedSizes(
5526      1000, 536870912, output);
5527
5528  if (!unknown_fields().empty()) {
5529    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
5530        unknown_fields(), output);
5531  }
5532}
5533
5534::google::protobuf::uint8* EnumValueOptions::SerializeWithCachedSizesToArray(
5535    ::google::protobuf::uint8* target) const {
5536  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5537  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5538    target = ::google::protobuf::internal::WireFormatLite::
5539      WriteMessageNoVirtualToArray(
5540        999, this->uninterpreted_option(i), target);
5541  }
5542
5543  // Extension range [1000, 536870912)
5544  target = _extensions_.SerializeWithCachedSizesToArray(
5545      1000, 536870912, target);
5546
5547  if (!unknown_fields().empty()) {
5548    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
5549        unknown_fields(), target);
5550  }
5551  return target;
5552}
5553
5554int EnumValueOptions::ByteSize() const {
5555  int total_size = 0;
5556
5557  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5558  total_size += 2 * this->uninterpreted_option_size();
5559  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5560    total_size +=
5561      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
5562        this->uninterpreted_option(i));
5563  }
5564
5565  total_size += _extensions_.ByteSize();
5566
5567  if (!unknown_fields().empty()) {
5568    total_size +=
5569      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
5570        unknown_fields());
5571  }
5572  _cached_size_ = total_size;
5573  return total_size;
5574}
5575
5576void EnumValueOptions::MergeFrom(const ::google::protobuf::Message& from) {
5577  GOOGLE_CHECK_NE(&from, this);
5578  const EnumValueOptions* source =
5579    ::google::protobuf::internal::dynamic_cast_if_available<const EnumValueOptions*>(
5580      &from);
5581  if (source == NULL) {
5582    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
5583  } else {
5584    MergeFrom(*source);
5585  }
5586}
5587
5588void EnumValueOptions::MergeFrom(const EnumValueOptions& from) {
5589  GOOGLE_CHECK_NE(&from, this);
5590  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
5591  _extensions_.MergeFrom(from._extensions_);
5592  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
5593}
5594
5595void EnumValueOptions::CopyFrom(const ::google::protobuf::Message& from) {
5596  if (&from == this) return;
5597  Clear();
5598  MergeFrom(from);
5599}
5600
5601void EnumValueOptions::CopyFrom(const EnumValueOptions& from) {
5602  if (&from == this) return;
5603  Clear();
5604  MergeFrom(from);
5605}
5606
5607bool EnumValueOptions::IsInitialized() const {
5608
5609  for (int i = 0; i < uninterpreted_option_size(); i++) {
5610    if (!this->uninterpreted_option(i).IsInitialized()) return false;
5611  }
5612
5613  if (!_extensions_.IsInitialized()) return false;  return true;
5614}
5615
5616void EnumValueOptions::Swap(EnumValueOptions* other) {
5617  if (other != this) {
5618    uninterpreted_option_.Swap(&other->uninterpreted_option_);
5619    std::swap(_has_bits_[0], other->_has_bits_[0]);
5620    _unknown_fields_.Swap(&other->_unknown_fields_);
5621    std::swap(_cached_size_, other->_cached_size_);
5622    _extensions_.Swap(&other->_extensions_);
5623  }
5624}
5625
5626::google::protobuf::Metadata EnumValueOptions::GetMetadata() const {
5627  protobuf_AssignDescriptorsOnce();
5628  ::google::protobuf::Metadata metadata;
5629  metadata.descriptor = EnumValueOptions_descriptor_;
5630  metadata.reflection = EnumValueOptions_reflection_;
5631  return metadata;
5632}
5633
5634
5635// ===================================================================
5636
5637#ifndef _MSC_VER
5638const int ServiceOptions::kUninterpretedOptionFieldNumber;
5639#endif  // !_MSC_VER
5640
5641ServiceOptions::ServiceOptions() {
5642  SharedCtor();
5643}
5644
5645void ServiceOptions::InitAsDefaultInstance() {
5646}
5647
5648ServiceOptions::ServiceOptions(const ServiceOptions& from) {
5649  SharedCtor();
5650  MergeFrom(from);
5651}
5652
5653void ServiceOptions::SharedCtor() {
5654  _cached_size_ = 0;
5655  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5656}
5657
5658ServiceOptions::~ServiceOptions() {
5659  SharedDtor();
5660}
5661
5662void ServiceOptions::SharedDtor() {
5663  if (this != default_instance_) {
5664  }
5665}
5666
5667const ::google::protobuf::Descriptor* ServiceOptions::descriptor() {
5668  protobuf_AssignDescriptorsOnce();
5669  return ServiceOptions_descriptor_;
5670}
5671
5672const ServiceOptions& ServiceOptions::default_instance() {
5673  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
5674}
5675
5676ServiceOptions* ServiceOptions::default_instance_ = NULL;
5677
5678ServiceOptions* ServiceOptions::New() const {
5679  return new ServiceOptions;
5680}
5681
5682void ServiceOptions::Clear() {
5683  _extensions_.Clear();
5684  uninterpreted_option_.Clear();
5685  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5686  mutable_unknown_fields()->Clear();
5687}
5688
5689bool ServiceOptions::MergePartialFromCodedStream(
5690    ::google::protobuf::io::CodedInputStream* input) {
5691#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
5692  ::google::protobuf::uint32 tag;
5693  while ((tag = input->ReadTag()) != 0) {
5694    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
5695      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5696      case 999: {
5697        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
5698            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
5699          goto handle_uninterpreted;
5700        }
5701       parse_uninterpreted_option:
5702        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
5703              input, add_uninterpreted_option()));
5704        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
5705        if (input->ExpectAtEnd()) return true;
5706        break;
5707      }
5708
5709      default: {
5710      handle_uninterpreted:
5711        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
5712            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
5713          return true;
5714        }
5715        if ((8000u <= tag)) {
5716          DO_(_extensions_.ParseField(tag, input, default_instance_,
5717                                      mutable_unknown_fields()));
5718          continue;
5719        }
5720        DO_(::google::protobuf::internal::WireFormat::SkipField(
5721              input, tag, mutable_unknown_fields()));
5722        break;
5723      }
5724    }
5725  }
5726  return true;
5727#undef DO_
5728}
5729
5730void ServiceOptions::SerializeWithCachedSizes(
5731    ::google::protobuf::io::CodedOutputStream* output) const {
5732  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
5733  if (raw_buffer != NULL) {
5734    ServiceOptions::SerializeWithCachedSizesToArray(raw_buffer);
5735    return;
5736  }
5737
5738  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5739  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5740    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
5741      999, this->uninterpreted_option(i), output);
5742  }
5743
5744  // Extension range [1000, 536870912)
5745  _extensions_.SerializeWithCachedSizes(
5746      1000, 536870912, output);
5747
5748  if (!unknown_fields().empty()) {
5749    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
5750        unknown_fields(), output);
5751  }
5752}
5753
5754::google::protobuf::uint8* ServiceOptions::SerializeWithCachedSizesToArray(
5755    ::google::protobuf::uint8* target) const {
5756  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5757  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5758    target = ::google::protobuf::internal::WireFormatLite::
5759      WriteMessageNoVirtualToArray(
5760        999, this->uninterpreted_option(i), target);
5761  }
5762
5763  // Extension range [1000, 536870912)
5764  target = _extensions_.SerializeWithCachedSizesToArray(
5765      1000, 536870912, target);
5766
5767  if (!unknown_fields().empty()) {
5768    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
5769        unknown_fields(), target);
5770  }
5771  return target;
5772}
5773
5774int ServiceOptions::ByteSize() const {
5775  int total_size = 0;
5776
5777  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5778  total_size += 2 * this->uninterpreted_option_size();
5779  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5780    total_size +=
5781      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
5782        this->uninterpreted_option(i));
5783  }
5784
5785  total_size += _extensions_.ByteSize();
5786
5787  if (!unknown_fields().empty()) {
5788    total_size +=
5789      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
5790        unknown_fields());
5791  }
5792  _cached_size_ = total_size;
5793  return total_size;
5794}
5795
5796void ServiceOptions::MergeFrom(const ::google::protobuf::Message& from) {
5797  GOOGLE_CHECK_NE(&from, this);
5798  const ServiceOptions* source =
5799    ::google::protobuf::internal::dynamic_cast_if_available<const ServiceOptions*>(
5800      &from);
5801  if (source == NULL) {
5802    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
5803  } else {
5804    MergeFrom(*source);
5805  }
5806}
5807
5808void ServiceOptions::MergeFrom(const ServiceOptions& from) {
5809  GOOGLE_CHECK_NE(&from, this);
5810  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
5811  _extensions_.MergeFrom(from._extensions_);
5812  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
5813}
5814
5815void ServiceOptions::CopyFrom(const ::google::protobuf::Message& from) {
5816  if (&from == this) return;
5817  Clear();
5818  MergeFrom(from);
5819}
5820
5821void ServiceOptions::CopyFrom(const ServiceOptions& from) {
5822  if (&from == this) return;
5823  Clear();
5824  MergeFrom(from);
5825}
5826
5827bool ServiceOptions::IsInitialized() const {
5828
5829  for (int i = 0; i < uninterpreted_option_size(); i++) {
5830    if (!this->uninterpreted_option(i).IsInitialized()) return false;
5831  }
5832
5833  if (!_extensions_.IsInitialized()) return false;  return true;
5834}
5835
5836void ServiceOptions::Swap(ServiceOptions* other) {
5837  if (other != this) {
5838    uninterpreted_option_.Swap(&other->uninterpreted_option_);
5839    std::swap(_has_bits_[0], other->_has_bits_[0]);
5840    _unknown_fields_.Swap(&other->_unknown_fields_);
5841    std::swap(_cached_size_, other->_cached_size_);
5842    _extensions_.Swap(&other->_extensions_);
5843  }
5844}
5845
5846::google::protobuf::Metadata ServiceOptions::GetMetadata() const {
5847  protobuf_AssignDescriptorsOnce();
5848  ::google::protobuf::Metadata metadata;
5849  metadata.descriptor = ServiceOptions_descriptor_;
5850  metadata.reflection = ServiceOptions_reflection_;
5851  return metadata;
5852}
5853
5854
5855// ===================================================================
5856
5857#ifndef _MSC_VER
5858const int MethodOptions::kUninterpretedOptionFieldNumber;
5859#endif  // !_MSC_VER
5860
5861MethodOptions::MethodOptions() {
5862  SharedCtor();
5863}
5864
5865void MethodOptions::InitAsDefaultInstance() {
5866}
5867
5868MethodOptions::MethodOptions(const MethodOptions& from) {
5869  SharedCtor();
5870  MergeFrom(from);
5871}
5872
5873void MethodOptions::SharedCtor() {
5874  _cached_size_ = 0;
5875  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5876}
5877
5878MethodOptions::~MethodOptions() {
5879  SharedDtor();
5880}
5881
5882void MethodOptions::SharedDtor() {
5883  if (this != default_instance_) {
5884  }
5885}
5886
5887const ::google::protobuf::Descriptor* MethodOptions::descriptor() {
5888  protobuf_AssignDescriptorsOnce();
5889  return MethodOptions_descriptor_;
5890}
5891
5892const MethodOptions& MethodOptions::default_instance() {
5893  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
5894}
5895
5896MethodOptions* MethodOptions::default_instance_ = NULL;
5897
5898MethodOptions* MethodOptions::New() const {
5899  return new MethodOptions;
5900}
5901
5902void MethodOptions::Clear() {
5903  _extensions_.Clear();
5904  uninterpreted_option_.Clear();
5905  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5906  mutable_unknown_fields()->Clear();
5907}
5908
5909bool MethodOptions::MergePartialFromCodedStream(
5910    ::google::protobuf::io::CodedInputStream* input) {
5911#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
5912  ::google::protobuf::uint32 tag;
5913  while ((tag = input->ReadTag()) != 0) {
5914    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
5915      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5916      case 999: {
5917        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
5918            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
5919          goto handle_uninterpreted;
5920        }
5921       parse_uninterpreted_option:
5922        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
5923              input, add_uninterpreted_option()));
5924        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
5925        if (input->ExpectAtEnd()) return true;
5926        break;
5927      }
5928
5929      default: {
5930      handle_uninterpreted:
5931        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
5932            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
5933          return true;
5934        }
5935        if ((8000u <= tag)) {
5936          DO_(_extensions_.ParseField(tag, input, default_instance_,
5937                                      mutable_unknown_fields()));
5938          continue;
5939        }
5940        DO_(::google::protobuf::internal::WireFormat::SkipField(
5941              input, tag, mutable_unknown_fields()));
5942        break;
5943      }
5944    }
5945  }
5946  return true;
5947#undef DO_
5948}
5949
5950void MethodOptions::SerializeWithCachedSizes(
5951    ::google::protobuf::io::CodedOutputStream* output) const {
5952  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
5953  if (raw_buffer != NULL) {
5954    MethodOptions::SerializeWithCachedSizesToArray(raw_buffer);
5955    return;
5956  }
5957
5958  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5959  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5960    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
5961      999, this->uninterpreted_option(i), output);
5962  }
5963
5964  // Extension range [1000, 536870912)
5965  _extensions_.SerializeWithCachedSizes(
5966      1000, 536870912, output);
5967
5968  if (!unknown_fields().empty()) {
5969    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
5970        unknown_fields(), output);
5971  }
5972}
5973
5974::google::protobuf::uint8* MethodOptions::SerializeWithCachedSizesToArray(
5975    ::google::protobuf::uint8* target) const {
5976  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5977  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
5978    target = ::google::protobuf::internal::WireFormatLite::
5979      WriteMessageNoVirtualToArray(
5980        999, this->uninterpreted_option(i), target);
5981  }
5982
5983  // Extension range [1000, 536870912)
5984  target = _extensions_.SerializeWithCachedSizesToArray(
5985      1000, 536870912, target);
5986
5987  if (!unknown_fields().empty()) {
5988    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
5989        unknown_fields(), target);
5990  }
5991  return target;
5992}
5993
5994int MethodOptions::ByteSize() const {
5995  int total_size = 0;
5996
5997  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
5998  total_size += 2 * this->uninterpreted_option_size();
5999  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
6000    total_size +=
6001      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
6002        this->uninterpreted_option(i));
6003  }
6004
6005  total_size += _extensions_.ByteSize();
6006
6007  if (!unknown_fields().empty()) {
6008    total_size +=
6009      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
6010        unknown_fields());
6011  }
6012  _cached_size_ = total_size;
6013  return total_size;
6014}
6015
6016void MethodOptions::MergeFrom(const ::google::protobuf::Message& from) {
6017  GOOGLE_CHECK_NE(&from, this);
6018  const MethodOptions* source =
6019    ::google::protobuf::internal::dynamic_cast_if_available<const MethodOptions*>(
6020      &from);
6021  if (source == NULL) {
6022    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
6023  } else {
6024    MergeFrom(*source);
6025  }
6026}
6027
6028void MethodOptions::MergeFrom(const MethodOptions& from) {
6029  GOOGLE_CHECK_NE(&from, this);
6030  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
6031  _extensions_.MergeFrom(from._extensions_);
6032  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
6033}
6034
6035void MethodOptions::CopyFrom(const ::google::protobuf::Message& from) {
6036  if (&from == this) return;
6037  Clear();
6038  MergeFrom(from);
6039}
6040
6041void MethodOptions::CopyFrom(const MethodOptions& from) {
6042  if (&from == this) return;
6043  Clear();
6044  MergeFrom(from);
6045}
6046
6047bool MethodOptions::IsInitialized() const {
6048
6049  for (int i = 0; i < uninterpreted_option_size(); i++) {
6050    if (!this->uninterpreted_option(i).IsInitialized()) return false;
6051  }
6052
6053  if (!_extensions_.IsInitialized()) return false;  return true;
6054}
6055
6056void MethodOptions::Swap(MethodOptions* other) {
6057  if (other != this) {
6058    uninterpreted_option_.Swap(&other->uninterpreted_option_);
6059    std::swap(_has_bits_[0], other->_has_bits_[0]);
6060    _unknown_fields_.Swap(&other->_unknown_fields_);
6061    std::swap(_cached_size_, other->_cached_size_);
6062    _extensions_.Swap(&other->_extensions_);
6063  }
6064}
6065
6066::google::protobuf::Metadata MethodOptions::GetMetadata() const {
6067  protobuf_AssignDescriptorsOnce();
6068  ::google::protobuf::Metadata metadata;
6069  metadata.descriptor = MethodOptions_descriptor_;
6070  metadata.reflection = MethodOptions_reflection_;
6071  return metadata;
6072}
6073
6074
6075// ===================================================================
6076
6077const ::std::string UninterpretedOption_NamePart::_default_name_part_;
6078#ifndef _MSC_VER
6079const int UninterpretedOption_NamePart::kNamePartFieldNumber;
6080const int UninterpretedOption_NamePart::kIsExtensionFieldNumber;
6081#endif  // !_MSC_VER
6082
6083UninterpretedOption_NamePart::UninterpretedOption_NamePart() {
6084  SharedCtor();
6085}
6086
6087void UninterpretedOption_NamePart::InitAsDefaultInstance() {
6088}
6089
6090UninterpretedOption_NamePart::UninterpretedOption_NamePart(const UninterpretedOption_NamePart& from) {
6091  SharedCtor();
6092  MergeFrom(from);
6093}
6094
6095void UninterpretedOption_NamePart::SharedCtor() {
6096  _cached_size_ = 0;
6097  name_part_ = const_cast< ::std::string*>(&_default_name_part_);
6098  is_extension_ = false;
6099  ::memset(_has_bits_, 0, sizeof(_has_bits_));
6100}
6101
6102UninterpretedOption_NamePart::~UninterpretedOption_NamePart() {
6103  SharedDtor();
6104}
6105
6106void UninterpretedOption_NamePart::SharedDtor() {
6107  if (name_part_ != &_default_name_part_) {
6108    delete name_part_;
6109  }
6110  if (this != default_instance_) {
6111  }
6112}
6113
6114const ::google::protobuf::Descriptor* UninterpretedOption_NamePart::descriptor() {
6115  protobuf_AssignDescriptorsOnce();
6116  return UninterpretedOption_NamePart_descriptor_;
6117}
6118
6119const UninterpretedOption_NamePart& UninterpretedOption_NamePart::default_instance() {
6120  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
6121}
6122
6123UninterpretedOption_NamePart* UninterpretedOption_NamePart::default_instance_ = NULL;
6124
6125UninterpretedOption_NamePart* UninterpretedOption_NamePart::New() const {
6126  return new UninterpretedOption_NamePart;
6127}
6128
6129void UninterpretedOption_NamePart::Clear() {
6130  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
6131    if (_has_bit(0)) {
6132      if (name_part_ != &_default_name_part_) {
6133        name_part_->clear();
6134      }
6135    }
6136    is_extension_ = false;
6137  }
6138  ::memset(_has_bits_, 0, sizeof(_has_bits_));
6139  mutable_unknown_fields()->Clear();
6140}
6141
6142bool UninterpretedOption_NamePart::MergePartialFromCodedStream(
6143    ::google::protobuf::io::CodedInputStream* input) {
6144#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
6145  ::google::protobuf::uint32 tag;
6146  while ((tag = input->ReadTag()) != 0) {
6147    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
6148      // required string name_part = 1;
6149      case 1: {
6150        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
6151            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
6152          goto handle_uninterpreted;
6153        }
6154        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
6155              input, this->mutable_name_part()));
6156        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
6157          this->name_part().data(), this->name_part().length(),
6158          ::google::protobuf::internal::WireFormat::PARSE);
6159        if (input->ExpectTag(16)) goto parse_is_extension;
6160        break;
6161      }
6162
6163      // required bool is_extension = 2;
6164      case 2: {
6165        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
6166            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
6167          goto handle_uninterpreted;
6168        }
6169       parse_is_extension:
6170        DO_(::google::protobuf::internal::WireFormatLite::ReadBool(
6171              input, &is_extension_));
6172        _set_bit(1);
6173        if (input->ExpectAtEnd()) return true;
6174        break;
6175      }
6176
6177      default: {
6178      handle_uninterpreted:
6179        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
6180            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
6181          return true;
6182        }
6183        DO_(::google::protobuf::internal::WireFormat::SkipField(
6184              input, tag, mutable_unknown_fields()));
6185        break;
6186      }
6187    }
6188  }
6189  return true;
6190#undef DO_
6191}
6192
6193void UninterpretedOption_NamePart::SerializeWithCachedSizes(
6194    ::google::protobuf::io::CodedOutputStream* output) const {
6195  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
6196  if (raw_buffer != NULL) {
6197    UninterpretedOption_NamePart::SerializeWithCachedSizesToArray(raw_buffer);
6198    return;
6199  }
6200
6201  // required string name_part = 1;
6202  if (_has_bit(0)) {
6203    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
6204      this->name_part().data(), this->name_part().length(),
6205      ::google::protobuf::internal::WireFormat::SERIALIZE);
6206    ::google::protobuf::internal::WireFormatLite::WriteString(
6207      1, this->name_part(), output);
6208  }
6209
6210  // required bool is_extension = 2;
6211  if (_has_bit(1)) {
6212    ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->is_extension(), output);
6213  }
6214
6215  if (!unknown_fields().empty()) {
6216    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
6217        unknown_fields(), output);
6218  }
6219}
6220
6221::google::protobuf::uint8* UninterpretedOption_NamePart::SerializeWithCachedSizesToArray(
6222    ::google::protobuf::uint8* target) const {
6223  // required string name_part = 1;
6224  if (_has_bit(0)) {
6225    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
6226      this->name_part().data(), this->name_part().length(),
6227      ::google::protobuf::internal::WireFormat::SERIALIZE);
6228    target =
6229      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
6230        1, this->name_part(), target);
6231  }
6232
6233  // required bool is_extension = 2;
6234  if (_has_bit(1)) {
6235    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(2, this->is_extension(), target);
6236  }
6237
6238  if (!unknown_fields().empty()) {
6239    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
6240        unknown_fields(), target);
6241  }
6242  return target;
6243}
6244
6245int UninterpretedOption_NamePart::ByteSize() const {
6246  int total_size = 0;
6247
6248  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
6249    // required string name_part = 1;
6250    if (has_name_part()) {
6251      total_size += 1 +
6252        ::google::protobuf::internal::WireFormatLite::StringSize(
6253          this->name_part());
6254    }
6255
6256    // required bool is_extension = 2;
6257    if (has_is_extension()) {
6258      total_size += 1 + 1;
6259    }
6260
6261  }
6262  if (!unknown_fields().empty()) {
6263    total_size +=
6264      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
6265        unknown_fields());
6266  }
6267  _cached_size_ = total_size;
6268  return total_size;
6269}
6270
6271void UninterpretedOption_NamePart::MergeFrom(const ::google::protobuf::Message& from) {
6272  GOOGLE_CHECK_NE(&from, this);
6273  const UninterpretedOption_NamePart* source =
6274    ::google::protobuf::internal::dynamic_cast_if_available<const UninterpretedOption_NamePart*>(
6275      &from);
6276  if (source == NULL) {
6277    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
6278  } else {
6279    MergeFrom(*source);
6280  }
6281}
6282
6283void UninterpretedOption_NamePart::MergeFrom(const UninterpretedOption_NamePart& from) {
6284  GOOGLE_CHECK_NE(&from, this);
6285  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
6286    if (from._has_bit(0)) {
6287      set_name_part(from.name_part());
6288    }
6289    if (from._has_bit(1)) {
6290      set_is_extension(from.is_extension());
6291    }
6292  }
6293  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
6294}
6295
6296void UninterpretedOption_NamePart::CopyFrom(const ::google::protobuf::Message& from) {
6297  if (&from == this) return;
6298  Clear();
6299  MergeFrom(from);
6300}
6301
6302void UninterpretedOption_NamePart::CopyFrom(const UninterpretedOption_NamePart& from) {
6303  if (&from == this) return;
6304  Clear();
6305  MergeFrom(from);
6306}
6307
6308bool UninterpretedOption_NamePart::IsInitialized() const {
6309  if ((_has_bits_[0] & 0x00000003) != 0x00000003) return false;
6310
6311  return true;
6312}
6313
6314void UninterpretedOption_NamePart::Swap(UninterpretedOption_NamePart* other) {
6315  if (other != this) {
6316    std::swap(name_part_, other->name_part_);
6317    std::swap(is_extension_, other->is_extension_);
6318    std::swap(_has_bits_[0], other->_has_bits_[0]);
6319    _unknown_fields_.Swap(&other->_unknown_fields_);
6320    std::swap(_cached_size_, other->_cached_size_);
6321  }
6322}
6323
6324::google::protobuf::Metadata UninterpretedOption_NamePart::GetMetadata() const {
6325  protobuf_AssignDescriptorsOnce();
6326  ::google::protobuf::Metadata metadata;
6327  metadata.descriptor = UninterpretedOption_NamePart_descriptor_;
6328  metadata.reflection = UninterpretedOption_NamePart_reflection_;
6329  return metadata;
6330}
6331
6332
6333// -------------------------------------------------------------------
6334
6335const ::std::string UninterpretedOption::_default_identifier_value_;
6336const ::std::string UninterpretedOption::_default_string_value_;
6337#ifndef _MSC_VER
6338const int UninterpretedOption::kNameFieldNumber;
6339const int UninterpretedOption::kIdentifierValueFieldNumber;
6340const int UninterpretedOption::kPositiveIntValueFieldNumber;
6341const int UninterpretedOption::kNegativeIntValueFieldNumber;
6342const int UninterpretedOption::kDoubleValueFieldNumber;
6343const int UninterpretedOption::kStringValueFieldNumber;
6344#endif  // !_MSC_VER
6345
6346UninterpretedOption::UninterpretedOption() {
6347  SharedCtor();
6348}
6349
6350void UninterpretedOption::InitAsDefaultInstance() {
6351}
6352
6353UninterpretedOption::UninterpretedOption(const UninterpretedOption& from) {
6354  SharedCtor();
6355  MergeFrom(from);
6356}
6357
6358void UninterpretedOption::SharedCtor() {
6359  _cached_size_ = 0;
6360  identifier_value_ = const_cast< ::std::string*>(&_default_identifier_value_);
6361  positive_int_value_ = GOOGLE_ULONGLONG(0);
6362  negative_int_value_ = GOOGLE_LONGLONG(0);
6363  double_value_ = 0;
6364  string_value_ = const_cast< ::std::string*>(&_default_string_value_);
6365  ::memset(_has_bits_, 0, sizeof(_has_bits_));
6366}
6367
6368UninterpretedOption::~UninterpretedOption() {
6369  SharedDtor();
6370}
6371
6372void UninterpretedOption::SharedDtor() {
6373  if (identifier_value_ != &_default_identifier_value_) {
6374    delete identifier_value_;
6375  }
6376  if (string_value_ != &_default_string_value_) {
6377    delete string_value_;
6378  }
6379  if (this != default_instance_) {
6380  }
6381}
6382
6383const ::google::protobuf::Descriptor* UninterpretedOption::descriptor() {
6384  protobuf_AssignDescriptorsOnce();
6385  return UninterpretedOption_descriptor_;
6386}
6387
6388const UninterpretedOption& UninterpretedOption::default_instance() {
6389  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();  return *default_instance_;
6390}
6391
6392UninterpretedOption* UninterpretedOption::default_instance_ = NULL;
6393
6394UninterpretedOption* UninterpretedOption::New() const {
6395  return new UninterpretedOption;
6396}
6397
6398void UninterpretedOption::Clear() {
6399  if (_has_bits_[1 / 32] & (0xffu << (1 % 32))) {
6400    if (_has_bit(1)) {
6401      if (identifier_value_ != &_default_identifier_value_) {
6402        identifier_value_->clear();
6403      }
6404    }
6405    positive_int_value_ = GOOGLE_ULONGLONG(0);
6406    negative_int_value_ = GOOGLE_LONGLONG(0);
6407    double_value_ = 0;
6408    if (_has_bit(5)) {
6409      if (string_value_ != &_default_string_value_) {
6410        string_value_->clear();
6411      }
6412    }
6413  }
6414  name_.Clear();
6415  ::memset(_has_bits_, 0, sizeof(_has_bits_));
6416  mutable_unknown_fields()->Clear();
6417}
6418
6419bool UninterpretedOption::MergePartialFromCodedStream(
6420    ::google::protobuf::io::CodedInputStream* input) {
6421#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
6422  ::google::protobuf::uint32 tag;
6423  while ((tag = input->ReadTag()) != 0) {
6424    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
6425      // repeated .google.protobuf.UninterpretedOption.NamePart name = 2;
6426      case 2: {
6427        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
6428            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
6429          goto handle_uninterpreted;
6430        }
6431       parse_name:
6432        DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
6433              input, add_name()));
6434        if (input->ExpectTag(18)) goto parse_name;
6435        if (input->ExpectTag(26)) goto parse_identifier_value;
6436        break;
6437      }
6438
6439      // optional string identifier_value = 3;
6440      case 3: {
6441        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
6442            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
6443          goto handle_uninterpreted;
6444        }
6445       parse_identifier_value:
6446        DO_(::google::protobuf::internal::WireFormatLite::ReadString(
6447              input, this->mutable_identifier_value()));
6448        ::google::protobuf::internal::WireFormat::VerifyUTF8String(
6449          this->identifier_value().data(), this->identifier_value().length(),
6450          ::google::protobuf::internal::WireFormat::PARSE);
6451        if (input->ExpectTag(32)) goto parse_positive_int_value;
6452        break;
6453      }
6454
6455      // optional uint64 positive_int_value = 4;
6456      case 4: {
6457        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
6458            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
6459          goto handle_uninterpreted;
6460        }
6461       parse_positive_int_value:
6462        DO_(::google::protobuf::internal::WireFormatLite::ReadUInt64(
6463              input, &positive_int_value_));
6464        _set_bit(2);
6465        if (input->ExpectTag(40)) goto parse_negative_int_value;
6466        break;
6467      }
6468
6469      // optional int64 negative_int_value = 5;
6470      case 5: {
6471        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
6472            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
6473          goto handle_uninterpreted;
6474        }
6475       parse_negative_int_value:
6476        DO_(::google::protobuf::internal::WireFormatLite::ReadInt64(
6477              input, &negative_int_value_));
6478        _set_bit(3);
6479        if (input->ExpectTag(49)) goto parse_double_value;
6480        break;
6481      }
6482
6483      // optional double double_value = 6;
6484      case 6: {
6485        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
6486            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED64) {
6487          goto handle_uninterpreted;
6488        }
6489       parse_double_value:
6490        DO_(::google::protobuf::internal::WireFormatLite::ReadDouble(
6491              input, &double_value_));
6492        _set_bit(4);
6493        if (input->ExpectTag(58)) goto parse_string_value;
6494        break;
6495      }
6496
6497      // optional bytes string_value = 7;
6498      case 7: {
6499        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) !=
6500            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
6501          goto handle_uninterpreted;
6502        }
6503       parse_string_value:
6504        DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
6505              input, this->mutable_string_value()));
6506        if (input->ExpectAtEnd()) return true;
6507        break;
6508      }
6509
6510      default: {
6511      handle_uninterpreted:
6512        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
6513            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
6514          return true;
6515        }
6516        DO_(::google::protobuf::internal::WireFormat::SkipField(
6517              input, tag, mutable_unknown_fields()));
6518        break;
6519      }
6520    }
6521  }
6522  return true;
6523#undef DO_
6524}
6525
6526void UninterpretedOption::SerializeWithCachedSizes(
6527    ::google::protobuf::io::CodedOutputStream* output) const {
6528  ::google::protobuf::uint8* raw_buffer = output->GetDirectBufferForNBytesAndAdvance(_cached_size_);
6529  if (raw_buffer != NULL) {
6530    UninterpretedOption::SerializeWithCachedSizesToArray(raw_buffer);
6531    return;
6532  }
6533
6534  // repeated .google.protobuf.UninterpretedOption.NamePart name = 2;
6535  for (int i = 0; i < this->name_size(); i++) {
6536    ::google::protobuf::internal::WireFormatLite::WriteMessageNoVirtual(
6537      2, this->name(i), output);
6538  }
6539
6540  // optional string identifier_value = 3;
6541  if (_has_bit(1)) {
6542    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
6543      this->identifier_value().data(), this->identifier_value().length(),
6544      ::google::protobuf::internal::WireFormat::SERIALIZE);
6545    ::google::protobuf::internal::WireFormatLite::WriteString(
6546      3, this->identifier_value(), output);
6547  }
6548
6549  // optional uint64 positive_int_value = 4;
6550  if (_has_bit(2)) {
6551    ::google::protobuf::internal::WireFormatLite::WriteUInt64(4, this->positive_int_value(), output);
6552  }
6553
6554  // optional int64 negative_int_value = 5;
6555  if (_has_bit(3)) {
6556    ::google::protobuf::internal::WireFormatLite::WriteInt64(5, this->negative_int_value(), output);
6557  }
6558
6559  // optional double double_value = 6;
6560  if (_has_bit(4)) {
6561    ::google::protobuf::internal::WireFormatLite::WriteDouble(6, this->double_value(), output);
6562  }
6563
6564  // optional bytes string_value = 7;
6565  if (_has_bit(5)) {
6566    ::google::protobuf::internal::WireFormatLite::WriteBytes(
6567      7, this->string_value(), output);
6568  }
6569
6570  if (!unknown_fields().empty()) {
6571    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
6572        unknown_fields(), output);
6573  }
6574}
6575
6576::google::protobuf::uint8* UninterpretedOption::SerializeWithCachedSizesToArray(
6577    ::google::protobuf::uint8* target) const {
6578  // repeated .google.protobuf.UninterpretedOption.NamePart name = 2;
6579  for (int i = 0; i < this->name_size(); i++) {
6580    target = ::google::protobuf::internal::WireFormatLite::
6581      WriteMessageNoVirtualToArray(
6582        2, this->name(i), target);
6583  }
6584
6585  // optional string identifier_value = 3;
6586  if (_has_bit(1)) {
6587    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
6588      this->identifier_value().data(), this->identifier_value().length(),
6589      ::google::protobuf::internal::WireFormat::SERIALIZE);
6590    target =
6591      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
6592        3, this->identifier_value(), target);
6593  }
6594
6595  // optional uint64 positive_int_value = 4;
6596  if (_has_bit(2)) {
6597    target = ::google::protobuf::internal::WireFormatLite::WriteUInt64ToArray(4, this->positive_int_value(), target);
6598  }
6599
6600  // optional int64 negative_int_value = 5;
6601  if (_has_bit(3)) {
6602    target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(5, this->negative_int_value(), target);
6603  }
6604
6605  // optional double double_value = 6;
6606  if (_has_bit(4)) {
6607    target = ::google::protobuf::internal::WireFormatLite::WriteDoubleToArray(6, this->double_value(), target);
6608  }
6609
6610  // optional bytes string_value = 7;
6611  if (_has_bit(5)) {
6612    target =
6613      ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
6614        7, this->string_value(), target);
6615  }
6616
6617  if (!unknown_fields().empty()) {
6618    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
6619        unknown_fields(), target);
6620  }
6621  return target;
6622}
6623
6624int UninterpretedOption::ByteSize() const {
6625  int total_size = 0;
6626
6627  if (_has_bits_[1 / 32] & (0xffu << (1 % 32))) {
6628    // optional string identifier_value = 3;
6629    if (has_identifier_value()) {
6630      total_size += 1 +
6631        ::google::protobuf::internal::WireFormatLite::StringSize(
6632          this->identifier_value());
6633    }
6634
6635    // optional uint64 positive_int_value = 4;
6636    if (has_positive_int_value()) {
6637      total_size += 1 +
6638        ::google::protobuf::internal::WireFormatLite::UInt64Size(
6639          this->positive_int_value());
6640    }
6641
6642    // optional int64 negative_int_value = 5;
6643    if (has_negative_int_value()) {
6644      total_size += 1 +
6645        ::google::protobuf::internal::WireFormatLite::Int64Size(
6646          this->negative_int_value());
6647    }
6648
6649    // optional double double_value = 6;
6650    if (has_double_value()) {
6651      total_size += 1 + 8;
6652    }
6653
6654    // optional bytes string_value = 7;
6655    if (has_string_value()) {
6656      total_size += 1 +
6657        ::google::protobuf::internal::WireFormatLite::BytesSize(
6658          this->string_value());
6659    }
6660
6661  }
6662  // repeated .google.protobuf.UninterpretedOption.NamePart name = 2;
6663  total_size += 1 * this->name_size();
6664  for (int i = 0; i < this->name_size(); i++) {
6665    total_size +=
6666      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
6667        this->name(i));
6668  }
6669
6670  if (!unknown_fields().empty()) {
6671    total_size +=
6672      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
6673        unknown_fields());
6674  }
6675  _cached_size_ = total_size;
6676  return total_size;
6677}
6678
6679void UninterpretedOption::MergeFrom(const ::google::protobuf::Message& from) {
6680  GOOGLE_CHECK_NE(&from, this);
6681  const UninterpretedOption* source =
6682    ::google::protobuf::internal::dynamic_cast_if_available<const UninterpretedOption*>(
6683      &from);
6684  if (source == NULL) {
6685    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
6686  } else {
6687    MergeFrom(*source);
6688  }
6689}
6690
6691void UninterpretedOption::MergeFrom(const UninterpretedOption& from) {
6692  GOOGLE_CHECK_NE(&from, this);
6693  name_.MergeFrom(from.name_);
6694  if (from._has_bits_[1 / 32] & (0xffu << (1 % 32))) {
6695    if (from._has_bit(1)) {
6696      set_identifier_value(from.identifier_value());
6697    }
6698    if (from._has_bit(2)) {
6699      set_positive_int_value(from.positive_int_value());
6700    }
6701    if (from._has_bit(3)) {
6702      set_negative_int_value(from.negative_int_value());
6703    }
6704    if (from._has_bit(4)) {
6705      set_double_value(from.double_value());
6706    }
6707    if (from._has_bit(5)) {
6708      set_string_value(from.string_value());
6709    }
6710  }
6711  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
6712}
6713
6714void UninterpretedOption::CopyFrom(const ::google::protobuf::Message& from) {
6715  if (&from == this) return;
6716  Clear();
6717  MergeFrom(from);
6718}
6719
6720void UninterpretedOption::CopyFrom(const UninterpretedOption& from) {
6721  if (&from == this) return;
6722  Clear();
6723  MergeFrom(from);
6724}
6725
6726bool UninterpretedOption::IsInitialized() const {
6727
6728  for (int i = 0; i < name_size(); i++) {
6729    if (!this->name(i).IsInitialized()) return false;
6730  }
6731  return true;
6732}
6733
6734void UninterpretedOption::Swap(UninterpretedOption* other) {
6735  if (other != this) {
6736    name_.Swap(&other->name_);
6737    std::swap(identifier_value_, other->identifier_value_);
6738    std::swap(positive_int_value_, other->positive_int_value_);
6739    std::swap(negative_int_value_, other->negative_int_value_);
6740    std::swap(double_value_, other->double_value_);
6741    std::swap(string_value_, other->string_value_);
6742    std::swap(_has_bits_[0], other->_has_bits_[0]);
6743    _unknown_fields_.Swap(&other->_unknown_fields_);
6744    std::swap(_cached_size_, other->_cached_size_);
6745  }
6746}
6747
6748::google::protobuf::Metadata UninterpretedOption::GetMetadata() const {
6749  protobuf_AssignDescriptorsOnce();
6750  ::google::protobuf::Metadata metadata;
6751  metadata.descriptor = UninterpretedOption_descriptor_;
6752  metadata.reflection = UninterpretedOption_reflection_;
6753  return metadata;
6754}
6755
6756
6757}  // namespace protobuf
6758}  // namespace google
6759