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