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/port.h>
11#include <google/protobuf/stubs/once.h>
12#include <google/protobuf/io/coded_stream.h>
13#include <google/protobuf/wire_format_lite_inl.h>
14#include <google/protobuf/descriptor.h>
15#include <google/protobuf/generated_message_reflection.h>
16#include <google/protobuf/reflection_ops.h>
17#include <google/protobuf/wire_format.h>
18// @@protoc_insertion_point(includes)
19
20namespace google {
21namespace protobuf {
22
23namespace {
24
25const ::google::protobuf::Descriptor* FileDescriptorSet_descriptor_ = NULL;
26const ::google::protobuf::internal::GeneratedMessageReflection*
27  FileDescriptorSet_reflection_ = NULL;
28const ::google::protobuf::Descriptor* FileDescriptorProto_descriptor_ = NULL;
29const ::google::protobuf::internal::GeneratedMessageReflection*
30  FileDescriptorProto_reflection_ = NULL;
31const ::google::protobuf::Descriptor* DescriptorProto_descriptor_ = NULL;
32const ::google::protobuf::internal::GeneratedMessageReflection*
33  DescriptorProto_reflection_ = NULL;
34const ::google::protobuf::Descriptor* DescriptorProto_ExtensionRange_descriptor_ = NULL;
35const ::google::protobuf::internal::GeneratedMessageReflection*
36  DescriptorProto_ExtensionRange_reflection_ = NULL;
37const ::google::protobuf::Descriptor* DescriptorProto_ReservedRange_descriptor_ = NULL;
38const ::google::protobuf::internal::GeneratedMessageReflection*
39  DescriptorProto_ReservedRange_reflection_ = NULL;
40const ::google::protobuf::Descriptor* FieldDescriptorProto_descriptor_ = NULL;
41const ::google::protobuf::internal::GeneratedMessageReflection*
42  FieldDescriptorProto_reflection_ = NULL;
43const ::google::protobuf::EnumDescriptor* FieldDescriptorProto_Type_descriptor_ = NULL;
44const ::google::protobuf::EnumDescriptor* FieldDescriptorProto_Label_descriptor_ = NULL;
45const ::google::protobuf::Descriptor* OneofDescriptorProto_descriptor_ = NULL;
46const ::google::protobuf::internal::GeneratedMessageReflection*
47  OneofDescriptorProto_reflection_ = NULL;
48const ::google::protobuf::Descriptor* EnumDescriptorProto_descriptor_ = NULL;
49const ::google::protobuf::internal::GeneratedMessageReflection*
50  EnumDescriptorProto_reflection_ = NULL;
51const ::google::protobuf::Descriptor* EnumValueDescriptorProto_descriptor_ = NULL;
52const ::google::protobuf::internal::GeneratedMessageReflection*
53  EnumValueDescriptorProto_reflection_ = NULL;
54const ::google::protobuf::Descriptor* ServiceDescriptorProto_descriptor_ = NULL;
55const ::google::protobuf::internal::GeneratedMessageReflection*
56  ServiceDescriptorProto_reflection_ = NULL;
57const ::google::protobuf::Descriptor* MethodDescriptorProto_descriptor_ = NULL;
58const ::google::protobuf::internal::GeneratedMessageReflection*
59  MethodDescriptorProto_reflection_ = NULL;
60const ::google::protobuf::Descriptor* FileOptions_descriptor_ = NULL;
61const ::google::protobuf::internal::GeneratedMessageReflection*
62  FileOptions_reflection_ = NULL;
63const ::google::protobuf::EnumDescriptor* FileOptions_OptimizeMode_descriptor_ = NULL;
64const ::google::protobuf::Descriptor* MessageOptions_descriptor_ = NULL;
65const ::google::protobuf::internal::GeneratedMessageReflection*
66  MessageOptions_reflection_ = NULL;
67const ::google::protobuf::Descriptor* FieldOptions_descriptor_ = NULL;
68const ::google::protobuf::internal::GeneratedMessageReflection*
69  FieldOptions_reflection_ = NULL;
70const ::google::protobuf::EnumDescriptor* FieldOptions_CType_descriptor_ = NULL;
71const ::google::protobuf::EnumDescriptor* FieldOptions_JSType_descriptor_ = NULL;
72const ::google::protobuf::Descriptor* EnumOptions_descriptor_ = NULL;
73const ::google::protobuf::internal::GeneratedMessageReflection*
74  EnumOptions_reflection_ = NULL;
75const ::google::protobuf::Descriptor* EnumValueOptions_descriptor_ = NULL;
76const ::google::protobuf::internal::GeneratedMessageReflection*
77  EnumValueOptions_reflection_ = NULL;
78const ::google::protobuf::Descriptor* ServiceOptions_descriptor_ = NULL;
79const ::google::protobuf::internal::GeneratedMessageReflection*
80  ServiceOptions_reflection_ = NULL;
81const ::google::protobuf::Descriptor* MethodOptions_descriptor_ = NULL;
82const ::google::protobuf::internal::GeneratedMessageReflection*
83  MethodOptions_reflection_ = NULL;
84const ::google::protobuf::Descriptor* UninterpretedOption_descriptor_ = NULL;
85const ::google::protobuf::internal::GeneratedMessageReflection*
86  UninterpretedOption_reflection_ = NULL;
87const ::google::protobuf::Descriptor* UninterpretedOption_NamePart_descriptor_ = NULL;
88const ::google::protobuf::internal::GeneratedMessageReflection*
89  UninterpretedOption_NamePart_reflection_ = NULL;
90const ::google::protobuf::Descriptor* SourceCodeInfo_descriptor_ = NULL;
91const ::google::protobuf::internal::GeneratedMessageReflection*
92  SourceCodeInfo_reflection_ = NULL;
93const ::google::protobuf::Descriptor* SourceCodeInfo_Location_descriptor_ = NULL;
94const ::google::protobuf::internal::GeneratedMessageReflection*
95  SourceCodeInfo_Location_reflection_ = NULL;
96const ::google::protobuf::Descriptor* GeneratedCodeInfo_descriptor_ = NULL;
97const ::google::protobuf::internal::GeneratedMessageReflection*
98  GeneratedCodeInfo_reflection_ = NULL;
99const ::google::protobuf::Descriptor* GeneratedCodeInfo_Annotation_descriptor_ = NULL;
100const ::google::protobuf::internal::GeneratedMessageReflection*
101  GeneratedCodeInfo_Annotation_reflection_ = NULL;
102
103}  // namespace
104
105
106void protobuf_AssignDesc_google_2fprotobuf_2fdescriptor_2eproto() {
107  protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
108  const ::google::protobuf::FileDescriptor* file =
109    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
110      "google/protobuf/descriptor.proto");
111  GOOGLE_CHECK(file != NULL);
112  FileDescriptorSet_descriptor_ = file->message_type(0);
113  static const int FileDescriptorSet_offsets_[1] = {
114    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorSet, file_),
115  };
116  FileDescriptorSet_reflection_ =
117    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
118      FileDescriptorSet_descriptor_,
119      FileDescriptorSet::default_instance_,
120      FileDescriptorSet_offsets_,
121      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorSet, _has_bits_[0]),
122      -1,
123      -1,
124      sizeof(FileDescriptorSet),
125      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorSet, _internal_metadata_),
126      -1);
127  FileDescriptorProto_descriptor_ = file->message_type(1);
128  static const int FileDescriptorProto_offsets_[12] = {
129    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, name_),
130    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, package_),
131    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, dependency_),
132    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, public_dependency_),
133    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, weak_dependency_),
134    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, message_type_),
135    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, enum_type_),
136    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, service_),
137    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, extension_),
138    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, options_),
139    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, source_code_info_),
140    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, syntax_),
141  };
142  FileDescriptorProto_reflection_ =
143    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
144      FileDescriptorProto_descriptor_,
145      FileDescriptorProto::default_instance_,
146      FileDescriptorProto_offsets_,
147      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, _has_bits_[0]),
148      -1,
149      -1,
150      sizeof(FileDescriptorProto),
151      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileDescriptorProto, _internal_metadata_),
152      -1);
153  DescriptorProto_descriptor_ = file->message_type(2);
154  static const int DescriptorProto_offsets_[10] = {
155    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, name_),
156    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, field_),
157    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, extension_),
158    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, nested_type_),
159    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, enum_type_),
160    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, extension_range_),
161    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, oneof_decl_),
162    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, options_),
163    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, reserved_range_),
164    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, reserved_name_),
165  };
166  DescriptorProto_reflection_ =
167    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
168      DescriptorProto_descriptor_,
169      DescriptorProto::default_instance_,
170      DescriptorProto_offsets_,
171      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, _has_bits_[0]),
172      -1,
173      -1,
174      sizeof(DescriptorProto),
175      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto, _internal_metadata_),
176      -1);
177  DescriptorProto_ExtensionRange_descriptor_ = DescriptorProto_descriptor_->nested_type(0);
178  static const int DescriptorProto_ExtensionRange_offsets_[2] = {
179    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ExtensionRange, start_),
180    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ExtensionRange, end_),
181  };
182  DescriptorProto_ExtensionRange_reflection_ =
183    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
184      DescriptorProto_ExtensionRange_descriptor_,
185      DescriptorProto_ExtensionRange::default_instance_,
186      DescriptorProto_ExtensionRange_offsets_,
187      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ExtensionRange, _has_bits_[0]),
188      -1,
189      -1,
190      sizeof(DescriptorProto_ExtensionRange),
191      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ExtensionRange, _internal_metadata_),
192      -1);
193  DescriptorProto_ReservedRange_descriptor_ = DescriptorProto_descriptor_->nested_type(1);
194  static const int DescriptorProto_ReservedRange_offsets_[2] = {
195    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ReservedRange, start_),
196    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ReservedRange, end_),
197  };
198  DescriptorProto_ReservedRange_reflection_ =
199    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
200      DescriptorProto_ReservedRange_descriptor_,
201      DescriptorProto_ReservedRange::default_instance_,
202      DescriptorProto_ReservedRange_offsets_,
203      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ReservedRange, _has_bits_[0]),
204      -1,
205      -1,
206      sizeof(DescriptorProto_ReservedRange),
207      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DescriptorProto_ReservedRange, _internal_metadata_),
208      -1);
209  FieldDescriptorProto_descriptor_ = file->message_type(3);
210  static const int FieldDescriptorProto_offsets_[10] = {
211    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, name_),
212    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, number_),
213    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, label_),
214    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, type_),
215    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, type_name_),
216    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, extendee_),
217    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, default_value_),
218    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, oneof_index_),
219    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, json_name_),
220    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, options_),
221  };
222  FieldDescriptorProto_reflection_ =
223    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
224      FieldDescriptorProto_descriptor_,
225      FieldDescriptorProto::default_instance_,
226      FieldDescriptorProto_offsets_,
227      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, _has_bits_[0]),
228      -1,
229      -1,
230      sizeof(FieldDescriptorProto),
231      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldDescriptorProto, _internal_metadata_),
232      -1);
233  FieldDescriptorProto_Type_descriptor_ = FieldDescriptorProto_descriptor_->enum_type(0);
234  FieldDescriptorProto_Label_descriptor_ = FieldDescriptorProto_descriptor_->enum_type(1);
235  OneofDescriptorProto_descriptor_ = file->message_type(4);
236  static const int OneofDescriptorProto_offsets_[1] = {
237    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OneofDescriptorProto, name_),
238  };
239  OneofDescriptorProto_reflection_ =
240    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
241      OneofDescriptorProto_descriptor_,
242      OneofDescriptorProto::default_instance_,
243      OneofDescriptorProto_offsets_,
244      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OneofDescriptorProto, _has_bits_[0]),
245      -1,
246      -1,
247      sizeof(OneofDescriptorProto),
248      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OneofDescriptorProto, _internal_metadata_),
249      -1);
250  EnumDescriptorProto_descriptor_ = file->message_type(5);
251  static const int EnumDescriptorProto_offsets_[3] = {
252    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumDescriptorProto, name_),
253    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumDescriptorProto, value_),
254    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumDescriptorProto, options_),
255  };
256  EnumDescriptorProto_reflection_ =
257    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
258      EnumDescriptorProto_descriptor_,
259      EnumDescriptorProto::default_instance_,
260      EnumDescriptorProto_offsets_,
261      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumDescriptorProto, _has_bits_[0]),
262      -1,
263      -1,
264      sizeof(EnumDescriptorProto),
265      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumDescriptorProto, _internal_metadata_),
266      -1);
267  EnumValueDescriptorProto_descriptor_ = file->message_type(6);
268  static const int EnumValueDescriptorProto_offsets_[3] = {
269    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueDescriptorProto, name_),
270    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueDescriptorProto, number_),
271    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueDescriptorProto, options_),
272  };
273  EnumValueDescriptorProto_reflection_ =
274    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
275      EnumValueDescriptorProto_descriptor_,
276      EnumValueDescriptorProto::default_instance_,
277      EnumValueDescriptorProto_offsets_,
278      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueDescriptorProto, _has_bits_[0]),
279      -1,
280      -1,
281      sizeof(EnumValueDescriptorProto),
282      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueDescriptorProto, _internal_metadata_),
283      -1);
284  ServiceDescriptorProto_descriptor_ = file->message_type(7);
285  static const int ServiceDescriptorProto_offsets_[3] = {
286    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceDescriptorProto, name_),
287    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceDescriptorProto, method_),
288    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceDescriptorProto, options_),
289  };
290  ServiceDescriptorProto_reflection_ =
291    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
292      ServiceDescriptorProto_descriptor_,
293      ServiceDescriptorProto::default_instance_,
294      ServiceDescriptorProto_offsets_,
295      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceDescriptorProto, _has_bits_[0]),
296      -1,
297      -1,
298      sizeof(ServiceDescriptorProto),
299      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceDescriptorProto, _internal_metadata_),
300      -1);
301  MethodDescriptorProto_descriptor_ = file->message_type(8);
302  static const int MethodDescriptorProto_offsets_[6] = {
303    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, name_),
304    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, input_type_),
305    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, output_type_),
306    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, options_),
307    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, client_streaming_),
308    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, server_streaming_),
309  };
310  MethodDescriptorProto_reflection_ =
311    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
312      MethodDescriptorProto_descriptor_,
313      MethodDescriptorProto::default_instance_,
314      MethodDescriptorProto_offsets_,
315      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, _has_bits_[0]),
316      -1,
317      -1,
318      sizeof(MethodDescriptorProto),
319      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodDescriptorProto, _internal_metadata_),
320      -1);
321  FileOptions_descriptor_ = file->message_type(9);
322  static const int FileOptions_offsets_[15] = {
323    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, java_package_),
324    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, java_outer_classname_),
325    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, java_multiple_files_),
326    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, java_generate_equals_and_hash_),
327    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, java_string_check_utf8_),
328    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, optimize_for_),
329    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, go_package_),
330    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, cc_generic_services_),
331    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, java_generic_services_),
332    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, py_generic_services_),
333    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, deprecated_),
334    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, cc_enable_arenas_),
335    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, objc_class_prefix_),
336    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, csharp_namespace_),
337    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, uninterpreted_option_),
338  };
339  FileOptions_reflection_ =
340    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
341      FileOptions_descriptor_,
342      FileOptions::default_instance_,
343      FileOptions_offsets_,
344      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, _has_bits_[0]),
345      -1,
346      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, _extensions_),
347      sizeof(FileOptions),
348      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FileOptions, _internal_metadata_),
349      -1);
350  FileOptions_OptimizeMode_descriptor_ = FileOptions_descriptor_->enum_type(0);
351  MessageOptions_descriptor_ = file->message_type(10);
352  static const int MessageOptions_offsets_[5] = {
353    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, message_set_wire_format_),
354    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, no_standard_descriptor_accessor_),
355    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, deprecated_),
356    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, map_entry_),
357    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, uninterpreted_option_),
358  };
359  MessageOptions_reflection_ =
360    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
361      MessageOptions_descriptor_,
362      MessageOptions::default_instance_,
363      MessageOptions_offsets_,
364      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, _has_bits_[0]),
365      -1,
366      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, _extensions_),
367      sizeof(MessageOptions),
368      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MessageOptions, _internal_metadata_),
369      -1);
370  FieldOptions_descriptor_ = file->message_type(11);
371  static const int FieldOptions_offsets_[7] = {
372    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, ctype_),
373    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, packed_),
374    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, jstype_),
375    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, lazy_),
376    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, deprecated_),
377    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, weak_),
378    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, uninterpreted_option_),
379  };
380  FieldOptions_reflection_ =
381    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
382      FieldOptions_descriptor_,
383      FieldOptions::default_instance_,
384      FieldOptions_offsets_,
385      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, _has_bits_[0]),
386      -1,
387      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, _extensions_),
388      sizeof(FieldOptions),
389      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FieldOptions, _internal_metadata_),
390      -1);
391  FieldOptions_CType_descriptor_ = FieldOptions_descriptor_->enum_type(0);
392  FieldOptions_JSType_descriptor_ = FieldOptions_descriptor_->enum_type(1);
393  EnumOptions_descriptor_ = file->message_type(12);
394  static const int EnumOptions_offsets_[3] = {
395    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumOptions, allow_alias_),
396    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumOptions, deprecated_),
397    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumOptions, uninterpreted_option_),
398  };
399  EnumOptions_reflection_ =
400    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
401      EnumOptions_descriptor_,
402      EnumOptions::default_instance_,
403      EnumOptions_offsets_,
404      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumOptions, _has_bits_[0]),
405      -1,
406      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumOptions, _extensions_),
407      sizeof(EnumOptions),
408      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumOptions, _internal_metadata_),
409      -1);
410  EnumValueOptions_descriptor_ = file->message_type(13);
411  static const int EnumValueOptions_offsets_[2] = {
412    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueOptions, deprecated_),
413    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueOptions, uninterpreted_option_),
414  };
415  EnumValueOptions_reflection_ =
416    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
417      EnumValueOptions_descriptor_,
418      EnumValueOptions::default_instance_,
419      EnumValueOptions_offsets_,
420      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueOptions, _has_bits_[0]),
421      -1,
422      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueOptions, _extensions_),
423      sizeof(EnumValueOptions),
424      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(EnumValueOptions, _internal_metadata_),
425      -1);
426  ServiceOptions_descriptor_ = file->message_type(14);
427  static const int ServiceOptions_offsets_[2] = {
428    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceOptions, deprecated_),
429    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceOptions, uninterpreted_option_),
430  };
431  ServiceOptions_reflection_ =
432    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
433      ServiceOptions_descriptor_,
434      ServiceOptions::default_instance_,
435      ServiceOptions_offsets_,
436      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceOptions, _has_bits_[0]),
437      -1,
438      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceOptions, _extensions_),
439      sizeof(ServiceOptions),
440      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServiceOptions, _internal_metadata_),
441      -1);
442  MethodOptions_descriptor_ = file->message_type(15);
443  static const int MethodOptions_offsets_[2] = {
444    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodOptions, deprecated_),
445    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodOptions, uninterpreted_option_),
446  };
447  MethodOptions_reflection_ =
448    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
449      MethodOptions_descriptor_,
450      MethodOptions::default_instance_,
451      MethodOptions_offsets_,
452      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodOptions, _has_bits_[0]),
453      -1,
454      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodOptions, _extensions_),
455      sizeof(MethodOptions),
456      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MethodOptions, _internal_metadata_),
457      -1);
458  UninterpretedOption_descriptor_ = file->message_type(16);
459  static const int UninterpretedOption_offsets_[7] = {
460    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, name_),
461    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, identifier_value_),
462    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, positive_int_value_),
463    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, negative_int_value_),
464    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, double_value_),
465    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, string_value_),
466    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, aggregate_value_),
467  };
468  UninterpretedOption_reflection_ =
469    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
470      UninterpretedOption_descriptor_,
471      UninterpretedOption::default_instance_,
472      UninterpretedOption_offsets_,
473      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, _has_bits_[0]),
474      -1,
475      -1,
476      sizeof(UninterpretedOption),
477      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption, _internal_metadata_),
478      -1);
479  UninterpretedOption_NamePart_descriptor_ = UninterpretedOption_descriptor_->nested_type(0);
480  static const int UninterpretedOption_NamePart_offsets_[2] = {
481    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption_NamePart, name_part_),
482    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption_NamePart, is_extension_),
483  };
484  UninterpretedOption_NamePart_reflection_ =
485    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
486      UninterpretedOption_NamePart_descriptor_,
487      UninterpretedOption_NamePart::default_instance_,
488      UninterpretedOption_NamePart_offsets_,
489      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption_NamePart, _has_bits_[0]),
490      -1,
491      -1,
492      sizeof(UninterpretedOption_NamePart),
493      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UninterpretedOption_NamePart, _internal_metadata_),
494      -1);
495  SourceCodeInfo_descriptor_ = file->message_type(17);
496  static const int SourceCodeInfo_offsets_[1] = {
497    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SourceCodeInfo, location_),
498  };
499  SourceCodeInfo_reflection_ =
500    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
501      SourceCodeInfo_descriptor_,
502      SourceCodeInfo::default_instance_,
503      SourceCodeInfo_offsets_,
504      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SourceCodeInfo, _has_bits_[0]),
505      -1,
506      -1,
507      sizeof(SourceCodeInfo),
508      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SourceCodeInfo, _internal_metadata_),
509      -1);
510  SourceCodeInfo_Location_descriptor_ = SourceCodeInfo_descriptor_->nested_type(0);
511  static const int SourceCodeInfo_Location_offsets_[5] = {
512    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SourceCodeInfo_Location, path_),
513    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SourceCodeInfo_Location, span_),
514    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SourceCodeInfo_Location, leading_comments_),
515    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SourceCodeInfo_Location, trailing_comments_),
516    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SourceCodeInfo_Location, leading_detached_comments_),
517  };
518  SourceCodeInfo_Location_reflection_ =
519    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
520      SourceCodeInfo_Location_descriptor_,
521      SourceCodeInfo_Location::default_instance_,
522      SourceCodeInfo_Location_offsets_,
523      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SourceCodeInfo_Location, _has_bits_[0]),
524      -1,
525      -1,
526      sizeof(SourceCodeInfo_Location),
527      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SourceCodeInfo_Location, _internal_metadata_),
528      -1);
529  GeneratedCodeInfo_descriptor_ = file->message_type(18);
530  static const int GeneratedCodeInfo_offsets_[1] = {
531    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GeneratedCodeInfo, annotation_),
532  };
533  GeneratedCodeInfo_reflection_ =
534    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
535      GeneratedCodeInfo_descriptor_,
536      GeneratedCodeInfo::default_instance_,
537      GeneratedCodeInfo_offsets_,
538      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GeneratedCodeInfo, _has_bits_[0]),
539      -1,
540      -1,
541      sizeof(GeneratedCodeInfo),
542      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GeneratedCodeInfo, _internal_metadata_),
543      -1);
544  GeneratedCodeInfo_Annotation_descriptor_ = GeneratedCodeInfo_descriptor_->nested_type(0);
545  static const int GeneratedCodeInfo_Annotation_offsets_[4] = {
546    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GeneratedCodeInfo_Annotation, path_),
547    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GeneratedCodeInfo_Annotation, source_file_),
548    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GeneratedCodeInfo_Annotation, begin_),
549    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GeneratedCodeInfo_Annotation, end_),
550  };
551  GeneratedCodeInfo_Annotation_reflection_ =
552    ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
553      GeneratedCodeInfo_Annotation_descriptor_,
554      GeneratedCodeInfo_Annotation::default_instance_,
555      GeneratedCodeInfo_Annotation_offsets_,
556      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GeneratedCodeInfo_Annotation, _has_bits_[0]),
557      -1,
558      -1,
559      sizeof(GeneratedCodeInfo_Annotation),
560      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GeneratedCodeInfo_Annotation, _internal_metadata_),
561      -1);
562}
563
564namespace {
565
566GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
567inline void protobuf_AssignDescriptorsOnce() {
568  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
569                 &protobuf_AssignDesc_google_2fprotobuf_2fdescriptor_2eproto);
570}
571
572void protobuf_RegisterTypes(const ::std::string&) {
573  protobuf_AssignDescriptorsOnce();
574  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
575      FileDescriptorSet_descriptor_, &FileDescriptorSet::default_instance());
576  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
577      FileDescriptorProto_descriptor_, &FileDescriptorProto::default_instance());
578  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
579      DescriptorProto_descriptor_, &DescriptorProto::default_instance());
580  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
581      DescriptorProto_ExtensionRange_descriptor_, &DescriptorProto_ExtensionRange::default_instance());
582  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
583      DescriptorProto_ReservedRange_descriptor_, &DescriptorProto_ReservedRange::default_instance());
584  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
585      FieldDescriptorProto_descriptor_, &FieldDescriptorProto::default_instance());
586  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
587      OneofDescriptorProto_descriptor_, &OneofDescriptorProto::default_instance());
588  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
589      EnumDescriptorProto_descriptor_, &EnumDescriptorProto::default_instance());
590  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
591      EnumValueDescriptorProto_descriptor_, &EnumValueDescriptorProto::default_instance());
592  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
593      ServiceDescriptorProto_descriptor_, &ServiceDescriptorProto::default_instance());
594  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
595      MethodDescriptorProto_descriptor_, &MethodDescriptorProto::default_instance());
596  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
597      FileOptions_descriptor_, &FileOptions::default_instance());
598  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
599      MessageOptions_descriptor_, &MessageOptions::default_instance());
600  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
601      FieldOptions_descriptor_, &FieldOptions::default_instance());
602  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
603      EnumOptions_descriptor_, &EnumOptions::default_instance());
604  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
605      EnumValueOptions_descriptor_, &EnumValueOptions::default_instance());
606  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
607      ServiceOptions_descriptor_, &ServiceOptions::default_instance());
608  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
609      MethodOptions_descriptor_, &MethodOptions::default_instance());
610  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
611      UninterpretedOption_descriptor_, &UninterpretedOption::default_instance());
612  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
613      UninterpretedOption_NamePart_descriptor_, &UninterpretedOption_NamePart::default_instance());
614  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
615      SourceCodeInfo_descriptor_, &SourceCodeInfo::default_instance());
616  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
617      SourceCodeInfo_Location_descriptor_, &SourceCodeInfo_Location::default_instance());
618  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
619      GeneratedCodeInfo_descriptor_, &GeneratedCodeInfo::default_instance());
620  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
621      GeneratedCodeInfo_Annotation_descriptor_, &GeneratedCodeInfo_Annotation::default_instance());
622}
623
624}  // namespace
625
626void protobuf_ShutdownFile_google_2fprotobuf_2fdescriptor_2eproto() {
627  delete FileDescriptorSet::default_instance_;
628  delete FileDescriptorSet_reflection_;
629  delete FileDescriptorProto::default_instance_;
630  delete FileDescriptorProto_reflection_;
631  delete DescriptorProto::default_instance_;
632  delete DescriptorProto_reflection_;
633  delete DescriptorProto_ExtensionRange::default_instance_;
634  delete DescriptorProto_ExtensionRange_reflection_;
635  delete DescriptorProto_ReservedRange::default_instance_;
636  delete DescriptorProto_ReservedRange_reflection_;
637  delete FieldDescriptorProto::default_instance_;
638  delete FieldDescriptorProto_reflection_;
639  delete OneofDescriptorProto::default_instance_;
640  delete OneofDescriptorProto_reflection_;
641  delete EnumDescriptorProto::default_instance_;
642  delete EnumDescriptorProto_reflection_;
643  delete EnumValueDescriptorProto::default_instance_;
644  delete EnumValueDescriptorProto_reflection_;
645  delete ServiceDescriptorProto::default_instance_;
646  delete ServiceDescriptorProto_reflection_;
647  delete MethodDescriptorProto::default_instance_;
648  delete MethodDescriptorProto_reflection_;
649  delete FileOptions::default_instance_;
650  delete FileOptions_reflection_;
651  delete MessageOptions::default_instance_;
652  delete MessageOptions_reflection_;
653  delete FieldOptions::default_instance_;
654  delete FieldOptions_reflection_;
655  delete EnumOptions::default_instance_;
656  delete EnumOptions_reflection_;
657  delete EnumValueOptions::default_instance_;
658  delete EnumValueOptions_reflection_;
659  delete ServiceOptions::default_instance_;
660  delete ServiceOptions_reflection_;
661  delete MethodOptions::default_instance_;
662  delete MethodOptions_reflection_;
663  delete UninterpretedOption::default_instance_;
664  delete UninterpretedOption_reflection_;
665  delete UninterpretedOption_NamePart::default_instance_;
666  delete UninterpretedOption_NamePart_reflection_;
667  delete SourceCodeInfo::default_instance_;
668  delete SourceCodeInfo_reflection_;
669  delete SourceCodeInfo_Location::default_instance_;
670  delete SourceCodeInfo_Location_reflection_;
671  delete GeneratedCodeInfo::default_instance_;
672  delete GeneratedCodeInfo_reflection_;
673  delete GeneratedCodeInfo_Annotation::default_instance_;
674  delete GeneratedCodeInfo_Annotation_reflection_;
675}
676
677void protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto() {
678  static bool already_here = false;
679  if (already_here) return;
680  already_here = true;
681  GOOGLE_PROTOBUF_VERIFY_VERSION;
682
683  ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
684    "\n google/protobuf/descriptor.proto\022\017goog"
685    "le.protobuf\"G\n\021FileDescriptorSet\0222\n\004file"
686    "\030\001 \003(\0132$.google.protobuf.FileDescriptorP"
687    "roto\"\333\003\n\023FileDescriptorProto\022\014\n\004name\030\001 \001"
688    "(\t\022\017\n\007package\030\002 \001(\t\022\022\n\ndependency\030\003 \003(\t\022"
689    "\031\n\021public_dependency\030\n \003(\005\022\027\n\017weak_depen"
690    "dency\030\013 \003(\005\0226\n\014message_type\030\004 \003(\0132 .goog"
691    "le.protobuf.DescriptorProto\0227\n\tenum_type"
692    "\030\005 \003(\0132$.google.protobuf.EnumDescriptorP"
693    "roto\0228\n\007service\030\006 \003(\0132\'.google.protobuf."
694    "ServiceDescriptorProto\0228\n\textension\030\007 \003("
695    "\0132%.google.protobuf.FieldDescriptorProto"
696    "\022-\n\007options\030\010 \001(\0132\034.google.protobuf.File"
697    "Options\0229\n\020source_code_info\030\t \001(\0132\037.goog"
698    "le.protobuf.SourceCodeInfo\022\016\n\006syntax\030\014 \001"
699    "(\t\"\360\004\n\017DescriptorProto\022\014\n\004name\030\001 \001(\t\0224\n\005"
700    "field\030\002 \003(\0132%.google.protobuf.FieldDescr"
701    "iptorProto\0228\n\textension\030\006 \003(\0132%.google.p"
702    "rotobuf.FieldDescriptorProto\0225\n\013nested_t"
703    "ype\030\003 \003(\0132 .google.protobuf.DescriptorPr"
704    "oto\0227\n\tenum_type\030\004 \003(\0132$.google.protobuf"
705    ".EnumDescriptorProto\022H\n\017extension_range\030"
706    "\005 \003(\0132/.google.protobuf.DescriptorProto."
707    "ExtensionRange\0229\n\noneof_decl\030\010 \003(\0132%.goo"
708    "gle.protobuf.OneofDescriptorProto\0220\n\007opt"
709    "ions\030\007 \001(\0132\037.google.protobuf.MessageOpti"
710    "ons\022F\n\016reserved_range\030\t \003(\0132..google.pro"
711    "tobuf.DescriptorProto.ReservedRange\022\025\n\rr"
712    "eserved_name\030\n \003(\t\032,\n\016ExtensionRange\022\r\n\005"
713    "start\030\001 \001(\005\022\013\n\003end\030\002 \001(\005\032+\n\rReservedRang"
714    "e\022\r\n\005start\030\001 \001(\005\022\013\n\003end\030\002 \001(\005\"\274\005\n\024FieldD"
715    "escriptorProto\022\014\n\004name\030\001 \001(\t\022\016\n\006number\030\003"
716    " \001(\005\022:\n\005label\030\004 \001(\0162+.google.protobuf.Fi"
717    "eldDescriptorProto.Label\0228\n\004type\030\005 \001(\0162*"
718    ".google.protobuf.FieldDescriptorProto.Ty"
719    "pe\022\021\n\ttype_name\030\006 \001(\t\022\020\n\010extendee\030\002 \001(\t\022"
720    "\025\n\rdefault_value\030\007 \001(\t\022\023\n\013oneof_index\030\t "
721    "\001(\005\022\021\n\tjson_name\030\n \001(\t\022.\n\007options\030\010 \001(\0132"
722    "\035.google.protobuf.FieldOptions\"\266\002\n\004Type\022"
723    "\017\n\013TYPE_DOUBLE\020\001\022\016\n\nTYPE_FLOAT\020\002\022\016\n\nTYPE"
724    "_INT64\020\003\022\017\n\013TYPE_UINT64\020\004\022\016\n\nTYPE_INT32\020"
725    "\005\022\020\n\014TYPE_FIXED64\020\006\022\020\n\014TYPE_FIXED32\020\007\022\r\n"
726    "\tTYPE_BOOL\020\010\022\017\n\013TYPE_STRING\020\t\022\016\n\nTYPE_GR"
727    "OUP\020\n\022\020\n\014TYPE_MESSAGE\020\013\022\016\n\nTYPE_BYTES\020\014\022"
728    "\017\n\013TYPE_UINT32\020\r\022\r\n\tTYPE_ENUM\020\016\022\021\n\rTYPE_"
729    "SFIXED32\020\017\022\021\n\rTYPE_SFIXED64\020\020\022\017\n\013TYPE_SI"
730    "NT32\020\021\022\017\n\013TYPE_SINT64\020\022\"C\n\005Label\022\022\n\016LABE"
731    "L_OPTIONAL\020\001\022\022\n\016LABEL_REQUIRED\020\002\022\022\n\016LABE"
732    "L_REPEATED\020\003\"$\n\024OneofDescriptorProto\022\014\n\004"
733    "name\030\001 \001(\t\"\214\001\n\023EnumDescriptorProto\022\014\n\004na"
734    "me\030\001 \001(\t\0228\n\005value\030\002 \003(\0132).google.protobu"
735    "f.EnumValueDescriptorProto\022-\n\007options\030\003 "
736    "\001(\0132\034.google.protobuf.EnumOptions\"l\n\030Enu"
737    "mValueDescriptorProto\022\014\n\004name\030\001 \001(\t\022\016\n\006n"
738    "umber\030\002 \001(\005\0222\n\007options\030\003 \001(\0132!.google.pr"
739    "otobuf.EnumValueOptions\"\220\001\n\026ServiceDescr"
740    "iptorProto\022\014\n\004name\030\001 \001(\t\0226\n\006method\030\002 \003(\013"
741    "2&.google.protobuf.MethodDescriptorProto"
742    "\0220\n\007options\030\003 \001(\0132\037.google.protobuf.Serv"
743    "iceOptions\"\301\001\n\025MethodDescriptorProto\022\014\n\004"
744    "name\030\001 \001(\t\022\022\n\ninput_type\030\002 \001(\t\022\023\n\013output"
745    "_type\030\003 \001(\t\022/\n\007options\030\004 \001(\0132\036.google.pr"
746    "otobuf.MethodOptions\022\037\n\020client_streaming"
747    "\030\005 \001(\010:\005false\022\037\n\020server_streaming\030\006 \001(\010:"
748    "\005false\"\207\005\n\013FileOptions\022\024\n\014java_package\030\001"
749    " \001(\t\022\034\n\024java_outer_classname\030\010 \001(\t\022\"\n\023ja"
750    "va_multiple_files\030\n \001(\010:\005false\022,\n\035java_g"
751    "enerate_equals_and_hash\030\024 \001(\010:\005false\022%\n\026"
752    "java_string_check_utf8\030\033 \001(\010:\005false\022F\n\014o"
753    "ptimize_for\030\t \001(\0162).google.protobuf.File"
754    "Options.OptimizeMode:\005SPEED\022\022\n\ngo_packag"
755    "e\030\013 \001(\t\022\"\n\023cc_generic_services\030\020 \001(\010:\005fa"
756    "lse\022$\n\025java_generic_services\030\021 \001(\010:\005fals"
757    "e\022\"\n\023py_generic_services\030\022 \001(\010:\005false\022\031\n"
758    "\ndeprecated\030\027 \001(\010:\005false\022\037\n\020cc_enable_ar"
759    "enas\030\037 \001(\010:\005false\022\031\n\021objc_class_prefix\030$"
760    " \001(\t\022\030\n\020csharp_namespace\030% \001(\t\022C\n\024uninte"
761    "rpreted_option\030\347\007 \003(\0132$.google.protobuf."
762    "UninterpretedOption\":\n\014OptimizeMode\022\t\n\005S"
763    "PEED\020\001\022\r\n\tCODE_SIZE\020\002\022\020\n\014LITE_RUNTIME\020\003*"
764    "\t\010\350\007\020\200\200\200\200\002J\004\010&\020\'\"\346\001\n\016MessageOptions\022&\n\027m"
765    "essage_set_wire_format\030\001 \001(\010:\005false\022.\n\037n"
766    "o_standard_descriptor_accessor\030\002 \001(\010:\005fa"
767    "lse\022\031\n\ndeprecated\030\003 \001(\010:\005false\022\021\n\tmap_en"
768    "try\030\007 \001(\010\022C\n\024uninterpreted_option\030\347\007 \003(\013"
769    "2$.google.protobuf.UninterpretedOption*\t"
770    "\010\350\007\020\200\200\200\200\002\"\230\003\n\014FieldOptions\022:\n\005ctype\030\001 \001("
771    "\0162#.google.protobuf.FieldOptions.CType:\006"
772    "STRING\022\016\n\006packed\030\002 \001(\010\022\?\n\006jstype\030\006 \001(\0162$"
773    ".google.protobuf.FieldOptions.JSType:\tJS"
774    "_NORMAL\022\023\n\004lazy\030\005 \001(\010:\005false\022\031\n\ndeprecat"
775    "ed\030\003 \001(\010:\005false\022\023\n\004weak\030\n \001(\010:\005false\022C\n\024"
776    "uninterpreted_option\030\347\007 \003(\0132$.google.pro"
777    "tobuf.UninterpretedOption\"/\n\005CType\022\n\n\006ST"
778    "RING\020\000\022\010\n\004CORD\020\001\022\020\n\014STRING_PIECE\020\002\"5\n\006JS"
779    "Type\022\r\n\tJS_NORMAL\020\000\022\r\n\tJS_STRING\020\001\022\r\n\tJS"
780    "_NUMBER\020\002*\t\010\350\007\020\200\200\200\200\002\"\215\001\n\013EnumOptions\022\023\n\013"
781    "allow_alias\030\002 \001(\010\022\031\n\ndeprecated\030\003 \001(\010:\005f"
782    "alse\022C\n\024uninterpreted_option\030\347\007 \003(\0132$.go"
783    "ogle.protobuf.UninterpretedOption*\t\010\350\007\020\200"
784    "\200\200\200\002\"}\n\020EnumValueOptions\022\031\n\ndeprecated\030\001"
785    " \001(\010:\005false\022C\n\024uninterpreted_option\030\347\007 \003"
786    "(\0132$.google.protobuf.UninterpretedOption"
787    "*\t\010\350\007\020\200\200\200\200\002\"{\n\016ServiceOptions\022\031\n\ndepreca"
788    "ted\030! \001(\010:\005false\022C\n\024uninterpreted_option"
789    "\030\347\007 \003(\0132$.google.protobuf.UninterpretedO"
790    "ption*\t\010\350\007\020\200\200\200\200\002\"z\n\rMethodOptions\022\031\n\ndep"
791    "recated\030! \001(\010:\005false\022C\n\024uninterpreted_op"
792    "tion\030\347\007 \003(\0132$.google.protobuf.Uninterpre"
793    "tedOption*\t\010\350\007\020\200\200\200\200\002\"\236\002\n\023UninterpretedOp"
794    "tion\022;\n\004name\030\002 \003(\0132-.google.protobuf.Uni"
795    "nterpretedOption.NamePart\022\030\n\020identifier_"
796    "value\030\003 \001(\t\022\032\n\022positive_int_value\030\004 \001(\004\022"
797    "\032\n\022negative_int_value\030\005 \001(\003\022\024\n\014double_va"
798    "lue\030\006 \001(\001\022\024\n\014string_value\030\007 \001(\014\022\027\n\017aggre"
799    "gate_value\030\010 \001(\t\0323\n\010NamePart\022\021\n\tname_par"
800    "t\030\001 \002(\t\022\024\n\014is_extension\030\002 \002(\010\"\325\001\n\016Source"
801    "CodeInfo\022:\n\010location\030\001 \003(\0132(.google.prot"
802    "obuf.SourceCodeInfo.Location\032\206\001\n\010Locatio"
803    "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"
804    "\020leading_comments\030\003 \001(\t\022\031\n\021trailing_comm"
805    "ents\030\004 \001(\t\022!\n\031leading_detached_comments\030"
806    "\006 \003(\t\"\247\001\n\021GeneratedCodeInfo\022A\n\nannotatio"
807    "n\030\001 \003(\0132-.google.protobuf.GeneratedCodeI"
808    "nfo.Annotation\032O\n\nAnnotation\022\020\n\004path\030\001 \003"
809    "(\005B\002\020\001\022\023\n\013source_file\030\002 \001(\t\022\r\n\005begin\030\003 \001"
810    "(\005\022\013\n\003end\030\004 \001(\005BX\n\023com.google.protobufB\020"
811    "DescriptorProtosH\001Z\ndescriptor\242\002\003GPB\252\002\032G"
812    "oogle.Protobuf.Reflection", 5145);
813  ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
814    "google/protobuf/descriptor.proto", &protobuf_RegisterTypes);
815  FileDescriptorSet::default_instance_ = new FileDescriptorSet();
816  FileDescriptorProto::default_instance_ = new FileDescriptorProto();
817  DescriptorProto::default_instance_ = new DescriptorProto();
818  DescriptorProto_ExtensionRange::default_instance_ = new DescriptorProto_ExtensionRange();
819  DescriptorProto_ReservedRange::default_instance_ = new DescriptorProto_ReservedRange();
820  FieldDescriptorProto::default_instance_ = new FieldDescriptorProto();
821  OneofDescriptorProto::default_instance_ = new OneofDescriptorProto();
822  EnumDescriptorProto::default_instance_ = new EnumDescriptorProto();
823  EnumValueDescriptorProto::default_instance_ = new EnumValueDescriptorProto();
824  ServiceDescriptorProto::default_instance_ = new ServiceDescriptorProto();
825  MethodDescriptorProto::default_instance_ = new MethodDescriptorProto();
826  FileOptions::default_instance_ = new FileOptions();
827  MessageOptions::default_instance_ = new MessageOptions();
828  FieldOptions::default_instance_ = new FieldOptions();
829  EnumOptions::default_instance_ = new EnumOptions();
830  EnumValueOptions::default_instance_ = new EnumValueOptions();
831  ServiceOptions::default_instance_ = new ServiceOptions();
832  MethodOptions::default_instance_ = new MethodOptions();
833  UninterpretedOption::default_instance_ = new UninterpretedOption();
834  UninterpretedOption_NamePart::default_instance_ = new UninterpretedOption_NamePart();
835  SourceCodeInfo::default_instance_ = new SourceCodeInfo();
836  SourceCodeInfo_Location::default_instance_ = new SourceCodeInfo_Location();
837  GeneratedCodeInfo::default_instance_ = new GeneratedCodeInfo();
838  GeneratedCodeInfo_Annotation::default_instance_ = new GeneratedCodeInfo_Annotation();
839  FileDescriptorSet::default_instance_->InitAsDefaultInstance();
840  FileDescriptorProto::default_instance_->InitAsDefaultInstance();
841  DescriptorProto::default_instance_->InitAsDefaultInstance();
842  DescriptorProto_ExtensionRange::default_instance_->InitAsDefaultInstance();
843  DescriptorProto_ReservedRange::default_instance_->InitAsDefaultInstance();
844  FieldDescriptorProto::default_instance_->InitAsDefaultInstance();
845  OneofDescriptorProto::default_instance_->InitAsDefaultInstance();
846  EnumDescriptorProto::default_instance_->InitAsDefaultInstance();
847  EnumValueDescriptorProto::default_instance_->InitAsDefaultInstance();
848  ServiceDescriptorProto::default_instance_->InitAsDefaultInstance();
849  MethodDescriptorProto::default_instance_->InitAsDefaultInstance();
850  FileOptions::default_instance_->InitAsDefaultInstance();
851  MessageOptions::default_instance_->InitAsDefaultInstance();
852  FieldOptions::default_instance_->InitAsDefaultInstance();
853  EnumOptions::default_instance_->InitAsDefaultInstance();
854  EnumValueOptions::default_instance_->InitAsDefaultInstance();
855  ServiceOptions::default_instance_->InitAsDefaultInstance();
856  MethodOptions::default_instance_->InitAsDefaultInstance();
857  UninterpretedOption::default_instance_->InitAsDefaultInstance();
858  UninterpretedOption_NamePart::default_instance_->InitAsDefaultInstance();
859  SourceCodeInfo::default_instance_->InitAsDefaultInstance();
860  SourceCodeInfo_Location::default_instance_->InitAsDefaultInstance();
861  GeneratedCodeInfo::default_instance_->InitAsDefaultInstance();
862  GeneratedCodeInfo_Annotation::default_instance_->InitAsDefaultInstance();
863  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_google_2fprotobuf_2fdescriptor_2eproto);
864}
865
866// Force AddDescriptors() to be called at static initialization time.
867struct StaticDescriptorInitializer_google_2fprotobuf_2fdescriptor_2eproto {
868  StaticDescriptorInitializer_google_2fprotobuf_2fdescriptor_2eproto() {
869    protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
870  }
871} static_descriptor_initializer_google_2fprotobuf_2fdescriptor_2eproto_;
872
873namespace {
874
875static void MergeFromFail(int line) GOOGLE_ATTRIBUTE_COLD;
876static void MergeFromFail(int line) {
877  GOOGLE_CHECK(false) << __FILE__ << ":" << line;
878}
879
880}  // namespace
881
882
883// ===================================================================
884
885#if !defined(_MSC_VER) || _MSC_VER >= 1900
886const int FileDescriptorSet::kFileFieldNumber;
887#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
888
889FileDescriptorSet::FileDescriptorSet()
890  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
891  SharedCtor();
892  // @@protoc_insertion_point(constructor:google.protobuf.FileDescriptorSet)
893}
894
895void FileDescriptorSet::InitAsDefaultInstance() {
896}
897
898FileDescriptorSet::FileDescriptorSet(const FileDescriptorSet& from)
899  : ::google::protobuf::Message(),
900    _internal_metadata_(NULL) {
901  SharedCtor();
902  MergeFrom(from);
903  // @@protoc_insertion_point(copy_constructor:google.protobuf.FileDescriptorSet)
904}
905
906void FileDescriptorSet::SharedCtor() {
907  _cached_size_ = 0;
908  ::memset(_has_bits_, 0, sizeof(_has_bits_));
909}
910
911FileDescriptorSet::~FileDescriptorSet() {
912  // @@protoc_insertion_point(destructor:google.protobuf.FileDescriptorSet)
913  SharedDtor();
914}
915
916void FileDescriptorSet::SharedDtor() {
917  if (this != default_instance_) {
918  }
919}
920
921void FileDescriptorSet::SetCachedSize(int size) const {
922  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
923  _cached_size_ = size;
924  GOOGLE_SAFE_CONCURRENT_WRITES_END();
925}
926const ::google::protobuf::Descriptor* FileDescriptorSet::descriptor() {
927  protobuf_AssignDescriptorsOnce();
928  return FileDescriptorSet_descriptor_;
929}
930
931const FileDescriptorSet& FileDescriptorSet::default_instance() {
932  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
933  return *default_instance_;
934}
935
936FileDescriptorSet* FileDescriptorSet::default_instance_ = NULL;
937
938FileDescriptorSet* FileDescriptorSet::New(::google::protobuf::Arena* arena) const {
939  FileDescriptorSet* n = new FileDescriptorSet;
940  if (arena != NULL) {
941    arena->Own(n);
942  }
943  return n;
944}
945
946void FileDescriptorSet::Clear() {
947// @@protoc_insertion_point(message_clear_start:google.protobuf.FileDescriptorSet)
948  file_.Clear();
949  ::memset(_has_bits_, 0, sizeof(_has_bits_));
950  if (_internal_metadata_.have_unknown_fields()) {
951    mutable_unknown_fields()->Clear();
952  }
953}
954
955bool FileDescriptorSet::MergePartialFromCodedStream(
956    ::google::protobuf::io::CodedInputStream* input) {
957#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
958  ::google::protobuf::uint32 tag;
959  // @@protoc_insertion_point(parse_start:google.protobuf.FileDescriptorSet)
960  for (;;) {
961    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
962    tag = p.first;
963    if (!p.second) goto handle_unusual;
964    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
965      // repeated .google.protobuf.FileDescriptorProto file = 1;
966      case 1: {
967        if (tag == 10) {
968          DO_(input->IncrementRecursionDepth());
969         parse_loop_file:
970          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
971                input, add_file()));
972        } else {
973          goto handle_unusual;
974        }
975        if (input->ExpectTag(10)) goto parse_loop_file;
976        input->UnsafeDecrementRecursionDepth();
977        if (input->ExpectAtEnd()) goto success;
978        break;
979      }
980
981      default: {
982      handle_unusual:
983        if (tag == 0 ||
984            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
985            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
986          goto success;
987        }
988        DO_(::google::protobuf::internal::WireFormat::SkipField(
989              input, tag, mutable_unknown_fields()));
990        break;
991      }
992    }
993  }
994success:
995  // @@protoc_insertion_point(parse_success:google.protobuf.FileDescriptorSet)
996  return true;
997failure:
998  // @@protoc_insertion_point(parse_failure:google.protobuf.FileDescriptorSet)
999  return false;
1000#undef DO_
1001}
1002
1003void FileDescriptorSet::SerializeWithCachedSizes(
1004    ::google::protobuf::io::CodedOutputStream* output) const {
1005  // @@protoc_insertion_point(serialize_start:google.protobuf.FileDescriptorSet)
1006  // repeated .google.protobuf.FileDescriptorProto file = 1;
1007  for (unsigned int i = 0, n = this->file_size(); i < n; i++) {
1008    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
1009      1, this->file(i), output);
1010  }
1011
1012  if (_internal_metadata_.have_unknown_fields()) {
1013    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
1014        unknown_fields(), output);
1015  }
1016  // @@protoc_insertion_point(serialize_end:google.protobuf.FileDescriptorSet)
1017}
1018
1019::google::protobuf::uint8* FileDescriptorSet::SerializeWithCachedSizesToArray(
1020    ::google::protobuf::uint8* target) const {
1021  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.FileDescriptorSet)
1022  // repeated .google.protobuf.FileDescriptorProto file = 1;
1023  for (unsigned int i = 0, n = this->file_size(); i < n; i++) {
1024    target = ::google::protobuf::internal::WireFormatLite::
1025      WriteMessageNoVirtualToArray(
1026        1, this->file(i), target);
1027  }
1028
1029  if (_internal_metadata_.have_unknown_fields()) {
1030    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
1031        unknown_fields(), target);
1032  }
1033  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.FileDescriptorSet)
1034  return target;
1035}
1036
1037int FileDescriptorSet::ByteSize() const {
1038// @@protoc_insertion_point(message_byte_size_start:google.protobuf.FileDescriptorSet)
1039  int total_size = 0;
1040
1041  // repeated .google.protobuf.FileDescriptorProto file = 1;
1042  total_size += 1 * this->file_size();
1043  for (int i = 0; i < this->file_size(); i++) {
1044    total_size +=
1045      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1046        this->file(i));
1047  }
1048
1049  if (_internal_metadata_.have_unknown_fields()) {
1050    total_size +=
1051      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
1052        unknown_fields());
1053  }
1054  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
1055  _cached_size_ = total_size;
1056  GOOGLE_SAFE_CONCURRENT_WRITES_END();
1057  return total_size;
1058}
1059
1060void FileDescriptorSet::MergeFrom(const ::google::protobuf::Message& from) {
1061// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.FileDescriptorSet)
1062  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
1063  const FileDescriptorSet* source =
1064      ::google::protobuf::internal::DynamicCastToGenerated<const FileDescriptorSet>(
1065          &from);
1066  if (source == NULL) {
1067  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.FileDescriptorSet)
1068    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
1069  } else {
1070  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.FileDescriptorSet)
1071    MergeFrom(*source);
1072  }
1073}
1074
1075void FileDescriptorSet::MergeFrom(const FileDescriptorSet& from) {
1076// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.FileDescriptorSet)
1077  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
1078  file_.MergeFrom(from.file_);
1079  if (from._internal_metadata_.have_unknown_fields()) {
1080    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
1081  }
1082}
1083
1084void FileDescriptorSet::CopyFrom(const ::google::protobuf::Message& from) {
1085// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.FileDescriptorSet)
1086  if (&from == this) return;
1087  Clear();
1088  MergeFrom(from);
1089}
1090
1091void FileDescriptorSet::CopyFrom(const FileDescriptorSet& from) {
1092// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.FileDescriptorSet)
1093  if (&from == this) return;
1094  Clear();
1095  MergeFrom(from);
1096}
1097
1098bool FileDescriptorSet::IsInitialized() const {
1099
1100  if (!::google::protobuf::internal::AllAreInitialized(this->file())) return false;
1101  return true;
1102}
1103
1104void FileDescriptorSet::Swap(FileDescriptorSet* other) {
1105  if (other == this) return;
1106  InternalSwap(other);
1107}
1108void FileDescriptorSet::InternalSwap(FileDescriptorSet* other) {
1109  file_.UnsafeArenaSwap(&other->file_);
1110  std::swap(_has_bits_[0], other->_has_bits_[0]);
1111  _internal_metadata_.Swap(&other->_internal_metadata_);
1112  std::swap(_cached_size_, other->_cached_size_);
1113}
1114
1115::google::protobuf::Metadata FileDescriptorSet::GetMetadata() const {
1116  protobuf_AssignDescriptorsOnce();
1117  ::google::protobuf::Metadata metadata;
1118  metadata.descriptor = FileDescriptorSet_descriptor_;
1119  metadata.reflection = FileDescriptorSet_reflection_;
1120  return metadata;
1121}
1122
1123#if PROTOBUF_INLINE_NOT_IN_HEADERS
1124// FileDescriptorSet
1125
1126// repeated .google.protobuf.FileDescriptorProto file = 1;
1127int FileDescriptorSet::file_size() const {
1128  return file_.size();
1129}
1130void FileDescriptorSet::clear_file() {
1131  file_.Clear();
1132}
1133const ::google::protobuf::FileDescriptorProto& FileDescriptorSet::file(int index) const {
1134  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorSet.file)
1135  return file_.Get(index);
1136}
1137::google::protobuf::FileDescriptorProto* FileDescriptorSet::mutable_file(int index) {
1138  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorSet.file)
1139  return file_.Mutable(index);
1140}
1141::google::protobuf::FileDescriptorProto* FileDescriptorSet::add_file() {
1142  // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorSet.file)
1143  return file_.Add();
1144}
1145::google::protobuf::RepeatedPtrField< ::google::protobuf::FileDescriptorProto >*
1146FileDescriptorSet::mutable_file() {
1147  // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorSet.file)
1148  return &file_;
1149}
1150const ::google::protobuf::RepeatedPtrField< ::google::protobuf::FileDescriptorProto >&
1151FileDescriptorSet::file() const {
1152  // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorSet.file)
1153  return file_;
1154}
1155
1156#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
1157
1158// ===================================================================
1159
1160#if !defined(_MSC_VER) || _MSC_VER >= 1900
1161const int FileDescriptorProto::kNameFieldNumber;
1162const int FileDescriptorProto::kPackageFieldNumber;
1163const int FileDescriptorProto::kDependencyFieldNumber;
1164const int FileDescriptorProto::kPublicDependencyFieldNumber;
1165const int FileDescriptorProto::kWeakDependencyFieldNumber;
1166const int FileDescriptorProto::kMessageTypeFieldNumber;
1167const int FileDescriptorProto::kEnumTypeFieldNumber;
1168const int FileDescriptorProto::kServiceFieldNumber;
1169const int FileDescriptorProto::kExtensionFieldNumber;
1170const int FileDescriptorProto::kOptionsFieldNumber;
1171const int FileDescriptorProto::kSourceCodeInfoFieldNumber;
1172const int FileDescriptorProto::kSyntaxFieldNumber;
1173#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
1174
1175FileDescriptorProto::FileDescriptorProto()
1176  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
1177  SharedCtor();
1178  // @@protoc_insertion_point(constructor:google.protobuf.FileDescriptorProto)
1179}
1180
1181void FileDescriptorProto::InitAsDefaultInstance() {
1182  options_ = const_cast< ::google::protobuf::FileOptions*>(&::google::protobuf::FileOptions::default_instance());
1183  source_code_info_ = const_cast< ::google::protobuf::SourceCodeInfo*>(&::google::protobuf::SourceCodeInfo::default_instance());
1184}
1185
1186FileDescriptorProto::FileDescriptorProto(const FileDescriptorProto& from)
1187  : ::google::protobuf::Message(),
1188    _internal_metadata_(NULL) {
1189  SharedCtor();
1190  MergeFrom(from);
1191  // @@protoc_insertion_point(copy_constructor:google.protobuf.FileDescriptorProto)
1192}
1193
1194void FileDescriptorProto::SharedCtor() {
1195  ::google::protobuf::internal::GetEmptyString();
1196  _cached_size_ = 0;
1197  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1198  package_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1199  options_ = NULL;
1200  source_code_info_ = NULL;
1201  syntax_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1202  ::memset(_has_bits_, 0, sizeof(_has_bits_));
1203}
1204
1205FileDescriptorProto::~FileDescriptorProto() {
1206  // @@protoc_insertion_point(destructor:google.protobuf.FileDescriptorProto)
1207  SharedDtor();
1208}
1209
1210void FileDescriptorProto::SharedDtor() {
1211  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1212  package_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1213  syntax_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1214  if (this != default_instance_) {
1215    delete options_;
1216    delete source_code_info_;
1217  }
1218}
1219
1220void FileDescriptorProto::SetCachedSize(int size) const {
1221  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
1222  _cached_size_ = size;
1223  GOOGLE_SAFE_CONCURRENT_WRITES_END();
1224}
1225const ::google::protobuf::Descriptor* FileDescriptorProto::descriptor() {
1226  protobuf_AssignDescriptorsOnce();
1227  return FileDescriptorProto_descriptor_;
1228}
1229
1230const FileDescriptorProto& FileDescriptorProto::default_instance() {
1231  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
1232  return *default_instance_;
1233}
1234
1235FileDescriptorProto* FileDescriptorProto::default_instance_ = NULL;
1236
1237FileDescriptorProto* FileDescriptorProto::New(::google::protobuf::Arena* arena) const {
1238  FileDescriptorProto* n = new FileDescriptorProto;
1239  if (arena != NULL) {
1240    arena->Own(n);
1241  }
1242  return n;
1243}
1244
1245void FileDescriptorProto::Clear() {
1246// @@protoc_insertion_point(message_clear_start:google.protobuf.FileDescriptorProto)
1247  if (_has_bits_[0 / 32] & 3u) {
1248    if (has_name()) {
1249      name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1250    }
1251    if (has_package()) {
1252      package_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1253    }
1254  }
1255  if (_has_bits_[8 / 32] & 3584u) {
1256    if (has_options()) {
1257      if (options_ != NULL) options_->::google::protobuf::FileOptions::Clear();
1258    }
1259    if (has_source_code_info()) {
1260      if (source_code_info_ != NULL) source_code_info_->::google::protobuf::SourceCodeInfo::Clear();
1261    }
1262    if (has_syntax()) {
1263      syntax_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1264    }
1265  }
1266  dependency_.Clear();
1267  public_dependency_.Clear();
1268  weak_dependency_.Clear();
1269  message_type_.Clear();
1270  enum_type_.Clear();
1271  service_.Clear();
1272  extension_.Clear();
1273  ::memset(_has_bits_, 0, sizeof(_has_bits_));
1274  if (_internal_metadata_.have_unknown_fields()) {
1275    mutable_unknown_fields()->Clear();
1276  }
1277}
1278
1279bool FileDescriptorProto::MergePartialFromCodedStream(
1280    ::google::protobuf::io::CodedInputStream* input) {
1281#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
1282  ::google::protobuf::uint32 tag;
1283  // @@protoc_insertion_point(parse_start:google.protobuf.FileDescriptorProto)
1284  for (;;) {
1285    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
1286    tag = p.first;
1287    if (!p.second) goto handle_unusual;
1288    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
1289      // optional string name = 1;
1290      case 1: {
1291        if (tag == 10) {
1292          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
1293                input, this->mutable_name()));
1294          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1295            this->name().data(), this->name().length(),
1296            ::google::protobuf::internal::WireFormat::PARSE,
1297            "google.protobuf.FileDescriptorProto.name");
1298        } else {
1299          goto handle_unusual;
1300        }
1301        if (input->ExpectTag(18)) goto parse_package;
1302        break;
1303      }
1304
1305      // optional string package = 2;
1306      case 2: {
1307        if (tag == 18) {
1308         parse_package:
1309          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
1310                input, this->mutable_package()));
1311          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1312            this->package().data(), this->package().length(),
1313            ::google::protobuf::internal::WireFormat::PARSE,
1314            "google.protobuf.FileDescriptorProto.package");
1315        } else {
1316          goto handle_unusual;
1317        }
1318        if (input->ExpectTag(26)) goto parse_dependency;
1319        break;
1320      }
1321
1322      // repeated string dependency = 3;
1323      case 3: {
1324        if (tag == 26) {
1325         parse_dependency:
1326          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
1327                input, this->add_dependency()));
1328          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1329            this->dependency(this->dependency_size() - 1).data(),
1330            this->dependency(this->dependency_size() - 1).length(),
1331            ::google::protobuf::internal::WireFormat::PARSE,
1332            "google.protobuf.FileDescriptorProto.dependency");
1333        } else {
1334          goto handle_unusual;
1335        }
1336        if (input->ExpectTag(26)) goto parse_dependency;
1337        if (input->ExpectTag(34)) goto parse_message_type;
1338        break;
1339      }
1340
1341      // repeated .google.protobuf.DescriptorProto message_type = 4;
1342      case 4: {
1343        if (tag == 34) {
1344         parse_message_type:
1345          DO_(input->IncrementRecursionDepth());
1346         parse_loop_message_type:
1347          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
1348                input, add_message_type()));
1349        } else {
1350          goto handle_unusual;
1351        }
1352        if (input->ExpectTag(34)) goto parse_loop_message_type;
1353        if (input->ExpectTag(42)) goto parse_loop_enum_type;
1354        input->UnsafeDecrementRecursionDepth();
1355        break;
1356      }
1357
1358      // repeated .google.protobuf.EnumDescriptorProto enum_type = 5;
1359      case 5: {
1360        if (tag == 42) {
1361          DO_(input->IncrementRecursionDepth());
1362         parse_loop_enum_type:
1363          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
1364                input, add_enum_type()));
1365        } else {
1366          goto handle_unusual;
1367        }
1368        if (input->ExpectTag(42)) goto parse_loop_enum_type;
1369        if (input->ExpectTag(50)) goto parse_loop_service;
1370        input->UnsafeDecrementRecursionDepth();
1371        break;
1372      }
1373
1374      // repeated .google.protobuf.ServiceDescriptorProto service = 6;
1375      case 6: {
1376        if (tag == 50) {
1377          DO_(input->IncrementRecursionDepth());
1378         parse_loop_service:
1379          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
1380                input, add_service()));
1381        } else {
1382          goto handle_unusual;
1383        }
1384        if (input->ExpectTag(50)) goto parse_loop_service;
1385        if (input->ExpectTag(58)) goto parse_loop_extension;
1386        input->UnsafeDecrementRecursionDepth();
1387        break;
1388      }
1389
1390      // repeated .google.protobuf.FieldDescriptorProto extension = 7;
1391      case 7: {
1392        if (tag == 58) {
1393          DO_(input->IncrementRecursionDepth());
1394         parse_loop_extension:
1395          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
1396                input, add_extension()));
1397        } else {
1398          goto handle_unusual;
1399        }
1400        if (input->ExpectTag(58)) goto parse_loop_extension;
1401        input->UnsafeDecrementRecursionDepth();
1402        if (input->ExpectTag(66)) goto parse_options;
1403        break;
1404      }
1405
1406      // optional .google.protobuf.FileOptions options = 8;
1407      case 8: {
1408        if (tag == 66) {
1409         parse_options:
1410          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1411               input, mutable_options()));
1412        } else {
1413          goto handle_unusual;
1414        }
1415        if (input->ExpectTag(74)) goto parse_source_code_info;
1416        break;
1417      }
1418
1419      // optional .google.protobuf.SourceCodeInfo source_code_info = 9;
1420      case 9: {
1421        if (tag == 74) {
1422         parse_source_code_info:
1423          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
1424               input, mutable_source_code_info()));
1425        } else {
1426          goto handle_unusual;
1427        }
1428        if (input->ExpectTag(80)) goto parse_public_dependency;
1429        break;
1430      }
1431
1432      // repeated int32 public_dependency = 10;
1433      case 10: {
1434        if (tag == 80) {
1435         parse_public_dependency:
1436          DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitive<
1437                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
1438                 1, 80, input, this->mutable_public_dependency())));
1439        } else if (tag == 82) {
1440          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitiveNoInline<
1441                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
1442                 input, this->mutable_public_dependency())));
1443        } else {
1444          goto handle_unusual;
1445        }
1446        if (input->ExpectTag(80)) goto parse_public_dependency;
1447        if (input->ExpectTag(88)) goto parse_weak_dependency;
1448        break;
1449      }
1450
1451      // repeated int32 weak_dependency = 11;
1452      case 11: {
1453        if (tag == 88) {
1454         parse_weak_dependency:
1455          DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitive<
1456                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
1457                 1, 88, input, this->mutable_weak_dependency())));
1458        } else if (tag == 90) {
1459          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitiveNoInline<
1460                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
1461                 input, this->mutable_weak_dependency())));
1462        } else {
1463          goto handle_unusual;
1464        }
1465        if (input->ExpectTag(88)) goto parse_weak_dependency;
1466        if (input->ExpectTag(98)) goto parse_syntax;
1467        break;
1468      }
1469
1470      // optional string syntax = 12;
1471      case 12: {
1472        if (tag == 98) {
1473         parse_syntax:
1474          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
1475                input, this->mutable_syntax()));
1476          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1477            this->syntax().data(), this->syntax().length(),
1478            ::google::protobuf::internal::WireFormat::PARSE,
1479            "google.protobuf.FileDescriptorProto.syntax");
1480        } else {
1481          goto handle_unusual;
1482        }
1483        if (input->ExpectAtEnd()) goto success;
1484        break;
1485      }
1486
1487      default: {
1488      handle_unusual:
1489        if (tag == 0 ||
1490            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
1491            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
1492          goto success;
1493        }
1494        DO_(::google::protobuf::internal::WireFormat::SkipField(
1495              input, tag, mutable_unknown_fields()));
1496        break;
1497      }
1498    }
1499  }
1500success:
1501  // @@protoc_insertion_point(parse_success:google.protobuf.FileDescriptorProto)
1502  return true;
1503failure:
1504  // @@protoc_insertion_point(parse_failure:google.protobuf.FileDescriptorProto)
1505  return false;
1506#undef DO_
1507}
1508
1509void FileDescriptorProto::SerializeWithCachedSizes(
1510    ::google::protobuf::io::CodedOutputStream* output) const {
1511  // @@protoc_insertion_point(serialize_start:google.protobuf.FileDescriptorProto)
1512  // optional string name = 1;
1513  if (has_name()) {
1514    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1515      this->name().data(), this->name().length(),
1516      ::google::protobuf::internal::WireFormat::SERIALIZE,
1517      "google.protobuf.FileDescriptorProto.name");
1518    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
1519      1, this->name(), output);
1520  }
1521
1522  // optional string package = 2;
1523  if (has_package()) {
1524    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1525      this->package().data(), this->package().length(),
1526      ::google::protobuf::internal::WireFormat::SERIALIZE,
1527      "google.protobuf.FileDescriptorProto.package");
1528    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
1529      2, this->package(), output);
1530  }
1531
1532  // repeated string dependency = 3;
1533  for (int i = 0; i < this->dependency_size(); i++) {
1534    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1535      this->dependency(i).data(), this->dependency(i).length(),
1536      ::google::protobuf::internal::WireFormat::SERIALIZE,
1537      "google.protobuf.FileDescriptorProto.dependency");
1538    ::google::protobuf::internal::WireFormatLite::WriteString(
1539      3, this->dependency(i), output);
1540  }
1541
1542  // repeated .google.protobuf.DescriptorProto message_type = 4;
1543  for (unsigned int i = 0, n = this->message_type_size(); i < n; i++) {
1544    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
1545      4, this->message_type(i), output);
1546  }
1547
1548  // repeated .google.protobuf.EnumDescriptorProto enum_type = 5;
1549  for (unsigned int i = 0, n = this->enum_type_size(); i < n; i++) {
1550    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
1551      5, this->enum_type(i), output);
1552  }
1553
1554  // repeated .google.protobuf.ServiceDescriptorProto service = 6;
1555  for (unsigned int i = 0, n = this->service_size(); i < n; i++) {
1556    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
1557      6, this->service(i), output);
1558  }
1559
1560  // repeated .google.protobuf.FieldDescriptorProto extension = 7;
1561  for (unsigned int i = 0, n = this->extension_size(); i < n; i++) {
1562    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
1563      7, this->extension(i), output);
1564  }
1565
1566  // optional .google.protobuf.FileOptions options = 8;
1567  if (has_options()) {
1568    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
1569      8, *this->options_, output);
1570  }
1571
1572  // optional .google.protobuf.SourceCodeInfo source_code_info = 9;
1573  if (has_source_code_info()) {
1574    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
1575      9, *this->source_code_info_, output);
1576  }
1577
1578  // repeated int32 public_dependency = 10;
1579  for (int i = 0; i < this->public_dependency_size(); i++) {
1580    ::google::protobuf::internal::WireFormatLite::WriteInt32(
1581      10, this->public_dependency(i), output);
1582  }
1583
1584  // repeated int32 weak_dependency = 11;
1585  for (int i = 0; i < this->weak_dependency_size(); i++) {
1586    ::google::protobuf::internal::WireFormatLite::WriteInt32(
1587      11, this->weak_dependency(i), output);
1588  }
1589
1590  // optional string syntax = 12;
1591  if (has_syntax()) {
1592    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1593      this->syntax().data(), this->syntax().length(),
1594      ::google::protobuf::internal::WireFormat::SERIALIZE,
1595      "google.protobuf.FileDescriptorProto.syntax");
1596    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
1597      12, this->syntax(), output);
1598  }
1599
1600  if (_internal_metadata_.have_unknown_fields()) {
1601    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
1602        unknown_fields(), output);
1603  }
1604  // @@protoc_insertion_point(serialize_end:google.protobuf.FileDescriptorProto)
1605}
1606
1607::google::protobuf::uint8* FileDescriptorProto::SerializeWithCachedSizesToArray(
1608    ::google::protobuf::uint8* target) const {
1609  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.FileDescriptorProto)
1610  // optional string name = 1;
1611  if (has_name()) {
1612    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1613      this->name().data(), this->name().length(),
1614      ::google::protobuf::internal::WireFormat::SERIALIZE,
1615      "google.protobuf.FileDescriptorProto.name");
1616    target =
1617      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
1618        1, this->name(), target);
1619  }
1620
1621  // optional string package = 2;
1622  if (has_package()) {
1623    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1624      this->package().data(), this->package().length(),
1625      ::google::protobuf::internal::WireFormat::SERIALIZE,
1626      "google.protobuf.FileDescriptorProto.package");
1627    target =
1628      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
1629        2, this->package(), target);
1630  }
1631
1632  // repeated string dependency = 3;
1633  for (int i = 0; i < this->dependency_size(); i++) {
1634    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1635      this->dependency(i).data(), this->dependency(i).length(),
1636      ::google::protobuf::internal::WireFormat::SERIALIZE,
1637      "google.protobuf.FileDescriptorProto.dependency");
1638    target = ::google::protobuf::internal::WireFormatLite::
1639      WriteStringToArray(3, this->dependency(i), target);
1640  }
1641
1642  // repeated .google.protobuf.DescriptorProto message_type = 4;
1643  for (unsigned int i = 0, n = this->message_type_size(); i < n; i++) {
1644    target = ::google::protobuf::internal::WireFormatLite::
1645      WriteMessageNoVirtualToArray(
1646        4, this->message_type(i), target);
1647  }
1648
1649  // repeated .google.protobuf.EnumDescriptorProto enum_type = 5;
1650  for (unsigned int i = 0, n = this->enum_type_size(); i < n; i++) {
1651    target = ::google::protobuf::internal::WireFormatLite::
1652      WriteMessageNoVirtualToArray(
1653        5, this->enum_type(i), target);
1654  }
1655
1656  // repeated .google.protobuf.ServiceDescriptorProto service = 6;
1657  for (unsigned int i = 0, n = this->service_size(); i < n; i++) {
1658    target = ::google::protobuf::internal::WireFormatLite::
1659      WriteMessageNoVirtualToArray(
1660        6, this->service(i), target);
1661  }
1662
1663  // repeated .google.protobuf.FieldDescriptorProto extension = 7;
1664  for (unsigned int i = 0, n = this->extension_size(); i < n; i++) {
1665    target = ::google::protobuf::internal::WireFormatLite::
1666      WriteMessageNoVirtualToArray(
1667        7, this->extension(i), target);
1668  }
1669
1670  // optional .google.protobuf.FileOptions options = 8;
1671  if (has_options()) {
1672    target = ::google::protobuf::internal::WireFormatLite::
1673      WriteMessageNoVirtualToArray(
1674        8, *this->options_, target);
1675  }
1676
1677  // optional .google.protobuf.SourceCodeInfo source_code_info = 9;
1678  if (has_source_code_info()) {
1679    target = ::google::protobuf::internal::WireFormatLite::
1680      WriteMessageNoVirtualToArray(
1681        9, *this->source_code_info_, target);
1682  }
1683
1684  // repeated int32 public_dependency = 10;
1685  for (int i = 0; i < this->public_dependency_size(); i++) {
1686    target = ::google::protobuf::internal::WireFormatLite::
1687      WriteInt32ToArray(10, this->public_dependency(i), target);
1688  }
1689
1690  // repeated int32 weak_dependency = 11;
1691  for (int i = 0; i < this->weak_dependency_size(); i++) {
1692    target = ::google::protobuf::internal::WireFormatLite::
1693      WriteInt32ToArray(11, this->weak_dependency(i), target);
1694  }
1695
1696  // optional string syntax = 12;
1697  if (has_syntax()) {
1698    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
1699      this->syntax().data(), this->syntax().length(),
1700      ::google::protobuf::internal::WireFormat::SERIALIZE,
1701      "google.protobuf.FileDescriptorProto.syntax");
1702    target =
1703      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
1704        12, this->syntax(), target);
1705  }
1706
1707  if (_internal_metadata_.have_unknown_fields()) {
1708    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
1709        unknown_fields(), target);
1710  }
1711  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.FileDescriptorProto)
1712  return target;
1713}
1714
1715int FileDescriptorProto::ByteSize() const {
1716// @@protoc_insertion_point(message_byte_size_start:google.protobuf.FileDescriptorProto)
1717  int total_size = 0;
1718
1719  if (_has_bits_[0 / 32] & 3u) {
1720    // optional string name = 1;
1721    if (has_name()) {
1722      total_size += 1 +
1723        ::google::protobuf::internal::WireFormatLite::StringSize(
1724          this->name());
1725    }
1726
1727    // optional string package = 2;
1728    if (has_package()) {
1729      total_size += 1 +
1730        ::google::protobuf::internal::WireFormatLite::StringSize(
1731          this->package());
1732    }
1733
1734  }
1735  if (_has_bits_[9 / 32] & 3584u) {
1736    // optional .google.protobuf.FileOptions options = 8;
1737    if (has_options()) {
1738      total_size += 1 +
1739        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1740          *this->options_);
1741    }
1742
1743    // optional .google.protobuf.SourceCodeInfo source_code_info = 9;
1744    if (has_source_code_info()) {
1745      total_size += 1 +
1746        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1747          *this->source_code_info_);
1748    }
1749
1750    // optional string syntax = 12;
1751    if (has_syntax()) {
1752      total_size += 1 +
1753        ::google::protobuf::internal::WireFormatLite::StringSize(
1754          this->syntax());
1755    }
1756
1757  }
1758  // repeated string dependency = 3;
1759  total_size += 1 * this->dependency_size();
1760  for (int i = 0; i < this->dependency_size(); i++) {
1761    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
1762      this->dependency(i));
1763  }
1764
1765  // repeated int32 public_dependency = 10;
1766  {
1767    int data_size = 0;
1768    for (int i = 0; i < this->public_dependency_size(); i++) {
1769      data_size += ::google::protobuf::internal::WireFormatLite::
1770        Int32Size(this->public_dependency(i));
1771    }
1772    total_size += 1 * this->public_dependency_size() + data_size;
1773  }
1774
1775  // repeated int32 weak_dependency = 11;
1776  {
1777    int data_size = 0;
1778    for (int i = 0; i < this->weak_dependency_size(); i++) {
1779      data_size += ::google::protobuf::internal::WireFormatLite::
1780        Int32Size(this->weak_dependency(i));
1781    }
1782    total_size += 1 * this->weak_dependency_size() + data_size;
1783  }
1784
1785  // repeated .google.protobuf.DescriptorProto message_type = 4;
1786  total_size += 1 * this->message_type_size();
1787  for (int i = 0; i < this->message_type_size(); i++) {
1788    total_size +=
1789      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1790        this->message_type(i));
1791  }
1792
1793  // repeated .google.protobuf.EnumDescriptorProto enum_type = 5;
1794  total_size += 1 * this->enum_type_size();
1795  for (int i = 0; i < this->enum_type_size(); i++) {
1796    total_size +=
1797      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1798        this->enum_type(i));
1799  }
1800
1801  // repeated .google.protobuf.ServiceDescriptorProto service = 6;
1802  total_size += 1 * this->service_size();
1803  for (int i = 0; i < this->service_size(); i++) {
1804    total_size +=
1805      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1806        this->service(i));
1807  }
1808
1809  // repeated .google.protobuf.FieldDescriptorProto extension = 7;
1810  total_size += 1 * this->extension_size();
1811  for (int i = 0; i < this->extension_size(); i++) {
1812    total_size +=
1813      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
1814        this->extension(i));
1815  }
1816
1817  if (_internal_metadata_.have_unknown_fields()) {
1818    total_size +=
1819      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
1820        unknown_fields());
1821  }
1822  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
1823  _cached_size_ = total_size;
1824  GOOGLE_SAFE_CONCURRENT_WRITES_END();
1825  return total_size;
1826}
1827
1828void FileDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
1829// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.FileDescriptorProto)
1830  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
1831  const FileDescriptorProto* source =
1832      ::google::protobuf::internal::DynamicCastToGenerated<const FileDescriptorProto>(
1833          &from);
1834  if (source == NULL) {
1835  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.FileDescriptorProto)
1836    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
1837  } else {
1838  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.FileDescriptorProto)
1839    MergeFrom(*source);
1840  }
1841}
1842
1843void FileDescriptorProto::MergeFrom(const FileDescriptorProto& from) {
1844// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.FileDescriptorProto)
1845  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
1846  dependency_.MergeFrom(from.dependency_);
1847  public_dependency_.MergeFrom(from.public_dependency_);
1848  weak_dependency_.MergeFrom(from.weak_dependency_);
1849  message_type_.MergeFrom(from.message_type_);
1850  enum_type_.MergeFrom(from.enum_type_);
1851  service_.MergeFrom(from.service_);
1852  extension_.MergeFrom(from.extension_);
1853  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
1854    if (from.has_name()) {
1855      set_has_name();
1856      name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
1857    }
1858    if (from.has_package()) {
1859      set_has_package();
1860      package_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.package_);
1861    }
1862  }
1863  if (from._has_bits_[9 / 32] & (0xffu << (9 % 32))) {
1864    if (from.has_options()) {
1865      mutable_options()->::google::protobuf::FileOptions::MergeFrom(from.options());
1866    }
1867    if (from.has_source_code_info()) {
1868      mutable_source_code_info()->::google::protobuf::SourceCodeInfo::MergeFrom(from.source_code_info());
1869    }
1870    if (from.has_syntax()) {
1871      set_has_syntax();
1872      syntax_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.syntax_);
1873    }
1874  }
1875  if (from._internal_metadata_.have_unknown_fields()) {
1876    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
1877  }
1878}
1879
1880void FileDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
1881// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.FileDescriptorProto)
1882  if (&from == this) return;
1883  Clear();
1884  MergeFrom(from);
1885}
1886
1887void FileDescriptorProto::CopyFrom(const FileDescriptorProto& from) {
1888// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.FileDescriptorProto)
1889  if (&from == this) return;
1890  Clear();
1891  MergeFrom(from);
1892}
1893
1894bool FileDescriptorProto::IsInitialized() const {
1895
1896  if (!::google::protobuf::internal::AllAreInitialized(this->message_type())) return false;
1897  if (!::google::protobuf::internal::AllAreInitialized(this->enum_type())) return false;
1898  if (!::google::protobuf::internal::AllAreInitialized(this->service())) return false;
1899  if (!::google::protobuf::internal::AllAreInitialized(this->extension())) return false;
1900  if (has_options()) {
1901    if (!this->options_->IsInitialized()) return false;
1902  }
1903  return true;
1904}
1905
1906void FileDescriptorProto::Swap(FileDescriptorProto* other) {
1907  if (other == this) return;
1908  InternalSwap(other);
1909}
1910void FileDescriptorProto::InternalSwap(FileDescriptorProto* other) {
1911  name_.Swap(&other->name_);
1912  package_.Swap(&other->package_);
1913  dependency_.UnsafeArenaSwap(&other->dependency_);
1914  public_dependency_.UnsafeArenaSwap(&other->public_dependency_);
1915  weak_dependency_.UnsafeArenaSwap(&other->weak_dependency_);
1916  message_type_.UnsafeArenaSwap(&other->message_type_);
1917  enum_type_.UnsafeArenaSwap(&other->enum_type_);
1918  service_.UnsafeArenaSwap(&other->service_);
1919  extension_.UnsafeArenaSwap(&other->extension_);
1920  std::swap(options_, other->options_);
1921  std::swap(source_code_info_, other->source_code_info_);
1922  syntax_.Swap(&other->syntax_);
1923  std::swap(_has_bits_[0], other->_has_bits_[0]);
1924  _internal_metadata_.Swap(&other->_internal_metadata_);
1925  std::swap(_cached_size_, other->_cached_size_);
1926}
1927
1928::google::protobuf::Metadata FileDescriptorProto::GetMetadata() const {
1929  protobuf_AssignDescriptorsOnce();
1930  ::google::protobuf::Metadata metadata;
1931  metadata.descriptor = FileDescriptorProto_descriptor_;
1932  metadata.reflection = FileDescriptorProto_reflection_;
1933  return metadata;
1934}
1935
1936#if PROTOBUF_INLINE_NOT_IN_HEADERS
1937// FileDescriptorProto
1938
1939// optional string name = 1;
1940bool FileDescriptorProto::has_name() const {
1941  return (_has_bits_[0] & 0x00000001u) != 0;
1942}
1943void FileDescriptorProto::set_has_name() {
1944  _has_bits_[0] |= 0x00000001u;
1945}
1946void FileDescriptorProto::clear_has_name() {
1947  _has_bits_[0] &= ~0x00000001u;
1948}
1949void FileDescriptorProto::clear_name() {
1950  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1951  clear_has_name();
1952}
1953 const ::std::string& FileDescriptorProto::name() const {
1954  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.name)
1955  return name_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1956}
1957 void FileDescriptorProto::set_name(const ::std::string& value) {
1958  set_has_name();
1959  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
1960  // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.name)
1961}
1962 void FileDescriptorProto::set_name(const char* value) {
1963  set_has_name();
1964  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
1965  // @@protoc_insertion_point(field_set_char:google.protobuf.FileDescriptorProto.name)
1966}
1967 void FileDescriptorProto::set_name(const char* value, size_t size) {
1968  set_has_name();
1969  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
1970      ::std::string(reinterpret_cast<const char*>(value), size));
1971  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FileDescriptorProto.name)
1972}
1973 ::std::string* FileDescriptorProto::mutable_name() {
1974  set_has_name();
1975  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.name)
1976  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1977}
1978 ::std::string* FileDescriptorProto::release_name() {
1979  // @@protoc_insertion_point(field_release:google.protobuf.FileDescriptorProto.name)
1980  clear_has_name();
1981  return name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
1982}
1983 void FileDescriptorProto::set_allocated_name(::std::string* name) {
1984  if (name != NULL) {
1985    set_has_name();
1986  } else {
1987    clear_has_name();
1988  }
1989  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
1990  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileDescriptorProto.name)
1991}
1992
1993// optional string package = 2;
1994bool FileDescriptorProto::has_package() const {
1995  return (_has_bits_[0] & 0x00000002u) != 0;
1996}
1997void FileDescriptorProto::set_has_package() {
1998  _has_bits_[0] |= 0x00000002u;
1999}
2000void FileDescriptorProto::clear_has_package() {
2001  _has_bits_[0] &= ~0x00000002u;
2002}
2003void FileDescriptorProto::clear_package() {
2004  package_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
2005  clear_has_package();
2006}
2007 const ::std::string& FileDescriptorProto::package() const {
2008  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.package)
2009  return package_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
2010}
2011 void FileDescriptorProto::set_package(const ::std::string& value) {
2012  set_has_package();
2013  package_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
2014  // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.package)
2015}
2016 void FileDescriptorProto::set_package(const char* value) {
2017  set_has_package();
2018  package_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
2019  // @@protoc_insertion_point(field_set_char:google.protobuf.FileDescriptorProto.package)
2020}
2021 void FileDescriptorProto::set_package(const char* value, size_t size) {
2022  set_has_package();
2023  package_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
2024      ::std::string(reinterpret_cast<const char*>(value), size));
2025  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FileDescriptorProto.package)
2026}
2027 ::std::string* FileDescriptorProto::mutable_package() {
2028  set_has_package();
2029  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.package)
2030  return package_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
2031}
2032 ::std::string* FileDescriptorProto::release_package() {
2033  // @@protoc_insertion_point(field_release:google.protobuf.FileDescriptorProto.package)
2034  clear_has_package();
2035  return package_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
2036}
2037 void FileDescriptorProto::set_allocated_package(::std::string* package) {
2038  if (package != NULL) {
2039    set_has_package();
2040  } else {
2041    clear_has_package();
2042  }
2043  package_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), package);
2044  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileDescriptorProto.package)
2045}
2046
2047// repeated string dependency = 3;
2048int FileDescriptorProto::dependency_size() const {
2049  return dependency_.size();
2050}
2051void FileDescriptorProto::clear_dependency() {
2052  dependency_.Clear();
2053}
2054 const ::std::string& FileDescriptorProto::dependency(int index) const {
2055  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.dependency)
2056  return dependency_.Get(index);
2057}
2058 ::std::string* FileDescriptorProto::mutable_dependency(int index) {
2059  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.dependency)
2060  return dependency_.Mutable(index);
2061}
2062 void FileDescriptorProto::set_dependency(int index, const ::std::string& value) {
2063  // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.dependency)
2064  dependency_.Mutable(index)->assign(value);
2065}
2066 void FileDescriptorProto::set_dependency(int index, const char* value) {
2067  dependency_.Mutable(index)->assign(value);
2068  // @@protoc_insertion_point(field_set_char:google.protobuf.FileDescriptorProto.dependency)
2069}
2070 void FileDescriptorProto::set_dependency(int index, const char* value, size_t size) {
2071  dependency_.Mutable(index)->assign(
2072    reinterpret_cast<const char*>(value), size);
2073  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FileDescriptorProto.dependency)
2074}
2075 ::std::string* FileDescriptorProto::add_dependency() {
2076  // @@protoc_insertion_point(field_add_mutable:google.protobuf.FileDescriptorProto.dependency)
2077  return dependency_.Add();
2078}
2079 void FileDescriptorProto::add_dependency(const ::std::string& value) {
2080  dependency_.Add()->assign(value);
2081  // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.dependency)
2082}
2083 void FileDescriptorProto::add_dependency(const char* value) {
2084  dependency_.Add()->assign(value);
2085  // @@protoc_insertion_point(field_add_char:google.protobuf.FileDescriptorProto.dependency)
2086}
2087 void FileDescriptorProto::add_dependency(const char* value, size_t size) {
2088  dependency_.Add()->assign(reinterpret_cast<const char*>(value), size);
2089  // @@protoc_insertion_point(field_add_pointer:google.protobuf.FileDescriptorProto.dependency)
2090}
2091 const ::google::protobuf::RepeatedPtrField< ::std::string>&
2092FileDescriptorProto::dependency() const {
2093  // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.dependency)
2094  return dependency_;
2095}
2096 ::google::protobuf::RepeatedPtrField< ::std::string>*
2097FileDescriptorProto::mutable_dependency() {
2098  // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.dependency)
2099  return &dependency_;
2100}
2101
2102// repeated int32 public_dependency = 10;
2103int FileDescriptorProto::public_dependency_size() const {
2104  return public_dependency_.size();
2105}
2106void FileDescriptorProto::clear_public_dependency() {
2107  public_dependency_.Clear();
2108}
2109 ::google::protobuf::int32 FileDescriptorProto::public_dependency(int index) const {
2110  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.public_dependency)
2111  return public_dependency_.Get(index);
2112}
2113 void FileDescriptorProto::set_public_dependency(int index, ::google::protobuf::int32 value) {
2114  public_dependency_.Set(index, value);
2115  // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.public_dependency)
2116}
2117 void FileDescriptorProto::add_public_dependency(::google::protobuf::int32 value) {
2118  public_dependency_.Add(value);
2119  // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.public_dependency)
2120}
2121 const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
2122FileDescriptorProto::public_dependency() const {
2123  // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.public_dependency)
2124  return public_dependency_;
2125}
2126 ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
2127FileDescriptorProto::mutable_public_dependency() {
2128  // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.public_dependency)
2129  return &public_dependency_;
2130}
2131
2132// repeated int32 weak_dependency = 11;
2133int FileDescriptorProto::weak_dependency_size() const {
2134  return weak_dependency_.size();
2135}
2136void FileDescriptorProto::clear_weak_dependency() {
2137  weak_dependency_.Clear();
2138}
2139 ::google::protobuf::int32 FileDescriptorProto::weak_dependency(int index) const {
2140  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.weak_dependency)
2141  return weak_dependency_.Get(index);
2142}
2143 void FileDescriptorProto::set_weak_dependency(int index, ::google::protobuf::int32 value) {
2144  weak_dependency_.Set(index, value);
2145  // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.weak_dependency)
2146}
2147 void FileDescriptorProto::add_weak_dependency(::google::protobuf::int32 value) {
2148  weak_dependency_.Add(value);
2149  // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.weak_dependency)
2150}
2151 const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
2152FileDescriptorProto::weak_dependency() const {
2153  // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.weak_dependency)
2154  return weak_dependency_;
2155}
2156 ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
2157FileDescriptorProto::mutable_weak_dependency() {
2158  // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.weak_dependency)
2159  return &weak_dependency_;
2160}
2161
2162// repeated .google.protobuf.DescriptorProto message_type = 4;
2163int FileDescriptorProto::message_type_size() const {
2164  return message_type_.size();
2165}
2166void FileDescriptorProto::clear_message_type() {
2167  message_type_.Clear();
2168}
2169const ::google::protobuf::DescriptorProto& FileDescriptorProto::message_type(int index) const {
2170  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.message_type)
2171  return message_type_.Get(index);
2172}
2173::google::protobuf::DescriptorProto* FileDescriptorProto::mutable_message_type(int index) {
2174  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.message_type)
2175  return message_type_.Mutable(index);
2176}
2177::google::protobuf::DescriptorProto* FileDescriptorProto::add_message_type() {
2178  // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.message_type)
2179  return message_type_.Add();
2180}
2181::google::protobuf::RepeatedPtrField< ::google::protobuf::DescriptorProto >*
2182FileDescriptorProto::mutable_message_type() {
2183  // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.message_type)
2184  return &message_type_;
2185}
2186const ::google::protobuf::RepeatedPtrField< ::google::protobuf::DescriptorProto >&
2187FileDescriptorProto::message_type() const {
2188  // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.message_type)
2189  return message_type_;
2190}
2191
2192// repeated .google.protobuf.EnumDescriptorProto enum_type = 5;
2193int FileDescriptorProto::enum_type_size() const {
2194  return enum_type_.size();
2195}
2196void FileDescriptorProto::clear_enum_type() {
2197  enum_type_.Clear();
2198}
2199const ::google::protobuf::EnumDescriptorProto& FileDescriptorProto::enum_type(int index) const {
2200  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.enum_type)
2201  return enum_type_.Get(index);
2202}
2203::google::protobuf::EnumDescriptorProto* FileDescriptorProto::mutable_enum_type(int index) {
2204  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.enum_type)
2205  return enum_type_.Mutable(index);
2206}
2207::google::protobuf::EnumDescriptorProto* FileDescriptorProto::add_enum_type() {
2208  // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.enum_type)
2209  return enum_type_.Add();
2210}
2211::google::protobuf::RepeatedPtrField< ::google::protobuf::EnumDescriptorProto >*
2212FileDescriptorProto::mutable_enum_type() {
2213  // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.enum_type)
2214  return &enum_type_;
2215}
2216const ::google::protobuf::RepeatedPtrField< ::google::protobuf::EnumDescriptorProto >&
2217FileDescriptorProto::enum_type() const {
2218  // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.enum_type)
2219  return enum_type_;
2220}
2221
2222// repeated .google.protobuf.ServiceDescriptorProto service = 6;
2223int FileDescriptorProto::service_size() const {
2224  return service_.size();
2225}
2226void FileDescriptorProto::clear_service() {
2227  service_.Clear();
2228}
2229const ::google::protobuf::ServiceDescriptorProto& FileDescriptorProto::service(int index) const {
2230  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.service)
2231  return service_.Get(index);
2232}
2233::google::protobuf::ServiceDescriptorProto* FileDescriptorProto::mutable_service(int index) {
2234  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.service)
2235  return service_.Mutable(index);
2236}
2237::google::protobuf::ServiceDescriptorProto* FileDescriptorProto::add_service() {
2238  // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.service)
2239  return service_.Add();
2240}
2241::google::protobuf::RepeatedPtrField< ::google::protobuf::ServiceDescriptorProto >*
2242FileDescriptorProto::mutable_service() {
2243  // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.service)
2244  return &service_;
2245}
2246const ::google::protobuf::RepeatedPtrField< ::google::protobuf::ServiceDescriptorProto >&
2247FileDescriptorProto::service() const {
2248  // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.service)
2249  return service_;
2250}
2251
2252// repeated .google.protobuf.FieldDescriptorProto extension = 7;
2253int FileDescriptorProto::extension_size() const {
2254  return extension_.size();
2255}
2256void FileDescriptorProto::clear_extension() {
2257  extension_.Clear();
2258}
2259const ::google::protobuf::FieldDescriptorProto& FileDescriptorProto::extension(int index) const {
2260  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.extension)
2261  return extension_.Get(index);
2262}
2263::google::protobuf::FieldDescriptorProto* FileDescriptorProto::mutable_extension(int index) {
2264  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.extension)
2265  return extension_.Mutable(index);
2266}
2267::google::protobuf::FieldDescriptorProto* FileDescriptorProto::add_extension() {
2268  // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.extension)
2269  return extension_.Add();
2270}
2271::google::protobuf::RepeatedPtrField< ::google::protobuf::FieldDescriptorProto >*
2272FileDescriptorProto::mutable_extension() {
2273  // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.extension)
2274  return &extension_;
2275}
2276const ::google::protobuf::RepeatedPtrField< ::google::protobuf::FieldDescriptorProto >&
2277FileDescriptorProto::extension() const {
2278  // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.extension)
2279  return extension_;
2280}
2281
2282// optional .google.protobuf.FileOptions options = 8;
2283bool FileDescriptorProto::has_options() const {
2284  return (_has_bits_[0] & 0x00000200u) != 0;
2285}
2286void FileDescriptorProto::set_has_options() {
2287  _has_bits_[0] |= 0x00000200u;
2288}
2289void FileDescriptorProto::clear_has_options() {
2290  _has_bits_[0] &= ~0x00000200u;
2291}
2292void FileDescriptorProto::clear_options() {
2293  if (options_ != NULL) options_->::google::protobuf::FileOptions::Clear();
2294  clear_has_options();
2295}
2296const ::google::protobuf::FileOptions& FileDescriptorProto::options() const {
2297  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.options)
2298  return options_ != NULL ? *options_ : *default_instance_->options_;
2299}
2300::google::protobuf::FileOptions* FileDescriptorProto::mutable_options() {
2301  set_has_options();
2302  if (options_ == NULL) {
2303    options_ = new ::google::protobuf::FileOptions;
2304  }
2305  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.options)
2306  return options_;
2307}
2308::google::protobuf::FileOptions* FileDescriptorProto::release_options() {
2309  // @@protoc_insertion_point(field_release:google.protobuf.FileDescriptorProto.options)
2310  clear_has_options();
2311  ::google::protobuf::FileOptions* temp = options_;
2312  options_ = NULL;
2313  return temp;
2314}
2315void FileDescriptorProto::set_allocated_options(::google::protobuf::FileOptions* options) {
2316  delete options_;
2317  options_ = options;
2318  if (options) {
2319    set_has_options();
2320  } else {
2321    clear_has_options();
2322  }
2323  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileDescriptorProto.options)
2324}
2325
2326// optional .google.protobuf.SourceCodeInfo source_code_info = 9;
2327bool FileDescriptorProto::has_source_code_info() const {
2328  return (_has_bits_[0] & 0x00000400u) != 0;
2329}
2330void FileDescriptorProto::set_has_source_code_info() {
2331  _has_bits_[0] |= 0x00000400u;
2332}
2333void FileDescriptorProto::clear_has_source_code_info() {
2334  _has_bits_[0] &= ~0x00000400u;
2335}
2336void FileDescriptorProto::clear_source_code_info() {
2337  if (source_code_info_ != NULL) source_code_info_->::google::protobuf::SourceCodeInfo::Clear();
2338  clear_has_source_code_info();
2339}
2340const ::google::protobuf::SourceCodeInfo& FileDescriptorProto::source_code_info() const {
2341  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.source_code_info)
2342  return source_code_info_ != NULL ? *source_code_info_ : *default_instance_->source_code_info_;
2343}
2344::google::protobuf::SourceCodeInfo* FileDescriptorProto::mutable_source_code_info() {
2345  set_has_source_code_info();
2346  if (source_code_info_ == NULL) {
2347    source_code_info_ = new ::google::protobuf::SourceCodeInfo;
2348  }
2349  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.source_code_info)
2350  return source_code_info_;
2351}
2352::google::protobuf::SourceCodeInfo* FileDescriptorProto::release_source_code_info() {
2353  // @@protoc_insertion_point(field_release:google.protobuf.FileDescriptorProto.source_code_info)
2354  clear_has_source_code_info();
2355  ::google::protobuf::SourceCodeInfo* temp = source_code_info_;
2356  source_code_info_ = NULL;
2357  return temp;
2358}
2359void FileDescriptorProto::set_allocated_source_code_info(::google::protobuf::SourceCodeInfo* source_code_info) {
2360  delete source_code_info_;
2361  source_code_info_ = source_code_info;
2362  if (source_code_info) {
2363    set_has_source_code_info();
2364  } else {
2365    clear_has_source_code_info();
2366  }
2367  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileDescriptorProto.source_code_info)
2368}
2369
2370// optional string syntax = 12;
2371bool FileDescriptorProto::has_syntax() const {
2372  return (_has_bits_[0] & 0x00000800u) != 0;
2373}
2374void FileDescriptorProto::set_has_syntax() {
2375  _has_bits_[0] |= 0x00000800u;
2376}
2377void FileDescriptorProto::clear_has_syntax() {
2378  _has_bits_[0] &= ~0x00000800u;
2379}
2380void FileDescriptorProto::clear_syntax() {
2381  syntax_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
2382  clear_has_syntax();
2383}
2384 const ::std::string& FileDescriptorProto::syntax() const {
2385  // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.syntax)
2386  return syntax_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
2387}
2388 void FileDescriptorProto::set_syntax(const ::std::string& value) {
2389  set_has_syntax();
2390  syntax_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
2391  // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.syntax)
2392}
2393 void FileDescriptorProto::set_syntax(const char* value) {
2394  set_has_syntax();
2395  syntax_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
2396  // @@protoc_insertion_point(field_set_char:google.protobuf.FileDescriptorProto.syntax)
2397}
2398 void FileDescriptorProto::set_syntax(const char* value, size_t size) {
2399  set_has_syntax();
2400  syntax_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
2401      ::std::string(reinterpret_cast<const char*>(value), size));
2402  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FileDescriptorProto.syntax)
2403}
2404 ::std::string* FileDescriptorProto::mutable_syntax() {
2405  set_has_syntax();
2406  // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.syntax)
2407  return syntax_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
2408}
2409 ::std::string* FileDescriptorProto::release_syntax() {
2410  // @@protoc_insertion_point(field_release:google.protobuf.FileDescriptorProto.syntax)
2411  clear_has_syntax();
2412  return syntax_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
2413}
2414 void FileDescriptorProto::set_allocated_syntax(::std::string* syntax) {
2415  if (syntax != NULL) {
2416    set_has_syntax();
2417  } else {
2418    clear_has_syntax();
2419  }
2420  syntax_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), syntax);
2421  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileDescriptorProto.syntax)
2422}
2423
2424#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
2425
2426// ===================================================================
2427
2428#if !defined(_MSC_VER) || _MSC_VER >= 1900
2429const int DescriptorProto_ExtensionRange::kStartFieldNumber;
2430const int DescriptorProto_ExtensionRange::kEndFieldNumber;
2431#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
2432
2433DescriptorProto_ExtensionRange::DescriptorProto_ExtensionRange()
2434  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
2435  SharedCtor();
2436  // @@protoc_insertion_point(constructor:google.protobuf.DescriptorProto.ExtensionRange)
2437}
2438
2439void DescriptorProto_ExtensionRange::InitAsDefaultInstance() {
2440}
2441
2442DescriptorProto_ExtensionRange::DescriptorProto_ExtensionRange(const DescriptorProto_ExtensionRange& from)
2443  : ::google::protobuf::Message(),
2444    _internal_metadata_(NULL) {
2445  SharedCtor();
2446  MergeFrom(from);
2447  // @@protoc_insertion_point(copy_constructor:google.protobuf.DescriptorProto.ExtensionRange)
2448}
2449
2450void DescriptorProto_ExtensionRange::SharedCtor() {
2451  _cached_size_ = 0;
2452  start_ = 0;
2453  end_ = 0;
2454  ::memset(_has_bits_, 0, sizeof(_has_bits_));
2455}
2456
2457DescriptorProto_ExtensionRange::~DescriptorProto_ExtensionRange() {
2458  // @@protoc_insertion_point(destructor:google.protobuf.DescriptorProto.ExtensionRange)
2459  SharedDtor();
2460}
2461
2462void DescriptorProto_ExtensionRange::SharedDtor() {
2463  if (this != default_instance_) {
2464  }
2465}
2466
2467void DescriptorProto_ExtensionRange::SetCachedSize(int size) const {
2468  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
2469  _cached_size_ = size;
2470  GOOGLE_SAFE_CONCURRENT_WRITES_END();
2471}
2472const ::google::protobuf::Descriptor* DescriptorProto_ExtensionRange::descriptor() {
2473  protobuf_AssignDescriptorsOnce();
2474  return DescriptorProto_ExtensionRange_descriptor_;
2475}
2476
2477const DescriptorProto_ExtensionRange& DescriptorProto_ExtensionRange::default_instance() {
2478  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
2479  return *default_instance_;
2480}
2481
2482DescriptorProto_ExtensionRange* DescriptorProto_ExtensionRange::default_instance_ = NULL;
2483
2484DescriptorProto_ExtensionRange* DescriptorProto_ExtensionRange::New(::google::protobuf::Arena* arena) const {
2485  DescriptorProto_ExtensionRange* n = new DescriptorProto_ExtensionRange;
2486  if (arena != NULL) {
2487    arena->Own(n);
2488  }
2489  return n;
2490}
2491
2492void DescriptorProto_ExtensionRange::Clear() {
2493// @@protoc_insertion_point(message_clear_start:google.protobuf.DescriptorProto.ExtensionRange)
2494#if defined(__clang__)
2495#define ZR_HELPER_(f) \
2496  _Pragma("clang diagnostic push") \
2497  _Pragma("clang diagnostic ignored \"-Winvalid-offsetof\"") \
2498  __builtin_offsetof(DescriptorProto_ExtensionRange, f) \
2499  _Pragma("clang diagnostic pop")
2500#else
2501#define ZR_HELPER_(f) reinterpret_cast<char*>(\
2502  &reinterpret_cast<DescriptorProto_ExtensionRange*>(16)->f)
2503#endif
2504
2505#define ZR_(first, last) do {\
2506  ::memset(&(first), 0,\
2507           ZR_HELPER_(last) - ZR_HELPER_(first) + sizeof(last));\
2508} while (0)
2509
2510  ZR_(start_, end_);
2511
2512#undef ZR_HELPER_
2513#undef ZR_
2514
2515  ::memset(_has_bits_, 0, sizeof(_has_bits_));
2516  if (_internal_metadata_.have_unknown_fields()) {
2517    mutable_unknown_fields()->Clear();
2518  }
2519}
2520
2521bool DescriptorProto_ExtensionRange::MergePartialFromCodedStream(
2522    ::google::protobuf::io::CodedInputStream* input) {
2523#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
2524  ::google::protobuf::uint32 tag;
2525  // @@protoc_insertion_point(parse_start:google.protobuf.DescriptorProto.ExtensionRange)
2526  for (;;) {
2527    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
2528    tag = p.first;
2529    if (!p.second) goto handle_unusual;
2530    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
2531      // optional int32 start = 1;
2532      case 1: {
2533        if (tag == 8) {
2534          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
2535                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
2536                 input, &start_)));
2537          set_has_start();
2538        } else {
2539          goto handle_unusual;
2540        }
2541        if (input->ExpectTag(16)) goto parse_end;
2542        break;
2543      }
2544
2545      // optional int32 end = 2;
2546      case 2: {
2547        if (tag == 16) {
2548         parse_end:
2549          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
2550                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
2551                 input, &end_)));
2552          set_has_end();
2553        } else {
2554          goto handle_unusual;
2555        }
2556        if (input->ExpectAtEnd()) goto success;
2557        break;
2558      }
2559
2560      default: {
2561      handle_unusual:
2562        if (tag == 0 ||
2563            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
2564            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
2565          goto success;
2566        }
2567        DO_(::google::protobuf::internal::WireFormat::SkipField(
2568              input, tag, mutable_unknown_fields()));
2569        break;
2570      }
2571    }
2572  }
2573success:
2574  // @@protoc_insertion_point(parse_success:google.protobuf.DescriptorProto.ExtensionRange)
2575  return true;
2576failure:
2577  // @@protoc_insertion_point(parse_failure:google.protobuf.DescriptorProto.ExtensionRange)
2578  return false;
2579#undef DO_
2580}
2581
2582void DescriptorProto_ExtensionRange::SerializeWithCachedSizes(
2583    ::google::protobuf::io::CodedOutputStream* output) const {
2584  // @@protoc_insertion_point(serialize_start:google.protobuf.DescriptorProto.ExtensionRange)
2585  // optional int32 start = 1;
2586  if (has_start()) {
2587    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->start(), output);
2588  }
2589
2590  // optional int32 end = 2;
2591  if (has_end()) {
2592    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->end(), output);
2593  }
2594
2595  if (_internal_metadata_.have_unknown_fields()) {
2596    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
2597        unknown_fields(), output);
2598  }
2599  // @@protoc_insertion_point(serialize_end:google.protobuf.DescriptorProto.ExtensionRange)
2600}
2601
2602::google::protobuf::uint8* DescriptorProto_ExtensionRange::SerializeWithCachedSizesToArray(
2603    ::google::protobuf::uint8* target) const {
2604  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.DescriptorProto.ExtensionRange)
2605  // optional int32 start = 1;
2606  if (has_start()) {
2607    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->start(), target);
2608  }
2609
2610  // optional int32 end = 2;
2611  if (has_end()) {
2612    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->end(), target);
2613  }
2614
2615  if (_internal_metadata_.have_unknown_fields()) {
2616    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
2617        unknown_fields(), target);
2618  }
2619  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.DescriptorProto.ExtensionRange)
2620  return target;
2621}
2622
2623int DescriptorProto_ExtensionRange::ByteSize() const {
2624// @@protoc_insertion_point(message_byte_size_start:google.protobuf.DescriptorProto.ExtensionRange)
2625  int total_size = 0;
2626
2627  if (_has_bits_[0 / 32] & 3u) {
2628    // optional int32 start = 1;
2629    if (has_start()) {
2630      total_size += 1 +
2631        ::google::protobuf::internal::WireFormatLite::Int32Size(
2632          this->start());
2633    }
2634
2635    // optional int32 end = 2;
2636    if (has_end()) {
2637      total_size += 1 +
2638        ::google::protobuf::internal::WireFormatLite::Int32Size(
2639          this->end());
2640    }
2641
2642  }
2643  if (_internal_metadata_.have_unknown_fields()) {
2644    total_size +=
2645      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
2646        unknown_fields());
2647  }
2648  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
2649  _cached_size_ = total_size;
2650  GOOGLE_SAFE_CONCURRENT_WRITES_END();
2651  return total_size;
2652}
2653
2654void DescriptorProto_ExtensionRange::MergeFrom(const ::google::protobuf::Message& from) {
2655// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.DescriptorProto.ExtensionRange)
2656  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
2657  const DescriptorProto_ExtensionRange* source =
2658      ::google::protobuf::internal::DynamicCastToGenerated<const DescriptorProto_ExtensionRange>(
2659          &from);
2660  if (source == NULL) {
2661  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.DescriptorProto.ExtensionRange)
2662    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
2663  } else {
2664  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.DescriptorProto.ExtensionRange)
2665    MergeFrom(*source);
2666  }
2667}
2668
2669void DescriptorProto_ExtensionRange::MergeFrom(const DescriptorProto_ExtensionRange& from) {
2670// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.DescriptorProto.ExtensionRange)
2671  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
2672  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
2673    if (from.has_start()) {
2674      set_start(from.start());
2675    }
2676    if (from.has_end()) {
2677      set_end(from.end());
2678    }
2679  }
2680  if (from._internal_metadata_.have_unknown_fields()) {
2681    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
2682  }
2683}
2684
2685void DescriptorProto_ExtensionRange::CopyFrom(const ::google::protobuf::Message& from) {
2686// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.DescriptorProto.ExtensionRange)
2687  if (&from == this) return;
2688  Clear();
2689  MergeFrom(from);
2690}
2691
2692void DescriptorProto_ExtensionRange::CopyFrom(const DescriptorProto_ExtensionRange& from) {
2693// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.DescriptorProto.ExtensionRange)
2694  if (&from == this) return;
2695  Clear();
2696  MergeFrom(from);
2697}
2698
2699bool DescriptorProto_ExtensionRange::IsInitialized() const {
2700
2701  return true;
2702}
2703
2704void DescriptorProto_ExtensionRange::Swap(DescriptorProto_ExtensionRange* other) {
2705  if (other == this) return;
2706  InternalSwap(other);
2707}
2708void DescriptorProto_ExtensionRange::InternalSwap(DescriptorProto_ExtensionRange* other) {
2709  std::swap(start_, other->start_);
2710  std::swap(end_, other->end_);
2711  std::swap(_has_bits_[0], other->_has_bits_[0]);
2712  _internal_metadata_.Swap(&other->_internal_metadata_);
2713  std::swap(_cached_size_, other->_cached_size_);
2714}
2715
2716::google::protobuf::Metadata DescriptorProto_ExtensionRange::GetMetadata() const {
2717  protobuf_AssignDescriptorsOnce();
2718  ::google::protobuf::Metadata metadata;
2719  metadata.descriptor = DescriptorProto_ExtensionRange_descriptor_;
2720  metadata.reflection = DescriptorProto_ExtensionRange_reflection_;
2721  return metadata;
2722}
2723
2724
2725// -------------------------------------------------------------------
2726
2727#if !defined(_MSC_VER) || _MSC_VER >= 1900
2728const int DescriptorProto_ReservedRange::kStartFieldNumber;
2729const int DescriptorProto_ReservedRange::kEndFieldNumber;
2730#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
2731
2732DescriptorProto_ReservedRange::DescriptorProto_ReservedRange()
2733  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
2734  SharedCtor();
2735  // @@protoc_insertion_point(constructor:google.protobuf.DescriptorProto.ReservedRange)
2736}
2737
2738void DescriptorProto_ReservedRange::InitAsDefaultInstance() {
2739}
2740
2741DescriptorProto_ReservedRange::DescriptorProto_ReservedRange(const DescriptorProto_ReservedRange& from)
2742  : ::google::protobuf::Message(),
2743    _internal_metadata_(NULL) {
2744  SharedCtor();
2745  MergeFrom(from);
2746  // @@protoc_insertion_point(copy_constructor:google.protobuf.DescriptorProto.ReservedRange)
2747}
2748
2749void DescriptorProto_ReservedRange::SharedCtor() {
2750  _cached_size_ = 0;
2751  start_ = 0;
2752  end_ = 0;
2753  ::memset(_has_bits_, 0, sizeof(_has_bits_));
2754}
2755
2756DescriptorProto_ReservedRange::~DescriptorProto_ReservedRange() {
2757  // @@protoc_insertion_point(destructor:google.protobuf.DescriptorProto.ReservedRange)
2758  SharedDtor();
2759}
2760
2761void DescriptorProto_ReservedRange::SharedDtor() {
2762  if (this != default_instance_) {
2763  }
2764}
2765
2766void DescriptorProto_ReservedRange::SetCachedSize(int size) const {
2767  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
2768  _cached_size_ = size;
2769  GOOGLE_SAFE_CONCURRENT_WRITES_END();
2770}
2771const ::google::protobuf::Descriptor* DescriptorProto_ReservedRange::descriptor() {
2772  protobuf_AssignDescriptorsOnce();
2773  return DescriptorProto_ReservedRange_descriptor_;
2774}
2775
2776const DescriptorProto_ReservedRange& DescriptorProto_ReservedRange::default_instance() {
2777  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
2778  return *default_instance_;
2779}
2780
2781DescriptorProto_ReservedRange* DescriptorProto_ReservedRange::default_instance_ = NULL;
2782
2783DescriptorProto_ReservedRange* DescriptorProto_ReservedRange::New(::google::protobuf::Arena* arena) const {
2784  DescriptorProto_ReservedRange* n = new DescriptorProto_ReservedRange;
2785  if (arena != NULL) {
2786    arena->Own(n);
2787  }
2788  return n;
2789}
2790
2791void DescriptorProto_ReservedRange::Clear() {
2792// @@protoc_insertion_point(message_clear_start:google.protobuf.DescriptorProto.ReservedRange)
2793#if defined(__clang__)
2794#define ZR_HELPER_(f) \
2795  _Pragma("clang diagnostic push") \
2796  _Pragma("clang diagnostic ignored \"-Winvalid-offsetof\"") \
2797  __builtin_offsetof(DescriptorProto_ReservedRange, f) \
2798  _Pragma("clang diagnostic pop")
2799#else
2800#define ZR_HELPER_(f) reinterpret_cast<char*>(\
2801  &reinterpret_cast<DescriptorProto_ReservedRange*>(16)->f)
2802#endif
2803
2804#define ZR_(first, last) do {\
2805  ::memset(&(first), 0,\
2806           ZR_HELPER_(last) - ZR_HELPER_(first) + sizeof(last));\
2807} while (0)
2808
2809  ZR_(start_, end_);
2810
2811#undef ZR_HELPER_
2812#undef ZR_
2813
2814  ::memset(_has_bits_, 0, sizeof(_has_bits_));
2815  if (_internal_metadata_.have_unknown_fields()) {
2816    mutable_unknown_fields()->Clear();
2817  }
2818}
2819
2820bool DescriptorProto_ReservedRange::MergePartialFromCodedStream(
2821    ::google::protobuf::io::CodedInputStream* input) {
2822#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
2823  ::google::protobuf::uint32 tag;
2824  // @@protoc_insertion_point(parse_start:google.protobuf.DescriptorProto.ReservedRange)
2825  for (;;) {
2826    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
2827    tag = p.first;
2828    if (!p.second) goto handle_unusual;
2829    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
2830      // optional int32 start = 1;
2831      case 1: {
2832        if (tag == 8) {
2833          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
2834                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
2835                 input, &start_)));
2836          set_has_start();
2837        } else {
2838          goto handle_unusual;
2839        }
2840        if (input->ExpectTag(16)) goto parse_end;
2841        break;
2842      }
2843
2844      // optional int32 end = 2;
2845      case 2: {
2846        if (tag == 16) {
2847         parse_end:
2848          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
2849                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
2850                 input, &end_)));
2851          set_has_end();
2852        } else {
2853          goto handle_unusual;
2854        }
2855        if (input->ExpectAtEnd()) goto success;
2856        break;
2857      }
2858
2859      default: {
2860      handle_unusual:
2861        if (tag == 0 ||
2862            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
2863            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
2864          goto success;
2865        }
2866        DO_(::google::protobuf::internal::WireFormat::SkipField(
2867              input, tag, mutable_unknown_fields()));
2868        break;
2869      }
2870    }
2871  }
2872success:
2873  // @@protoc_insertion_point(parse_success:google.protobuf.DescriptorProto.ReservedRange)
2874  return true;
2875failure:
2876  // @@protoc_insertion_point(parse_failure:google.protobuf.DescriptorProto.ReservedRange)
2877  return false;
2878#undef DO_
2879}
2880
2881void DescriptorProto_ReservedRange::SerializeWithCachedSizes(
2882    ::google::protobuf::io::CodedOutputStream* output) const {
2883  // @@protoc_insertion_point(serialize_start:google.protobuf.DescriptorProto.ReservedRange)
2884  // optional int32 start = 1;
2885  if (has_start()) {
2886    ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->start(), output);
2887  }
2888
2889  // optional int32 end = 2;
2890  if (has_end()) {
2891    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->end(), output);
2892  }
2893
2894  if (_internal_metadata_.have_unknown_fields()) {
2895    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
2896        unknown_fields(), output);
2897  }
2898  // @@protoc_insertion_point(serialize_end:google.protobuf.DescriptorProto.ReservedRange)
2899}
2900
2901::google::protobuf::uint8* DescriptorProto_ReservedRange::SerializeWithCachedSizesToArray(
2902    ::google::protobuf::uint8* target) const {
2903  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.DescriptorProto.ReservedRange)
2904  // optional int32 start = 1;
2905  if (has_start()) {
2906    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->start(), target);
2907  }
2908
2909  // optional int32 end = 2;
2910  if (has_end()) {
2911    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->end(), target);
2912  }
2913
2914  if (_internal_metadata_.have_unknown_fields()) {
2915    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
2916        unknown_fields(), target);
2917  }
2918  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.DescriptorProto.ReservedRange)
2919  return target;
2920}
2921
2922int DescriptorProto_ReservedRange::ByteSize() const {
2923// @@protoc_insertion_point(message_byte_size_start:google.protobuf.DescriptorProto.ReservedRange)
2924  int total_size = 0;
2925
2926  if (_has_bits_[0 / 32] & 3u) {
2927    // optional int32 start = 1;
2928    if (has_start()) {
2929      total_size += 1 +
2930        ::google::protobuf::internal::WireFormatLite::Int32Size(
2931          this->start());
2932    }
2933
2934    // optional int32 end = 2;
2935    if (has_end()) {
2936      total_size += 1 +
2937        ::google::protobuf::internal::WireFormatLite::Int32Size(
2938          this->end());
2939    }
2940
2941  }
2942  if (_internal_metadata_.have_unknown_fields()) {
2943    total_size +=
2944      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
2945        unknown_fields());
2946  }
2947  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
2948  _cached_size_ = total_size;
2949  GOOGLE_SAFE_CONCURRENT_WRITES_END();
2950  return total_size;
2951}
2952
2953void DescriptorProto_ReservedRange::MergeFrom(const ::google::protobuf::Message& from) {
2954// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.DescriptorProto.ReservedRange)
2955  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
2956  const DescriptorProto_ReservedRange* source =
2957      ::google::protobuf::internal::DynamicCastToGenerated<const DescriptorProto_ReservedRange>(
2958          &from);
2959  if (source == NULL) {
2960  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.DescriptorProto.ReservedRange)
2961    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
2962  } else {
2963  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.DescriptorProto.ReservedRange)
2964    MergeFrom(*source);
2965  }
2966}
2967
2968void DescriptorProto_ReservedRange::MergeFrom(const DescriptorProto_ReservedRange& from) {
2969// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.DescriptorProto.ReservedRange)
2970  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
2971  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
2972    if (from.has_start()) {
2973      set_start(from.start());
2974    }
2975    if (from.has_end()) {
2976      set_end(from.end());
2977    }
2978  }
2979  if (from._internal_metadata_.have_unknown_fields()) {
2980    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
2981  }
2982}
2983
2984void DescriptorProto_ReservedRange::CopyFrom(const ::google::protobuf::Message& from) {
2985// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.DescriptorProto.ReservedRange)
2986  if (&from == this) return;
2987  Clear();
2988  MergeFrom(from);
2989}
2990
2991void DescriptorProto_ReservedRange::CopyFrom(const DescriptorProto_ReservedRange& from) {
2992// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.DescriptorProto.ReservedRange)
2993  if (&from == this) return;
2994  Clear();
2995  MergeFrom(from);
2996}
2997
2998bool DescriptorProto_ReservedRange::IsInitialized() const {
2999
3000  return true;
3001}
3002
3003void DescriptorProto_ReservedRange::Swap(DescriptorProto_ReservedRange* other) {
3004  if (other == this) return;
3005  InternalSwap(other);
3006}
3007void DescriptorProto_ReservedRange::InternalSwap(DescriptorProto_ReservedRange* other) {
3008  std::swap(start_, other->start_);
3009  std::swap(end_, other->end_);
3010  std::swap(_has_bits_[0], other->_has_bits_[0]);
3011  _internal_metadata_.Swap(&other->_internal_metadata_);
3012  std::swap(_cached_size_, other->_cached_size_);
3013}
3014
3015::google::protobuf::Metadata DescriptorProto_ReservedRange::GetMetadata() const {
3016  protobuf_AssignDescriptorsOnce();
3017  ::google::protobuf::Metadata metadata;
3018  metadata.descriptor = DescriptorProto_ReservedRange_descriptor_;
3019  metadata.reflection = DescriptorProto_ReservedRange_reflection_;
3020  return metadata;
3021}
3022
3023
3024// -------------------------------------------------------------------
3025
3026#if !defined(_MSC_VER) || _MSC_VER >= 1900
3027const int DescriptorProto::kNameFieldNumber;
3028const int DescriptorProto::kFieldFieldNumber;
3029const int DescriptorProto::kExtensionFieldNumber;
3030const int DescriptorProto::kNestedTypeFieldNumber;
3031const int DescriptorProto::kEnumTypeFieldNumber;
3032const int DescriptorProto::kExtensionRangeFieldNumber;
3033const int DescriptorProto::kOneofDeclFieldNumber;
3034const int DescriptorProto::kOptionsFieldNumber;
3035const int DescriptorProto::kReservedRangeFieldNumber;
3036const int DescriptorProto::kReservedNameFieldNumber;
3037#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
3038
3039DescriptorProto::DescriptorProto()
3040  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
3041  SharedCtor();
3042  // @@protoc_insertion_point(constructor:google.protobuf.DescriptorProto)
3043}
3044
3045void DescriptorProto::InitAsDefaultInstance() {
3046  options_ = const_cast< ::google::protobuf::MessageOptions*>(&::google::protobuf::MessageOptions::default_instance());
3047}
3048
3049DescriptorProto::DescriptorProto(const DescriptorProto& from)
3050  : ::google::protobuf::Message(),
3051    _internal_metadata_(NULL) {
3052  SharedCtor();
3053  MergeFrom(from);
3054  // @@protoc_insertion_point(copy_constructor:google.protobuf.DescriptorProto)
3055}
3056
3057void DescriptorProto::SharedCtor() {
3058  ::google::protobuf::internal::GetEmptyString();
3059  _cached_size_ = 0;
3060  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
3061  options_ = NULL;
3062  ::memset(_has_bits_, 0, sizeof(_has_bits_));
3063}
3064
3065DescriptorProto::~DescriptorProto() {
3066  // @@protoc_insertion_point(destructor:google.protobuf.DescriptorProto)
3067  SharedDtor();
3068}
3069
3070void DescriptorProto::SharedDtor() {
3071  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
3072  if (this != default_instance_) {
3073    delete options_;
3074  }
3075}
3076
3077void DescriptorProto::SetCachedSize(int size) const {
3078  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
3079  _cached_size_ = size;
3080  GOOGLE_SAFE_CONCURRENT_WRITES_END();
3081}
3082const ::google::protobuf::Descriptor* DescriptorProto::descriptor() {
3083  protobuf_AssignDescriptorsOnce();
3084  return DescriptorProto_descriptor_;
3085}
3086
3087const DescriptorProto& DescriptorProto::default_instance() {
3088  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
3089  return *default_instance_;
3090}
3091
3092DescriptorProto* DescriptorProto::default_instance_ = NULL;
3093
3094DescriptorProto* DescriptorProto::New(::google::protobuf::Arena* arena) const {
3095  DescriptorProto* n = new DescriptorProto;
3096  if (arena != NULL) {
3097    arena->Own(n);
3098  }
3099  return n;
3100}
3101
3102void DescriptorProto::Clear() {
3103// @@protoc_insertion_point(message_clear_start:google.protobuf.DescriptorProto)
3104  if (_has_bits_[0 / 32] & 129u) {
3105    if (has_name()) {
3106      name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
3107    }
3108    if (has_options()) {
3109      if (options_ != NULL) options_->::google::protobuf::MessageOptions::Clear();
3110    }
3111  }
3112  field_.Clear();
3113  extension_.Clear();
3114  nested_type_.Clear();
3115  enum_type_.Clear();
3116  extension_range_.Clear();
3117  oneof_decl_.Clear();
3118  reserved_range_.Clear();
3119  reserved_name_.Clear();
3120  ::memset(_has_bits_, 0, sizeof(_has_bits_));
3121  if (_internal_metadata_.have_unknown_fields()) {
3122    mutable_unknown_fields()->Clear();
3123  }
3124}
3125
3126bool DescriptorProto::MergePartialFromCodedStream(
3127    ::google::protobuf::io::CodedInputStream* input) {
3128#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
3129  ::google::protobuf::uint32 tag;
3130  // @@protoc_insertion_point(parse_start:google.protobuf.DescriptorProto)
3131  for (;;) {
3132    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
3133    tag = p.first;
3134    if (!p.second) goto handle_unusual;
3135    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
3136      // optional string name = 1;
3137      case 1: {
3138        if (tag == 10) {
3139          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
3140                input, this->mutable_name()));
3141          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
3142            this->name().data(), this->name().length(),
3143            ::google::protobuf::internal::WireFormat::PARSE,
3144            "google.protobuf.DescriptorProto.name");
3145        } else {
3146          goto handle_unusual;
3147        }
3148        if (input->ExpectTag(18)) goto parse_field;
3149        break;
3150      }
3151
3152      // repeated .google.protobuf.FieldDescriptorProto field = 2;
3153      case 2: {
3154        if (tag == 18) {
3155         parse_field:
3156          DO_(input->IncrementRecursionDepth());
3157         parse_loop_field:
3158          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
3159                input, add_field()));
3160        } else {
3161          goto handle_unusual;
3162        }
3163        if (input->ExpectTag(18)) goto parse_loop_field;
3164        if (input->ExpectTag(26)) goto parse_loop_nested_type;
3165        input->UnsafeDecrementRecursionDepth();
3166        break;
3167      }
3168
3169      // repeated .google.protobuf.DescriptorProto nested_type = 3;
3170      case 3: {
3171        if (tag == 26) {
3172          DO_(input->IncrementRecursionDepth());
3173         parse_loop_nested_type:
3174          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
3175                input, add_nested_type()));
3176        } else {
3177          goto handle_unusual;
3178        }
3179        if (input->ExpectTag(26)) goto parse_loop_nested_type;
3180        if (input->ExpectTag(34)) goto parse_loop_enum_type;
3181        input->UnsafeDecrementRecursionDepth();
3182        break;
3183      }
3184
3185      // repeated .google.protobuf.EnumDescriptorProto enum_type = 4;
3186      case 4: {
3187        if (tag == 34) {
3188          DO_(input->IncrementRecursionDepth());
3189         parse_loop_enum_type:
3190          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
3191                input, add_enum_type()));
3192        } else {
3193          goto handle_unusual;
3194        }
3195        if (input->ExpectTag(34)) goto parse_loop_enum_type;
3196        if (input->ExpectTag(42)) goto parse_loop_extension_range;
3197        input->UnsafeDecrementRecursionDepth();
3198        break;
3199      }
3200
3201      // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;
3202      case 5: {
3203        if (tag == 42) {
3204          DO_(input->IncrementRecursionDepth());
3205         parse_loop_extension_range:
3206          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
3207                input, add_extension_range()));
3208        } else {
3209          goto handle_unusual;
3210        }
3211        if (input->ExpectTag(42)) goto parse_loop_extension_range;
3212        if (input->ExpectTag(50)) goto parse_loop_extension;
3213        input->UnsafeDecrementRecursionDepth();
3214        break;
3215      }
3216
3217      // repeated .google.protobuf.FieldDescriptorProto extension = 6;
3218      case 6: {
3219        if (tag == 50) {
3220          DO_(input->IncrementRecursionDepth());
3221         parse_loop_extension:
3222          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
3223                input, add_extension()));
3224        } else {
3225          goto handle_unusual;
3226        }
3227        if (input->ExpectTag(50)) goto parse_loop_extension;
3228        input->UnsafeDecrementRecursionDepth();
3229        if (input->ExpectTag(58)) goto parse_options;
3230        break;
3231      }
3232
3233      // optional .google.protobuf.MessageOptions options = 7;
3234      case 7: {
3235        if (tag == 58) {
3236         parse_options:
3237          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
3238               input, mutable_options()));
3239        } else {
3240          goto handle_unusual;
3241        }
3242        if (input->ExpectTag(66)) goto parse_oneof_decl;
3243        break;
3244      }
3245
3246      // repeated .google.protobuf.OneofDescriptorProto oneof_decl = 8;
3247      case 8: {
3248        if (tag == 66) {
3249         parse_oneof_decl:
3250          DO_(input->IncrementRecursionDepth());
3251         parse_loop_oneof_decl:
3252          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
3253                input, add_oneof_decl()));
3254        } else {
3255          goto handle_unusual;
3256        }
3257        if (input->ExpectTag(66)) goto parse_loop_oneof_decl;
3258        if (input->ExpectTag(74)) goto parse_loop_reserved_range;
3259        input->UnsafeDecrementRecursionDepth();
3260        break;
3261      }
3262
3263      // repeated .google.protobuf.DescriptorProto.ReservedRange reserved_range = 9;
3264      case 9: {
3265        if (tag == 74) {
3266          DO_(input->IncrementRecursionDepth());
3267         parse_loop_reserved_range:
3268          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
3269                input, add_reserved_range()));
3270        } else {
3271          goto handle_unusual;
3272        }
3273        if (input->ExpectTag(74)) goto parse_loop_reserved_range;
3274        input->UnsafeDecrementRecursionDepth();
3275        if (input->ExpectTag(82)) goto parse_reserved_name;
3276        break;
3277      }
3278
3279      // repeated string reserved_name = 10;
3280      case 10: {
3281        if (tag == 82) {
3282         parse_reserved_name:
3283          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
3284                input, this->add_reserved_name()));
3285          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
3286            this->reserved_name(this->reserved_name_size() - 1).data(),
3287            this->reserved_name(this->reserved_name_size() - 1).length(),
3288            ::google::protobuf::internal::WireFormat::PARSE,
3289            "google.protobuf.DescriptorProto.reserved_name");
3290        } else {
3291          goto handle_unusual;
3292        }
3293        if (input->ExpectTag(82)) goto parse_reserved_name;
3294        if (input->ExpectAtEnd()) goto success;
3295        break;
3296      }
3297
3298      default: {
3299      handle_unusual:
3300        if (tag == 0 ||
3301            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
3302            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
3303          goto success;
3304        }
3305        DO_(::google::protobuf::internal::WireFormat::SkipField(
3306              input, tag, mutable_unknown_fields()));
3307        break;
3308      }
3309    }
3310  }
3311success:
3312  // @@protoc_insertion_point(parse_success:google.protobuf.DescriptorProto)
3313  return true;
3314failure:
3315  // @@protoc_insertion_point(parse_failure:google.protobuf.DescriptorProto)
3316  return false;
3317#undef DO_
3318}
3319
3320void DescriptorProto::SerializeWithCachedSizes(
3321    ::google::protobuf::io::CodedOutputStream* output) const {
3322  // @@protoc_insertion_point(serialize_start:google.protobuf.DescriptorProto)
3323  // optional string name = 1;
3324  if (has_name()) {
3325    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
3326      this->name().data(), this->name().length(),
3327      ::google::protobuf::internal::WireFormat::SERIALIZE,
3328      "google.protobuf.DescriptorProto.name");
3329    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
3330      1, this->name(), output);
3331  }
3332
3333  // repeated .google.protobuf.FieldDescriptorProto field = 2;
3334  for (unsigned int i = 0, n = this->field_size(); i < n; i++) {
3335    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
3336      2, this->field(i), output);
3337  }
3338
3339  // repeated .google.protobuf.DescriptorProto nested_type = 3;
3340  for (unsigned int i = 0, n = this->nested_type_size(); i < n; i++) {
3341    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
3342      3, this->nested_type(i), output);
3343  }
3344
3345  // repeated .google.protobuf.EnumDescriptorProto enum_type = 4;
3346  for (unsigned int i = 0, n = this->enum_type_size(); i < n; i++) {
3347    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
3348      4, this->enum_type(i), output);
3349  }
3350
3351  // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;
3352  for (unsigned int i = 0, n = this->extension_range_size(); i < n; i++) {
3353    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
3354      5, this->extension_range(i), output);
3355  }
3356
3357  // repeated .google.protobuf.FieldDescriptorProto extension = 6;
3358  for (unsigned int i = 0, n = this->extension_size(); i < n; i++) {
3359    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
3360      6, this->extension(i), output);
3361  }
3362
3363  // optional .google.protobuf.MessageOptions options = 7;
3364  if (has_options()) {
3365    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
3366      7, *this->options_, output);
3367  }
3368
3369  // repeated .google.protobuf.OneofDescriptorProto oneof_decl = 8;
3370  for (unsigned int i = 0, n = this->oneof_decl_size(); i < n; i++) {
3371    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
3372      8, this->oneof_decl(i), output);
3373  }
3374
3375  // repeated .google.protobuf.DescriptorProto.ReservedRange reserved_range = 9;
3376  for (unsigned int i = 0, n = this->reserved_range_size(); i < n; i++) {
3377    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
3378      9, this->reserved_range(i), output);
3379  }
3380
3381  // repeated string reserved_name = 10;
3382  for (int i = 0; i < this->reserved_name_size(); i++) {
3383    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
3384      this->reserved_name(i).data(), this->reserved_name(i).length(),
3385      ::google::protobuf::internal::WireFormat::SERIALIZE,
3386      "google.protobuf.DescriptorProto.reserved_name");
3387    ::google::protobuf::internal::WireFormatLite::WriteString(
3388      10, this->reserved_name(i), output);
3389  }
3390
3391  if (_internal_metadata_.have_unknown_fields()) {
3392    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
3393        unknown_fields(), output);
3394  }
3395  // @@protoc_insertion_point(serialize_end:google.protobuf.DescriptorProto)
3396}
3397
3398::google::protobuf::uint8* DescriptorProto::SerializeWithCachedSizesToArray(
3399    ::google::protobuf::uint8* target) const {
3400  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.DescriptorProto)
3401  // optional string name = 1;
3402  if (has_name()) {
3403    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
3404      this->name().data(), this->name().length(),
3405      ::google::protobuf::internal::WireFormat::SERIALIZE,
3406      "google.protobuf.DescriptorProto.name");
3407    target =
3408      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
3409        1, this->name(), target);
3410  }
3411
3412  // repeated .google.protobuf.FieldDescriptorProto field = 2;
3413  for (unsigned int i = 0, n = this->field_size(); i < n; i++) {
3414    target = ::google::protobuf::internal::WireFormatLite::
3415      WriteMessageNoVirtualToArray(
3416        2, this->field(i), target);
3417  }
3418
3419  // repeated .google.protobuf.DescriptorProto nested_type = 3;
3420  for (unsigned int i = 0, n = this->nested_type_size(); i < n; i++) {
3421    target = ::google::protobuf::internal::WireFormatLite::
3422      WriteMessageNoVirtualToArray(
3423        3, this->nested_type(i), target);
3424  }
3425
3426  // repeated .google.protobuf.EnumDescriptorProto enum_type = 4;
3427  for (unsigned int i = 0, n = this->enum_type_size(); i < n; i++) {
3428    target = ::google::protobuf::internal::WireFormatLite::
3429      WriteMessageNoVirtualToArray(
3430        4, this->enum_type(i), target);
3431  }
3432
3433  // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;
3434  for (unsigned int i = 0, n = this->extension_range_size(); i < n; i++) {
3435    target = ::google::protobuf::internal::WireFormatLite::
3436      WriteMessageNoVirtualToArray(
3437        5, this->extension_range(i), target);
3438  }
3439
3440  // repeated .google.protobuf.FieldDescriptorProto extension = 6;
3441  for (unsigned int i = 0, n = this->extension_size(); i < n; i++) {
3442    target = ::google::protobuf::internal::WireFormatLite::
3443      WriteMessageNoVirtualToArray(
3444        6, this->extension(i), target);
3445  }
3446
3447  // optional .google.protobuf.MessageOptions options = 7;
3448  if (has_options()) {
3449    target = ::google::protobuf::internal::WireFormatLite::
3450      WriteMessageNoVirtualToArray(
3451        7, *this->options_, target);
3452  }
3453
3454  // repeated .google.protobuf.OneofDescriptorProto oneof_decl = 8;
3455  for (unsigned int i = 0, n = this->oneof_decl_size(); i < n; i++) {
3456    target = ::google::protobuf::internal::WireFormatLite::
3457      WriteMessageNoVirtualToArray(
3458        8, this->oneof_decl(i), target);
3459  }
3460
3461  // repeated .google.protobuf.DescriptorProto.ReservedRange reserved_range = 9;
3462  for (unsigned int i = 0, n = this->reserved_range_size(); i < n; i++) {
3463    target = ::google::protobuf::internal::WireFormatLite::
3464      WriteMessageNoVirtualToArray(
3465        9, this->reserved_range(i), target);
3466  }
3467
3468  // repeated string reserved_name = 10;
3469  for (int i = 0; i < this->reserved_name_size(); i++) {
3470    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
3471      this->reserved_name(i).data(), this->reserved_name(i).length(),
3472      ::google::protobuf::internal::WireFormat::SERIALIZE,
3473      "google.protobuf.DescriptorProto.reserved_name");
3474    target = ::google::protobuf::internal::WireFormatLite::
3475      WriteStringToArray(10, this->reserved_name(i), target);
3476  }
3477
3478  if (_internal_metadata_.have_unknown_fields()) {
3479    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
3480        unknown_fields(), target);
3481  }
3482  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.DescriptorProto)
3483  return target;
3484}
3485
3486int DescriptorProto::ByteSize() const {
3487// @@protoc_insertion_point(message_byte_size_start:google.protobuf.DescriptorProto)
3488  int total_size = 0;
3489
3490  if (_has_bits_[0 / 32] & 129u) {
3491    // optional string name = 1;
3492    if (has_name()) {
3493      total_size += 1 +
3494        ::google::protobuf::internal::WireFormatLite::StringSize(
3495          this->name());
3496    }
3497
3498    // optional .google.protobuf.MessageOptions options = 7;
3499    if (has_options()) {
3500      total_size += 1 +
3501        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3502          *this->options_);
3503    }
3504
3505  }
3506  // repeated .google.protobuf.FieldDescriptorProto field = 2;
3507  total_size += 1 * this->field_size();
3508  for (int i = 0; i < this->field_size(); i++) {
3509    total_size +=
3510      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3511        this->field(i));
3512  }
3513
3514  // repeated .google.protobuf.FieldDescriptorProto extension = 6;
3515  total_size += 1 * this->extension_size();
3516  for (int i = 0; i < this->extension_size(); i++) {
3517    total_size +=
3518      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3519        this->extension(i));
3520  }
3521
3522  // repeated .google.protobuf.DescriptorProto nested_type = 3;
3523  total_size += 1 * this->nested_type_size();
3524  for (int i = 0; i < this->nested_type_size(); i++) {
3525    total_size +=
3526      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3527        this->nested_type(i));
3528  }
3529
3530  // repeated .google.protobuf.EnumDescriptorProto enum_type = 4;
3531  total_size += 1 * this->enum_type_size();
3532  for (int i = 0; i < this->enum_type_size(); i++) {
3533    total_size +=
3534      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3535        this->enum_type(i));
3536  }
3537
3538  // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;
3539  total_size += 1 * this->extension_range_size();
3540  for (int i = 0; i < this->extension_range_size(); i++) {
3541    total_size +=
3542      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3543        this->extension_range(i));
3544  }
3545
3546  // repeated .google.protobuf.OneofDescriptorProto oneof_decl = 8;
3547  total_size += 1 * this->oneof_decl_size();
3548  for (int i = 0; i < this->oneof_decl_size(); i++) {
3549    total_size +=
3550      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3551        this->oneof_decl(i));
3552  }
3553
3554  // repeated .google.protobuf.DescriptorProto.ReservedRange reserved_range = 9;
3555  total_size += 1 * this->reserved_range_size();
3556  for (int i = 0; i < this->reserved_range_size(); i++) {
3557    total_size +=
3558      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
3559        this->reserved_range(i));
3560  }
3561
3562  // repeated string reserved_name = 10;
3563  total_size += 1 * this->reserved_name_size();
3564  for (int i = 0; i < this->reserved_name_size(); i++) {
3565    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
3566      this->reserved_name(i));
3567  }
3568
3569  if (_internal_metadata_.have_unknown_fields()) {
3570    total_size +=
3571      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
3572        unknown_fields());
3573  }
3574  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
3575  _cached_size_ = total_size;
3576  GOOGLE_SAFE_CONCURRENT_WRITES_END();
3577  return total_size;
3578}
3579
3580void DescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
3581// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.DescriptorProto)
3582  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
3583  const DescriptorProto* source =
3584      ::google::protobuf::internal::DynamicCastToGenerated<const DescriptorProto>(
3585          &from);
3586  if (source == NULL) {
3587  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.DescriptorProto)
3588    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
3589  } else {
3590  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.DescriptorProto)
3591    MergeFrom(*source);
3592  }
3593}
3594
3595void DescriptorProto::MergeFrom(const DescriptorProto& from) {
3596// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.DescriptorProto)
3597  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
3598  field_.MergeFrom(from.field_);
3599  extension_.MergeFrom(from.extension_);
3600  nested_type_.MergeFrom(from.nested_type_);
3601  enum_type_.MergeFrom(from.enum_type_);
3602  extension_range_.MergeFrom(from.extension_range_);
3603  oneof_decl_.MergeFrom(from.oneof_decl_);
3604  reserved_range_.MergeFrom(from.reserved_range_);
3605  reserved_name_.MergeFrom(from.reserved_name_);
3606  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
3607    if (from.has_name()) {
3608      set_has_name();
3609      name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
3610    }
3611    if (from.has_options()) {
3612      mutable_options()->::google::protobuf::MessageOptions::MergeFrom(from.options());
3613    }
3614  }
3615  if (from._internal_metadata_.have_unknown_fields()) {
3616    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
3617  }
3618}
3619
3620void DescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
3621// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.DescriptorProto)
3622  if (&from == this) return;
3623  Clear();
3624  MergeFrom(from);
3625}
3626
3627void DescriptorProto::CopyFrom(const DescriptorProto& from) {
3628// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.DescriptorProto)
3629  if (&from == this) return;
3630  Clear();
3631  MergeFrom(from);
3632}
3633
3634bool DescriptorProto::IsInitialized() const {
3635
3636  if (!::google::protobuf::internal::AllAreInitialized(this->field())) return false;
3637  if (!::google::protobuf::internal::AllAreInitialized(this->extension())) return false;
3638  if (!::google::protobuf::internal::AllAreInitialized(this->nested_type())) return false;
3639  if (!::google::protobuf::internal::AllAreInitialized(this->enum_type())) return false;
3640  if (has_options()) {
3641    if (!this->options_->IsInitialized()) return false;
3642  }
3643  return true;
3644}
3645
3646void DescriptorProto::Swap(DescriptorProto* other) {
3647  if (other == this) return;
3648  InternalSwap(other);
3649}
3650void DescriptorProto::InternalSwap(DescriptorProto* other) {
3651  name_.Swap(&other->name_);
3652  field_.UnsafeArenaSwap(&other->field_);
3653  extension_.UnsafeArenaSwap(&other->extension_);
3654  nested_type_.UnsafeArenaSwap(&other->nested_type_);
3655  enum_type_.UnsafeArenaSwap(&other->enum_type_);
3656  extension_range_.UnsafeArenaSwap(&other->extension_range_);
3657  oneof_decl_.UnsafeArenaSwap(&other->oneof_decl_);
3658  std::swap(options_, other->options_);
3659  reserved_range_.UnsafeArenaSwap(&other->reserved_range_);
3660  reserved_name_.UnsafeArenaSwap(&other->reserved_name_);
3661  std::swap(_has_bits_[0], other->_has_bits_[0]);
3662  _internal_metadata_.Swap(&other->_internal_metadata_);
3663  std::swap(_cached_size_, other->_cached_size_);
3664}
3665
3666::google::protobuf::Metadata DescriptorProto::GetMetadata() const {
3667  protobuf_AssignDescriptorsOnce();
3668  ::google::protobuf::Metadata metadata;
3669  metadata.descriptor = DescriptorProto_descriptor_;
3670  metadata.reflection = DescriptorProto_reflection_;
3671  return metadata;
3672}
3673
3674#if PROTOBUF_INLINE_NOT_IN_HEADERS
3675// DescriptorProto_ExtensionRange
3676
3677// optional int32 start = 1;
3678bool DescriptorProto_ExtensionRange::has_start() const {
3679  return (_has_bits_[0] & 0x00000001u) != 0;
3680}
3681void DescriptorProto_ExtensionRange::set_has_start() {
3682  _has_bits_[0] |= 0x00000001u;
3683}
3684void DescriptorProto_ExtensionRange::clear_has_start() {
3685  _has_bits_[0] &= ~0x00000001u;
3686}
3687void DescriptorProto_ExtensionRange::clear_start() {
3688  start_ = 0;
3689  clear_has_start();
3690}
3691 ::google::protobuf::int32 DescriptorProto_ExtensionRange::start() const {
3692  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.ExtensionRange.start)
3693  return start_;
3694}
3695 void DescriptorProto_ExtensionRange::set_start(::google::protobuf::int32 value) {
3696  set_has_start();
3697  start_ = value;
3698  // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.ExtensionRange.start)
3699}
3700
3701// optional int32 end = 2;
3702bool DescriptorProto_ExtensionRange::has_end() const {
3703  return (_has_bits_[0] & 0x00000002u) != 0;
3704}
3705void DescriptorProto_ExtensionRange::set_has_end() {
3706  _has_bits_[0] |= 0x00000002u;
3707}
3708void DescriptorProto_ExtensionRange::clear_has_end() {
3709  _has_bits_[0] &= ~0x00000002u;
3710}
3711void DescriptorProto_ExtensionRange::clear_end() {
3712  end_ = 0;
3713  clear_has_end();
3714}
3715 ::google::protobuf::int32 DescriptorProto_ExtensionRange::end() const {
3716  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.ExtensionRange.end)
3717  return end_;
3718}
3719 void DescriptorProto_ExtensionRange::set_end(::google::protobuf::int32 value) {
3720  set_has_end();
3721  end_ = value;
3722  // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.ExtensionRange.end)
3723}
3724
3725// -------------------------------------------------------------------
3726
3727// DescriptorProto_ReservedRange
3728
3729// optional int32 start = 1;
3730bool DescriptorProto_ReservedRange::has_start() const {
3731  return (_has_bits_[0] & 0x00000001u) != 0;
3732}
3733void DescriptorProto_ReservedRange::set_has_start() {
3734  _has_bits_[0] |= 0x00000001u;
3735}
3736void DescriptorProto_ReservedRange::clear_has_start() {
3737  _has_bits_[0] &= ~0x00000001u;
3738}
3739void DescriptorProto_ReservedRange::clear_start() {
3740  start_ = 0;
3741  clear_has_start();
3742}
3743 ::google::protobuf::int32 DescriptorProto_ReservedRange::start() const {
3744  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.ReservedRange.start)
3745  return start_;
3746}
3747 void DescriptorProto_ReservedRange::set_start(::google::protobuf::int32 value) {
3748  set_has_start();
3749  start_ = value;
3750  // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.ReservedRange.start)
3751}
3752
3753// optional int32 end = 2;
3754bool DescriptorProto_ReservedRange::has_end() const {
3755  return (_has_bits_[0] & 0x00000002u) != 0;
3756}
3757void DescriptorProto_ReservedRange::set_has_end() {
3758  _has_bits_[0] |= 0x00000002u;
3759}
3760void DescriptorProto_ReservedRange::clear_has_end() {
3761  _has_bits_[0] &= ~0x00000002u;
3762}
3763void DescriptorProto_ReservedRange::clear_end() {
3764  end_ = 0;
3765  clear_has_end();
3766}
3767 ::google::protobuf::int32 DescriptorProto_ReservedRange::end() const {
3768  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.ReservedRange.end)
3769  return end_;
3770}
3771 void DescriptorProto_ReservedRange::set_end(::google::protobuf::int32 value) {
3772  set_has_end();
3773  end_ = value;
3774  // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.ReservedRange.end)
3775}
3776
3777// -------------------------------------------------------------------
3778
3779// DescriptorProto
3780
3781// optional string name = 1;
3782bool DescriptorProto::has_name() const {
3783  return (_has_bits_[0] & 0x00000001u) != 0;
3784}
3785void DescriptorProto::set_has_name() {
3786  _has_bits_[0] |= 0x00000001u;
3787}
3788void DescriptorProto::clear_has_name() {
3789  _has_bits_[0] &= ~0x00000001u;
3790}
3791void DescriptorProto::clear_name() {
3792  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
3793  clear_has_name();
3794}
3795 const ::std::string& DescriptorProto::name() const {
3796  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.name)
3797  return name_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
3798}
3799 void DescriptorProto::set_name(const ::std::string& value) {
3800  set_has_name();
3801  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
3802  // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.name)
3803}
3804 void DescriptorProto::set_name(const char* value) {
3805  set_has_name();
3806  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
3807  // @@protoc_insertion_point(field_set_char:google.protobuf.DescriptorProto.name)
3808}
3809 void DescriptorProto::set_name(const char* value, size_t size) {
3810  set_has_name();
3811  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
3812      ::std::string(reinterpret_cast<const char*>(value), size));
3813  // @@protoc_insertion_point(field_set_pointer:google.protobuf.DescriptorProto.name)
3814}
3815 ::std::string* DescriptorProto::mutable_name() {
3816  set_has_name();
3817  // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.name)
3818  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
3819}
3820 ::std::string* DescriptorProto::release_name() {
3821  // @@protoc_insertion_point(field_release:google.protobuf.DescriptorProto.name)
3822  clear_has_name();
3823  return name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
3824}
3825 void DescriptorProto::set_allocated_name(::std::string* name) {
3826  if (name != NULL) {
3827    set_has_name();
3828  } else {
3829    clear_has_name();
3830  }
3831  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
3832  // @@protoc_insertion_point(field_set_allocated:google.protobuf.DescriptorProto.name)
3833}
3834
3835// repeated .google.protobuf.FieldDescriptorProto field = 2;
3836int DescriptorProto::field_size() const {
3837  return field_.size();
3838}
3839void DescriptorProto::clear_field() {
3840  field_.Clear();
3841}
3842const ::google::protobuf::FieldDescriptorProto& DescriptorProto::field(int index) const {
3843  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.field)
3844  return field_.Get(index);
3845}
3846::google::protobuf::FieldDescriptorProto* DescriptorProto::mutable_field(int index) {
3847  // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.field)
3848  return field_.Mutable(index);
3849}
3850::google::protobuf::FieldDescriptorProto* DescriptorProto::add_field() {
3851  // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.field)
3852  return field_.Add();
3853}
3854::google::protobuf::RepeatedPtrField< ::google::protobuf::FieldDescriptorProto >*
3855DescriptorProto::mutable_field() {
3856  // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.field)
3857  return &field_;
3858}
3859const ::google::protobuf::RepeatedPtrField< ::google::protobuf::FieldDescriptorProto >&
3860DescriptorProto::field() const {
3861  // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.field)
3862  return field_;
3863}
3864
3865// repeated .google.protobuf.FieldDescriptorProto extension = 6;
3866int DescriptorProto::extension_size() const {
3867  return extension_.size();
3868}
3869void DescriptorProto::clear_extension() {
3870  extension_.Clear();
3871}
3872const ::google::protobuf::FieldDescriptorProto& DescriptorProto::extension(int index) const {
3873  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.extension)
3874  return extension_.Get(index);
3875}
3876::google::protobuf::FieldDescriptorProto* DescriptorProto::mutable_extension(int index) {
3877  // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.extension)
3878  return extension_.Mutable(index);
3879}
3880::google::protobuf::FieldDescriptorProto* DescriptorProto::add_extension() {
3881  // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.extension)
3882  return extension_.Add();
3883}
3884::google::protobuf::RepeatedPtrField< ::google::protobuf::FieldDescriptorProto >*
3885DescriptorProto::mutable_extension() {
3886  // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.extension)
3887  return &extension_;
3888}
3889const ::google::protobuf::RepeatedPtrField< ::google::protobuf::FieldDescriptorProto >&
3890DescriptorProto::extension() const {
3891  // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.extension)
3892  return extension_;
3893}
3894
3895// repeated .google.protobuf.DescriptorProto nested_type = 3;
3896int DescriptorProto::nested_type_size() const {
3897  return nested_type_.size();
3898}
3899void DescriptorProto::clear_nested_type() {
3900  nested_type_.Clear();
3901}
3902const ::google::protobuf::DescriptorProto& DescriptorProto::nested_type(int index) const {
3903  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.nested_type)
3904  return nested_type_.Get(index);
3905}
3906::google::protobuf::DescriptorProto* DescriptorProto::mutable_nested_type(int index) {
3907  // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.nested_type)
3908  return nested_type_.Mutable(index);
3909}
3910::google::protobuf::DescriptorProto* DescriptorProto::add_nested_type() {
3911  // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.nested_type)
3912  return nested_type_.Add();
3913}
3914::google::protobuf::RepeatedPtrField< ::google::protobuf::DescriptorProto >*
3915DescriptorProto::mutable_nested_type() {
3916  // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.nested_type)
3917  return &nested_type_;
3918}
3919const ::google::protobuf::RepeatedPtrField< ::google::protobuf::DescriptorProto >&
3920DescriptorProto::nested_type() const {
3921  // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.nested_type)
3922  return nested_type_;
3923}
3924
3925// repeated .google.protobuf.EnumDescriptorProto enum_type = 4;
3926int DescriptorProto::enum_type_size() const {
3927  return enum_type_.size();
3928}
3929void DescriptorProto::clear_enum_type() {
3930  enum_type_.Clear();
3931}
3932const ::google::protobuf::EnumDescriptorProto& DescriptorProto::enum_type(int index) const {
3933  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.enum_type)
3934  return enum_type_.Get(index);
3935}
3936::google::protobuf::EnumDescriptorProto* DescriptorProto::mutable_enum_type(int index) {
3937  // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.enum_type)
3938  return enum_type_.Mutable(index);
3939}
3940::google::protobuf::EnumDescriptorProto* DescriptorProto::add_enum_type() {
3941  // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.enum_type)
3942  return enum_type_.Add();
3943}
3944::google::protobuf::RepeatedPtrField< ::google::protobuf::EnumDescriptorProto >*
3945DescriptorProto::mutable_enum_type() {
3946  // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.enum_type)
3947  return &enum_type_;
3948}
3949const ::google::protobuf::RepeatedPtrField< ::google::protobuf::EnumDescriptorProto >&
3950DescriptorProto::enum_type() const {
3951  // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.enum_type)
3952  return enum_type_;
3953}
3954
3955// repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;
3956int DescriptorProto::extension_range_size() const {
3957  return extension_range_.size();
3958}
3959void DescriptorProto::clear_extension_range() {
3960  extension_range_.Clear();
3961}
3962const ::google::protobuf::DescriptorProto_ExtensionRange& DescriptorProto::extension_range(int index) const {
3963  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.extension_range)
3964  return extension_range_.Get(index);
3965}
3966::google::protobuf::DescriptorProto_ExtensionRange* DescriptorProto::mutable_extension_range(int index) {
3967  // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.extension_range)
3968  return extension_range_.Mutable(index);
3969}
3970::google::protobuf::DescriptorProto_ExtensionRange* DescriptorProto::add_extension_range() {
3971  // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.extension_range)
3972  return extension_range_.Add();
3973}
3974::google::protobuf::RepeatedPtrField< ::google::protobuf::DescriptorProto_ExtensionRange >*
3975DescriptorProto::mutable_extension_range() {
3976  // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.extension_range)
3977  return &extension_range_;
3978}
3979const ::google::protobuf::RepeatedPtrField< ::google::protobuf::DescriptorProto_ExtensionRange >&
3980DescriptorProto::extension_range() const {
3981  // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.extension_range)
3982  return extension_range_;
3983}
3984
3985// repeated .google.protobuf.OneofDescriptorProto oneof_decl = 8;
3986int DescriptorProto::oneof_decl_size() const {
3987  return oneof_decl_.size();
3988}
3989void DescriptorProto::clear_oneof_decl() {
3990  oneof_decl_.Clear();
3991}
3992const ::google::protobuf::OneofDescriptorProto& DescriptorProto::oneof_decl(int index) const {
3993  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.oneof_decl)
3994  return oneof_decl_.Get(index);
3995}
3996::google::protobuf::OneofDescriptorProto* DescriptorProto::mutable_oneof_decl(int index) {
3997  // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.oneof_decl)
3998  return oneof_decl_.Mutable(index);
3999}
4000::google::protobuf::OneofDescriptorProto* DescriptorProto::add_oneof_decl() {
4001  // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.oneof_decl)
4002  return oneof_decl_.Add();
4003}
4004::google::protobuf::RepeatedPtrField< ::google::protobuf::OneofDescriptorProto >*
4005DescriptorProto::mutable_oneof_decl() {
4006  // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.oneof_decl)
4007  return &oneof_decl_;
4008}
4009const ::google::protobuf::RepeatedPtrField< ::google::protobuf::OneofDescriptorProto >&
4010DescriptorProto::oneof_decl() const {
4011  // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.oneof_decl)
4012  return oneof_decl_;
4013}
4014
4015// optional .google.protobuf.MessageOptions options = 7;
4016bool DescriptorProto::has_options() const {
4017  return (_has_bits_[0] & 0x00000080u) != 0;
4018}
4019void DescriptorProto::set_has_options() {
4020  _has_bits_[0] |= 0x00000080u;
4021}
4022void DescriptorProto::clear_has_options() {
4023  _has_bits_[0] &= ~0x00000080u;
4024}
4025void DescriptorProto::clear_options() {
4026  if (options_ != NULL) options_->::google::protobuf::MessageOptions::Clear();
4027  clear_has_options();
4028}
4029const ::google::protobuf::MessageOptions& DescriptorProto::options() const {
4030  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.options)
4031  return options_ != NULL ? *options_ : *default_instance_->options_;
4032}
4033::google::protobuf::MessageOptions* DescriptorProto::mutable_options() {
4034  set_has_options();
4035  if (options_ == NULL) {
4036    options_ = new ::google::protobuf::MessageOptions;
4037  }
4038  // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.options)
4039  return options_;
4040}
4041::google::protobuf::MessageOptions* DescriptorProto::release_options() {
4042  // @@protoc_insertion_point(field_release:google.protobuf.DescriptorProto.options)
4043  clear_has_options();
4044  ::google::protobuf::MessageOptions* temp = options_;
4045  options_ = NULL;
4046  return temp;
4047}
4048void DescriptorProto::set_allocated_options(::google::protobuf::MessageOptions* options) {
4049  delete options_;
4050  options_ = options;
4051  if (options) {
4052    set_has_options();
4053  } else {
4054    clear_has_options();
4055  }
4056  // @@protoc_insertion_point(field_set_allocated:google.protobuf.DescriptorProto.options)
4057}
4058
4059// repeated .google.protobuf.DescriptorProto.ReservedRange reserved_range = 9;
4060int DescriptorProto::reserved_range_size() const {
4061  return reserved_range_.size();
4062}
4063void DescriptorProto::clear_reserved_range() {
4064  reserved_range_.Clear();
4065}
4066const ::google::protobuf::DescriptorProto_ReservedRange& DescriptorProto::reserved_range(int index) const {
4067  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.reserved_range)
4068  return reserved_range_.Get(index);
4069}
4070::google::protobuf::DescriptorProto_ReservedRange* DescriptorProto::mutable_reserved_range(int index) {
4071  // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.reserved_range)
4072  return reserved_range_.Mutable(index);
4073}
4074::google::protobuf::DescriptorProto_ReservedRange* DescriptorProto::add_reserved_range() {
4075  // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.reserved_range)
4076  return reserved_range_.Add();
4077}
4078::google::protobuf::RepeatedPtrField< ::google::protobuf::DescriptorProto_ReservedRange >*
4079DescriptorProto::mutable_reserved_range() {
4080  // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.reserved_range)
4081  return &reserved_range_;
4082}
4083const ::google::protobuf::RepeatedPtrField< ::google::protobuf::DescriptorProto_ReservedRange >&
4084DescriptorProto::reserved_range() const {
4085  // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.reserved_range)
4086  return reserved_range_;
4087}
4088
4089// repeated string reserved_name = 10;
4090int DescriptorProto::reserved_name_size() const {
4091  return reserved_name_.size();
4092}
4093void DescriptorProto::clear_reserved_name() {
4094  reserved_name_.Clear();
4095}
4096 const ::std::string& DescriptorProto::reserved_name(int index) const {
4097  // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.reserved_name)
4098  return reserved_name_.Get(index);
4099}
4100 ::std::string* DescriptorProto::mutable_reserved_name(int index) {
4101  // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.reserved_name)
4102  return reserved_name_.Mutable(index);
4103}
4104 void DescriptorProto::set_reserved_name(int index, const ::std::string& value) {
4105  // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.reserved_name)
4106  reserved_name_.Mutable(index)->assign(value);
4107}
4108 void DescriptorProto::set_reserved_name(int index, const char* value) {
4109  reserved_name_.Mutable(index)->assign(value);
4110  // @@protoc_insertion_point(field_set_char:google.protobuf.DescriptorProto.reserved_name)
4111}
4112 void DescriptorProto::set_reserved_name(int index, const char* value, size_t size) {
4113  reserved_name_.Mutable(index)->assign(
4114    reinterpret_cast<const char*>(value), size);
4115  // @@protoc_insertion_point(field_set_pointer:google.protobuf.DescriptorProto.reserved_name)
4116}
4117 ::std::string* DescriptorProto::add_reserved_name() {
4118  // @@protoc_insertion_point(field_add_mutable:google.protobuf.DescriptorProto.reserved_name)
4119  return reserved_name_.Add();
4120}
4121 void DescriptorProto::add_reserved_name(const ::std::string& value) {
4122  reserved_name_.Add()->assign(value);
4123  // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.reserved_name)
4124}
4125 void DescriptorProto::add_reserved_name(const char* value) {
4126  reserved_name_.Add()->assign(value);
4127  // @@protoc_insertion_point(field_add_char:google.protobuf.DescriptorProto.reserved_name)
4128}
4129 void DescriptorProto::add_reserved_name(const char* value, size_t size) {
4130  reserved_name_.Add()->assign(reinterpret_cast<const char*>(value), size);
4131  // @@protoc_insertion_point(field_add_pointer:google.protobuf.DescriptorProto.reserved_name)
4132}
4133 const ::google::protobuf::RepeatedPtrField< ::std::string>&
4134DescriptorProto::reserved_name() const {
4135  // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.reserved_name)
4136  return reserved_name_;
4137}
4138 ::google::protobuf::RepeatedPtrField< ::std::string>*
4139DescriptorProto::mutable_reserved_name() {
4140  // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.reserved_name)
4141  return &reserved_name_;
4142}
4143
4144#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
4145
4146// ===================================================================
4147
4148const ::google::protobuf::EnumDescriptor* FieldDescriptorProto_Type_descriptor() {
4149  protobuf_AssignDescriptorsOnce();
4150  return FieldDescriptorProto_Type_descriptor_;
4151}
4152bool FieldDescriptorProto_Type_IsValid(int value) {
4153  switch(value) {
4154    case 1:
4155    case 2:
4156    case 3:
4157    case 4:
4158    case 5:
4159    case 6:
4160    case 7:
4161    case 8:
4162    case 9:
4163    case 10:
4164    case 11:
4165    case 12:
4166    case 13:
4167    case 14:
4168    case 15:
4169    case 16:
4170    case 17:
4171    case 18:
4172      return true;
4173    default:
4174      return false;
4175  }
4176}
4177
4178#if !defined(_MSC_VER) || _MSC_VER >= 1900
4179const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_DOUBLE;
4180const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_FLOAT;
4181const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_INT64;
4182const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_UINT64;
4183const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_INT32;
4184const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_FIXED64;
4185const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_FIXED32;
4186const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_BOOL;
4187const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_STRING;
4188const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_GROUP;
4189const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_MESSAGE;
4190const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_BYTES;
4191const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_UINT32;
4192const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_ENUM;
4193const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_SFIXED32;
4194const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_SFIXED64;
4195const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_SINT32;
4196const FieldDescriptorProto_Type FieldDescriptorProto::TYPE_SINT64;
4197const FieldDescriptorProto_Type FieldDescriptorProto::Type_MIN;
4198const FieldDescriptorProto_Type FieldDescriptorProto::Type_MAX;
4199const int FieldDescriptorProto::Type_ARRAYSIZE;
4200#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
4201const ::google::protobuf::EnumDescriptor* FieldDescriptorProto_Label_descriptor() {
4202  protobuf_AssignDescriptorsOnce();
4203  return FieldDescriptorProto_Label_descriptor_;
4204}
4205bool FieldDescriptorProto_Label_IsValid(int value) {
4206  switch(value) {
4207    case 1:
4208    case 2:
4209    case 3:
4210      return true;
4211    default:
4212      return false;
4213  }
4214}
4215
4216#if !defined(_MSC_VER) || _MSC_VER >= 1900
4217const FieldDescriptorProto_Label FieldDescriptorProto::LABEL_OPTIONAL;
4218const FieldDescriptorProto_Label FieldDescriptorProto::LABEL_REQUIRED;
4219const FieldDescriptorProto_Label FieldDescriptorProto::LABEL_REPEATED;
4220const FieldDescriptorProto_Label FieldDescriptorProto::Label_MIN;
4221const FieldDescriptorProto_Label FieldDescriptorProto::Label_MAX;
4222const int FieldDescriptorProto::Label_ARRAYSIZE;
4223#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
4224#if !defined(_MSC_VER) || _MSC_VER >= 1900
4225const int FieldDescriptorProto::kNameFieldNumber;
4226const int FieldDescriptorProto::kNumberFieldNumber;
4227const int FieldDescriptorProto::kLabelFieldNumber;
4228const int FieldDescriptorProto::kTypeFieldNumber;
4229const int FieldDescriptorProto::kTypeNameFieldNumber;
4230const int FieldDescriptorProto::kExtendeeFieldNumber;
4231const int FieldDescriptorProto::kDefaultValueFieldNumber;
4232const int FieldDescriptorProto::kOneofIndexFieldNumber;
4233const int FieldDescriptorProto::kJsonNameFieldNumber;
4234const int FieldDescriptorProto::kOptionsFieldNumber;
4235#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
4236
4237FieldDescriptorProto::FieldDescriptorProto()
4238  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
4239  SharedCtor();
4240  // @@protoc_insertion_point(constructor:google.protobuf.FieldDescriptorProto)
4241}
4242
4243void FieldDescriptorProto::InitAsDefaultInstance() {
4244  options_ = const_cast< ::google::protobuf::FieldOptions*>(&::google::protobuf::FieldOptions::default_instance());
4245}
4246
4247FieldDescriptorProto::FieldDescriptorProto(const FieldDescriptorProto& from)
4248  : ::google::protobuf::Message(),
4249    _internal_metadata_(NULL) {
4250  SharedCtor();
4251  MergeFrom(from);
4252  // @@protoc_insertion_point(copy_constructor:google.protobuf.FieldDescriptorProto)
4253}
4254
4255void FieldDescriptorProto::SharedCtor() {
4256  ::google::protobuf::internal::GetEmptyString();
4257  _cached_size_ = 0;
4258  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4259  number_ = 0;
4260  label_ = 1;
4261  type_ = 1;
4262  type_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4263  extendee_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4264  default_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4265  oneof_index_ = 0;
4266  json_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4267  options_ = NULL;
4268  ::memset(_has_bits_, 0, sizeof(_has_bits_));
4269}
4270
4271FieldDescriptorProto::~FieldDescriptorProto() {
4272  // @@protoc_insertion_point(destructor:google.protobuf.FieldDescriptorProto)
4273  SharedDtor();
4274}
4275
4276void FieldDescriptorProto::SharedDtor() {
4277  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4278  type_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4279  extendee_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4280  default_value_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4281  json_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4282  if (this != default_instance_) {
4283    delete options_;
4284  }
4285}
4286
4287void FieldDescriptorProto::SetCachedSize(int size) const {
4288  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
4289  _cached_size_ = size;
4290  GOOGLE_SAFE_CONCURRENT_WRITES_END();
4291}
4292const ::google::protobuf::Descriptor* FieldDescriptorProto::descriptor() {
4293  protobuf_AssignDescriptorsOnce();
4294  return FieldDescriptorProto_descriptor_;
4295}
4296
4297const FieldDescriptorProto& FieldDescriptorProto::default_instance() {
4298  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
4299  return *default_instance_;
4300}
4301
4302FieldDescriptorProto* FieldDescriptorProto::default_instance_ = NULL;
4303
4304FieldDescriptorProto* FieldDescriptorProto::New(::google::protobuf::Arena* arena) const {
4305  FieldDescriptorProto* n = new FieldDescriptorProto;
4306  if (arena != NULL) {
4307    arena->Own(n);
4308  }
4309  return n;
4310}
4311
4312void FieldDescriptorProto::Clear() {
4313// @@protoc_insertion_point(message_clear_start:google.protobuf.FieldDescriptorProto)
4314  if (_has_bits_[0 / 32] & 255u) {
4315    if (has_name()) {
4316      name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4317    }
4318    number_ = 0;
4319    label_ = 1;
4320    type_ = 1;
4321    if (has_type_name()) {
4322      type_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4323    }
4324    if (has_extendee()) {
4325      extendee_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4326    }
4327    if (has_default_value()) {
4328      default_value_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4329    }
4330    oneof_index_ = 0;
4331  }
4332  if (_has_bits_[8 / 32] & 768u) {
4333    if (has_json_name()) {
4334      json_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4335    }
4336    if (has_options()) {
4337      if (options_ != NULL) options_->::google::protobuf::FieldOptions::Clear();
4338    }
4339  }
4340  ::memset(_has_bits_, 0, sizeof(_has_bits_));
4341  if (_internal_metadata_.have_unknown_fields()) {
4342    mutable_unknown_fields()->Clear();
4343  }
4344}
4345
4346bool FieldDescriptorProto::MergePartialFromCodedStream(
4347    ::google::protobuf::io::CodedInputStream* input) {
4348#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
4349  ::google::protobuf::uint32 tag;
4350  // @@protoc_insertion_point(parse_start:google.protobuf.FieldDescriptorProto)
4351  for (;;) {
4352    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
4353    tag = p.first;
4354    if (!p.second) goto handle_unusual;
4355    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
4356      // optional string name = 1;
4357      case 1: {
4358        if (tag == 10) {
4359          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
4360                input, this->mutable_name()));
4361          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4362            this->name().data(), this->name().length(),
4363            ::google::protobuf::internal::WireFormat::PARSE,
4364            "google.protobuf.FieldDescriptorProto.name");
4365        } else {
4366          goto handle_unusual;
4367        }
4368        if (input->ExpectTag(18)) goto parse_extendee;
4369        break;
4370      }
4371
4372      // optional string extendee = 2;
4373      case 2: {
4374        if (tag == 18) {
4375         parse_extendee:
4376          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
4377                input, this->mutable_extendee()));
4378          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4379            this->extendee().data(), this->extendee().length(),
4380            ::google::protobuf::internal::WireFormat::PARSE,
4381            "google.protobuf.FieldDescriptorProto.extendee");
4382        } else {
4383          goto handle_unusual;
4384        }
4385        if (input->ExpectTag(24)) goto parse_number;
4386        break;
4387      }
4388
4389      // optional int32 number = 3;
4390      case 3: {
4391        if (tag == 24) {
4392         parse_number:
4393          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
4394                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
4395                 input, &number_)));
4396          set_has_number();
4397        } else {
4398          goto handle_unusual;
4399        }
4400        if (input->ExpectTag(32)) goto parse_label;
4401        break;
4402      }
4403
4404      // optional .google.protobuf.FieldDescriptorProto.Label label = 4;
4405      case 4: {
4406        if (tag == 32) {
4407         parse_label:
4408          int value;
4409          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
4410                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
4411                 input, &value)));
4412          if (::google::protobuf::FieldDescriptorProto_Label_IsValid(value)) {
4413            set_label(static_cast< ::google::protobuf::FieldDescriptorProto_Label >(value));
4414          } else {
4415            mutable_unknown_fields()->AddVarint(4, value);
4416          }
4417        } else {
4418          goto handle_unusual;
4419        }
4420        if (input->ExpectTag(40)) goto parse_type;
4421        break;
4422      }
4423
4424      // optional .google.protobuf.FieldDescriptorProto.Type type = 5;
4425      case 5: {
4426        if (tag == 40) {
4427         parse_type:
4428          int value;
4429          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
4430                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
4431                 input, &value)));
4432          if (::google::protobuf::FieldDescriptorProto_Type_IsValid(value)) {
4433            set_type(static_cast< ::google::protobuf::FieldDescriptorProto_Type >(value));
4434          } else {
4435            mutable_unknown_fields()->AddVarint(5, value);
4436          }
4437        } else {
4438          goto handle_unusual;
4439        }
4440        if (input->ExpectTag(50)) goto parse_type_name;
4441        break;
4442      }
4443
4444      // optional string type_name = 6;
4445      case 6: {
4446        if (tag == 50) {
4447         parse_type_name:
4448          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
4449                input, this->mutable_type_name()));
4450          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4451            this->type_name().data(), this->type_name().length(),
4452            ::google::protobuf::internal::WireFormat::PARSE,
4453            "google.protobuf.FieldDescriptorProto.type_name");
4454        } else {
4455          goto handle_unusual;
4456        }
4457        if (input->ExpectTag(58)) goto parse_default_value;
4458        break;
4459      }
4460
4461      // optional string default_value = 7;
4462      case 7: {
4463        if (tag == 58) {
4464         parse_default_value:
4465          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
4466                input, this->mutable_default_value()));
4467          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4468            this->default_value().data(), this->default_value().length(),
4469            ::google::protobuf::internal::WireFormat::PARSE,
4470            "google.protobuf.FieldDescriptorProto.default_value");
4471        } else {
4472          goto handle_unusual;
4473        }
4474        if (input->ExpectTag(66)) goto parse_options;
4475        break;
4476      }
4477
4478      // optional .google.protobuf.FieldOptions options = 8;
4479      case 8: {
4480        if (tag == 66) {
4481         parse_options:
4482          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
4483               input, mutable_options()));
4484        } else {
4485          goto handle_unusual;
4486        }
4487        if (input->ExpectTag(72)) goto parse_oneof_index;
4488        break;
4489      }
4490
4491      // optional int32 oneof_index = 9;
4492      case 9: {
4493        if (tag == 72) {
4494         parse_oneof_index:
4495          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
4496                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
4497                 input, &oneof_index_)));
4498          set_has_oneof_index();
4499        } else {
4500          goto handle_unusual;
4501        }
4502        if (input->ExpectTag(82)) goto parse_json_name;
4503        break;
4504      }
4505
4506      // optional string json_name = 10;
4507      case 10: {
4508        if (tag == 82) {
4509         parse_json_name:
4510          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
4511                input, this->mutable_json_name()));
4512          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4513            this->json_name().data(), this->json_name().length(),
4514            ::google::protobuf::internal::WireFormat::PARSE,
4515            "google.protobuf.FieldDescriptorProto.json_name");
4516        } else {
4517          goto handle_unusual;
4518        }
4519        if (input->ExpectAtEnd()) goto success;
4520        break;
4521      }
4522
4523      default: {
4524      handle_unusual:
4525        if (tag == 0 ||
4526            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
4527            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
4528          goto success;
4529        }
4530        DO_(::google::protobuf::internal::WireFormat::SkipField(
4531              input, tag, mutable_unknown_fields()));
4532        break;
4533      }
4534    }
4535  }
4536success:
4537  // @@protoc_insertion_point(parse_success:google.protobuf.FieldDescriptorProto)
4538  return true;
4539failure:
4540  // @@protoc_insertion_point(parse_failure:google.protobuf.FieldDescriptorProto)
4541  return false;
4542#undef DO_
4543}
4544
4545void FieldDescriptorProto::SerializeWithCachedSizes(
4546    ::google::protobuf::io::CodedOutputStream* output) const {
4547  // @@protoc_insertion_point(serialize_start:google.protobuf.FieldDescriptorProto)
4548  // optional string name = 1;
4549  if (has_name()) {
4550    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4551      this->name().data(), this->name().length(),
4552      ::google::protobuf::internal::WireFormat::SERIALIZE,
4553      "google.protobuf.FieldDescriptorProto.name");
4554    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
4555      1, this->name(), output);
4556  }
4557
4558  // optional string extendee = 2;
4559  if (has_extendee()) {
4560    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4561      this->extendee().data(), this->extendee().length(),
4562      ::google::protobuf::internal::WireFormat::SERIALIZE,
4563      "google.protobuf.FieldDescriptorProto.extendee");
4564    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
4565      2, this->extendee(), output);
4566  }
4567
4568  // optional int32 number = 3;
4569  if (has_number()) {
4570    ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->number(), output);
4571  }
4572
4573  // optional .google.protobuf.FieldDescriptorProto.Label label = 4;
4574  if (has_label()) {
4575    ::google::protobuf::internal::WireFormatLite::WriteEnum(
4576      4, this->label(), output);
4577  }
4578
4579  // optional .google.protobuf.FieldDescriptorProto.Type type = 5;
4580  if (has_type()) {
4581    ::google::protobuf::internal::WireFormatLite::WriteEnum(
4582      5, this->type(), output);
4583  }
4584
4585  // optional string type_name = 6;
4586  if (has_type_name()) {
4587    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4588      this->type_name().data(), this->type_name().length(),
4589      ::google::protobuf::internal::WireFormat::SERIALIZE,
4590      "google.protobuf.FieldDescriptorProto.type_name");
4591    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
4592      6, this->type_name(), output);
4593  }
4594
4595  // optional string default_value = 7;
4596  if (has_default_value()) {
4597    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4598      this->default_value().data(), this->default_value().length(),
4599      ::google::protobuf::internal::WireFormat::SERIALIZE,
4600      "google.protobuf.FieldDescriptorProto.default_value");
4601    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
4602      7, this->default_value(), output);
4603  }
4604
4605  // optional .google.protobuf.FieldOptions options = 8;
4606  if (has_options()) {
4607    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
4608      8, *this->options_, output);
4609  }
4610
4611  // optional int32 oneof_index = 9;
4612  if (has_oneof_index()) {
4613    ::google::protobuf::internal::WireFormatLite::WriteInt32(9, this->oneof_index(), output);
4614  }
4615
4616  // optional string json_name = 10;
4617  if (has_json_name()) {
4618    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4619      this->json_name().data(), this->json_name().length(),
4620      ::google::protobuf::internal::WireFormat::SERIALIZE,
4621      "google.protobuf.FieldDescriptorProto.json_name");
4622    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
4623      10, this->json_name(), output);
4624  }
4625
4626  if (_internal_metadata_.have_unknown_fields()) {
4627    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
4628        unknown_fields(), output);
4629  }
4630  // @@protoc_insertion_point(serialize_end:google.protobuf.FieldDescriptorProto)
4631}
4632
4633::google::protobuf::uint8* FieldDescriptorProto::SerializeWithCachedSizesToArray(
4634    ::google::protobuf::uint8* target) const {
4635  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.FieldDescriptorProto)
4636  // optional string name = 1;
4637  if (has_name()) {
4638    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4639      this->name().data(), this->name().length(),
4640      ::google::protobuf::internal::WireFormat::SERIALIZE,
4641      "google.protobuf.FieldDescriptorProto.name");
4642    target =
4643      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
4644        1, this->name(), target);
4645  }
4646
4647  // optional string extendee = 2;
4648  if (has_extendee()) {
4649    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4650      this->extendee().data(), this->extendee().length(),
4651      ::google::protobuf::internal::WireFormat::SERIALIZE,
4652      "google.protobuf.FieldDescriptorProto.extendee");
4653    target =
4654      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
4655        2, this->extendee(), target);
4656  }
4657
4658  // optional int32 number = 3;
4659  if (has_number()) {
4660    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->number(), target);
4661  }
4662
4663  // optional .google.protobuf.FieldDescriptorProto.Label label = 4;
4664  if (has_label()) {
4665    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
4666      4, this->label(), target);
4667  }
4668
4669  // optional .google.protobuf.FieldDescriptorProto.Type type = 5;
4670  if (has_type()) {
4671    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
4672      5, this->type(), target);
4673  }
4674
4675  // optional string type_name = 6;
4676  if (has_type_name()) {
4677    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4678      this->type_name().data(), this->type_name().length(),
4679      ::google::protobuf::internal::WireFormat::SERIALIZE,
4680      "google.protobuf.FieldDescriptorProto.type_name");
4681    target =
4682      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
4683        6, this->type_name(), target);
4684  }
4685
4686  // optional string default_value = 7;
4687  if (has_default_value()) {
4688    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4689      this->default_value().data(), this->default_value().length(),
4690      ::google::protobuf::internal::WireFormat::SERIALIZE,
4691      "google.protobuf.FieldDescriptorProto.default_value");
4692    target =
4693      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
4694        7, this->default_value(), target);
4695  }
4696
4697  // optional .google.protobuf.FieldOptions options = 8;
4698  if (has_options()) {
4699    target = ::google::protobuf::internal::WireFormatLite::
4700      WriteMessageNoVirtualToArray(
4701        8, *this->options_, target);
4702  }
4703
4704  // optional int32 oneof_index = 9;
4705  if (has_oneof_index()) {
4706    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(9, this->oneof_index(), target);
4707  }
4708
4709  // optional string json_name = 10;
4710  if (has_json_name()) {
4711    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
4712      this->json_name().data(), this->json_name().length(),
4713      ::google::protobuf::internal::WireFormat::SERIALIZE,
4714      "google.protobuf.FieldDescriptorProto.json_name");
4715    target =
4716      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
4717        10, this->json_name(), target);
4718  }
4719
4720  if (_internal_metadata_.have_unknown_fields()) {
4721    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
4722        unknown_fields(), target);
4723  }
4724  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.FieldDescriptorProto)
4725  return target;
4726}
4727
4728int FieldDescriptorProto::ByteSize() const {
4729// @@protoc_insertion_point(message_byte_size_start:google.protobuf.FieldDescriptorProto)
4730  int total_size = 0;
4731
4732  if (_has_bits_[0 / 32] & 255u) {
4733    // optional string name = 1;
4734    if (has_name()) {
4735      total_size += 1 +
4736        ::google::protobuf::internal::WireFormatLite::StringSize(
4737          this->name());
4738    }
4739
4740    // optional int32 number = 3;
4741    if (has_number()) {
4742      total_size += 1 +
4743        ::google::protobuf::internal::WireFormatLite::Int32Size(
4744          this->number());
4745    }
4746
4747    // optional .google.protobuf.FieldDescriptorProto.Label label = 4;
4748    if (has_label()) {
4749      total_size += 1 +
4750        ::google::protobuf::internal::WireFormatLite::EnumSize(this->label());
4751    }
4752
4753    // optional .google.protobuf.FieldDescriptorProto.Type type = 5;
4754    if (has_type()) {
4755      total_size += 1 +
4756        ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
4757    }
4758
4759    // optional string type_name = 6;
4760    if (has_type_name()) {
4761      total_size += 1 +
4762        ::google::protobuf::internal::WireFormatLite::StringSize(
4763          this->type_name());
4764    }
4765
4766    // optional string extendee = 2;
4767    if (has_extendee()) {
4768      total_size += 1 +
4769        ::google::protobuf::internal::WireFormatLite::StringSize(
4770          this->extendee());
4771    }
4772
4773    // optional string default_value = 7;
4774    if (has_default_value()) {
4775      total_size += 1 +
4776        ::google::protobuf::internal::WireFormatLite::StringSize(
4777          this->default_value());
4778    }
4779
4780    // optional int32 oneof_index = 9;
4781    if (has_oneof_index()) {
4782      total_size += 1 +
4783        ::google::protobuf::internal::WireFormatLite::Int32Size(
4784          this->oneof_index());
4785    }
4786
4787  }
4788  if (_has_bits_[8 / 32] & 768u) {
4789    // optional string json_name = 10;
4790    if (has_json_name()) {
4791      total_size += 1 +
4792        ::google::protobuf::internal::WireFormatLite::StringSize(
4793          this->json_name());
4794    }
4795
4796    // optional .google.protobuf.FieldOptions options = 8;
4797    if (has_options()) {
4798      total_size += 1 +
4799        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
4800          *this->options_);
4801    }
4802
4803  }
4804  if (_internal_metadata_.have_unknown_fields()) {
4805    total_size +=
4806      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
4807        unknown_fields());
4808  }
4809  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
4810  _cached_size_ = total_size;
4811  GOOGLE_SAFE_CONCURRENT_WRITES_END();
4812  return total_size;
4813}
4814
4815void FieldDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
4816// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.FieldDescriptorProto)
4817  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
4818  const FieldDescriptorProto* source =
4819      ::google::protobuf::internal::DynamicCastToGenerated<const FieldDescriptorProto>(
4820          &from);
4821  if (source == NULL) {
4822  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.FieldDescriptorProto)
4823    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
4824  } else {
4825  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.FieldDescriptorProto)
4826    MergeFrom(*source);
4827  }
4828}
4829
4830void FieldDescriptorProto::MergeFrom(const FieldDescriptorProto& from) {
4831// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.FieldDescriptorProto)
4832  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
4833  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
4834    if (from.has_name()) {
4835      set_has_name();
4836      name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
4837    }
4838    if (from.has_number()) {
4839      set_number(from.number());
4840    }
4841    if (from.has_label()) {
4842      set_label(from.label());
4843    }
4844    if (from.has_type()) {
4845      set_type(from.type());
4846    }
4847    if (from.has_type_name()) {
4848      set_has_type_name();
4849      type_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.type_name_);
4850    }
4851    if (from.has_extendee()) {
4852      set_has_extendee();
4853      extendee_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.extendee_);
4854    }
4855    if (from.has_default_value()) {
4856      set_has_default_value();
4857      default_value_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.default_value_);
4858    }
4859    if (from.has_oneof_index()) {
4860      set_oneof_index(from.oneof_index());
4861    }
4862  }
4863  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
4864    if (from.has_json_name()) {
4865      set_has_json_name();
4866      json_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.json_name_);
4867    }
4868    if (from.has_options()) {
4869      mutable_options()->::google::protobuf::FieldOptions::MergeFrom(from.options());
4870    }
4871  }
4872  if (from._internal_metadata_.have_unknown_fields()) {
4873    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
4874  }
4875}
4876
4877void FieldDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
4878// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.FieldDescriptorProto)
4879  if (&from == this) return;
4880  Clear();
4881  MergeFrom(from);
4882}
4883
4884void FieldDescriptorProto::CopyFrom(const FieldDescriptorProto& from) {
4885// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.FieldDescriptorProto)
4886  if (&from == this) return;
4887  Clear();
4888  MergeFrom(from);
4889}
4890
4891bool FieldDescriptorProto::IsInitialized() const {
4892
4893  if (has_options()) {
4894    if (!this->options_->IsInitialized()) return false;
4895  }
4896  return true;
4897}
4898
4899void FieldDescriptorProto::Swap(FieldDescriptorProto* other) {
4900  if (other == this) return;
4901  InternalSwap(other);
4902}
4903void FieldDescriptorProto::InternalSwap(FieldDescriptorProto* other) {
4904  name_.Swap(&other->name_);
4905  std::swap(number_, other->number_);
4906  std::swap(label_, other->label_);
4907  std::swap(type_, other->type_);
4908  type_name_.Swap(&other->type_name_);
4909  extendee_.Swap(&other->extendee_);
4910  default_value_.Swap(&other->default_value_);
4911  std::swap(oneof_index_, other->oneof_index_);
4912  json_name_.Swap(&other->json_name_);
4913  std::swap(options_, other->options_);
4914  std::swap(_has_bits_[0], other->_has_bits_[0]);
4915  _internal_metadata_.Swap(&other->_internal_metadata_);
4916  std::swap(_cached_size_, other->_cached_size_);
4917}
4918
4919::google::protobuf::Metadata FieldDescriptorProto::GetMetadata() const {
4920  protobuf_AssignDescriptorsOnce();
4921  ::google::protobuf::Metadata metadata;
4922  metadata.descriptor = FieldDescriptorProto_descriptor_;
4923  metadata.reflection = FieldDescriptorProto_reflection_;
4924  return metadata;
4925}
4926
4927#if PROTOBUF_INLINE_NOT_IN_HEADERS
4928// FieldDescriptorProto
4929
4930// optional string name = 1;
4931bool FieldDescriptorProto::has_name() const {
4932  return (_has_bits_[0] & 0x00000001u) != 0;
4933}
4934void FieldDescriptorProto::set_has_name() {
4935  _has_bits_[0] |= 0x00000001u;
4936}
4937void FieldDescriptorProto::clear_has_name() {
4938  _has_bits_[0] &= ~0x00000001u;
4939}
4940void FieldDescriptorProto::clear_name() {
4941  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4942  clear_has_name();
4943}
4944 const ::std::string& FieldDescriptorProto::name() const {
4945  // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.name)
4946  return name_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4947}
4948 void FieldDescriptorProto::set_name(const ::std::string& value) {
4949  set_has_name();
4950  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
4951  // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.name)
4952}
4953 void FieldDescriptorProto::set_name(const char* value) {
4954  set_has_name();
4955  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
4956  // @@protoc_insertion_point(field_set_char:google.protobuf.FieldDescriptorProto.name)
4957}
4958 void FieldDescriptorProto::set_name(const char* value, size_t size) {
4959  set_has_name();
4960  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
4961      ::std::string(reinterpret_cast<const char*>(value), size));
4962  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FieldDescriptorProto.name)
4963}
4964 ::std::string* FieldDescriptorProto::mutable_name() {
4965  set_has_name();
4966  // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.name)
4967  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4968}
4969 ::std::string* FieldDescriptorProto::release_name() {
4970  // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.name)
4971  clear_has_name();
4972  return name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
4973}
4974 void FieldDescriptorProto::set_allocated_name(::std::string* name) {
4975  if (name != NULL) {
4976    set_has_name();
4977  } else {
4978    clear_has_name();
4979  }
4980  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
4981  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.name)
4982}
4983
4984// optional int32 number = 3;
4985bool FieldDescriptorProto::has_number() const {
4986  return (_has_bits_[0] & 0x00000002u) != 0;
4987}
4988void FieldDescriptorProto::set_has_number() {
4989  _has_bits_[0] |= 0x00000002u;
4990}
4991void FieldDescriptorProto::clear_has_number() {
4992  _has_bits_[0] &= ~0x00000002u;
4993}
4994void FieldDescriptorProto::clear_number() {
4995  number_ = 0;
4996  clear_has_number();
4997}
4998 ::google::protobuf::int32 FieldDescriptorProto::number() const {
4999  // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.number)
5000  return number_;
5001}
5002 void FieldDescriptorProto::set_number(::google::protobuf::int32 value) {
5003  set_has_number();
5004  number_ = value;
5005  // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.number)
5006}
5007
5008// optional .google.protobuf.FieldDescriptorProto.Label label = 4;
5009bool FieldDescriptorProto::has_label() const {
5010  return (_has_bits_[0] & 0x00000004u) != 0;
5011}
5012void FieldDescriptorProto::set_has_label() {
5013  _has_bits_[0] |= 0x00000004u;
5014}
5015void FieldDescriptorProto::clear_has_label() {
5016  _has_bits_[0] &= ~0x00000004u;
5017}
5018void FieldDescriptorProto::clear_label() {
5019  label_ = 1;
5020  clear_has_label();
5021}
5022 ::google::protobuf::FieldDescriptorProto_Label FieldDescriptorProto::label() const {
5023  // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.label)
5024  return static_cast< ::google::protobuf::FieldDescriptorProto_Label >(label_);
5025}
5026 void FieldDescriptorProto::set_label(::google::protobuf::FieldDescriptorProto_Label value) {
5027  assert(::google::protobuf::FieldDescriptorProto_Label_IsValid(value));
5028  set_has_label();
5029  label_ = value;
5030  // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.label)
5031}
5032
5033// optional .google.protobuf.FieldDescriptorProto.Type type = 5;
5034bool FieldDescriptorProto::has_type() const {
5035  return (_has_bits_[0] & 0x00000008u) != 0;
5036}
5037void FieldDescriptorProto::set_has_type() {
5038  _has_bits_[0] |= 0x00000008u;
5039}
5040void FieldDescriptorProto::clear_has_type() {
5041  _has_bits_[0] &= ~0x00000008u;
5042}
5043void FieldDescriptorProto::clear_type() {
5044  type_ = 1;
5045  clear_has_type();
5046}
5047 ::google::protobuf::FieldDescriptorProto_Type FieldDescriptorProto::type() const {
5048  // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.type)
5049  return static_cast< ::google::protobuf::FieldDescriptorProto_Type >(type_);
5050}
5051 void FieldDescriptorProto::set_type(::google::protobuf::FieldDescriptorProto_Type value) {
5052  assert(::google::protobuf::FieldDescriptorProto_Type_IsValid(value));
5053  set_has_type();
5054  type_ = value;
5055  // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.type)
5056}
5057
5058// optional string type_name = 6;
5059bool FieldDescriptorProto::has_type_name() const {
5060  return (_has_bits_[0] & 0x00000010u) != 0;
5061}
5062void FieldDescriptorProto::set_has_type_name() {
5063  _has_bits_[0] |= 0x00000010u;
5064}
5065void FieldDescriptorProto::clear_has_type_name() {
5066  _has_bits_[0] &= ~0x00000010u;
5067}
5068void FieldDescriptorProto::clear_type_name() {
5069  type_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5070  clear_has_type_name();
5071}
5072 const ::std::string& FieldDescriptorProto::type_name() const {
5073  // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.type_name)
5074  return type_name_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5075}
5076 void FieldDescriptorProto::set_type_name(const ::std::string& value) {
5077  set_has_type_name();
5078  type_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
5079  // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.type_name)
5080}
5081 void FieldDescriptorProto::set_type_name(const char* value) {
5082  set_has_type_name();
5083  type_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
5084  // @@protoc_insertion_point(field_set_char:google.protobuf.FieldDescriptorProto.type_name)
5085}
5086 void FieldDescriptorProto::set_type_name(const char* value, size_t size) {
5087  set_has_type_name();
5088  type_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
5089      ::std::string(reinterpret_cast<const char*>(value), size));
5090  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FieldDescriptorProto.type_name)
5091}
5092 ::std::string* FieldDescriptorProto::mutable_type_name() {
5093  set_has_type_name();
5094  // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.type_name)
5095  return type_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5096}
5097 ::std::string* FieldDescriptorProto::release_type_name() {
5098  // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.type_name)
5099  clear_has_type_name();
5100  return type_name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5101}
5102 void FieldDescriptorProto::set_allocated_type_name(::std::string* type_name) {
5103  if (type_name != NULL) {
5104    set_has_type_name();
5105  } else {
5106    clear_has_type_name();
5107  }
5108  type_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), type_name);
5109  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.type_name)
5110}
5111
5112// optional string extendee = 2;
5113bool FieldDescriptorProto::has_extendee() const {
5114  return (_has_bits_[0] & 0x00000020u) != 0;
5115}
5116void FieldDescriptorProto::set_has_extendee() {
5117  _has_bits_[0] |= 0x00000020u;
5118}
5119void FieldDescriptorProto::clear_has_extendee() {
5120  _has_bits_[0] &= ~0x00000020u;
5121}
5122void FieldDescriptorProto::clear_extendee() {
5123  extendee_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5124  clear_has_extendee();
5125}
5126 const ::std::string& FieldDescriptorProto::extendee() const {
5127  // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.extendee)
5128  return extendee_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5129}
5130 void FieldDescriptorProto::set_extendee(const ::std::string& value) {
5131  set_has_extendee();
5132  extendee_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
5133  // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.extendee)
5134}
5135 void FieldDescriptorProto::set_extendee(const char* value) {
5136  set_has_extendee();
5137  extendee_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
5138  // @@protoc_insertion_point(field_set_char:google.protobuf.FieldDescriptorProto.extendee)
5139}
5140 void FieldDescriptorProto::set_extendee(const char* value, size_t size) {
5141  set_has_extendee();
5142  extendee_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
5143      ::std::string(reinterpret_cast<const char*>(value), size));
5144  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FieldDescriptorProto.extendee)
5145}
5146 ::std::string* FieldDescriptorProto::mutable_extendee() {
5147  set_has_extendee();
5148  // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.extendee)
5149  return extendee_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5150}
5151 ::std::string* FieldDescriptorProto::release_extendee() {
5152  // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.extendee)
5153  clear_has_extendee();
5154  return extendee_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5155}
5156 void FieldDescriptorProto::set_allocated_extendee(::std::string* extendee) {
5157  if (extendee != NULL) {
5158    set_has_extendee();
5159  } else {
5160    clear_has_extendee();
5161  }
5162  extendee_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), extendee);
5163  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.extendee)
5164}
5165
5166// optional string default_value = 7;
5167bool FieldDescriptorProto::has_default_value() const {
5168  return (_has_bits_[0] & 0x00000040u) != 0;
5169}
5170void FieldDescriptorProto::set_has_default_value() {
5171  _has_bits_[0] |= 0x00000040u;
5172}
5173void FieldDescriptorProto::clear_has_default_value() {
5174  _has_bits_[0] &= ~0x00000040u;
5175}
5176void FieldDescriptorProto::clear_default_value() {
5177  default_value_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5178  clear_has_default_value();
5179}
5180 const ::std::string& FieldDescriptorProto::default_value() const {
5181  // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.default_value)
5182  return default_value_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5183}
5184 void FieldDescriptorProto::set_default_value(const ::std::string& value) {
5185  set_has_default_value();
5186  default_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
5187  // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.default_value)
5188}
5189 void FieldDescriptorProto::set_default_value(const char* value) {
5190  set_has_default_value();
5191  default_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
5192  // @@protoc_insertion_point(field_set_char:google.protobuf.FieldDescriptorProto.default_value)
5193}
5194 void FieldDescriptorProto::set_default_value(const char* value, size_t size) {
5195  set_has_default_value();
5196  default_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
5197      ::std::string(reinterpret_cast<const char*>(value), size));
5198  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FieldDescriptorProto.default_value)
5199}
5200 ::std::string* FieldDescriptorProto::mutable_default_value() {
5201  set_has_default_value();
5202  // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.default_value)
5203  return default_value_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5204}
5205 ::std::string* FieldDescriptorProto::release_default_value() {
5206  // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.default_value)
5207  clear_has_default_value();
5208  return default_value_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5209}
5210 void FieldDescriptorProto::set_allocated_default_value(::std::string* default_value) {
5211  if (default_value != NULL) {
5212    set_has_default_value();
5213  } else {
5214    clear_has_default_value();
5215  }
5216  default_value_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), default_value);
5217  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.default_value)
5218}
5219
5220// optional int32 oneof_index = 9;
5221bool FieldDescriptorProto::has_oneof_index() const {
5222  return (_has_bits_[0] & 0x00000080u) != 0;
5223}
5224void FieldDescriptorProto::set_has_oneof_index() {
5225  _has_bits_[0] |= 0x00000080u;
5226}
5227void FieldDescriptorProto::clear_has_oneof_index() {
5228  _has_bits_[0] &= ~0x00000080u;
5229}
5230void FieldDescriptorProto::clear_oneof_index() {
5231  oneof_index_ = 0;
5232  clear_has_oneof_index();
5233}
5234 ::google::protobuf::int32 FieldDescriptorProto::oneof_index() const {
5235  // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.oneof_index)
5236  return oneof_index_;
5237}
5238 void FieldDescriptorProto::set_oneof_index(::google::protobuf::int32 value) {
5239  set_has_oneof_index();
5240  oneof_index_ = value;
5241  // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.oneof_index)
5242}
5243
5244// optional string json_name = 10;
5245bool FieldDescriptorProto::has_json_name() const {
5246  return (_has_bits_[0] & 0x00000100u) != 0;
5247}
5248void FieldDescriptorProto::set_has_json_name() {
5249  _has_bits_[0] |= 0x00000100u;
5250}
5251void FieldDescriptorProto::clear_has_json_name() {
5252  _has_bits_[0] &= ~0x00000100u;
5253}
5254void FieldDescriptorProto::clear_json_name() {
5255  json_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5256  clear_has_json_name();
5257}
5258 const ::std::string& FieldDescriptorProto::json_name() const {
5259  // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.json_name)
5260  return json_name_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5261}
5262 void FieldDescriptorProto::set_json_name(const ::std::string& value) {
5263  set_has_json_name();
5264  json_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
5265  // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.json_name)
5266}
5267 void FieldDescriptorProto::set_json_name(const char* value) {
5268  set_has_json_name();
5269  json_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
5270  // @@protoc_insertion_point(field_set_char:google.protobuf.FieldDescriptorProto.json_name)
5271}
5272 void FieldDescriptorProto::set_json_name(const char* value, size_t size) {
5273  set_has_json_name();
5274  json_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
5275      ::std::string(reinterpret_cast<const char*>(value), size));
5276  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FieldDescriptorProto.json_name)
5277}
5278 ::std::string* FieldDescriptorProto::mutable_json_name() {
5279  set_has_json_name();
5280  // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.json_name)
5281  return json_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5282}
5283 ::std::string* FieldDescriptorProto::release_json_name() {
5284  // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.json_name)
5285  clear_has_json_name();
5286  return json_name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5287}
5288 void FieldDescriptorProto::set_allocated_json_name(::std::string* json_name) {
5289  if (json_name != NULL) {
5290    set_has_json_name();
5291  } else {
5292    clear_has_json_name();
5293  }
5294  json_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), json_name);
5295  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.json_name)
5296}
5297
5298// optional .google.protobuf.FieldOptions options = 8;
5299bool FieldDescriptorProto::has_options() const {
5300  return (_has_bits_[0] & 0x00000200u) != 0;
5301}
5302void FieldDescriptorProto::set_has_options() {
5303  _has_bits_[0] |= 0x00000200u;
5304}
5305void FieldDescriptorProto::clear_has_options() {
5306  _has_bits_[0] &= ~0x00000200u;
5307}
5308void FieldDescriptorProto::clear_options() {
5309  if (options_ != NULL) options_->::google::protobuf::FieldOptions::Clear();
5310  clear_has_options();
5311}
5312const ::google::protobuf::FieldOptions& FieldDescriptorProto::options() const {
5313  // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.options)
5314  return options_ != NULL ? *options_ : *default_instance_->options_;
5315}
5316::google::protobuf::FieldOptions* FieldDescriptorProto::mutable_options() {
5317  set_has_options();
5318  if (options_ == NULL) {
5319    options_ = new ::google::protobuf::FieldOptions;
5320  }
5321  // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.options)
5322  return options_;
5323}
5324::google::protobuf::FieldOptions* FieldDescriptorProto::release_options() {
5325  // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.options)
5326  clear_has_options();
5327  ::google::protobuf::FieldOptions* temp = options_;
5328  options_ = NULL;
5329  return temp;
5330}
5331void FieldDescriptorProto::set_allocated_options(::google::protobuf::FieldOptions* options) {
5332  delete options_;
5333  options_ = options;
5334  if (options) {
5335    set_has_options();
5336  } else {
5337    clear_has_options();
5338  }
5339  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.options)
5340}
5341
5342#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
5343
5344// ===================================================================
5345
5346#if !defined(_MSC_VER) || _MSC_VER >= 1900
5347const int OneofDescriptorProto::kNameFieldNumber;
5348#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
5349
5350OneofDescriptorProto::OneofDescriptorProto()
5351  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
5352  SharedCtor();
5353  // @@protoc_insertion_point(constructor:google.protobuf.OneofDescriptorProto)
5354}
5355
5356void OneofDescriptorProto::InitAsDefaultInstance() {
5357}
5358
5359OneofDescriptorProto::OneofDescriptorProto(const OneofDescriptorProto& from)
5360  : ::google::protobuf::Message(),
5361    _internal_metadata_(NULL) {
5362  SharedCtor();
5363  MergeFrom(from);
5364  // @@protoc_insertion_point(copy_constructor:google.protobuf.OneofDescriptorProto)
5365}
5366
5367void OneofDescriptorProto::SharedCtor() {
5368  ::google::protobuf::internal::GetEmptyString();
5369  _cached_size_ = 0;
5370  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5371  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5372}
5373
5374OneofDescriptorProto::~OneofDescriptorProto() {
5375  // @@protoc_insertion_point(destructor:google.protobuf.OneofDescriptorProto)
5376  SharedDtor();
5377}
5378
5379void OneofDescriptorProto::SharedDtor() {
5380  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5381  if (this != default_instance_) {
5382  }
5383}
5384
5385void OneofDescriptorProto::SetCachedSize(int size) const {
5386  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
5387  _cached_size_ = size;
5388  GOOGLE_SAFE_CONCURRENT_WRITES_END();
5389}
5390const ::google::protobuf::Descriptor* OneofDescriptorProto::descriptor() {
5391  protobuf_AssignDescriptorsOnce();
5392  return OneofDescriptorProto_descriptor_;
5393}
5394
5395const OneofDescriptorProto& OneofDescriptorProto::default_instance() {
5396  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
5397  return *default_instance_;
5398}
5399
5400OneofDescriptorProto* OneofDescriptorProto::default_instance_ = NULL;
5401
5402OneofDescriptorProto* OneofDescriptorProto::New(::google::protobuf::Arena* arena) const {
5403  OneofDescriptorProto* n = new OneofDescriptorProto;
5404  if (arena != NULL) {
5405    arena->Own(n);
5406  }
5407  return n;
5408}
5409
5410void OneofDescriptorProto::Clear() {
5411// @@protoc_insertion_point(message_clear_start:google.protobuf.OneofDescriptorProto)
5412  if (has_name()) {
5413    name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5414  }
5415  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5416  if (_internal_metadata_.have_unknown_fields()) {
5417    mutable_unknown_fields()->Clear();
5418  }
5419}
5420
5421bool OneofDescriptorProto::MergePartialFromCodedStream(
5422    ::google::protobuf::io::CodedInputStream* input) {
5423#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
5424  ::google::protobuf::uint32 tag;
5425  // @@protoc_insertion_point(parse_start:google.protobuf.OneofDescriptorProto)
5426  for (;;) {
5427    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
5428    tag = p.first;
5429    if (!p.second) goto handle_unusual;
5430    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
5431      // optional string name = 1;
5432      case 1: {
5433        if (tag == 10) {
5434          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
5435                input, this->mutable_name()));
5436          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
5437            this->name().data(), this->name().length(),
5438            ::google::protobuf::internal::WireFormat::PARSE,
5439            "google.protobuf.OneofDescriptorProto.name");
5440        } else {
5441          goto handle_unusual;
5442        }
5443        if (input->ExpectAtEnd()) goto success;
5444        break;
5445      }
5446
5447      default: {
5448      handle_unusual:
5449        if (tag == 0 ||
5450            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
5451            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
5452          goto success;
5453        }
5454        DO_(::google::protobuf::internal::WireFormat::SkipField(
5455              input, tag, mutable_unknown_fields()));
5456        break;
5457      }
5458    }
5459  }
5460success:
5461  // @@protoc_insertion_point(parse_success:google.protobuf.OneofDescriptorProto)
5462  return true;
5463failure:
5464  // @@protoc_insertion_point(parse_failure:google.protobuf.OneofDescriptorProto)
5465  return false;
5466#undef DO_
5467}
5468
5469void OneofDescriptorProto::SerializeWithCachedSizes(
5470    ::google::protobuf::io::CodedOutputStream* output) const {
5471  // @@protoc_insertion_point(serialize_start:google.protobuf.OneofDescriptorProto)
5472  // optional string name = 1;
5473  if (has_name()) {
5474    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
5475      this->name().data(), this->name().length(),
5476      ::google::protobuf::internal::WireFormat::SERIALIZE,
5477      "google.protobuf.OneofDescriptorProto.name");
5478    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
5479      1, this->name(), output);
5480  }
5481
5482  if (_internal_metadata_.have_unknown_fields()) {
5483    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
5484        unknown_fields(), output);
5485  }
5486  // @@protoc_insertion_point(serialize_end:google.protobuf.OneofDescriptorProto)
5487}
5488
5489::google::protobuf::uint8* OneofDescriptorProto::SerializeWithCachedSizesToArray(
5490    ::google::protobuf::uint8* target) const {
5491  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.OneofDescriptorProto)
5492  // optional string name = 1;
5493  if (has_name()) {
5494    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
5495      this->name().data(), this->name().length(),
5496      ::google::protobuf::internal::WireFormat::SERIALIZE,
5497      "google.protobuf.OneofDescriptorProto.name");
5498    target =
5499      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
5500        1, this->name(), target);
5501  }
5502
5503  if (_internal_metadata_.have_unknown_fields()) {
5504    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
5505        unknown_fields(), target);
5506  }
5507  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.OneofDescriptorProto)
5508  return target;
5509}
5510
5511int OneofDescriptorProto::ByteSize() const {
5512// @@protoc_insertion_point(message_byte_size_start:google.protobuf.OneofDescriptorProto)
5513  int total_size = 0;
5514
5515  // optional string name = 1;
5516  if (has_name()) {
5517    total_size += 1 +
5518      ::google::protobuf::internal::WireFormatLite::StringSize(
5519        this->name());
5520  }
5521
5522  if (_internal_metadata_.have_unknown_fields()) {
5523    total_size +=
5524      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
5525        unknown_fields());
5526  }
5527  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
5528  _cached_size_ = total_size;
5529  GOOGLE_SAFE_CONCURRENT_WRITES_END();
5530  return total_size;
5531}
5532
5533void OneofDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
5534// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.OneofDescriptorProto)
5535  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
5536  const OneofDescriptorProto* source =
5537      ::google::protobuf::internal::DynamicCastToGenerated<const OneofDescriptorProto>(
5538          &from);
5539  if (source == NULL) {
5540  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.OneofDescriptorProto)
5541    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
5542  } else {
5543  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.OneofDescriptorProto)
5544    MergeFrom(*source);
5545  }
5546}
5547
5548void OneofDescriptorProto::MergeFrom(const OneofDescriptorProto& from) {
5549// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.OneofDescriptorProto)
5550  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
5551  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
5552    if (from.has_name()) {
5553      set_has_name();
5554      name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
5555    }
5556  }
5557  if (from._internal_metadata_.have_unknown_fields()) {
5558    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
5559  }
5560}
5561
5562void OneofDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
5563// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.OneofDescriptorProto)
5564  if (&from == this) return;
5565  Clear();
5566  MergeFrom(from);
5567}
5568
5569void OneofDescriptorProto::CopyFrom(const OneofDescriptorProto& from) {
5570// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.OneofDescriptorProto)
5571  if (&from == this) return;
5572  Clear();
5573  MergeFrom(from);
5574}
5575
5576bool OneofDescriptorProto::IsInitialized() const {
5577
5578  return true;
5579}
5580
5581void OneofDescriptorProto::Swap(OneofDescriptorProto* other) {
5582  if (other == this) return;
5583  InternalSwap(other);
5584}
5585void OneofDescriptorProto::InternalSwap(OneofDescriptorProto* other) {
5586  name_.Swap(&other->name_);
5587  std::swap(_has_bits_[0], other->_has_bits_[0]);
5588  _internal_metadata_.Swap(&other->_internal_metadata_);
5589  std::swap(_cached_size_, other->_cached_size_);
5590}
5591
5592::google::protobuf::Metadata OneofDescriptorProto::GetMetadata() const {
5593  protobuf_AssignDescriptorsOnce();
5594  ::google::protobuf::Metadata metadata;
5595  metadata.descriptor = OneofDescriptorProto_descriptor_;
5596  metadata.reflection = OneofDescriptorProto_reflection_;
5597  return metadata;
5598}
5599
5600#if PROTOBUF_INLINE_NOT_IN_HEADERS
5601// OneofDescriptorProto
5602
5603// optional string name = 1;
5604bool OneofDescriptorProto::has_name() const {
5605  return (_has_bits_[0] & 0x00000001u) != 0;
5606}
5607void OneofDescriptorProto::set_has_name() {
5608  _has_bits_[0] |= 0x00000001u;
5609}
5610void OneofDescriptorProto::clear_has_name() {
5611  _has_bits_[0] &= ~0x00000001u;
5612}
5613void OneofDescriptorProto::clear_name() {
5614  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5615  clear_has_name();
5616}
5617 const ::std::string& OneofDescriptorProto::name() const {
5618  // @@protoc_insertion_point(field_get:google.protobuf.OneofDescriptorProto.name)
5619  return name_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5620}
5621 void OneofDescriptorProto::set_name(const ::std::string& value) {
5622  set_has_name();
5623  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
5624  // @@protoc_insertion_point(field_set:google.protobuf.OneofDescriptorProto.name)
5625}
5626 void OneofDescriptorProto::set_name(const char* value) {
5627  set_has_name();
5628  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
5629  // @@protoc_insertion_point(field_set_char:google.protobuf.OneofDescriptorProto.name)
5630}
5631 void OneofDescriptorProto::set_name(const char* value, size_t size) {
5632  set_has_name();
5633  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
5634      ::std::string(reinterpret_cast<const char*>(value), size));
5635  // @@protoc_insertion_point(field_set_pointer:google.protobuf.OneofDescriptorProto.name)
5636}
5637 ::std::string* OneofDescriptorProto::mutable_name() {
5638  set_has_name();
5639  // @@protoc_insertion_point(field_mutable:google.protobuf.OneofDescriptorProto.name)
5640  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5641}
5642 ::std::string* OneofDescriptorProto::release_name() {
5643  // @@protoc_insertion_point(field_release:google.protobuf.OneofDescriptorProto.name)
5644  clear_has_name();
5645  return name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5646}
5647 void OneofDescriptorProto::set_allocated_name(::std::string* name) {
5648  if (name != NULL) {
5649    set_has_name();
5650  } else {
5651    clear_has_name();
5652  }
5653  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
5654  // @@protoc_insertion_point(field_set_allocated:google.protobuf.OneofDescriptorProto.name)
5655}
5656
5657#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
5658
5659// ===================================================================
5660
5661#if !defined(_MSC_VER) || _MSC_VER >= 1900
5662const int EnumDescriptorProto::kNameFieldNumber;
5663const int EnumDescriptorProto::kValueFieldNumber;
5664const int EnumDescriptorProto::kOptionsFieldNumber;
5665#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
5666
5667EnumDescriptorProto::EnumDescriptorProto()
5668  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
5669  SharedCtor();
5670  // @@protoc_insertion_point(constructor:google.protobuf.EnumDescriptorProto)
5671}
5672
5673void EnumDescriptorProto::InitAsDefaultInstance() {
5674  options_ = const_cast< ::google::protobuf::EnumOptions*>(&::google::protobuf::EnumOptions::default_instance());
5675}
5676
5677EnumDescriptorProto::EnumDescriptorProto(const EnumDescriptorProto& from)
5678  : ::google::protobuf::Message(),
5679    _internal_metadata_(NULL) {
5680  SharedCtor();
5681  MergeFrom(from);
5682  // @@protoc_insertion_point(copy_constructor:google.protobuf.EnumDescriptorProto)
5683}
5684
5685void EnumDescriptorProto::SharedCtor() {
5686  ::google::protobuf::internal::GetEmptyString();
5687  _cached_size_ = 0;
5688  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5689  options_ = NULL;
5690  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5691}
5692
5693EnumDescriptorProto::~EnumDescriptorProto() {
5694  // @@protoc_insertion_point(destructor:google.protobuf.EnumDescriptorProto)
5695  SharedDtor();
5696}
5697
5698void EnumDescriptorProto::SharedDtor() {
5699  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5700  if (this != default_instance_) {
5701    delete options_;
5702  }
5703}
5704
5705void EnumDescriptorProto::SetCachedSize(int size) const {
5706  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
5707  _cached_size_ = size;
5708  GOOGLE_SAFE_CONCURRENT_WRITES_END();
5709}
5710const ::google::protobuf::Descriptor* EnumDescriptorProto::descriptor() {
5711  protobuf_AssignDescriptorsOnce();
5712  return EnumDescriptorProto_descriptor_;
5713}
5714
5715const EnumDescriptorProto& EnumDescriptorProto::default_instance() {
5716  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
5717  return *default_instance_;
5718}
5719
5720EnumDescriptorProto* EnumDescriptorProto::default_instance_ = NULL;
5721
5722EnumDescriptorProto* EnumDescriptorProto::New(::google::protobuf::Arena* arena) const {
5723  EnumDescriptorProto* n = new EnumDescriptorProto;
5724  if (arena != NULL) {
5725    arena->Own(n);
5726  }
5727  return n;
5728}
5729
5730void EnumDescriptorProto::Clear() {
5731// @@protoc_insertion_point(message_clear_start:google.protobuf.EnumDescriptorProto)
5732  if (_has_bits_[0 / 32] & 5u) {
5733    if (has_name()) {
5734      name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
5735    }
5736    if (has_options()) {
5737      if (options_ != NULL) options_->::google::protobuf::EnumOptions::Clear();
5738    }
5739  }
5740  value_.Clear();
5741  ::memset(_has_bits_, 0, sizeof(_has_bits_));
5742  if (_internal_metadata_.have_unknown_fields()) {
5743    mutable_unknown_fields()->Clear();
5744  }
5745}
5746
5747bool EnumDescriptorProto::MergePartialFromCodedStream(
5748    ::google::protobuf::io::CodedInputStream* input) {
5749#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
5750  ::google::protobuf::uint32 tag;
5751  // @@protoc_insertion_point(parse_start:google.protobuf.EnumDescriptorProto)
5752  for (;;) {
5753    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
5754    tag = p.first;
5755    if (!p.second) goto handle_unusual;
5756    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
5757      // optional string name = 1;
5758      case 1: {
5759        if (tag == 10) {
5760          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
5761                input, this->mutable_name()));
5762          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
5763            this->name().data(), this->name().length(),
5764            ::google::protobuf::internal::WireFormat::PARSE,
5765            "google.protobuf.EnumDescriptorProto.name");
5766        } else {
5767          goto handle_unusual;
5768        }
5769        if (input->ExpectTag(18)) goto parse_value;
5770        break;
5771      }
5772
5773      // repeated .google.protobuf.EnumValueDescriptorProto value = 2;
5774      case 2: {
5775        if (tag == 18) {
5776         parse_value:
5777          DO_(input->IncrementRecursionDepth());
5778         parse_loop_value:
5779          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
5780                input, add_value()));
5781        } else {
5782          goto handle_unusual;
5783        }
5784        if (input->ExpectTag(18)) goto parse_loop_value;
5785        input->UnsafeDecrementRecursionDepth();
5786        if (input->ExpectTag(26)) goto parse_options;
5787        break;
5788      }
5789
5790      // optional .google.protobuf.EnumOptions options = 3;
5791      case 3: {
5792        if (tag == 26) {
5793         parse_options:
5794          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
5795               input, mutable_options()));
5796        } else {
5797          goto handle_unusual;
5798        }
5799        if (input->ExpectAtEnd()) goto success;
5800        break;
5801      }
5802
5803      default: {
5804      handle_unusual:
5805        if (tag == 0 ||
5806            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
5807            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
5808          goto success;
5809        }
5810        DO_(::google::protobuf::internal::WireFormat::SkipField(
5811              input, tag, mutable_unknown_fields()));
5812        break;
5813      }
5814    }
5815  }
5816success:
5817  // @@protoc_insertion_point(parse_success:google.protobuf.EnumDescriptorProto)
5818  return true;
5819failure:
5820  // @@protoc_insertion_point(parse_failure:google.protobuf.EnumDescriptorProto)
5821  return false;
5822#undef DO_
5823}
5824
5825void EnumDescriptorProto::SerializeWithCachedSizes(
5826    ::google::protobuf::io::CodedOutputStream* output) const {
5827  // @@protoc_insertion_point(serialize_start:google.protobuf.EnumDescriptorProto)
5828  // optional string name = 1;
5829  if (has_name()) {
5830    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
5831      this->name().data(), this->name().length(),
5832      ::google::protobuf::internal::WireFormat::SERIALIZE,
5833      "google.protobuf.EnumDescriptorProto.name");
5834    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
5835      1, this->name(), output);
5836  }
5837
5838  // repeated .google.protobuf.EnumValueDescriptorProto value = 2;
5839  for (unsigned int i = 0, n = this->value_size(); i < n; i++) {
5840    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
5841      2, this->value(i), output);
5842  }
5843
5844  // optional .google.protobuf.EnumOptions options = 3;
5845  if (has_options()) {
5846    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
5847      3, *this->options_, output);
5848  }
5849
5850  if (_internal_metadata_.have_unknown_fields()) {
5851    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
5852        unknown_fields(), output);
5853  }
5854  // @@protoc_insertion_point(serialize_end:google.protobuf.EnumDescriptorProto)
5855}
5856
5857::google::protobuf::uint8* EnumDescriptorProto::SerializeWithCachedSizesToArray(
5858    ::google::protobuf::uint8* target) const {
5859  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.EnumDescriptorProto)
5860  // optional string name = 1;
5861  if (has_name()) {
5862    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
5863      this->name().data(), this->name().length(),
5864      ::google::protobuf::internal::WireFormat::SERIALIZE,
5865      "google.protobuf.EnumDescriptorProto.name");
5866    target =
5867      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
5868        1, this->name(), target);
5869  }
5870
5871  // repeated .google.protobuf.EnumValueDescriptorProto value = 2;
5872  for (unsigned int i = 0, n = this->value_size(); i < n; i++) {
5873    target = ::google::protobuf::internal::WireFormatLite::
5874      WriteMessageNoVirtualToArray(
5875        2, this->value(i), target);
5876  }
5877
5878  // optional .google.protobuf.EnumOptions options = 3;
5879  if (has_options()) {
5880    target = ::google::protobuf::internal::WireFormatLite::
5881      WriteMessageNoVirtualToArray(
5882        3, *this->options_, target);
5883  }
5884
5885  if (_internal_metadata_.have_unknown_fields()) {
5886    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
5887        unknown_fields(), target);
5888  }
5889  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.EnumDescriptorProto)
5890  return target;
5891}
5892
5893int EnumDescriptorProto::ByteSize() const {
5894// @@protoc_insertion_point(message_byte_size_start:google.protobuf.EnumDescriptorProto)
5895  int total_size = 0;
5896
5897  if (_has_bits_[0 / 32] & 5u) {
5898    // optional string name = 1;
5899    if (has_name()) {
5900      total_size += 1 +
5901        ::google::protobuf::internal::WireFormatLite::StringSize(
5902          this->name());
5903    }
5904
5905    // optional .google.protobuf.EnumOptions options = 3;
5906    if (has_options()) {
5907      total_size += 1 +
5908        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
5909          *this->options_);
5910    }
5911
5912  }
5913  // repeated .google.protobuf.EnumValueDescriptorProto value = 2;
5914  total_size += 1 * this->value_size();
5915  for (int i = 0; i < this->value_size(); i++) {
5916    total_size +=
5917      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
5918        this->value(i));
5919  }
5920
5921  if (_internal_metadata_.have_unknown_fields()) {
5922    total_size +=
5923      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
5924        unknown_fields());
5925  }
5926  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
5927  _cached_size_ = total_size;
5928  GOOGLE_SAFE_CONCURRENT_WRITES_END();
5929  return total_size;
5930}
5931
5932void EnumDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
5933// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.EnumDescriptorProto)
5934  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
5935  const EnumDescriptorProto* source =
5936      ::google::protobuf::internal::DynamicCastToGenerated<const EnumDescriptorProto>(
5937          &from);
5938  if (source == NULL) {
5939  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.EnumDescriptorProto)
5940    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
5941  } else {
5942  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.EnumDescriptorProto)
5943    MergeFrom(*source);
5944  }
5945}
5946
5947void EnumDescriptorProto::MergeFrom(const EnumDescriptorProto& from) {
5948// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.EnumDescriptorProto)
5949  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
5950  value_.MergeFrom(from.value_);
5951  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
5952    if (from.has_name()) {
5953      set_has_name();
5954      name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
5955    }
5956    if (from.has_options()) {
5957      mutable_options()->::google::protobuf::EnumOptions::MergeFrom(from.options());
5958    }
5959  }
5960  if (from._internal_metadata_.have_unknown_fields()) {
5961    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
5962  }
5963}
5964
5965void EnumDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
5966// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.EnumDescriptorProto)
5967  if (&from == this) return;
5968  Clear();
5969  MergeFrom(from);
5970}
5971
5972void EnumDescriptorProto::CopyFrom(const EnumDescriptorProto& from) {
5973// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.EnumDescriptorProto)
5974  if (&from == this) return;
5975  Clear();
5976  MergeFrom(from);
5977}
5978
5979bool EnumDescriptorProto::IsInitialized() const {
5980
5981  if (!::google::protobuf::internal::AllAreInitialized(this->value())) return false;
5982  if (has_options()) {
5983    if (!this->options_->IsInitialized()) return false;
5984  }
5985  return true;
5986}
5987
5988void EnumDescriptorProto::Swap(EnumDescriptorProto* other) {
5989  if (other == this) return;
5990  InternalSwap(other);
5991}
5992void EnumDescriptorProto::InternalSwap(EnumDescriptorProto* other) {
5993  name_.Swap(&other->name_);
5994  value_.UnsafeArenaSwap(&other->value_);
5995  std::swap(options_, other->options_);
5996  std::swap(_has_bits_[0], other->_has_bits_[0]);
5997  _internal_metadata_.Swap(&other->_internal_metadata_);
5998  std::swap(_cached_size_, other->_cached_size_);
5999}
6000
6001::google::protobuf::Metadata EnumDescriptorProto::GetMetadata() const {
6002  protobuf_AssignDescriptorsOnce();
6003  ::google::protobuf::Metadata metadata;
6004  metadata.descriptor = EnumDescriptorProto_descriptor_;
6005  metadata.reflection = EnumDescriptorProto_reflection_;
6006  return metadata;
6007}
6008
6009#if PROTOBUF_INLINE_NOT_IN_HEADERS
6010// EnumDescriptorProto
6011
6012// optional string name = 1;
6013bool EnumDescriptorProto::has_name() const {
6014  return (_has_bits_[0] & 0x00000001u) != 0;
6015}
6016void EnumDescriptorProto::set_has_name() {
6017  _has_bits_[0] |= 0x00000001u;
6018}
6019void EnumDescriptorProto::clear_has_name() {
6020  _has_bits_[0] &= ~0x00000001u;
6021}
6022void EnumDescriptorProto::clear_name() {
6023  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6024  clear_has_name();
6025}
6026 const ::std::string& EnumDescriptorProto::name() const {
6027  // @@protoc_insertion_point(field_get:google.protobuf.EnumDescriptorProto.name)
6028  return name_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6029}
6030 void EnumDescriptorProto::set_name(const ::std::string& value) {
6031  set_has_name();
6032  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
6033  // @@protoc_insertion_point(field_set:google.protobuf.EnumDescriptorProto.name)
6034}
6035 void EnumDescriptorProto::set_name(const char* value) {
6036  set_has_name();
6037  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
6038  // @@protoc_insertion_point(field_set_char:google.protobuf.EnumDescriptorProto.name)
6039}
6040 void EnumDescriptorProto::set_name(const char* value, size_t size) {
6041  set_has_name();
6042  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
6043      ::std::string(reinterpret_cast<const char*>(value), size));
6044  // @@protoc_insertion_point(field_set_pointer:google.protobuf.EnumDescriptorProto.name)
6045}
6046 ::std::string* EnumDescriptorProto::mutable_name() {
6047  set_has_name();
6048  // @@protoc_insertion_point(field_mutable:google.protobuf.EnumDescriptorProto.name)
6049  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6050}
6051 ::std::string* EnumDescriptorProto::release_name() {
6052  // @@protoc_insertion_point(field_release:google.protobuf.EnumDescriptorProto.name)
6053  clear_has_name();
6054  return name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6055}
6056 void EnumDescriptorProto::set_allocated_name(::std::string* name) {
6057  if (name != NULL) {
6058    set_has_name();
6059  } else {
6060    clear_has_name();
6061  }
6062  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
6063  // @@protoc_insertion_point(field_set_allocated:google.protobuf.EnumDescriptorProto.name)
6064}
6065
6066// repeated .google.protobuf.EnumValueDescriptorProto value = 2;
6067int EnumDescriptorProto::value_size() const {
6068  return value_.size();
6069}
6070void EnumDescriptorProto::clear_value() {
6071  value_.Clear();
6072}
6073const ::google::protobuf::EnumValueDescriptorProto& EnumDescriptorProto::value(int index) const {
6074  // @@protoc_insertion_point(field_get:google.protobuf.EnumDescriptorProto.value)
6075  return value_.Get(index);
6076}
6077::google::protobuf::EnumValueDescriptorProto* EnumDescriptorProto::mutable_value(int index) {
6078  // @@protoc_insertion_point(field_mutable:google.protobuf.EnumDescriptorProto.value)
6079  return value_.Mutable(index);
6080}
6081::google::protobuf::EnumValueDescriptorProto* EnumDescriptorProto::add_value() {
6082  // @@protoc_insertion_point(field_add:google.protobuf.EnumDescriptorProto.value)
6083  return value_.Add();
6084}
6085::google::protobuf::RepeatedPtrField< ::google::protobuf::EnumValueDescriptorProto >*
6086EnumDescriptorProto::mutable_value() {
6087  // @@protoc_insertion_point(field_mutable_list:google.protobuf.EnumDescriptorProto.value)
6088  return &value_;
6089}
6090const ::google::protobuf::RepeatedPtrField< ::google::protobuf::EnumValueDescriptorProto >&
6091EnumDescriptorProto::value() const {
6092  // @@protoc_insertion_point(field_list:google.protobuf.EnumDescriptorProto.value)
6093  return value_;
6094}
6095
6096// optional .google.protobuf.EnumOptions options = 3;
6097bool EnumDescriptorProto::has_options() const {
6098  return (_has_bits_[0] & 0x00000004u) != 0;
6099}
6100void EnumDescriptorProto::set_has_options() {
6101  _has_bits_[0] |= 0x00000004u;
6102}
6103void EnumDescriptorProto::clear_has_options() {
6104  _has_bits_[0] &= ~0x00000004u;
6105}
6106void EnumDescriptorProto::clear_options() {
6107  if (options_ != NULL) options_->::google::protobuf::EnumOptions::Clear();
6108  clear_has_options();
6109}
6110const ::google::protobuf::EnumOptions& EnumDescriptorProto::options() const {
6111  // @@protoc_insertion_point(field_get:google.protobuf.EnumDescriptorProto.options)
6112  return options_ != NULL ? *options_ : *default_instance_->options_;
6113}
6114::google::protobuf::EnumOptions* EnumDescriptorProto::mutable_options() {
6115  set_has_options();
6116  if (options_ == NULL) {
6117    options_ = new ::google::protobuf::EnumOptions;
6118  }
6119  // @@protoc_insertion_point(field_mutable:google.protobuf.EnumDescriptorProto.options)
6120  return options_;
6121}
6122::google::protobuf::EnumOptions* EnumDescriptorProto::release_options() {
6123  // @@protoc_insertion_point(field_release:google.protobuf.EnumDescriptorProto.options)
6124  clear_has_options();
6125  ::google::protobuf::EnumOptions* temp = options_;
6126  options_ = NULL;
6127  return temp;
6128}
6129void EnumDescriptorProto::set_allocated_options(::google::protobuf::EnumOptions* options) {
6130  delete options_;
6131  options_ = options;
6132  if (options) {
6133    set_has_options();
6134  } else {
6135    clear_has_options();
6136  }
6137  // @@protoc_insertion_point(field_set_allocated:google.protobuf.EnumDescriptorProto.options)
6138}
6139
6140#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
6141
6142// ===================================================================
6143
6144#if !defined(_MSC_VER) || _MSC_VER >= 1900
6145const int EnumValueDescriptorProto::kNameFieldNumber;
6146const int EnumValueDescriptorProto::kNumberFieldNumber;
6147const int EnumValueDescriptorProto::kOptionsFieldNumber;
6148#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
6149
6150EnumValueDescriptorProto::EnumValueDescriptorProto()
6151  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
6152  SharedCtor();
6153  // @@protoc_insertion_point(constructor:google.protobuf.EnumValueDescriptorProto)
6154}
6155
6156void EnumValueDescriptorProto::InitAsDefaultInstance() {
6157  options_ = const_cast< ::google::protobuf::EnumValueOptions*>(&::google::protobuf::EnumValueOptions::default_instance());
6158}
6159
6160EnumValueDescriptorProto::EnumValueDescriptorProto(const EnumValueDescriptorProto& from)
6161  : ::google::protobuf::Message(),
6162    _internal_metadata_(NULL) {
6163  SharedCtor();
6164  MergeFrom(from);
6165  // @@protoc_insertion_point(copy_constructor:google.protobuf.EnumValueDescriptorProto)
6166}
6167
6168void EnumValueDescriptorProto::SharedCtor() {
6169  ::google::protobuf::internal::GetEmptyString();
6170  _cached_size_ = 0;
6171  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6172  number_ = 0;
6173  options_ = NULL;
6174  ::memset(_has_bits_, 0, sizeof(_has_bits_));
6175}
6176
6177EnumValueDescriptorProto::~EnumValueDescriptorProto() {
6178  // @@protoc_insertion_point(destructor:google.protobuf.EnumValueDescriptorProto)
6179  SharedDtor();
6180}
6181
6182void EnumValueDescriptorProto::SharedDtor() {
6183  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6184  if (this != default_instance_) {
6185    delete options_;
6186  }
6187}
6188
6189void EnumValueDescriptorProto::SetCachedSize(int size) const {
6190  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
6191  _cached_size_ = size;
6192  GOOGLE_SAFE_CONCURRENT_WRITES_END();
6193}
6194const ::google::protobuf::Descriptor* EnumValueDescriptorProto::descriptor() {
6195  protobuf_AssignDescriptorsOnce();
6196  return EnumValueDescriptorProto_descriptor_;
6197}
6198
6199const EnumValueDescriptorProto& EnumValueDescriptorProto::default_instance() {
6200  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
6201  return *default_instance_;
6202}
6203
6204EnumValueDescriptorProto* EnumValueDescriptorProto::default_instance_ = NULL;
6205
6206EnumValueDescriptorProto* EnumValueDescriptorProto::New(::google::protobuf::Arena* arena) const {
6207  EnumValueDescriptorProto* n = new EnumValueDescriptorProto;
6208  if (arena != NULL) {
6209    arena->Own(n);
6210  }
6211  return n;
6212}
6213
6214void EnumValueDescriptorProto::Clear() {
6215// @@protoc_insertion_point(message_clear_start:google.protobuf.EnumValueDescriptorProto)
6216  if (_has_bits_[0 / 32] & 7u) {
6217    if (has_name()) {
6218      name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6219    }
6220    number_ = 0;
6221    if (has_options()) {
6222      if (options_ != NULL) options_->::google::protobuf::EnumValueOptions::Clear();
6223    }
6224  }
6225  ::memset(_has_bits_, 0, sizeof(_has_bits_));
6226  if (_internal_metadata_.have_unknown_fields()) {
6227    mutable_unknown_fields()->Clear();
6228  }
6229}
6230
6231bool EnumValueDescriptorProto::MergePartialFromCodedStream(
6232    ::google::protobuf::io::CodedInputStream* input) {
6233#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
6234  ::google::protobuf::uint32 tag;
6235  // @@protoc_insertion_point(parse_start:google.protobuf.EnumValueDescriptorProto)
6236  for (;;) {
6237    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
6238    tag = p.first;
6239    if (!p.second) goto handle_unusual;
6240    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
6241      // optional string name = 1;
6242      case 1: {
6243        if (tag == 10) {
6244          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
6245                input, this->mutable_name()));
6246          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
6247            this->name().data(), this->name().length(),
6248            ::google::protobuf::internal::WireFormat::PARSE,
6249            "google.protobuf.EnumValueDescriptorProto.name");
6250        } else {
6251          goto handle_unusual;
6252        }
6253        if (input->ExpectTag(16)) goto parse_number;
6254        break;
6255      }
6256
6257      // optional int32 number = 2;
6258      case 2: {
6259        if (tag == 16) {
6260         parse_number:
6261          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
6262                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
6263                 input, &number_)));
6264          set_has_number();
6265        } else {
6266          goto handle_unusual;
6267        }
6268        if (input->ExpectTag(26)) goto parse_options;
6269        break;
6270      }
6271
6272      // optional .google.protobuf.EnumValueOptions options = 3;
6273      case 3: {
6274        if (tag == 26) {
6275         parse_options:
6276          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
6277               input, mutable_options()));
6278        } else {
6279          goto handle_unusual;
6280        }
6281        if (input->ExpectAtEnd()) goto success;
6282        break;
6283      }
6284
6285      default: {
6286      handle_unusual:
6287        if (tag == 0 ||
6288            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
6289            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
6290          goto success;
6291        }
6292        DO_(::google::protobuf::internal::WireFormat::SkipField(
6293              input, tag, mutable_unknown_fields()));
6294        break;
6295      }
6296    }
6297  }
6298success:
6299  // @@protoc_insertion_point(parse_success:google.protobuf.EnumValueDescriptorProto)
6300  return true;
6301failure:
6302  // @@protoc_insertion_point(parse_failure:google.protobuf.EnumValueDescriptorProto)
6303  return false;
6304#undef DO_
6305}
6306
6307void EnumValueDescriptorProto::SerializeWithCachedSizes(
6308    ::google::protobuf::io::CodedOutputStream* output) const {
6309  // @@protoc_insertion_point(serialize_start:google.protobuf.EnumValueDescriptorProto)
6310  // optional string name = 1;
6311  if (has_name()) {
6312    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
6313      this->name().data(), this->name().length(),
6314      ::google::protobuf::internal::WireFormat::SERIALIZE,
6315      "google.protobuf.EnumValueDescriptorProto.name");
6316    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
6317      1, this->name(), output);
6318  }
6319
6320  // optional int32 number = 2;
6321  if (has_number()) {
6322    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->number(), output);
6323  }
6324
6325  // optional .google.protobuf.EnumValueOptions options = 3;
6326  if (has_options()) {
6327    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
6328      3, *this->options_, output);
6329  }
6330
6331  if (_internal_metadata_.have_unknown_fields()) {
6332    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
6333        unknown_fields(), output);
6334  }
6335  // @@protoc_insertion_point(serialize_end:google.protobuf.EnumValueDescriptorProto)
6336}
6337
6338::google::protobuf::uint8* EnumValueDescriptorProto::SerializeWithCachedSizesToArray(
6339    ::google::protobuf::uint8* target) const {
6340  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.EnumValueDescriptorProto)
6341  // optional string name = 1;
6342  if (has_name()) {
6343    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
6344      this->name().data(), this->name().length(),
6345      ::google::protobuf::internal::WireFormat::SERIALIZE,
6346      "google.protobuf.EnumValueDescriptorProto.name");
6347    target =
6348      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
6349        1, this->name(), target);
6350  }
6351
6352  // optional int32 number = 2;
6353  if (has_number()) {
6354    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->number(), target);
6355  }
6356
6357  // optional .google.protobuf.EnumValueOptions options = 3;
6358  if (has_options()) {
6359    target = ::google::protobuf::internal::WireFormatLite::
6360      WriteMessageNoVirtualToArray(
6361        3, *this->options_, target);
6362  }
6363
6364  if (_internal_metadata_.have_unknown_fields()) {
6365    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
6366        unknown_fields(), target);
6367  }
6368  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.EnumValueDescriptorProto)
6369  return target;
6370}
6371
6372int EnumValueDescriptorProto::ByteSize() const {
6373// @@protoc_insertion_point(message_byte_size_start:google.protobuf.EnumValueDescriptorProto)
6374  int total_size = 0;
6375
6376  if (_has_bits_[0 / 32] & 7u) {
6377    // optional string name = 1;
6378    if (has_name()) {
6379      total_size += 1 +
6380        ::google::protobuf::internal::WireFormatLite::StringSize(
6381          this->name());
6382    }
6383
6384    // optional int32 number = 2;
6385    if (has_number()) {
6386      total_size += 1 +
6387        ::google::protobuf::internal::WireFormatLite::Int32Size(
6388          this->number());
6389    }
6390
6391    // optional .google.protobuf.EnumValueOptions options = 3;
6392    if (has_options()) {
6393      total_size += 1 +
6394        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
6395          *this->options_);
6396    }
6397
6398  }
6399  if (_internal_metadata_.have_unknown_fields()) {
6400    total_size +=
6401      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
6402        unknown_fields());
6403  }
6404  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
6405  _cached_size_ = total_size;
6406  GOOGLE_SAFE_CONCURRENT_WRITES_END();
6407  return total_size;
6408}
6409
6410void EnumValueDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
6411// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.EnumValueDescriptorProto)
6412  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
6413  const EnumValueDescriptorProto* source =
6414      ::google::protobuf::internal::DynamicCastToGenerated<const EnumValueDescriptorProto>(
6415          &from);
6416  if (source == NULL) {
6417  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.EnumValueDescriptorProto)
6418    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
6419  } else {
6420  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.EnumValueDescriptorProto)
6421    MergeFrom(*source);
6422  }
6423}
6424
6425void EnumValueDescriptorProto::MergeFrom(const EnumValueDescriptorProto& from) {
6426// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.EnumValueDescriptorProto)
6427  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
6428  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
6429    if (from.has_name()) {
6430      set_has_name();
6431      name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
6432    }
6433    if (from.has_number()) {
6434      set_number(from.number());
6435    }
6436    if (from.has_options()) {
6437      mutable_options()->::google::protobuf::EnumValueOptions::MergeFrom(from.options());
6438    }
6439  }
6440  if (from._internal_metadata_.have_unknown_fields()) {
6441    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
6442  }
6443}
6444
6445void EnumValueDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
6446// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.EnumValueDescriptorProto)
6447  if (&from == this) return;
6448  Clear();
6449  MergeFrom(from);
6450}
6451
6452void EnumValueDescriptorProto::CopyFrom(const EnumValueDescriptorProto& from) {
6453// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.EnumValueDescriptorProto)
6454  if (&from == this) return;
6455  Clear();
6456  MergeFrom(from);
6457}
6458
6459bool EnumValueDescriptorProto::IsInitialized() const {
6460
6461  if (has_options()) {
6462    if (!this->options_->IsInitialized()) return false;
6463  }
6464  return true;
6465}
6466
6467void EnumValueDescriptorProto::Swap(EnumValueDescriptorProto* other) {
6468  if (other == this) return;
6469  InternalSwap(other);
6470}
6471void EnumValueDescriptorProto::InternalSwap(EnumValueDescriptorProto* other) {
6472  name_.Swap(&other->name_);
6473  std::swap(number_, other->number_);
6474  std::swap(options_, other->options_);
6475  std::swap(_has_bits_[0], other->_has_bits_[0]);
6476  _internal_metadata_.Swap(&other->_internal_metadata_);
6477  std::swap(_cached_size_, other->_cached_size_);
6478}
6479
6480::google::protobuf::Metadata EnumValueDescriptorProto::GetMetadata() const {
6481  protobuf_AssignDescriptorsOnce();
6482  ::google::protobuf::Metadata metadata;
6483  metadata.descriptor = EnumValueDescriptorProto_descriptor_;
6484  metadata.reflection = EnumValueDescriptorProto_reflection_;
6485  return metadata;
6486}
6487
6488#if PROTOBUF_INLINE_NOT_IN_HEADERS
6489// EnumValueDescriptorProto
6490
6491// optional string name = 1;
6492bool EnumValueDescriptorProto::has_name() const {
6493  return (_has_bits_[0] & 0x00000001u) != 0;
6494}
6495void EnumValueDescriptorProto::set_has_name() {
6496  _has_bits_[0] |= 0x00000001u;
6497}
6498void EnumValueDescriptorProto::clear_has_name() {
6499  _has_bits_[0] &= ~0x00000001u;
6500}
6501void EnumValueDescriptorProto::clear_name() {
6502  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6503  clear_has_name();
6504}
6505 const ::std::string& EnumValueDescriptorProto::name() const {
6506  // @@protoc_insertion_point(field_get:google.protobuf.EnumValueDescriptorProto.name)
6507  return name_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6508}
6509 void EnumValueDescriptorProto::set_name(const ::std::string& value) {
6510  set_has_name();
6511  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
6512  // @@protoc_insertion_point(field_set:google.protobuf.EnumValueDescriptorProto.name)
6513}
6514 void EnumValueDescriptorProto::set_name(const char* value) {
6515  set_has_name();
6516  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
6517  // @@protoc_insertion_point(field_set_char:google.protobuf.EnumValueDescriptorProto.name)
6518}
6519 void EnumValueDescriptorProto::set_name(const char* value, size_t size) {
6520  set_has_name();
6521  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
6522      ::std::string(reinterpret_cast<const char*>(value), size));
6523  // @@protoc_insertion_point(field_set_pointer:google.protobuf.EnumValueDescriptorProto.name)
6524}
6525 ::std::string* EnumValueDescriptorProto::mutable_name() {
6526  set_has_name();
6527  // @@protoc_insertion_point(field_mutable:google.protobuf.EnumValueDescriptorProto.name)
6528  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6529}
6530 ::std::string* EnumValueDescriptorProto::release_name() {
6531  // @@protoc_insertion_point(field_release:google.protobuf.EnumValueDescriptorProto.name)
6532  clear_has_name();
6533  return name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6534}
6535 void EnumValueDescriptorProto::set_allocated_name(::std::string* name) {
6536  if (name != NULL) {
6537    set_has_name();
6538  } else {
6539    clear_has_name();
6540  }
6541  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
6542  // @@protoc_insertion_point(field_set_allocated:google.protobuf.EnumValueDescriptorProto.name)
6543}
6544
6545// optional int32 number = 2;
6546bool EnumValueDescriptorProto::has_number() const {
6547  return (_has_bits_[0] & 0x00000002u) != 0;
6548}
6549void EnumValueDescriptorProto::set_has_number() {
6550  _has_bits_[0] |= 0x00000002u;
6551}
6552void EnumValueDescriptorProto::clear_has_number() {
6553  _has_bits_[0] &= ~0x00000002u;
6554}
6555void EnumValueDescriptorProto::clear_number() {
6556  number_ = 0;
6557  clear_has_number();
6558}
6559 ::google::protobuf::int32 EnumValueDescriptorProto::number() const {
6560  // @@protoc_insertion_point(field_get:google.protobuf.EnumValueDescriptorProto.number)
6561  return number_;
6562}
6563 void EnumValueDescriptorProto::set_number(::google::protobuf::int32 value) {
6564  set_has_number();
6565  number_ = value;
6566  // @@protoc_insertion_point(field_set:google.protobuf.EnumValueDescriptorProto.number)
6567}
6568
6569// optional .google.protobuf.EnumValueOptions options = 3;
6570bool EnumValueDescriptorProto::has_options() const {
6571  return (_has_bits_[0] & 0x00000004u) != 0;
6572}
6573void EnumValueDescriptorProto::set_has_options() {
6574  _has_bits_[0] |= 0x00000004u;
6575}
6576void EnumValueDescriptorProto::clear_has_options() {
6577  _has_bits_[0] &= ~0x00000004u;
6578}
6579void EnumValueDescriptorProto::clear_options() {
6580  if (options_ != NULL) options_->::google::protobuf::EnumValueOptions::Clear();
6581  clear_has_options();
6582}
6583const ::google::protobuf::EnumValueOptions& EnumValueDescriptorProto::options() const {
6584  // @@protoc_insertion_point(field_get:google.protobuf.EnumValueDescriptorProto.options)
6585  return options_ != NULL ? *options_ : *default_instance_->options_;
6586}
6587::google::protobuf::EnumValueOptions* EnumValueDescriptorProto::mutable_options() {
6588  set_has_options();
6589  if (options_ == NULL) {
6590    options_ = new ::google::protobuf::EnumValueOptions;
6591  }
6592  // @@protoc_insertion_point(field_mutable:google.protobuf.EnumValueDescriptorProto.options)
6593  return options_;
6594}
6595::google::protobuf::EnumValueOptions* EnumValueDescriptorProto::release_options() {
6596  // @@protoc_insertion_point(field_release:google.protobuf.EnumValueDescriptorProto.options)
6597  clear_has_options();
6598  ::google::protobuf::EnumValueOptions* temp = options_;
6599  options_ = NULL;
6600  return temp;
6601}
6602void EnumValueDescriptorProto::set_allocated_options(::google::protobuf::EnumValueOptions* options) {
6603  delete options_;
6604  options_ = options;
6605  if (options) {
6606    set_has_options();
6607  } else {
6608    clear_has_options();
6609  }
6610  // @@protoc_insertion_point(field_set_allocated:google.protobuf.EnumValueDescriptorProto.options)
6611}
6612
6613#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
6614
6615// ===================================================================
6616
6617#if !defined(_MSC_VER) || _MSC_VER >= 1900
6618const int ServiceDescriptorProto::kNameFieldNumber;
6619const int ServiceDescriptorProto::kMethodFieldNumber;
6620const int ServiceDescriptorProto::kOptionsFieldNumber;
6621#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
6622
6623ServiceDescriptorProto::ServiceDescriptorProto()
6624  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
6625  SharedCtor();
6626  // @@protoc_insertion_point(constructor:google.protobuf.ServiceDescriptorProto)
6627}
6628
6629void ServiceDescriptorProto::InitAsDefaultInstance() {
6630  options_ = const_cast< ::google::protobuf::ServiceOptions*>(&::google::protobuf::ServiceOptions::default_instance());
6631}
6632
6633ServiceDescriptorProto::ServiceDescriptorProto(const ServiceDescriptorProto& from)
6634  : ::google::protobuf::Message(),
6635    _internal_metadata_(NULL) {
6636  SharedCtor();
6637  MergeFrom(from);
6638  // @@protoc_insertion_point(copy_constructor:google.protobuf.ServiceDescriptorProto)
6639}
6640
6641void ServiceDescriptorProto::SharedCtor() {
6642  ::google::protobuf::internal::GetEmptyString();
6643  _cached_size_ = 0;
6644  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6645  options_ = NULL;
6646  ::memset(_has_bits_, 0, sizeof(_has_bits_));
6647}
6648
6649ServiceDescriptorProto::~ServiceDescriptorProto() {
6650  // @@protoc_insertion_point(destructor:google.protobuf.ServiceDescriptorProto)
6651  SharedDtor();
6652}
6653
6654void ServiceDescriptorProto::SharedDtor() {
6655  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6656  if (this != default_instance_) {
6657    delete options_;
6658  }
6659}
6660
6661void ServiceDescriptorProto::SetCachedSize(int size) const {
6662  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
6663  _cached_size_ = size;
6664  GOOGLE_SAFE_CONCURRENT_WRITES_END();
6665}
6666const ::google::protobuf::Descriptor* ServiceDescriptorProto::descriptor() {
6667  protobuf_AssignDescriptorsOnce();
6668  return ServiceDescriptorProto_descriptor_;
6669}
6670
6671const ServiceDescriptorProto& ServiceDescriptorProto::default_instance() {
6672  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
6673  return *default_instance_;
6674}
6675
6676ServiceDescriptorProto* ServiceDescriptorProto::default_instance_ = NULL;
6677
6678ServiceDescriptorProto* ServiceDescriptorProto::New(::google::protobuf::Arena* arena) const {
6679  ServiceDescriptorProto* n = new ServiceDescriptorProto;
6680  if (arena != NULL) {
6681    arena->Own(n);
6682  }
6683  return n;
6684}
6685
6686void ServiceDescriptorProto::Clear() {
6687// @@protoc_insertion_point(message_clear_start:google.protobuf.ServiceDescriptorProto)
6688  if (_has_bits_[0 / 32] & 5u) {
6689    if (has_name()) {
6690      name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6691    }
6692    if (has_options()) {
6693      if (options_ != NULL) options_->::google::protobuf::ServiceOptions::Clear();
6694    }
6695  }
6696  method_.Clear();
6697  ::memset(_has_bits_, 0, sizeof(_has_bits_));
6698  if (_internal_metadata_.have_unknown_fields()) {
6699    mutable_unknown_fields()->Clear();
6700  }
6701}
6702
6703bool ServiceDescriptorProto::MergePartialFromCodedStream(
6704    ::google::protobuf::io::CodedInputStream* input) {
6705#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
6706  ::google::protobuf::uint32 tag;
6707  // @@protoc_insertion_point(parse_start:google.protobuf.ServiceDescriptorProto)
6708  for (;;) {
6709    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
6710    tag = p.first;
6711    if (!p.second) goto handle_unusual;
6712    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
6713      // optional string name = 1;
6714      case 1: {
6715        if (tag == 10) {
6716          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
6717                input, this->mutable_name()));
6718          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
6719            this->name().data(), this->name().length(),
6720            ::google::protobuf::internal::WireFormat::PARSE,
6721            "google.protobuf.ServiceDescriptorProto.name");
6722        } else {
6723          goto handle_unusual;
6724        }
6725        if (input->ExpectTag(18)) goto parse_method;
6726        break;
6727      }
6728
6729      // repeated .google.protobuf.MethodDescriptorProto method = 2;
6730      case 2: {
6731        if (tag == 18) {
6732         parse_method:
6733          DO_(input->IncrementRecursionDepth());
6734         parse_loop_method:
6735          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
6736                input, add_method()));
6737        } else {
6738          goto handle_unusual;
6739        }
6740        if (input->ExpectTag(18)) goto parse_loop_method;
6741        input->UnsafeDecrementRecursionDepth();
6742        if (input->ExpectTag(26)) goto parse_options;
6743        break;
6744      }
6745
6746      // optional .google.protobuf.ServiceOptions options = 3;
6747      case 3: {
6748        if (tag == 26) {
6749         parse_options:
6750          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
6751               input, mutable_options()));
6752        } else {
6753          goto handle_unusual;
6754        }
6755        if (input->ExpectAtEnd()) goto success;
6756        break;
6757      }
6758
6759      default: {
6760      handle_unusual:
6761        if (tag == 0 ||
6762            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
6763            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
6764          goto success;
6765        }
6766        DO_(::google::protobuf::internal::WireFormat::SkipField(
6767              input, tag, mutable_unknown_fields()));
6768        break;
6769      }
6770    }
6771  }
6772success:
6773  // @@protoc_insertion_point(parse_success:google.protobuf.ServiceDescriptorProto)
6774  return true;
6775failure:
6776  // @@protoc_insertion_point(parse_failure:google.protobuf.ServiceDescriptorProto)
6777  return false;
6778#undef DO_
6779}
6780
6781void ServiceDescriptorProto::SerializeWithCachedSizes(
6782    ::google::protobuf::io::CodedOutputStream* output) const {
6783  // @@protoc_insertion_point(serialize_start:google.protobuf.ServiceDescriptorProto)
6784  // optional string name = 1;
6785  if (has_name()) {
6786    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
6787      this->name().data(), this->name().length(),
6788      ::google::protobuf::internal::WireFormat::SERIALIZE,
6789      "google.protobuf.ServiceDescriptorProto.name");
6790    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
6791      1, this->name(), output);
6792  }
6793
6794  // repeated .google.protobuf.MethodDescriptorProto method = 2;
6795  for (unsigned int i = 0, n = this->method_size(); i < n; i++) {
6796    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
6797      2, this->method(i), output);
6798  }
6799
6800  // optional .google.protobuf.ServiceOptions options = 3;
6801  if (has_options()) {
6802    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
6803      3, *this->options_, output);
6804  }
6805
6806  if (_internal_metadata_.have_unknown_fields()) {
6807    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
6808        unknown_fields(), output);
6809  }
6810  // @@protoc_insertion_point(serialize_end:google.protobuf.ServiceDescriptorProto)
6811}
6812
6813::google::protobuf::uint8* ServiceDescriptorProto::SerializeWithCachedSizesToArray(
6814    ::google::protobuf::uint8* target) const {
6815  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.ServiceDescriptorProto)
6816  // optional string name = 1;
6817  if (has_name()) {
6818    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
6819      this->name().data(), this->name().length(),
6820      ::google::protobuf::internal::WireFormat::SERIALIZE,
6821      "google.protobuf.ServiceDescriptorProto.name");
6822    target =
6823      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
6824        1, this->name(), target);
6825  }
6826
6827  // repeated .google.protobuf.MethodDescriptorProto method = 2;
6828  for (unsigned int i = 0, n = this->method_size(); i < n; i++) {
6829    target = ::google::protobuf::internal::WireFormatLite::
6830      WriteMessageNoVirtualToArray(
6831        2, this->method(i), target);
6832  }
6833
6834  // optional .google.protobuf.ServiceOptions options = 3;
6835  if (has_options()) {
6836    target = ::google::protobuf::internal::WireFormatLite::
6837      WriteMessageNoVirtualToArray(
6838        3, *this->options_, target);
6839  }
6840
6841  if (_internal_metadata_.have_unknown_fields()) {
6842    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
6843        unknown_fields(), target);
6844  }
6845  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.ServiceDescriptorProto)
6846  return target;
6847}
6848
6849int ServiceDescriptorProto::ByteSize() const {
6850// @@protoc_insertion_point(message_byte_size_start:google.protobuf.ServiceDescriptorProto)
6851  int total_size = 0;
6852
6853  if (_has_bits_[0 / 32] & 5u) {
6854    // optional string name = 1;
6855    if (has_name()) {
6856      total_size += 1 +
6857        ::google::protobuf::internal::WireFormatLite::StringSize(
6858          this->name());
6859    }
6860
6861    // optional .google.protobuf.ServiceOptions options = 3;
6862    if (has_options()) {
6863      total_size += 1 +
6864        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
6865          *this->options_);
6866    }
6867
6868  }
6869  // repeated .google.protobuf.MethodDescriptorProto method = 2;
6870  total_size += 1 * this->method_size();
6871  for (int i = 0; i < this->method_size(); i++) {
6872    total_size +=
6873      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
6874        this->method(i));
6875  }
6876
6877  if (_internal_metadata_.have_unknown_fields()) {
6878    total_size +=
6879      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
6880        unknown_fields());
6881  }
6882  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
6883  _cached_size_ = total_size;
6884  GOOGLE_SAFE_CONCURRENT_WRITES_END();
6885  return total_size;
6886}
6887
6888void ServiceDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
6889// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.ServiceDescriptorProto)
6890  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
6891  const ServiceDescriptorProto* source =
6892      ::google::protobuf::internal::DynamicCastToGenerated<const ServiceDescriptorProto>(
6893          &from);
6894  if (source == NULL) {
6895  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.ServiceDescriptorProto)
6896    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
6897  } else {
6898  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.ServiceDescriptorProto)
6899    MergeFrom(*source);
6900  }
6901}
6902
6903void ServiceDescriptorProto::MergeFrom(const ServiceDescriptorProto& from) {
6904// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.ServiceDescriptorProto)
6905  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
6906  method_.MergeFrom(from.method_);
6907  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
6908    if (from.has_name()) {
6909      set_has_name();
6910      name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
6911    }
6912    if (from.has_options()) {
6913      mutable_options()->::google::protobuf::ServiceOptions::MergeFrom(from.options());
6914    }
6915  }
6916  if (from._internal_metadata_.have_unknown_fields()) {
6917    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
6918  }
6919}
6920
6921void ServiceDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
6922// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.ServiceDescriptorProto)
6923  if (&from == this) return;
6924  Clear();
6925  MergeFrom(from);
6926}
6927
6928void ServiceDescriptorProto::CopyFrom(const ServiceDescriptorProto& from) {
6929// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.ServiceDescriptorProto)
6930  if (&from == this) return;
6931  Clear();
6932  MergeFrom(from);
6933}
6934
6935bool ServiceDescriptorProto::IsInitialized() const {
6936
6937  if (!::google::protobuf::internal::AllAreInitialized(this->method())) return false;
6938  if (has_options()) {
6939    if (!this->options_->IsInitialized()) return false;
6940  }
6941  return true;
6942}
6943
6944void ServiceDescriptorProto::Swap(ServiceDescriptorProto* other) {
6945  if (other == this) return;
6946  InternalSwap(other);
6947}
6948void ServiceDescriptorProto::InternalSwap(ServiceDescriptorProto* other) {
6949  name_.Swap(&other->name_);
6950  method_.UnsafeArenaSwap(&other->method_);
6951  std::swap(options_, other->options_);
6952  std::swap(_has_bits_[0], other->_has_bits_[0]);
6953  _internal_metadata_.Swap(&other->_internal_metadata_);
6954  std::swap(_cached_size_, other->_cached_size_);
6955}
6956
6957::google::protobuf::Metadata ServiceDescriptorProto::GetMetadata() const {
6958  protobuf_AssignDescriptorsOnce();
6959  ::google::protobuf::Metadata metadata;
6960  metadata.descriptor = ServiceDescriptorProto_descriptor_;
6961  metadata.reflection = ServiceDescriptorProto_reflection_;
6962  return metadata;
6963}
6964
6965#if PROTOBUF_INLINE_NOT_IN_HEADERS
6966// ServiceDescriptorProto
6967
6968// optional string name = 1;
6969bool ServiceDescriptorProto::has_name() const {
6970  return (_has_bits_[0] & 0x00000001u) != 0;
6971}
6972void ServiceDescriptorProto::set_has_name() {
6973  _has_bits_[0] |= 0x00000001u;
6974}
6975void ServiceDescriptorProto::clear_has_name() {
6976  _has_bits_[0] &= ~0x00000001u;
6977}
6978void ServiceDescriptorProto::clear_name() {
6979  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6980  clear_has_name();
6981}
6982 const ::std::string& ServiceDescriptorProto::name() const {
6983  // @@protoc_insertion_point(field_get:google.protobuf.ServiceDescriptorProto.name)
6984  return name_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
6985}
6986 void ServiceDescriptorProto::set_name(const ::std::string& value) {
6987  set_has_name();
6988  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
6989  // @@protoc_insertion_point(field_set:google.protobuf.ServiceDescriptorProto.name)
6990}
6991 void ServiceDescriptorProto::set_name(const char* value) {
6992  set_has_name();
6993  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
6994  // @@protoc_insertion_point(field_set_char:google.protobuf.ServiceDescriptorProto.name)
6995}
6996 void ServiceDescriptorProto::set_name(const char* value, size_t size) {
6997  set_has_name();
6998  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
6999      ::std::string(reinterpret_cast<const char*>(value), size));
7000  // @@protoc_insertion_point(field_set_pointer:google.protobuf.ServiceDescriptorProto.name)
7001}
7002 ::std::string* ServiceDescriptorProto::mutable_name() {
7003  set_has_name();
7004  // @@protoc_insertion_point(field_mutable:google.protobuf.ServiceDescriptorProto.name)
7005  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7006}
7007 ::std::string* ServiceDescriptorProto::release_name() {
7008  // @@protoc_insertion_point(field_release:google.protobuf.ServiceDescriptorProto.name)
7009  clear_has_name();
7010  return name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7011}
7012 void ServiceDescriptorProto::set_allocated_name(::std::string* name) {
7013  if (name != NULL) {
7014    set_has_name();
7015  } else {
7016    clear_has_name();
7017  }
7018  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
7019  // @@protoc_insertion_point(field_set_allocated:google.protobuf.ServiceDescriptorProto.name)
7020}
7021
7022// repeated .google.protobuf.MethodDescriptorProto method = 2;
7023int ServiceDescriptorProto::method_size() const {
7024  return method_.size();
7025}
7026void ServiceDescriptorProto::clear_method() {
7027  method_.Clear();
7028}
7029const ::google::protobuf::MethodDescriptorProto& ServiceDescriptorProto::method(int index) const {
7030  // @@protoc_insertion_point(field_get:google.protobuf.ServiceDescriptorProto.method)
7031  return method_.Get(index);
7032}
7033::google::protobuf::MethodDescriptorProto* ServiceDescriptorProto::mutable_method(int index) {
7034  // @@protoc_insertion_point(field_mutable:google.protobuf.ServiceDescriptorProto.method)
7035  return method_.Mutable(index);
7036}
7037::google::protobuf::MethodDescriptorProto* ServiceDescriptorProto::add_method() {
7038  // @@protoc_insertion_point(field_add:google.protobuf.ServiceDescriptorProto.method)
7039  return method_.Add();
7040}
7041::google::protobuf::RepeatedPtrField< ::google::protobuf::MethodDescriptorProto >*
7042ServiceDescriptorProto::mutable_method() {
7043  // @@protoc_insertion_point(field_mutable_list:google.protobuf.ServiceDescriptorProto.method)
7044  return &method_;
7045}
7046const ::google::protobuf::RepeatedPtrField< ::google::protobuf::MethodDescriptorProto >&
7047ServiceDescriptorProto::method() const {
7048  // @@protoc_insertion_point(field_list:google.protobuf.ServiceDescriptorProto.method)
7049  return method_;
7050}
7051
7052// optional .google.protobuf.ServiceOptions options = 3;
7053bool ServiceDescriptorProto::has_options() const {
7054  return (_has_bits_[0] & 0x00000004u) != 0;
7055}
7056void ServiceDescriptorProto::set_has_options() {
7057  _has_bits_[0] |= 0x00000004u;
7058}
7059void ServiceDescriptorProto::clear_has_options() {
7060  _has_bits_[0] &= ~0x00000004u;
7061}
7062void ServiceDescriptorProto::clear_options() {
7063  if (options_ != NULL) options_->::google::protobuf::ServiceOptions::Clear();
7064  clear_has_options();
7065}
7066const ::google::protobuf::ServiceOptions& ServiceDescriptorProto::options() const {
7067  // @@protoc_insertion_point(field_get:google.protobuf.ServiceDescriptorProto.options)
7068  return options_ != NULL ? *options_ : *default_instance_->options_;
7069}
7070::google::protobuf::ServiceOptions* ServiceDescriptorProto::mutable_options() {
7071  set_has_options();
7072  if (options_ == NULL) {
7073    options_ = new ::google::protobuf::ServiceOptions;
7074  }
7075  // @@protoc_insertion_point(field_mutable:google.protobuf.ServiceDescriptorProto.options)
7076  return options_;
7077}
7078::google::protobuf::ServiceOptions* ServiceDescriptorProto::release_options() {
7079  // @@protoc_insertion_point(field_release:google.protobuf.ServiceDescriptorProto.options)
7080  clear_has_options();
7081  ::google::protobuf::ServiceOptions* temp = options_;
7082  options_ = NULL;
7083  return temp;
7084}
7085void ServiceDescriptorProto::set_allocated_options(::google::protobuf::ServiceOptions* options) {
7086  delete options_;
7087  options_ = options;
7088  if (options) {
7089    set_has_options();
7090  } else {
7091    clear_has_options();
7092  }
7093  // @@protoc_insertion_point(field_set_allocated:google.protobuf.ServiceDescriptorProto.options)
7094}
7095
7096#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
7097
7098// ===================================================================
7099
7100#if !defined(_MSC_VER) || _MSC_VER >= 1900
7101const int MethodDescriptorProto::kNameFieldNumber;
7102const int MethodDescriptorProto::kInputTypeFieldNumber;
7103const int MethodDescriptorProto::kOutputTypeFieldNumber;
7104const int MethodDescriptorProto::kOptionsFieldNumber;
7105const int MethodDescriptorProto::kClientStreamingFieldNumber;
7106const int MethodDescriptorProto::kServerStreamingFieldNumber;
7107#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
7108
7109MethodDescriptorProto::MethodDescriptorProto()
7110  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
7111  SharedCtor();
7112  // @@protoc_insertion_point(constructor:google.protobuf.MethodDescriptorProto)
7113}
7114
7115void MethodDescriptorProto::InitAsDefaultInstance() {
7116  options_ = const_cast< ::google::protobuf::MethodOptions*>(&::google::protobuf::MethodOptions::default_instance());
7117}
7118
7119MethodDescriptorProto::MethodDescriptorProto(const MethodDescriptorProto& from)
7120  : ::google::protobuf::Message(),
7121    _internal_metadata_(NULL) {
7122  SharedCtor();
7123  MergeFrom(from);
7124  // @@protoc_insertion_point(copy_constructor:google.protobuf.MethodDescriptorProto)
7125}
7126
7127void MethodDescriptorProto::SharedCtor() {
7128  ::google::protobuf::internal::GetEmptyString();
7129  _cached_size_ = 0;
7130  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7131  input_type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7132  output_type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7133  options_ = NULL;
7134  client_streaming_ = false;
7135  server_streaming_ = false;
7136  ::memset(_has_bits_, 0, sizeof(_has_bits_));
7137}
7138
7139MethodDescriptorProto::~MethodDescriptorProto() {
7140  // @@protoc_insertion_point(destructor:google.protobuf.MethodDescriptorProto)
7141  SharedDtor();
7142}
7143
7144void MethodDescriptorProto::SharedDtor() {
7145  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7146  input_type_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7147  output_type_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7148  if (this != default_instance_) {
7149    delete options_;
7150  }
7151}
7152
7153void MethodDescriptorProto::SetCachedSize(int size) const {
7154  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
7155  _cached_size_ = size;
7156  GOOGLE_SAFE_CONCURRENT_WRITES_END();
7157}
7158const ::google::protobuf::Descriptor* MethodDescriptorProto::descriptor() {
7159  protobuf_AssignDescriptorsOnce();
7160  return MethodDescriptorProto_descriptor_;
7161}
7162
7163const MethodDescriptorProto& MethodDescriptorProto::default_instance() {
7164  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
7165  return *default_instance_;
7166}
7167
7168MethodDescriptorProto* MethodDescriptorProto::default_instance_ = NULL;
7169
7170MethodDescriptorProto* MethodDescriptorProto::New(::google::protobuf::Arena* arena) const {
7171  MethodDescriptorProto* n = new MethodDescriptorProto;
7172  if (arena != NULL) {
7173    arena->Own(n);
7174  }
7175  return n;
7176}
7177
7178void MethodDescriptorProto::Clear() {
7179// @@protoc_insertion_point(message_clear_start:google.protobuf.MethodDescriptorProto)
7180#if defined(__clang__)
7181#define ZR_HELPER_(f) \
7182  _Pragma("clang diagnostic push") \
7183  _Pragma("clang diagnostic ignored \"-Winvalid-offsetof\"") \
7184  __builtin_offsetof(MethodDescriptorProto, f) \
7185  _Pragma("clang diagnostic pop")
7186#else
7187#define ZR_HELPER_(f) reinterpret_cast<char*>(\
7188  &reinterpret_cast<MethodDescriptorProto*>(16)->f)
7189#endif
7190
7191#define ZR_(first, last) do {\
7192  ::memset(&(first), 0,\
7193           ZR_HELPER_(last) - ZR_HELPER_(first) + sizeof(last));\
7194} while (0)
7195
7196  if (_has_bits_[0 / 32] & 63u) {
7197    ZR_(client_streaming_, server_streaming_);
7198    if (has_name()) {
7199      name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7200    }
7201    if (has_input_type()) {
7202      input_type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7203    }
7204    if (has_output_type()) {
7205      output_type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7206    }
7207    if (has_options()) {
7208      if (options_ != NULL) options_->::google::protobuf::MethodOptions::Clear();
7209    }
7210  }
7211
7212#undef ZR_HELPER_
7213#undef ZR_
7214
7215  ::memset(_has_bits_, 0, sizeof(_has_bits_));
7216  if (_internal_metadata_.have_unknown_fields()) {
7217    mutable_unknown_fields()->Clear();
7218  }
7219}
7220
7221bool MethodDescriptorProto::MergePartialFromCodedStream(
7222    ::google::protobuf::io::CodedInputStream* input) {
7223#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
7224  ::google::protobuf::uint32 tag;
7225  // @@protoc_insertion_point(parse_start:google.protobuf.MethodDescriptorProto)
7226  for (;;) {
7227    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
7228    tag = p.first;
7229    if (!p.second) goto handle_unusual;
7230    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
7231      // optional string name = 1;
7232      case 1: {
7233        if (tag == 10) {
7234          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
7235                input, this->mutable_name()));
7236          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
7237            this->name().data(), this->name().length(),
7238            ::google::protobuf::internal::WireFormat::PARSE,
7239            "google.protobuf.MethodDescriptorProto.name");
7240        } else {
7241          goto handle_unusual;
7242        }
7243        if (input->ExpectTag(18)) goto parse_input_type;
7244        break;
7245      }
7246
7247      // optional string input_type = 2;
7248      case 2: {
7249        if (tag == 18) {
7250         parse_input_type:
7251          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
7252                input, this->mutable_input_type()));
7253          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
7254            this->input_type().data(), this->input_type().length(),
7255            ::google::protobuf::internal::WireFormat::PARSE,
7256            "google.protobuf.MethodDescriptorProto.input_type");
7257        } else {
7258          goto handle_unusual;
7259        }
7260        if (input->ExpectTag(26)) goto parse_output_type;
7261        break;
7262      }
7263
7264      // optional string output_type = 3;
7265      case 3: {
7266        if (tag == 26) {
7267         parse_output_type:
7268          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
7269                input, this->mutable_output_type()));
7270          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
7271            this->output_type().data(), this->output_type().length(),
7272            ::google::protobuf::internal::WireFormat::PARSE,
7273            "google.protobuf.MethodDescriptorProto.output_type");
7274        } else {
7275          goto handle_unusual;
7276        }
7277        if (input->ExpectTag(34)) goto parse_options;
7278        break;
7279      }
7280
7281      // optional .google.protobuf.MethodOptions options = 4;
7282      case 4: {
7283        if (tag == 34) {
7284         parse_options:
7285          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
7286               input, mutable_options()));
7287        } else {
7288          goto handle_unusual;
7289        }
7290        if (input->ExpectTag(40)) goto parse_client_streaming;
7291        break;
7292      }
7293
7294      // optional bool client_streaming = 5 [default = false];
7295      case 5: {
7296        if (tag == 40) {
7297         parse_client_streaming:
7298          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
7299                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
7300                 input, &client_streaming_)));
7301          set_has_client_streaming();
7302        } else {
7303          goto handle_unusual;
7304        }
7305        if (input->ExpectTag(48)) goto parse_server_streaming;
7306        break;
7307      }
7308
7309      // optional bool server_streaming = 6 [default = false];
7310      case 6: {
7311        if (tag == 48) {
7312         parse_server_streaming:
7313          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
7314                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
7315                 input, &server_streaming_)));
7316          set_has_server_streaming();
7317        } else {
7318          goto handle_unusual;
7319        }
7320        if (input->ExpectAtEnd()) goto success;
7321        break;
7322      }
7323
7324      default: {
7325      handle_unusual:
7326        if (tag == 0 ||
7327            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
7328            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
7329          goto success;
7330        }
7331        DO_(::google::protobuf::internal::WireFormat::SkipField(
7332              input, tag, mutable_unknown_fields()));
7333        break;
7334      }
7335    }
7336  }
7337success:
7338  // @@protoc_insertion_point(parse_success:google.protobuf.MethodDescriptorProto)
7339  return true;
7340failure:
7341  // @@protoc_insertion_point(parse_failure:google.protobuf.MethodDescriptorProto)
7342  return false;
7343#undef DO_
7344}
7345
7346void MethodDescriptorProto::SerializeWithCachedSizes(
7347    ::google::protobuf::io::CodedOutputStream* output) const {
7348  // @@protoc_insertion_point(serialize_start:google.protobuf.MethodDescriptorProto)
7349  // optional string name = 1;
7350  if (has_name()) {
7351    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
7352      this->name().data(), this->name().length(),
7353      ::google::protobuf::internal::WireFormat::SERIALIZE,
7354      "google.protobuf.MethodDescriptorProto.name");
7355    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
7356      1, this->name(), output);
7357  }
7358
7359  // optional string input_type = 2;
7360  if (has_input_type()) {
7361    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
7362      this->input_type().data(), this->input_type().length(),
7363      ::google::protobuf::internal::WireFormat::SERIALIZE,
7364      "google.protobuf.MethodDescriptorProto.input_type");
7365    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
7366      2, this->input_type(), output);
7367  }
7368
7369  // optional string output_type = 3;
7370  if (has_output_type()) {
7371    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
7372      this->output_type().data(), this->output_type().length(),
7373      ::google::protobuf::internal::WireFormat::SERIALIZE,
7374      "google.protobuf.MethodDescriptorProto.output_type");
7375    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
7376      3, this->output_type(), output);
7377  }
7378
7379  // optional .google.protobuf.MethodOptions options = 4;
7380  if (has_options()) {
7381    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
7382      4, *this->options_, output);
7383  }
7384
7385  // optional bool client_streaming = 5 [default = false];
7386  if (has_client_streaming()) {
7387    ::google::protobuf::internal::WireFormatLite::WriteBool(5, this->client_streaming(), output);
7388  }
7389
7390  // optional bool server_streaming = 6 [default = false];
7391  if (has_server_streaming()) {
7392    ::google::protobuf::internal::WireFormatLite::WriteBool(6, this->server_streaming(), output);
7393  }
7394
7395  if (_internal_metadata_.have_unknown_fields()) {
7396    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
7397        unknown_fields(), output);
7398  }
7399  // @@protoc_insertion_point(serialize_end:google.protobuf.MethodDescriptorProto)
7400}
7401
7402::google::protobuf::uint8* MethodDescriptorProto::SerializeWithCachedSizesToArray(
7403    ::google::protobuf::uint8* target) const {
7404  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.MethodDescriptorProto)
7405  // optional string name = 1;
7406  if (has_name()) {
7407    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
7408      this->name().data(), this->name().length(),
7409      ::google::protobuf::internal::WireFormat::SERIALIZE,
7410      "google.protobuf.MethodDescriptorProto.name");
7411    target =
7412      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
7413        1, this->name(), target);
7414  }
7415
7416  // optional string input_type = 2;
7417  if (has_input_type()) {
7418    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
7419      this->input_type().data(), this->input_type().length(),
7420      ::google::protobuf::internal::WireFormat::SERIALIZE,
7421      "google.protobuf.MethodDescriptorProto.input_type");
7422    target =
7423      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
7424        2, this->input_type(), target);
7425  }
7426
7427  // optional string output_type = 3;
7428  if (has_output_type()) {
7429    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
7430      this->output_type().data(), this->output_type().length(),
7431      ::google::protobuf::internal::WireFormat::SERIALIZE,
7432      "google.protobuf.MethodDescriptorProto.output_type");
7433    target =
7434      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
7435        3, this->output_type(), target);
7436  }
7437
7438  // optional .google.protobuf.MethodOptions options = 4;
7439  if (has_options()) {
7440    target = ::google::protobuf::internal::WireFormatLite::
7441      WriteMessageNoVirtualToArray(
7442        4, *this->options_, target);
7443  }
7444
7445  // optional bool client_streaming = 5 [default = false];
7446  if (has_client_streaming()) {
7447    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(5, this->client_streaming(), target);
7448  }
7449
7450  // optional bool server_streaming = 6 [default = false];
7451  if (has_server_streaming()) {
7452    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(6, this->server_streaming(), target);
7453  }
7454
7455  if (_internal_metadata_.have_unknown_fields()) {
7456    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
7457        unknown_fields(), target);
7458  }
7459  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.MethodDescriptorProto)
7460  return target;
7461}
7462
7463int MethodDescriptorProto::ByteSize() const {
7464// @@protoc_insertion_point(message_byte_size_start:google.protobuf.MethodDescriptorProto)
7465  int total_size = 0;
7466
7467  if (_has_bits_[0 / 32] & 63u) {
7468    // optional string name = 1;
7469    if (has_name()) {
7470      total_size += 1 +
7471        ::google::protobuf::internal::WireFormatLite::StringSize(
7472          this->name());
7473    }
7474
7475    // optional string input_type = 2;
7476    if (has_input_type()) {
7477      total_size += 1 +
7478        ::google::protobuf::internal::WireFormatLite::StringSize(
7479          this->input_type());
7480    }
7481
7482    // optional string output_type = 3;
7483    if (has_output_type()) {
7484      total_size += 1 +
7485        ::google::protobuf::internal::WireFormatLite::StringSize(
7486          this->output_type());
7487    }
7488
7489    // optional .google.protobuf.MethodOptions options = 4;
7490    if (has_options()) {
7491      total_size += 1 +
7492        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
7493          *this->options_);
7494    }
7495
7496    // optional bool client_streaming = 5 [default = false];
7497    if (has_client_streaming()) {
7498      total_size += 1 + 1;
7499    }
7500
7501    // optional bool server_streaming = 6 [default = false];
7502    if (has_server_streaming()) {
7503      total_size += 1 + 1;
7504    }
7505
7506  }
7507  if (_internal_metadata_.have_unknown_fields()) {
7508    total_size +=
7509      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
7510        unknown_fields());
7511  }
7512  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
7513  _cached_size_ = total_size;
7514  GOOGLE_SAFE_CONCURRENT_WRITES_END();
7515  return total_size;
7516}
7517
7518void MethodDescriptorProto::MergeFrom(const ::google::protobuf::Message& from) {
7519// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.MethodDescriptorProto)
7520  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
7521  const MethodDescriptorProto* source =
7522      ::google::protobuf::internal::DynamicCastToGenerated<const MethodDescriptorProto>(
7523          &from);
7524  if (source == NULL) {
7525  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.MethodDescriptorProto)
7526    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
7527  } else {
7528  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.MethodDescriptorProto)
7529    MergeFrom(*source);
7530  }
7531}
7532
7533void MethodDescriptorProto::MergeFrom(const MethodDescriptorProto& from) {
7534// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.MethodDescriptorProto)
7535  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
7536  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
7537    if (from.has_name()) {
7538      set_has_name();
7539      name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
7540    }
7541    if (from.has_input_type()) {
7542      set_has_input_type();
7543      input_type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.input_type_);
7544    }
7545    if (from.has_output_type()) {
7546      set_has_output_type();
7547      output_type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.output_type_);
7548    }
7549    if (from.has_options()) {
7550      mutable_options()->::google::protobuf::MethodOptions::MergeFrom(from.options());
7551    }
7552    if (from.has_client_streaming()) {
7553      set_client_streaming(from.client_streaming());
7554    }
7555    if (from.has_server_streaming()) {
7556      set_server_streaming(from.server_streaming());
7557    }
7558  }
7559  if (from._internal_metadata_.have_unknown_fields()) {
7560    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
7561  }
7562}
7563
7564void MethodDescriptorProto::CopyFrom(const ::google::protobuf::Message& from) {
7565// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.MethodDescriptorProto)
7566  if (&from == this) return;
7567  Clear();
7568  MergeFrom(from);
7569}
7570
7571void MethodDescriptorProto::CopyFrom(const MethodDescriptorProto& from) {
7572// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.MethodDescriptorProto)
7573  if (&from == this) return;
7574  Clear();
7575  MergeFrom(from);
7576}
7577
7578bool MethodDescriptorProto::IsInitialized() const {
7579
7580  if (has_options()) {
7581    if (!this->options_->IsInitialized()) return false;
7582  }
7583  return true;
7584}
7585
7586void MethodDescriptorProto::Swap(MethodDescriptorProto* other) {
7587  if (other == this) return;
7588  InternalSwap(other);
7589}
7590void MethodDescriptorProto::InternalSwap(MethodDescriptorProto* other) {
7591  name_.Swap(&other->name_);
7592  input_type_.Swap(&other->input_type_);
7593  output_type_.Swap(&other->output_type_);
7594  std::swap(options_, other->options_);
7595  std::swap(client_streaming_, other->client_streaming_);
7596  std::swap(server_streaming_, other->server_streaming_);
7597  std::swap(_has_bits_[0], other->_has_bits_[0]);
7598  _internal_metadata_.Swap(&other->_internal_metadata_);
7599  std::swap(_cached_size_, other->_cached_size_);
7600}
7601
7602::google::protobuf::Metadata MethodDescriptorProto::GetMetadata() const {
7603  protobuf_AssignDescriptorsOnce();
7604  ::google::protobuf::Metadata metadata;
7605  metadata.descriptor = MethodDescriptorProto_descriptor_;
7606  metadata.reflection = MethodDescriptorProto_reflection_;
7607  return metadata;
7608}
7609
7610#if PROTOBUF_INLINE_NOT_IN_HEADERS
7611// MethodDescriptorProto
7612
7613// optional string name = 1;
7614bool MethodDescriptorProto::has_name() const {
7615  return (_has_bits_[0] & 0x00000001u) != 0;
7616}
7617void MethodDescriptorProto::set_has_name() {
7618  _has_bits_[0] |= 0x00000001u;
7619}
7620void MethodDescriptorProto::clear_has_name() {
7621  _has_bits_[0] &= ~0x00000001u;
7622}
7623void MethodDescriptorProto::clear_name() {
7624  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7625  clear_has_name();
7626}
7627 const ::std::string& MethodDescriptorProto::name() const {
7628  // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.name)
7629  return name_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7630}
7631 void MethodDescriptorProto::set_name(const ::std::string& value) {
7632  set_has_name();
7633  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
7634  // @@protoc_insertion_point(field_set:google.protobuf.MethodDescriptorProto.name)
7635}
7636 void MethodDescriptorProto::set_name(const char* value) {
7637  set_has_name();
7638  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
7639  // @@protoc_insertion_point(field_set_char:google.protobuf.MethodDescriptorProto.name)
7640}
7641 void MethodDescriptorProto::set_name(const char* value, size_t size) {
7642  set_has_name();
7643  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
7644      ::std::string(reinterpret_cast<const char*>(value), size));
7645  // @@protoc_insertion_point(field_set_pointer:google.protobuf.MethodDescriptorProto.name)
7646}
7647 ::std::string* MethodDescriptorProto::mutable_name() {
7648  set_has_name();
7649  // @@protoc_insertion_point(field_mutable:google.protobuf.MethodDescriptorProto.name)
7650  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7651}
7652 ::std::string* MethodDescriptorProto::release_name() {
7653  // @@protoc_insertion_point(field_release:google.protobuf.MethodDescriptorProto.name)
7654  clear_has_name();
7655  return name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7656}
7657 void MethodDescriptorProto::set_allocated_name(::std::string* name) {
7658  if (name != NULL) {
7659    set_has_name();
7660  } else {
7661    clear_has_name();
7662  }
7663  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
7664  // @@protoc_insertion_point(field_set_allocated:google.protobuf.MethodDescriptorProto.name)
7665}
7666
7667// optional string input_type = 2;
7668bool MethodDescriptorProto::has_input_type() const {
7669  return (_has_bits_[0] & 0x00000002u) != 0;
7670}
7671void MethodDescriptorProto::set_has_input_type() {
7672  _has_bits_[0] |= 0x00000002u;
7673}
7674void MethodDescriptorProto::clear_has_input_type() {
7675  _has_bits_[0] &= ~0x00000002u;
7676}
7677void MethodDescriptorProto::clear_input_type() {
7678  input_type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7679  clear_has_input_type();
7680}
7681 const ::std::string& MethodDescriptorProto::input_type() const {
7682  // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.input_type)
7683  return input_type_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7684}
7685 void MethodDescriptorProto::set_input_type(const ::std::string& value) {
7686  set_has_input_type();
7687  input_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
7688  // @@protoc_insertion_point(field_set:google.protobuf.MethodDescriptorProto.input_type)
7689}
7690 void MethodDescriptorProto::set_input_type(const char* value) {
7691  set_has_input_type();
7692  input_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
7693  // @@protoc_insertion_point(field_set_char:google.protobuf.MethodDescriptorProto.input_type)
7694}
7695 void MethodDescriptorProto::set_input_type(const char* value, size_t size) {
7696  set_has_input_type();
7697  input_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
7698      ::std::string(reinterpret_cast<const char*>(value), size));
7699  // @@protoc_insertion_point(field_set_pointer:google.protobuf.MethodDescriptorProto.input_type)
7700}
7701 ::std::string* MethodDescriptorProto::mutable_input_type() {
7702  set_has_input_type();
7703  // @@protoc_insertion_point(field_mutable:google.protobuf.MethodDescriptorProto.input_type)
7704  return input_type_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7705}
7706 ::std::string* MethodDescriptorProto::release_input_type() {
7707  // @@protoc_insertion_point(field_release:google.protobuf.MethodDescriptorProto.input_type)
7708  clear_has_input_type();
7709  return input_type_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7710}
7711 void MethodDescriptorProto::set_allocated_input_type(::std::string* input_type) {
7712  if (input_type != NULL) {
7713    set_has_input_type();
7714  } else {
7715    clear_has_input_type();
7716  }
7717  input_type_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), input_type);
7718  // @@protoc_insertion_point(field_set_allocated:google.protobuf.MethodDescriptorProto.input_type)
7719}
7720
7721// optional string output_type = 3;
7722bool MethodDescriptorProto::has_output_type() const {
7723  return (_has_bits_[0] & 0x00000004u) != 0;
7724}
7725void MethodDescriptorProto::set_has_output_type() {
7726  _has_bits_[0] |= 0x00000004u;
7727}
7728void MethodDescriptorProto::clear_has_output_type() {
7729  _has_bits_[0] &= ~0x00000004u;
7730}
7731void MethodDescriptorProto::clear_output_type() {
7732  output_type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7733  clear_has_output_type();
7734}
7735 const ::std::string& MethodDescriptorProto::output_type() const {
7736  // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.output_type)
7737  return output_type_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7738}
7739 void MethodDescriptorProto::set_output_type(const ::std::string& value) {
7740  set_has_output_type();
7741  output_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
7742  // @@protoc_insertion_point(field_set:google.protobuf.MethodDescriptorProto.output_type)
7743}
7744 void MethodDescriptorProto::set_output_type(const char* value) {
7745  set_has_output_type();
7746  output_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
7747  // @@protoc_insertion_point(field_set_char:google.protobuf.MethodDescriptorProto.output_type)
7748}
7749 void MethodDescriptorProto::set_output_type(const char* value, size_t size) {
7750  set_has_output_type();
7751  output_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
7752      ::std::string(reinterpret_cast<const char*>(value), size));
7753  // @@protoc_insertion_point(field_set_pointer:google.protobuf.MethodDescriptorProto.output_type)
7754}
7755 ::std::string* MethodDescriptorProto::mutable_output_type() {
7756  set_has_output_type();
7757  // @@protoc_insertion_point(field_mutable:google.protobuf.MethodDescriptorProto.output_type)
7758  return output_type_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7759}
7760 ::std::string* MethodDescriptorProto::release_output_type() {
7761  // @@protoc_insertion_point(field_release:google.protobuf.MethodDescriptorProto.output_type)
7762  clear_has_output_type();
7763  return output_type_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7764}
7765 void MethodDescriptorProto::set_allocated_output_type(::std::string* output_type) {
7766  if (output_type != NULL) {
7767    set_has_output_type();
7768  } else {
7769    clear_has_output_type();
7770  }
7771  output_type_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), output_type);
7772  // @@protoc_insertion_point(field_set_allocated:google.protobuf.MethodDescriptorProto.output_type)
7773}
7774
7775// optional .google.protobuf.MethodOptions options = 4;
7776bool MethodDescriptorProto::has_options() const {
7777  return (_has_bits_[0] & 0x00000008u) != 0;
7778}
7779void MethodDescriptorProto::set_has_options() {
7780  _has_bits_[0] |= 0x00000008u;
7781}
7782void MethodDescriptorProto::clear_has_options() {
7783  _has_bits_[0] &= ~0x00000008u;
7784}
7785void MethodDescriptorProto::clear_options() {
7786  if (options_ != NULL) options_->::google::protobuf::MethodOptions::Clear();
7787  clear_has_options();
7788}
7789const ::google::protobuf::MethodOptions& MethodDescriptorProto::options() const {
7790  // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.options)
7791  return options_ != NULL ? *options_ : *default_instance_->options_;
7792}
7793::google::protobuf::MethodOptions* MethodDescriptorProto::mutable_options() {
7794  set_has_options();
7795  if (options_ == NULL) {
7796    options_ = new ::google::protobuf::MethodOptions;
7797  }
7798  // @@protoc_insertion_point(field_mutable:google.protobuf.MethodDescriptorProto.options)
7799  return options_;
7800}
7801::google::protobuf::MethodOptions* MethodDescriptorProto::release_options() {
7802  // @@protoc_insertion_point(field_release:google.protobuf.MethodDescriptorProto.options)
7803  clear_has_options();
7804  ::google::protobuf::MethodOptions* temp = options_;
7805  options_ = NULL;
7806  return temp;
7807}
7808void MethodDescriptorProto::set_allocated_options(::google::protobuf::MethodOptions* options) {
7809  delete options_;
7810  options_ = options;
7811  if (options) {
7812    set_has_options();
7813  } else {
7814    clear_has_options();
7815  }
7816  // @@protoc_insertion_point(field_set_allocated:google.protobuf.MethodDescriptorProto.options)
7817}
7818
7819// optional bool client_streaming = 5 [default = false];
7820bool MethodDescriptorProto::has_client_streaming() const {
7821  return (_has_bits_[0] & 0x00000010u) != 0;
7822}
7823void MethodDescriptorProto::set_has_client_streaming() {
7824  _has_bits_[0] |= 0x00000010u;
7825}
7826void MethodDescriptorProto::clear_has_client_streaming() {
7827  _has_bits_[0] &= ~0x00000010u;
7828}
7829void MethodDescriptorProto::clear_client_streaming() {
7830  client_streaming_ = false;
7831  clear_has_client_streaming();
7832}
7833 bool MethodDescriptorProto::client_streaming() const {
7834  // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.client_streaming)
7835  return client_streaming_;
7836}
7837 void MethodDescriptorProto::set_client_streaming(bool value) {
7838  set_has_client_streaming();
7839  client_streaming_ = value;
7840  // @@protoc_insertion_point(field_set:google.protobuf.MethodDescriptorProto.client_streaming)
7841}
7842
7843// optional bool server_streaming = 6 [default = false];
7844bool MethodDescriptorProto::has_server_streaming() const {
7845  return (_has_bits_[0] & 0x00000020u) != 0;
7846}
7847void MethodDescriptorProto::set_has_server_streaming() {
7848  _has_bits_[0] |= 0x00000020u;
7849}
7850void MethodDescriptorProto::clear_has_server_streaming() {
7851  _has_bits_[0] &= ~0x00000020u;
7852}
7853void MethodDescriptorProto::clear_server_streaming() {
7854  server_streaming_ = false;
7855  clear_has_server_streaming();
7856}
7857 bool MethodDescriptorProto::server_streaming() const {
7858  // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.server_streaming)
7859  return server_streaming_;
7860}
7861 void MethodDescriptorProto::set_server_streaming(bool value) {
7862  set_has_server_streaming();
7863  server_streaming_ = value;
7864  // @@protoc_insertion_point(field_set:google.protobuf.MethodDescriptorProto.server_streaming)
7865}
7866
7867#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
7868
7869// ===================================================================
7870
7871const ::google::protobuf::EnumDescriptor* FileOptions_OptimizeMode_descriptor() {
7872  protobuf_AssignDescriptorsOnce();
7873  return FileOptions_OptimizeMode_descriptor_;
7874}
7875bool FileOptions_OptimizeMode_IsValid(int value) {
7876  switch(value) {
7877    case 1:
7878    case 2:
7879    case 3:
7880      return true;
7881    default:
7882      return false;
7883  }
7884}
7885
7886#if !defined(_MSC_VER) || _MSC_VER >= 1900
7887const FileOptions_OptimizeMode FileOptions::SPEED;
7888const FileOptions_OptimizeMode FileOptions::CODE_SIZE;
7889const FileOptions_OptimizeMode FileOptions::LITE_RUNTIME;
7890const FileOptions_OptimizeMode FileOptions::OptimizeMode_MIN;
7891const FileOptions_OptimizeMode FileOptions::OptimizeMode_MAX;
7892const int FileOptions::OptimizeMode_ARRAYSIZE;
7893#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
7894#if !defined(_MSC_VER) || _MSC_VER >= 1900
7895const int FileOptions::kJavaPackageFieldNumber;
7896const int FileOptions::kJavaOuterClassnameFieldNumber;
7897const int FileOptions::kJavaMultipleFilesFieldNumber;
7898const int FileOptions::kJavaGenerateEqualsAndHashFieldNumber;
7899const int FileOptions::kJavaStringCheckUtf8FieldNumber;
7900const int FileOptions::kOptimizeForFieldNumber;
7901const int FileOptions::kGoPackageFieldNumber;
7902const int FileOptions::kCcGenericServicesFieldNumber;
7903const int FileOptions::kJavaGenericServicesFieldNumber;
7904const int FileOptions::kPyGenericServicesFieldNumber;
7905const int FileOptions::kDeprecatedFieldNumber;
7906const int FileOptions::kCcEnableArenasFieldNumber;
7907const int FileOptions::kObjcClassPrefixFieldNumber;
7908const int FileOptions::kCsharpNamespaceFieldNumber;
7909const int FileOptions::kUninterpretedOptionFieldNumber;
7910#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
7911
7912FileOptions::FileOptions()
7913  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
7914  SharedCtor();
7915  // @@protoc_insertion_point(constructor:google.protobuf.FileOptions)
7916}
7917
7918void FileOptions::InitAsDefaultInstance() {
7919}
7920
7921FileOptions::FileOptions(const FileOptions& from)
7922  : ::google::protobuf::Message(),
7923    _internal_metadata_(NULL) {
7924  SharedCtor();
7925  MergeFrom(from);
7926  // @@protoc_insertion_point(copy_constructor:google.protobuf.FileOptions)
7927}
7928
7929void FileOptions::SharedCtor() {
7930  ::google::protobuf::internal::GetEmptyString();
7931  _cached_size_ = 0;
7932  java_package_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7933  java_outer_classname_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7934  java_multiple_files_ = false;
7935  java_generate_equals_and_hash_ = false;
7936  java_string_check_utf8_ = false;
7937  optimize_for_ = 1;
7938  go_package_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7939  cc_generic_services_ = false;
7940  java_generic_services_ = false;
7941  py_generic_services_ = false;
7942  deprecated_ = false;
7943  cc_enable_arenas_ = false;
7944  objc_class_prefix_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7945  csharp_namespace_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7946  ::memset(_has_bits_, 0, sizeof(_has_bits_));
7947}
7948
7949FileOptions::~FileOptions() {
7950  // @@protoc_insertion_point(destructor:google.protobuf.FileOptions)
7951  SharedDtor();
7952}
7953
7954void FileOptions::SharedDtor() {
7955  java_package_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7956  java_outer_classname_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7957  go_package_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7958  objc_class_prefix_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7959  csharp_namespace_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
7960  if (this != default_instance_) {
7961  }
7962}
7963
7964void FileOptions::SetCachedSize(int size) const {
7965  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
7966  _cached_size_ = size;
7967  GOOGLE_SAFE_CONCURRENT_WRITES_END();
7968}
7969const ::google::protobuf::Descriptor* FileOptions::descriptor() {
7970  protobuf_AssignDescriptorsOnce();
7971  return FileOptions_descriptor_;
7972}
7973
7974const FileOptions& FileOptions::default_instance() {
7975  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
7976  return *default_instance_;
7977}
7978
7979FileOptions* FileOptions::default_instance_ = NULL;
7980
7981FileOptions* FileOptions::New(::google::protobuf::Arena* arena) const {
7982  FileOptions* n = new FileOptions;
7983  if (arena != NULL) {
7984    arena->Own(n);
7985  }
7986  return n;
7987}
7988
7989void FileOptions::Clear() {
7990// @@protoc_insertion_point(message_clear_start:google.protobuf.FileOptions)
7991  _extensions_.Clear();
7992#if defined(__clang__)
7993#define ZR_HELPER_(f) \
7994  _Pragma("clang diagnostic push") \
7995  _Pragma("clang diagnostic ignored \"-Winvalid-offsetof\"") \
7996  __builtin_offsetof(FileOptions, f) \
7997  _Pragma("clang diagnostic pop")
7998#else
7999#define ZR_HELPER_(f) reinterpret_cast<char*>(\
8000  &reinterpret_cast<FileOptions*>(16)->f)
8001#endif
8002
8003#define ZR_(first, last) do {\
8004  ::memset(&(first), 0,\
8005           ZR_HELPER_(last) - ZR_HELPER_(first) + sizeof(last));\
8006} while (0)
8007
8008  if (_has_bits_[0 / 32] & 255u) {
8009    ZR_(java_multiple_files_, cc_generic_services_);
8010    if (has_java_package()) {
8011      java_package_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8012    }
8013    if (has_java_outer_classname()) {
8014      java_outer_classname_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8015    }
8016    optimize_for_ = 1;
8017    if (has_go_package()) {
8018      go_package_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8019    }
8020  }
8021  if (_has_bits_[8 / 32] & 16128u) {
8022    ZR_(java_generic_services_, cc_enable_arenas_);
8023    if (has_objc_class_prefix()) {
8024      objc_class_prefix_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8025    }
8026    if (has_csharp_namespace()) {
8027      csharp_namespace_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8028    }
8029  }
8030
8031#undef ZR_HELPER_
8032#undef ZR_
8033
8034  uninterpreted_option_.Clear();
8035  ::memset(_has_bits_, 0, sizeof(_has_bits_));
8036  if (_internal_metadata_.have_unknown_fields()) {
8037    mutable_unknown_fields()->Clear();
8038  }
8039}
8040
8041bool FileOptions::MergePartialFromCodedStream(
8042    ::google::protobuf::io::CodedInputStream* input) {
8043#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
8044  ::google::protobuf::uint32 tag;
8045  // @@protoc_insertion_point(parse_start:google.protobuf.FileOptions)
8046  for (;;) {
8047    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(16383);
8048    tag = p.first;
8049    if (!p.second) goto handle_unusual;
8050    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
8051      // optional string java_package = 1;
8052      case 1: {
8053        if (tag == 10) {
8054          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
8055                input, this->mutable_java_package()));
8056          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8057            this->java_package().data(), this->java_package().length(),
8058            ::google::protobuf::internal::WireFormat::PARSE,
8059            "google.protobuf.FileOptions.java_package");
8060        } else {
8061          goto handle_unusual;
8062        }
8063        if (input->ExpectTag(66)) goto parse_java_outer_classname;
8064        break;
8065      }
8066
8067      // optional string java_outer_classname = 8;
8068      case 8: {
8069        if (tag == 66) {
8070         parse_java_outer_classname:
8071          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
8072                input, this->mutable_java_outer_classname()));
8073          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8074            this->java_outer_classname().data(), this->java_outer_classname().length(),
8075            ::google::protobuf::internal::WireFormat::PARSE,
8076            "google.protobuf.FileOptions.java_outer_classname");
8077        } else {
8078          goto handle_unusual;
8079        }
8080        if (input->ExpectTag(72)) goto parse_optimize_for;
8081        break;
8082      }
8083
8084      // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];
8085      case 9: {
8086        if (tag == 72) {
8087         parse_optimize_for:
8088          int value;
8089          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
8090                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
8091                 input, &value)));
8092          if (::google::protobuf::FileOptions_OptimizeMode_IsValid(value)) {
8093            set_optimize_for(static_cast< ::google::protobuf::FileOptions_OptimizeMode >(value));
8094          } else {
8095            mutable_unknown_fields()->AddVarint(9, value);
8096          }
8097        } else {
8098          goto handle_unusual;
8099        }
8100        if (input->ExpectTag(80)) goto parse_java_multiple_files;
8101        break;
8102      }
8103
8104      // optional bool java_multiple_files = 10 [default = false];
8105      case 10: {
8106        if (tag == 80) {
8107         parse_java_multiple_files:
8108          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
8109                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
8110                 input, &java_multiple_files_)));
8111          set_has_java_multiple_files();
8112        } else {
8113          goto handle_unusual;
8114        }
8115        if (input->ExpectTag(90)) goto parse_go_package;
8116        break;
8117      }
8118
8119      // optional string go_package = 11;
8120      case 11: {
8121        if (tag == 90) {
8122         parse_go_package:
8123          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
8124                input, this->mutable_go_package()));
8125          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8126            this->go_package().data(), this->go_package().length(),
8127            ::google::protobuf::internal::WireFormat::PARSE,
8128            "google.protobuf.FileOptions.go_package");
8129        } else {
8130          goto handle_unusual;
8131        }
8132        if (input->ExpectTag(128)) goto parse_cc_generic_services;
8133        break;
8134      }
8135
8136      // optional bool cc_generic_services = 16 [default = false];
8137      case 16: {
8138        if (tag == 128) {
8139         parse_cc_generic_services:
8140          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
8141                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
8142                 input, &cc_generic_services_)));
8143          set_has_cc_generic_services();
8144        } else {
8145          goto handle_unusual;
8146        }
8147        if (input->ExpectTag(136)) goto parse_java_generic_services;
8148        break;
8149      }
8150
8151      // optional bool java_generic_services = 17 [default = false];
8152      case 17: {
8153        if (tag == 136) {
8154         parse_java_generic_services:
8155          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
8156                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
8157                 input, &java_generic_services_)));
8158          set_has_java_generic_services();
8159        } else {
8160          goto handle_unusual;
8161        }
8162        if (input->ExpectTag(144)) goto parse_py_generic_services;
8163        break;
8164      }
8165
8166      // optional bool py_generic_services = 18 [default = false];
8167      case 18: {
8168        if (tag == 144) {
8169         parse_py_generic_services:
8170          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
8171                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
8172                 input, &py_generic_services_)));
8173          set_has_py_generic_services();
8174        } else {
8175          goto handle_unusual;
8176        }
8177        if (input->ExpectTag(160)) goto parse_java_generate_equals_and_hash;
8178        break;
8179      }
8180
8181      // optional bool java_generate_equals_and_hash = 20 [default = false];
8182      case 20: {
8183        if (tag == 160) {
8184         parse_java_generate_equals_and_hash:
8185          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
8186                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
8187                 input, &java_generate_equals_and_hash_)));
8188          set_has_java_generate_equals_and_hash();
8189        } else {
8190          goto handle_unusual;
8191        }
8192        if (input->ExpectTag(184)) goto parse_deprecated;
8193        break;
8194      }
8195
8196      // optional bool deprecated = 23 [default = false];
8197      case 23: {
8198        if (tag == 184) {
8199         parse_deprecated:
8200          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
8201                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
8202                 input, &deprecated_)));
8203          set_has_deprecated();
8204        } else {
8205          goto handle_unusual;
8206        }
8207        if (input->ExpectTag(216)) goto parse_java_string_check_utf8;
8208        break;
8209      }
8210
8211      // optional bool java_string_check_utf8 = 27 [default = false];
8212      case 27: {
8213        if (tag == 216) {
8214         parse_java_string_check_utf8:
8215          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
8216                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
8217                 input, &java_string_check_utf8_)));
8218          set_has_java_string_check_utf8();
8219        } else {
8220          goto handle_unusual;
8221        }
8222        if (input->ExpectTag(248)) goto parse_cc_enable_arenas;
8223        break;
8224      }
8225
8226      // optional bool cc_enable_arenas = 31 [default = false];
8227      case 31: {
8228        if (tag == 248) {
8229         parse_cc_enable_arenas:
8230          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
8231                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
8232                 input, &cc_enable_arenas_)));
8233          set_has_cc_enable_arenas();
8234        } else {
8235          goto handle_unusual;
8236        }
8237        if (input->ExpectTag(290)) goto parse_objc_class_prefix;
8238        break;
8239      }
8240
8241      // optional string objc_class_prefix = 36;
8242      case 36: {
8243        if (tag == 290) {
8244         parse_objc_class_prefix:
8245          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
8246                input, this->mutable_objc_class_prefix()));
8247          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8248            this->objc_class_prefix().data(), this->objc_class_prefix().length(),
8249            ::google::protobuf::internal::WireFormat::PARSE,
8250            "google.protobuf.FileOptions.objc_class_prefix");
8251        } else {
8252          goto handle_unusual;
8253        }
8254        if (input->ExpectTag(298)) goto parse_csharp_namespace;
8255        break;
8256      }
8257
8258      // optional string csharp_namespace = 37;
8259      case 37: {
8260        if (tag == 298) {
8261         parse_csharp_namespace:
8262          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
8263                input, this->mutable_csharp_namespace()));
8264          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8265            this->csharp_namespace().data(), this->csharp_namespace().length(),
8266            ::google::protobuf::internal::WireFormat::PARSE,
8267            "google.protobuf.FileOptions.csharp_namespace");
8268        } else {
8269          goto handle_unusual;
8270        }
8271        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
8272        break;
8273      }
8274
8275      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
8276      case 999: {
8277        if (tag == 7994) {
8278         parse_uninterpreted_option:
8279          DO_(input->IncrementRecursionDepth());
8280         parse_loop_uninterpreted_option:
8281          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
8282                input, add_uninterpreted_option()));
8283        } else {
8284          goto handle_unusual;
8285        }
8286        if (input->ExpectTag(7994)) goto parse_loop_uninterpreted_option;
8287        input->UnsafeDecrementRecursionDepth();
8288        if (input->ExpectAtEnd()) goto success;
8289        break;
8290      }
8291
8292      default: {
8293      handle_unusual:
8294        if (tag == 0 ||
8295            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
8296            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
8297          goto success;
8298        }
8299        if ((8000u <= tag)) {
8300          DO_(_extensions_.ParseField(tag, input, default_instance_,
8301                                      mutable_unknown_fields()));
8302          continue;
8303        }
8304        DO_(::google::protobuf::internal::WireFormat::SkipField(
8305              input, tag, mutable_unknown_fields()));
8306        break;
8307      }
8308    }
8309  }
8310success:
8311  // @@protoc_insertion_point(parse_success:google.protobuf.FileOptions)
8312  return true;
8313failure:
8314  // @@protoc_insertion_point(parse_failure:google.protobuf.FileOptions)
8315  return false;
8316#undef DO_
8317}
8318
8319void FileOptions::SerializeWithCachedSizes(
8320    ::google::protobuf::io::CodedOutputStream* output) const {
8321  // @@protoc_insertion_point(serialize_start:google.protobuf.FileOptions)
8322  // optional string java_package = 1;
8323  if (has_java_package()) {
8324    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8325      this->java_package().data(), this->java_package().length(),
8326      ::google::protobuf::internal::WireFormat::SERIALIZE,
8327      "google.protobuf.FileOptions.java_package");
8328    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
8329      1, this->java_package(), output);
8330  }
8331
8332  // optional string java_outer_classname = 8;
8333  if (has_java_outer_classname()) {
8334    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8335      this->java_outer_classname().data(), this->java_outer_classname().length(),
8336      ::google::protobuf::internal::WireFormat::SERIALIZE,
8337      "google.protobuf.FileOptions.java_outer_classname");
8338    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
8339      8, this->java_outer_classname(), output);
8340  }
8341
8342  // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];
8343  if (has_optimize_for()) {
8344    ::google::protobuf::internal::WireFormatLite::WriteEnum(
8345      9, this->optimize_for(), output);
8346  }
8347
8348  // optional bool java_multiple_files = 10 [default = false];
8349  if (has_java_multiple_files()) {
8350    ::google::protobuf::internal::WireFormatLite::WriteBool(10, this->java_multiple_files(), output);
8351  }
8352
8353  // optional string go_package = 11;
8354  if (has_go_package()) {
8355    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8356      this->go_package().data(), this->go_package().length(),
8357      ::google::protobuf::internal::WireFormat::SERIALIZE,
8358      "google.protobuf.FileOptions.go_package");
8359    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
8360      11, this->go_package(), output);
8361  }
8362
8363  // optional bool cc_generic_services = 16 [default = false];
8364  if (has_cc_generic_services()) {
8365    ::google::protobuf::internal::WireFormatLite::WriteBool(16, this->cc_generic_services(), output);
8366  }
8367
8368  // optional bool java_generic_services = 17 [default = false];
8369  if (has_java_generic_services()) {
8370    ::google::protobuf::internal::WireFormatLite::WriteBool(17, this->java_generic_services(), output);
8371  }
8372
8373  // optional bool py_generic_services = 18 [default = false];
8374  if (has_py_generic_services()) {
8375    ::google::protobuf::internal::WireFormatLite::WriteBool(18, this->py_generic_services(), output);
8376  }
8377
8378  // optional bool java_generate_equals_and_hash = 20 [default = false];
8379  if (has_java_generate_equals_and_hash()) {
8380    ::google::protobuf::internal::WireFormatLite::WriteBool(20, this->java_generate_equals_and_hash(), output);
8381  }
8382
8383  // optional bool deprecated = 23 [default = false];
8384  if (has_deprecated()) {
8385    ::google::protobuf::internal::WireFormatLite::WriteBool(23, this->deprecated(), output);
8386  }
8387
8388  // optional bool java_string_check_utf8 = 27 [default = false];
8389  if (has_java_string_check_utf8()) {
8390    ::google::protobuf::internal::WireFormatLite::WriteBool(27, this->java_string_check_utf8(), output);
8391  }
8392
8393  // optional bool cc_enable_arenas = 31 [default = false];
8394  if (has_cc_enable_arenas()) {
8395    ::google::protobuf::internal::WireFormatLite::WriteBool(31, this->cc_enable_arenas(), output);
8396  }
8397
8398  // optional string objc_class_prefix = 36;
8399  if (has_objc_class_prefix()) {
8400    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8401      this->objc_class_prefix().data(), this->objc_class_prefix().length(),
8402      ::google::protobuf::internal::WireFormat::SERIALIZE,
8403      "google.protobuf.FileOptions.objc_class_prefix");
8404    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
8405      36, this->objc_class_prefix(), output);
8406  }
8407
8408  // optional string csharp_namespace = 37;
8409  if (has_csharp_namespace()) {
8410    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8411      this->csharp_namespace().data(), this->csharp_namespace().length(),
8412      ::google::protobuf::internal::WireFormat::SERIALIZE,
8413      "google.protobuf.FileOptions.csharp_namespace");
8414    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
8415      37, this->csharp_namespace(), output);
8416  }
8417
8418  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
8419  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
8420    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
8421      999, this->uninterpreted_option(i), output);
8422  }
8423
8424  // Extension range [1000, 536870912)
8425  _extensions_.SerializeWithCachedSizes(
8426      1000, 536870912, output);
8427
8428  if (_internal_metadata_.have_unknown_fields()) {
8429    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
8430        unknown_fields(), output);
8431  }
8432  // @@protoc_insertion_point(serialize_end:google.protobuf.FileOptions)
8433}
8434
8435::google::protobuf::uint8* FileOptions::SerializeWithCachedSizesToArray(
8436    ::google::protobuf::uint8* target) const {
8437  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.FileOptions)
8438  // optional string java_package = 1;
8439  if (has_java_package()) {
8440    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8441      this->java_package().data(), this->java_package().length(),
8442      ::google::protobuf::internal::WireFormat::SERIALIZE,
8443      "google.protobuf.FileOptions.java_package");
8444    target =
8445      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
8446        1, this->java_package(), target);
8447  }
8448
8449  // optional string java_outer_classname = 8;
8450  if (has_java_outer_classname()) {
8451    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8452      this->java_outer_classname().data(), this->java_outer_classname().length(),
8453      ::google::protobuf::internal::WireFormat::SERIALIZE,
8454      "google.protobuf.FileOptions.java_outer_classname");
8455    target =
8456      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
8457        8, this->java_outer_classname(), target);
8458  }
8459
8460  // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];
8461  if (has_optimize_for()) {
8462    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
8463      9, this->optimize_for(), target);
8464  }
8465
8466  // optional bool java_multiple_files = 10 [default = false];
8467  if (has_java_multiple_files()) {
8468    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(10, this->java_multiple_files(), target);
8469  }
8470
8471  // optional string go_package = 11;
8472  if (has_go_package()) {
8473    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8474      this->go_package().data(), this->go_package().length(),
8475      ::google::protobuf::internal::WireFormat::SERIALIZE,
8476      "google.protobuf.FileOptions.go_package");
8477    target =
8478      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
8479        11, this->go_package(), target);
8480  }
8481
8482  // optional bool cc_generic_services = 16 [default = false];
8483  if (has_cc_generic_services()) {
8484    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(16, this->cc_generic_services(), target);
8485  }
8486
8487  // optional bool java_generic_services = 17 [default = false];
8488  if (has_java_generic_services()) {
8489    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(17, this->java_generic_services(), target);
8490  }
8491
8492  // optional bool py_generic_services = 18 [default = false];
8493  if (has_py_generic_services()) {
8494    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(18, this->py_generic_services(), target);
8495  }
8496
8497  // optional bool java_generate_equals_and_hash = 20 [default = false];
8498  if (has_java_generate_equals_and_hash()) {
8499    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(20, this->java_generate_equals_and_hash(), target);
8500  }
8501
8502  // optional bool deprecated = 23 [default = false];
8503  if (has_deprecated()) {
8504    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(23, this->deprecated(), target);
8505  }
8506
8507  // optional bool java_string_check_utf8 = 27 [default = false];
8508  if (has_java_string_check_utf8()) {
8509    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(27, this->java_string_check_utf8(), target);
8510  }
8511
8512  // optional bool cc_enable_arenas = 31 [default = false];
8513  if (has_cc_enable_arenas()) {
8514    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(31, this->cc_enable_arenas(), target);
8515  }
8516
8517  // optional string objc_class_prefix = 36;
8518  if (has_objc_class_prefix()) {
8519    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8520      this->objc_class_prefix().data(), this->objc_class_prefix().length(),
8521      ::google::protobuf::internal::WireFormat::SERIALIZE,
8522      "google.protobuf.FileOptions.objc_class_prefix");
8523    target =
8524      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
8525        36, this->objc_class_prefix(), target);
8526  }
8527
8528  // optional string csharp_namespace = 37;
8529  if (has_csharp_namespace()) {
8530    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
8531      this->csharp_namespace().data(), this->csharp_namespace().length(),
8532      ::google::protobuf::internal::WireFormat::SERIALIZE,
8533      "google.protobuf.FileOptions.csharp_namespace");
8534    target =
8535      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
8536        37, this->csharp_namespace(), target);
8537  }
8538
8539  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
8540  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
8541    target = ::google::protobuf::internal::WireFormatLite::
8542      WriteMessageNoVirtualToArray(
8543        999, this->uninterpreted_option(i), target);
8544  }
8545
8546  // Extension range [1000, 536870912)
8547  target = _extensions_.SerializeWithCachedSizesToArray(
8548      1000, 536870912, target);
8549
8550  if (_internal_metadata_.have_unknown_fields()) {
8551    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
8552        unknown_fields(), target);
8553  }
8554  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.FileOptions)
8555  return target;
8556}
8557
8558int FileOptions::ByteSize() const {
8559// @@protoc_insertion_point(message_byte_size_start:google.protobuf.FileOptions)
8560  int total_size = 0;
8561
8562  if (_has_bits_[0 / 32] & 255u) {
8563    // optional string java_package = 1;
8564    if (has_java_package()) {
8565      total_size += 1 +
8566        ::google::protobuf::internal::WireFormatLite::StringSize(
8567          this->java_package());
8568    }
8569
8570    // optional string java_outer_classname = 8;
8571    if (has_java_outer_classname()) {
8572      total_size += 1 +
8573        ::google::protobuf::internal::WireFormatLite::StringSize(
8574          this->java_outer_classname());
8575    }
8576
8577    // optional bool java_multiple_files = 10 [default = false];
8578    if (has_java_multiple_files()) {
8579      total_size += 1 + 1;
8580    }
8581
8582    // optional bool java_generate_equals_and_hash = 20 [default = false];
8583    if (has_java_generate_equals_and_hash()) {
8584      total_size += 2 + 1;
8585    }
8586
8587    // optional bool java_string_check_utf8 = 27 [default = false];
8588    if (has_java_string_check_utf8()) {
8589      total_size += 2 + 1;
8590    }
8591
8592    // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];
8593    if (has_optimize_for()) {
8594      total_size += 1 +
8595        ::google::protobuf::internal::WireFormatLite::EnumSize(this->optimize_for());
8596    }
8597
8598    // optional string go_package = 11;
8599    if (has_go_package()) {
8600      total_size += 1 +
8601        ::google::protobuf::internal::WireFormatLite::StringSize(
8602          this->go_package());
8603    }
8604
8605    // optional bool cc_generic_services = 16 [default = false];
8606    if (has_cc_generic_services()) {
8607      total_size += 2 + 1;
8608    }
8609
8610  }
8611  if (_has_bits_[8 / 32] & 16128u) {
8612    // optional bool java_generic_services = 17 [default = false];
8613    if (has_java_generic_services()) {
8614      total_size += 2 + 1;
8615    }
8616
8617    // optional bool py_generic_services = 18 [default = false];
8618    if (has_py_generic_services()) {
8619      total_size += 2 + 1;
8620    }
8621
8622    // optional bool deprecated = 23 [default = false];
8623    if (has_deprecated()) {
8624      total_size += 2 + 1;
8625    }
8626
8627    // optional bool cc_enable_arenas = 31 [default = false];
8628    if (has_cc_enable_arenas()) {
8629      total_size += 2 + 1;
8630    }
8631
8632    // optional string objc_class_prefix = 36;
8633    if (has_objc_class_prefix()) {
8634      total_size += 2 +
8635        ::google::protobuf::internal::WireFormatLite::StringSize(
8636          this->objc_class_prefix());
8637    }
8638
8639    // optional string csharp_namespace = 37;
8640    if (has_csharp_namespace()) {
8641      total_size += 2 +
8642        ::google::protobuf::internal::WireFormatLite::StringSize(
8643          this->csharp_namespace());
8644    }
8645
8646  }
8647  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
8648  total_size += 2 * this->uninterpreted_option_size();
8649  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
8650    total_size +=
8651      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
8652        this->uninterpreted_option(i));
8653  }
8654
8655  total_size += _extensions_.ByteSize();
8656
8657  if (_internal_metadata_.have_unknown_fields()) {
8658    total_size +=
8659      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
8660        unknown_fields());
8661  }
8662  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
8663  _cached_size_ = total_size;
8664  GOOGLE_SAFE_CONCURRENT_WRITES_END();
8665  return total_size;
8666}
8667
8668void FileOptions::MergeFrom(const ::google::protobuf::Message& from) {
8669// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.FileOptions)
8670  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
8671  const FileOptions* source =
8672      ::google::protobuf::internal::DynamicCastToGenerated<const FileOptions>(
8673          &from);
8674  if (source == NULL) {
8675  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.FileOptions)
8676    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
8677  } else {
8678  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.FileOptions)
8679    MergeFrom(*source);
8680  }
8681}
8682
8683void FileOptions::MergeFrom(const FileOptions& from) {
8684// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.FileOptions)
8685  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
8686  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
8687  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
8688    if (from.has_java_package()) {
8689      set_has_java_package();
8690      java_package_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.java_package_);
8691    }
8692    if (from.has_java_outer_classname()) {
8693      set_has_java_outer_classname();
8694      java_outer_classname_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.java_outer_classname_);
8695    }
8696    if (from.has_java_multiple_files()) {
8697      set_java_multiple_files(from.java_multiple_files());
8698    }
8699    if (from.has_java_generate_equals_and_hash()) {
8700      set_java_generate_equals_and_hash(from.java_generate_equals_and_hash());
8701    }
8702    if (from.has_java_string_check_utf8()) {
8703      set_java_string_check_utf8(from.java_string_check_utf8());
8704    }
8705    if (from.has_optimize_for()) {
8706      set_optimize_for(from.optimize_for());
8707    }
8708    if (from.has_go_package()) {
8709      set_has_go_package();
8710      go_package_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.go_package_);
8711    }
8712    if (from.has_cc_generic_services()) {
8713      set_cc_generic_services(from.cc_generic_services());
8714    }
8715  }
8716  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
8717    if (from.has_java_generic_services()) {
8718      set_java_generic_services(from.java_generic_services());
8719    }
8720    if (from.has_py_generic_services()) {
8721      set_py_generic_services(from.py_generic_services());
8722    }
8723    if (from.has_deprecated()) {
8724      set_deprecated(from.deprecated());
8725    }
8726    if (from.has_cc_enable_arenas()) {
8727      set_cc_enable_arenas(from.cc_enable_arenas());
8728    }
8729    if (from.has_objc_class_prefix()) {
8730      set_has_objc_class_prefix();
8731      objc_class_prefix_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.objc_class_prefix_);
8732    }
8733    if (from.has_csharp_namespace()) {
8734      set_has_csharp_namespace();
8735      csharp_namespace_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.csharp_namespace_);
8736    }
8737  }
8738  _extensions_.MergeFrom(from._extensions_);
8739  if (from._internal_metadata_.have_unknown_fields()) {
8740    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
8741  }
8742}
8743
8744void FileOptions::CopyFrom(const ::google::protobuf::Message& from) {
8745// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.FileOptions)
8746  if (&from == this) return;
8747  Clear();
8748  MergeFrom(from);
8749}
8750
8751void FileOptions::CopyFrom(const FileOptions& from) {
8752// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.FileOptions)
8753  if (&from == this) return;
8754  Clear();
8755  MergeFrom(from);
8756}
8757
8758bool FileOptions::IsInitialized() const {
8759
8760  if (!::google::protobuf::internal::AllAreInitialized(this->uninterpreted_option())) return false;
8761
8762  if (!_extensions_.IsInitialized()) return false;  return true;
8763}
8764
8765void FileOptions::Swap(FileOptions* other) {
8766  if (other == this) return;
8767  InternalSwap(other);
8768}
8769void FileOptions::InternalSwap(FileOptions* other) {
8770  java_package_.Swap(&other->java_package_);
8771  java_outer_classname_.Swap(&other->java_outer_classname_);
8772  std::swap(java_multiple_files_, other->java_multiple_files_);
8773  std::swap(java_generate_equals_and_hash_, other->java_generate_equals_and_hash_);
8774  std::swap(java_string_check_utf8_, other->java_string_check_utf8_);
8775  std::swap(optimize_for_, other->optimize_for_);
8776  go_package_.Swap(&other->go_package_);
8777  std::swap(cc_generic_services_, other->cc_generic_services_);
8778  std::swap(java_generic_services_, other->java_generic_services_);
8779  std::swap(py_generic_services_, other->py_generic_services_);
8780  std::swap(deprecated_, other->deprecated_);
8781  std::swap(cc_enable_arenas_, other->cc_enable_arenas_);
8782  objc_class_prefix_.Swap(&other->objc_class_prefix_);
8783  csharp_namespace_.Swap(&other->csharp_namespace_);
8784  uninterpreted_option_.UnsafeArenaSwap(&other->uninterpreted_option_);
8785  std::swap(_has_bits_[0], other->_has_bits_[0]);
8786  _internal_metadata_.Swap(&other->_internal_metadata_);
8787  std::swap(_cached_size_, other->_cached_size_);
8788  _extensions_.Swap(&other->_extensions_);
8789}
8790
8791::google::protobuf::Metadata FileOptions::GetMetadata() const {
8792  protobuf_AssignDescriptorsOnce();
8793  ::google::protobuf::Metadata metadata;
8794  metadata.descriptor = FileOptions_descriptor_;
8795  metadata.reflection = FileOptions_reflection_;
8796  return metadata;
8797}
8798
8799#if PROTOBUF_INLINE_NOT_IN_HEADERS
8800// FileOptions
8801
8802// optional string java_package = 1;
8803bool FileOptions::has_java_package() const {
8804  return (_has_bits_[0] & 0x00000001u) != 0;
8805}
8806void FileOptions::set_has_java_package() {
8807  _has_bits_[0] |= 0x00000001u;
8808}
8809void FileOptions::clear_has_java_package() {
8810  _has_bits_[0] &= ~0x00000001u;
8811}
8812void FileOptions::clear_java_package() {
8813  java_package_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8814  clear_has_java_package();
8815}
8816 const ::std::string& FileOptions::java_package() const {
8817  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_package)
8818  return java_package_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8819}
8820 void FileOptions::set_java_package(const ::std::string& value) {
8821  set_has_java_package();
8822  java_package_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
8823  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_package)
8824}
8825 void FileOptions::set_java_package(const char* value) {
8826  set_has_java_package();
8827  java_package_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
8828  // @@protoc_insertion_point(field_set_char:google.protobuf.FileOptions.java_package)
8829}
8830 void FileOptions::set_java_package(const char* value, size_t size) {
8831  set_has_java_package();
8832  java_package_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
8833      ::std::string(reinterpret_cast<const char*>(value), size));
8834  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FileOptions.java_package)
8835}
8836 ::std::string* FileOptions::mutable_java_package() {
8837  set_has_java_package();
8838  // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.java_package)
8839  return java_package_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8840}
8841 ::std::string* FileOptions::release_java_package() {
8842  // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.java_package)
8843  clear_has_java_package();
8844  return java_package_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8845}
8846 void FileOptions::set_allocated_java_package(::std::string* java_package) {
8847  if (java_package != NULL) {
8848    set_has_java_package();
8849  } else {
8850    clear_has_java_package();
8851  }
8852  java_package_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), java_package);
8853  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.java_package)
8854}
8855
8856// optional string java_outer_classname = 8;
8857bool FileOptions::has_java_outer_classname() const {
8858  return (_has_bits_[0] & 0x00000002u) != 0;
8859}
8860void FileOptions::set_has_java_outer_classname() {
8861  _has_bits_[0] |= 0x00000002u;
8862}
8863void FileOptions::clear_has_java_outer_classname() {
8864  _has_bits_[0] &= ~0x00000002u;
8865}
8866void FileOptions::clear_java_outer_classname() {
8867  java_outer_classname_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8868  clear_has_java_outer_classname();
8869}
8870 const ::std::string& FileOptions::java_outer_classname() const {
8871  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_outer_classname)
8872  return java_outer_classname_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8873}
8874 void FileOptions::set_java_outer_classname(const ::std::string& value) {
8875  set_has_java_outer_classname();
8876  java_outer_classname_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
8877  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_outer_classname)
8878}
8879 void FileOptions::set_java_outer_classname(const char* value) {
8880  set_has_java_outer_classname();
8881  java_outer_classname_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
8882  // @@protoc_insertion_point(field_set_char:google.protobuf.FileOptions.java_outer_classname)
8883}
8884 void FileOptions::set_java_outer_classname(const char* value, size_t size) {
8885  set_has_java_outer_classname();
8886  java_outer_classname_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
8887      ::std::string(reinterpret_cast<const char*>(value), size));
8888  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FileOptions.java_outer_classname)
8889}
8890 ::std::string* FileOptions::mutable_java_outer_classname() {
8891  set_has_java_outer_classname();
8892  // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.java_outer_classname)
8893  return java_outer_classname_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8894}
8895 ::std::string* FileOptions::release_java_outer_classname() {
8896  // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.java_outer_classname)
8897  clear_has_java_outer_classname();
8898  return java_outer_classname_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
8899}
8900 void FileOptions::set_allocated_java_outer_classname(::std::string* java_outer_classname) {
8901  if (java_outer_classname != NULL) {
8902    set_has_java_outer_classname();
8903  } else {
8904    clear_has_java_outer_classname();
8905  }
8906  java_outer_classname_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), java_outer_classname);
8907  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.java_outer_classname)
8908}
8909
8910// optional bool java_multiple_files = 10 [default = false];
8911bool FileOptions::has_java_multiple_files() const {
8912  return (_has_bits_[0] & 0x00000004u) != 0;
8913}
8914void FileOptions::set_has_java_multiple_files() {
8915  _has_bits_[0] |= 0x00000004u;
8916}
8917void FileOptions::clear_has_java_multiple_files() {
8918  _has_bits_[0] &= ~0x00000004u;
8919}
8920void FileOptions::clear_java_multiple_files() {
8921  java_multiple_files_ = false;
8922  clear_has_java_multiple_files();
8923}
8924 bool FileOptions::java_multiple_files() const {
8925  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_multiple_files)
8926  return java_multiple_files_;
8927}
8928 void FileOptions::set_java_multiple_files(bool value) {
8929  set_has_java_multiple_files();
8930  java_multiple_files_ = value;
8931  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_multiple_files)
8932}
8933
8934// optional bool java_generate_equals_and_hash = 20 [default = false];
8935bool FileOptions::has_java_generate_equals_and_hash() const {
8936  return (_has_bits_[0] & 0x00000008u) != 0;
8937}
8938void FileOptions::set_has_java_generate_equals_and_hash() {
8939  _has_bits_[0] |= 0x00000008u;
8940}
8941void FileOptions::clear_has_java_generate_equals_and_hash() {
8942  _has_bits_[0] &= ~0x00000008u;
8943}
8944void FileOptions::clear_java_generate_equals_and_hash() {
8945  java_generate_equals_and_hash_ = false;
8946  clear_has_java_generate_equals_and_hash();
8947}
8948 bool FileOptions::java_generate_equals_and_hash() const {
8949  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_generate_equals_and_hash)
8950  return java_generate_equals_and_hash_;
8951}
8952 void FileOptions::set_java_generate_equals_and_hash(bool value) {
8953  set_has_java_generate_equals_and_hash();
8954  java_generate_equals_and_hash_ = value;
8955  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_generate_equals_and_hash)
8956}
8957
8958// optional bool java_string_check_utf8 = 27 [default = false];
8959bool FileOptions::has_java_string_check_utf8() const {
8960  return (_has_bits_[0] & 0x00000010u) != 0;
8961}
8962void FileOptions::set_has_java_string_check_utf8() {
8963  _has_bits_[0] |= 0x00000010u;
8964}
8965void FileOptions::clear_has_java_string_check_utf8() {
8966  _has_bits_[0] &= ~0x00000010u;
8967}
8968void FileOptions::clear_java_string_check_utf8() {
8969  java_string_check_utf8_ = false;
8970  clear_has_java_string_check_utf8();
8971}
8972 bool FileOptions::java_string_check_utf8() const {
8973  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_string_check_utf8)
8974  return java_string_check_utf8_;
8975}
8976 void FileOptions::set_java_string_check_utf8(bool value) {
8977  set_has_java_string_check_utf8();
8978  java_string_check_utf8_ = value;
8979  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_string_check_utf8)
8980}
8981
8982// optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED];
8983bool FileOptions::has_optimize_for() const {
8984  return (_has_bits_[0] & 0x00000020u) != 0;
8985}
8986void FileOptions::set_has_optimize_for() {
8987  _has_bits_[0] |= 0x00000020u;
8988}
8989void FileOptions::clear_has_optimize_for() {
8990  _has_bits_[0] &= ~0x00000020u;
8991}
8992void FileOptions::clear_optimize_for() {
8993  optimize_for_ = 1;
8994  clear_has_optimize_for();
8995}
8996 ::google::protobuf::FileOptions_OptimizeMode FileOptions::optimize_for() const {
8997  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.optimize_for)
8998  return static_cast< ::google::protobuf::FileOptions_OptimizeMode >(optimize_for_);
8999}
9000 void FileOptions::set_optimize_for(::google::protobuf::FileOptions_OptimizeMode value) {
9001  assert(::google::protobuf::FileOptions_OptimizeMode_IsValid(value));
9002  set_has_optimize_for();
9003  optimize_for_ = value;
9004  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.optimize_for)
9005}
9006
9007// optional string go_package = 11;
9008bool FileOptions::has_go_package() const {
9009  return (_has_bits_[0] & 0x00000040u) != 0;
9010}
9011void FileOptions::set_has_go_package() {
9012  _has_bits_[0] |= 0x00000040u;
9013}
9014void FileOptions::clear_has_go_package() {
9015  _has_bits_[0] &= ~0x00000040u;
9016}
9017void FileOptions::clear_go_package() {
9018  go_package_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9019  clear_has_go_package();
9020}
9021 const ::std::string& FileOptions::go_package() const {
9022  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.go_package)
9023  return go_package_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9024}
9025 void FileOptions::set_go_package(const ::std::string& value) {
9026  set_has_go_package();
9027  go_package_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
9028  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.go_package)
9029}
9030 void FileOptions::set_go_package(const char* value) {
9031  set_has_go_package();
9032  go_package_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
9033  // @@protoc_insertion_point(field_set_char:google.protobuf.FileOptions.go_package)
9034}
9035 void FileOptions::set_go_package(const char* value, size_t size) {
9036  set_has_go_package();
9037  go_package_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
9038      ::std::string(reinterpret_cast<const char*>(value), size));
9039  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FileOptions.go_package)
9040}
9041 ::std::string* FileOptions::mutable_go_package() {
9042  set_has_go_package();
9043  // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.go_package)
9044  return go_package_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9045}
9046 ::std::string* FileOptions::release_go_package() {
9047  // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.go_package)
9048  clear_has_go_package();
9049  return go_package_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9050}
9051 void FileOptions::set_allocated_go_package(::std::string* go_package) {
9052  if (go_package != NULL) {
9053    set_has_go_package();
9054  } else {
9055    clear_has_go_package();
9056  }
9057  go_package_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), go_package);
9058  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.go_package)
9059}
9060
9061// optional bool cc_generic_services = 16 [default = false];
9062bool FileOptions::has_cc_generic_services() const {
9063  return (_has_bits_[0] & 0x00000080u) != 0;
9064}
9065void FileOptions::set_has_cc_generic_services() {
9066  _has_bits_[0] |= 0x00000080u;
9067}
9068void FileOptions::clear_has_cc_generic_services() {
9069  _has_bits_[0] &= ~0x00000080u;
9070}
9071void FileOptions::clear_cc_generic_services() {
9072  cc_generic_services_ = false;
9073  clear_has_cc_generic_services();
9074}
9075 bool FileOptions::cc_generic_services() const {
9076  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.cc_generic_services)
9077  return cc_generic_services_;
9078}
9079 void FileOptions::set_cc_generic_services(bool value) {
9080  set_has_cc_generic_services();
9081  cc_generic_services_ = value;
9082  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.cc_generic_services)
9083}
9084
9085// optional bool java_generic_services = 17 [default = false];
9086bool FileOptions::has_java_generic_services() const {
9087  return (_has_bits_[0] & 0x00000100u) != 0;
9088}
9089void FileOptions::set_has_java_generic_services() {
9090  _has_bits_[0] |= 0x00000100u;
9091}
9092void FileOptions::clear_has_java_generic_services() {
9093  _has_bits_[0] &= ~0x00000100u;
9094}
9095void FileOptions::clear_java_generic_services() {
9096  java_generic_services_ = false;
9097  clear_has_java_generic_services();
9098}
9099 bool FileOptions::java_generic_services() const {
9100  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_generic_services)
9101  return java_generic_services_;
9102}
9103 void FileOptions::set_java_generic_services(bool value) {
9104  set_has_java_generic_services();
9105  java_generic_services_ = value;
9106  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_generic_services)
9107}
9108
9109// optional bool py_generic_services = 18 [default = false];
9110bool FileOptions::has_py_generic_services() const {
9111  return (_has_bits_[0] & 0x00000200u) != 0;
9112}
9113void FileOptions::set_has_py_generic_services() {
9114  _has_bits_[0] |= 0x00000200u;
9115}
9116void FileOptions::clear_has_py_generic_services() {
9117  _has_bits_[0] &= ~0x00000200u;
9118}
9119void FileOptions::clear_py_generic_services() {
9120  py_generic_services_ = false;
9121  clear_has_py_generic_services();
9122}
9123 bool FileOptions::py_generic_services() const {
9124  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.py_generic_services)
9125  return py_generic_services_;
9126}
9127 void FileOptions::set_py_generic_services(bool value) {
9128  set_has_py_generic_services();
9129  py_generic_services_ = value;
9130  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.py_generic_services)
9131}
9132
9133// optional bool deprecated = 23 [default = false];
9134bool FileOptions::has_deprecated() const {
9135  return (_has_bits_[0] & 0x00000400u) != 0;
9136}
9137void FileOptions::set_has_deprecated() {
9138  _has_bits_[0] |= 0x00000400u;
9139}
9140void FileOptions::clear_has_deprecated() {
9141  _has_bits_[0] &= ~0x00000400u;
9142}
9143void FileOptions::clear_deprecated() {
9144  deprecated_ = false;
9145  clear_has_deprecated();
9146}
9147 bool FileOptions::deprecated() const {
9148  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.deprecated)
9149  return deprecated_;
9150}
9151 void FileOptions::set_deprecated(bool value) {
9152  set_has_deprecated();
9153  deprecated_ = value;
9154  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.deprecated)
9155}
9156
9157// optional bool cc_enable_arenas = 31 [default = false];
9158bool FileOptions::has_cc_enable_arenas() const {
9159  return (_has_bits_[0] & 0x00000800u) != 0;
9160}
9161void FileOptions::set_has_cc_enable_arenas() {
9162  _has_bits_[0] |= 0x00000800u;
9163}
9164void FileOptions::clear_has_cc_enable_arenas() {
9165  _has_bits_[0] &= ~0x00000800u;
9166}
9167void FileOptions::clear_cc_enable_arenas() {
9168  cc_enable_arenas_ = false;
9169  clear_has_cc_enable_arenas();
9170}
9171 bool FileOptions::cc_enable_arenas() const {
9172  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.cc_enable_arenas)
9173  return cc_enable_arenas_;
9174}
9175 void FileOptions::set_cc_enable_arenas(bool value) {
9176  set_has_cc_enable_arenas();
9177  cc_enable_arenas_ = value;
9178  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.cc_enable_arenas)
9179}
9180
9181// optional string objc_class_prefix = 36;
9182bool FileOptions::has_objc_class_prefix() const {
9183  return (_has_bits_[0] & 0x00001000u) != 0;
9184}
9185void FileOptions::set_has_objc_class_prefix() {
9186  _has_bits_[0] |= 0x00001000u;
9187}
9188void FileOptions::clear_has_objc_class_prefix() {
9189  _has_bits_[0] &= ~0x00001000u;
9190}
9191void FileOptions::clear_objc_class_prefix() {
9192  objc_class_prefix_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9193  clear_has_objc_class_prefix();
9194}
9195 const ::std::string& FileOptions::objc_class_prefix() const {
9196  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.objc_class_prefix)
9197  return objc_class_prefix_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9198}
9199 void FileOptions::set_objc_class_prefix(const ::std::string& value) {
9200  set_has_objc_class_prefix();
9201  objc_class_prefix_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
9202  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.objc_class_prefix)
9203}
9204 void FileOptions::set_objc_class_prefix(const char* value) {
9205  set_has_objc_class_prefix();
9206  objc_class_prefix_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
9207  // @@protoc_insertion_point(field_set_char:google.protobuf.FileOptions.objc_class_prefix)
9208}
9209 void FileOptions::set_objc_class_prefix(const char* value, size_t size) {
9210  set_has_objc_class_prefix();
9211  objc_class_prefix_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
9212      ::std::string(reinterpret_cast<const char*>(value), size));
9213  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FileOptions.objc_class_prefix)
9214}
9215 ::std::string* FileOptions::mutable_objc_class_prefix() {
9216  set_has_objc_class_prefix();
9217  // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.objc_class_prefix)
9218  return objc_class_prefix_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9219}
9220 ::std::string* FileOptions::release_objc_class_prefix() {
9221  // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.objc_class_prefix)
9222  clear_has_objc_class_prefix();
9223  return objc_class_prefix_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9224}
9225 void FileOptions::set_allocated_objc_class_prefix(::std::string* objc_class_prefix) {
9226  if (objc_class_prefix != NULL) {
9227    set_has_objc_class_prefix();
9228  } else {
9229    clear_has_objc_class_prefix();
9230  }
9231  objc_class_prefix_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), objc_class_prefix);
9232  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.objc_class_prefix)
9233}
9234
9235// optional string csharp_namespace = 37;
9236bool FileOptions::has_csharp_namespace() const {
9237  return (_has_bits_[0] & 0x00002000u) != 0;
9238}
9239void FileOptions::set_has_csharp_namespace() {
9240  _has_bits_[0] |= 0x00002000u;
9241}
9242void FileOptions::clear_has_csharp_namespace() {
9243  _has_bits_[0] &= ~0x00002000u;
9244}
9245void FileOptions::clear_csharp_namespace() {
9246  csharp_namespace_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9247  clear_has_csharp_namespace();
9248}
9249 const ::std::string& FileOptions::csharp_namespace() const {
9250  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.csharp_namespace)
9251  return csharp_namespace_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9252}
9253 void FileOptions::set_csharp_namespace(const ::std::string& value) {
9254  set_has_csharp_namespace();
9255  csharp_namespace_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
9256  // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.csharp_namespace)
9257}
9258 void FileOptions::set_csharp_namespace(const char* value) {
9259  set_has_csharp_namespace();
9260  csharp_namespace_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
9261  // @@protoc_insertion_point(field_set_char:google.protobuf.FileOptions.csharp_namespace)
9262}
9263 void FileOptions::set_csharp_namespace(const char* value, size_t size) {
9264  set_has_csharp_namespace();
9265  csharp_namespace_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
9266      ::std::string(reinterpret_cast<const char*>(value), size));
9267  // @@protoc_insertion_point(field_set_pointer:google.protobuf.FileOptions.csharp_namespace)
9268}
9269 ::std::string* FileOptions::mutable_csharp_namespace() {
9270  set_has_csharp_namespace();
9271  // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.csharp_namespace)
9272  return csharp_namespace_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9273}
9274 ::std::string* FileOptions::release_csharp_namespace() {
9275  // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.csharp_namespace)
9276  clear_has_csharp_namespace();
9277  return csharp_namespace_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
9278}
9279 void FileOptions::set_allocated_csharp_namespace(::std::string* csharp_namespace) {
9280  if (csharp_namespace != NULL) {
9281    set_has_csharp_namespace();
9282  } else {
9283    clear_has_csharp_namespace();
9284  }
9285  csharp_namespace_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), csharp_namespace);
9286  // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.csharp_namespace)
9287}
9288
9289// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
9290int FileOptions::uninterpreted_option_size() const {
9291  return uninterpreted_option_.size();
9292}
9293void FileOptions::clear_uninterpreted_option() {
9294  uninterpreted_option_.Clear();
9295}
9296const ::google::protobuf::UninterpretedOption& FileOptions::uninterpreted_option(int index) const {
9297  // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.uninterpreted_option)
9298  return uninterpreted_option_.Get(index);
9299}
9300::google::protobuf::UninterpretedOption* FileOptions::mutable_uninterpreted_option(int index) {
9301  // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.uninterpreted_option)
9302  return uninterpreted_option_.Mutable(index);
9303}
9304::google::protobuf::UninterpretedOption* FileOptions::add_uninterpreted_option() {
9305  // @@protoc_insertion_point(field_add:google.protobuf.FileOptions.uninterpreted_option)
9306  return uninterpreted_option_.Add();
9307}
9308::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >*
9309FileOptions::mutable_uninterpreted_option() {
9310  // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileOptions.uninterpreted_option)
9311  return &uninterpreted_option_;
9312}
9313const ::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >&
9314FileOptions::uninterpreted_option() const {
9315  // @@protoc_insertion_point(field_list:google.protobuf.FileOptions.uninterpreted_option)
9316  return uninterpreted_option_;
9317}
9318
9319#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
9320
9321// ===================================================================
9322
9323#if !defined(_MSC_VER) || _MSC_VER >= 1900
9324const int MessageOptions::kMessageSetWireFormatFieldNumber;
9325const int MessageOptions::kNoStandardDescriptorAccessorFieldNumber;
9326const int MessageOptions::kDeprecatedFieldNumber;
9327const int MessageOptions::kMapEntryFieldNumber;
9328const int MessageOptions::kUninterpretedOptionFieldNumber;
9329#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
9330
9331MessageOptions::MessageOptions()
9332  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
9333  SharedCtor();
9334  // @@protoc_insertion_point(constructor:google.protobuf.MessageOptions)
9335}
9336
9337void MessageOptions::InitAsDefaultInstance() {
9338}
9339
9340MessageOptions::MessageOptions(const MessageOptions& from)
9341  : ::google::protobuf::Message(),
9342    _internal_metadata_(NULL) {
9343  SharedCtor();
9344  MergeFrom(from);
9345  // @@protoc_insertion_point(copy_constructor:google.protobuf.MessageOptions)
9346}
9347
9348void MessageOptions::SharedCtor() {
9349  _cached_size_ = 0;
9350  message_set_wire_format_ = false;
9351  no_standard_descriptor_accessor_ = false;
9352  deprecated_ = false;
9353  map_entry_ = false;
9354  ::memset(_has_bits_, 0, sizeof(_has_bits_));
9355}
9356
9357MessageOptions::~MessageOptions() {
9358  // @@protoc_insertion_point(destructor:google.protobuf.MessageOptions)
9359  SharedDtor();
9360}
9361
9362void MessageOptions::SharedDtor() {
9363  if (this != default_instance_) {
9364  }
9365}
9366
9367void MessageOptions::SetCachedSize(int size) const {
9368  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
9369  _cached_size_ = size;
9370  GOOGLE_SAFE_CONCURRENT_WRITES_END();
9371}
9372const ::google::protobuf::Descriptor* MessageOptions::descriptor() {
9373  protobuf_AssignDescriptorsOnce();
9374  return MessageOptions_descriptor_;
9375}
9376
9377const MessageOptions& MessageOptions::default_instance() {
9378  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
9379  return *default_instance_;
9380}
9381
9382MessageOptions* MessageOptions::default_instance_ = NULL;
9383
9384MessageOptions* MessageOptions::New(::google::protobuf::Arena* arena) const {
9385  MessageOptions* n = new MessageOptions;
9386  if (arena != NULL) {
9387    arena->Own(n);
9388  }
9389  return n;
9390}
9391
9392void MessageOptions::Clear() {
9393// @@protoc_insertion_point(message_clear_start:google.protobuf.MessageOptions)
9394  _extensions_.Clear();
9395#if defined(__clang__)
9396#define ZR_HELPER_(f) \
9397  _Pragma("clang diagnostic push") \
9398  _Pragma("clang diagnostic ignored \"-Winvalid-offsetof\"") \
9399  __builtin_offsetof(MessageOptions, f) \
9400  _Pragma("clang diagnostic pop")
9401#else
9402#define ZR_HELPER_(f) reinterpret_cast<char*>(\
9403  &reinterpret_cast<MessageOptions*>(16)->f)
9404#endif
9405
9406#define ZR_(first, last) do {\
9407  ::memset(&(first), 0,\
9408           ZR_HELPER_(last) - ZR_HELPER_(first) + sizeof(last));\
9409} while (0)
9410
9411  ZR_(message_set_wire_format_, map_entry_);
9412
9413#undef ZR_HELPER_
9414#undef ZR_
9415
9416  uninterpreted_option_.Clear();
9417  ::memset(_has_bits_, 0, sizeof(_has_bits_));
9418  if (_internal_metadata_.have_unknown_fields()) {
9419    mutable_unknown_fields()->Clear();
9420  }
9421}
9422
9423bool MessageOptions::MergePartialFromCodedStream(
9424    ::google::protobuf::io::CodedInputStream* input) {
9425#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
9426  ::google::protobuf::uint32 tag;
9427  // @@protoc_insertion_point(parse_start:google.protobuf.MessageOptions)
9428  for (;;) {
9429    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(16383);
9430    tag = p.first;
9431    if (!p.second) goto handle_unusual;
9432    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
9433      // optional bool message_set_wire_format = 1 [default = false];
9434      case 1: {
9435        if (tag == 8) {
9436          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
9437                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
9438                 input, &message_set_wire_format_)));
9439          set_has_message_set_wire_format();
9440        } else {
9441          goto handle_unusual;
9442        }
9443        if (input->ExpectTag(16)) goto parse_no_standard_descriptor_accessor;
9444        break;
9445      }
9446
9447      // optional bool no_standard_descriptor_accessor = 2 [default = false];
9448      case 2: {
9449        if (tag == 16) {
9450         parse_no_standard_descriptor_accessor:
9451          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
9452                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
9453                 input, &no_standard_descriptor_accessor_)));
9454          set_has_no_standard_descriptor_accessor();
9455        } else {
9456          goto handle_unusual;
9457        }
9458        if (input->ExpectTag(24)) goto parse_deprecated;
9459        break;
9460      }
9461
9462      // optional bool deprecated = 3 [default = false];
9463      case 3: {
9464        if (tag == 24) {
9465         parse_deprecated:
9466          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
9467                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
9468                 input, &deprecated_)));
9469          set_has_deprecated();
9470        } else {
9471          goto handle_unusual;
9472        }
9473        if (input->ExpectTag(56)) goto parse_map_entry;
9474        break;
9475      }
9476
9477      // optional bool map_entry = 7;
9478      case 7: {
9479        if (tag == 56) {
9480         parse_map_entry:
9481          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
9482                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
9483                 input, &map_entry_)));
9484          set_has_map_entry();
9485        } else {
9486          goto handle_unusual;
9487        }
9488        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
9489        break;
9490      }
9491
9492      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
9493      case 999: {
9494        if (tag == 7994) {
9495         parse_uninterpreted_option:
9496          DO_(input->IncrementRecursionDepth());
9497         parse_loop_uninterpreted_option:
9498          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
9499                input, add_uninterpreted_option()));
9500        } else {
9501          goto handle_unusual;
9502        }
9503        if (input->ExpectTag(7994)) goto parse_loop_uninterpreted_option;
9504        input->UnsafeDecrementRecursionDepth();
9505        if (input->ExpectAtEnd()) goto success;
9506        break;
9507      }
9508
9509      default: {
9510      handle_unusual:
9511        if (tag == 0 ||
9512            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
9513            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
9514          goto success;
9515        }
9516        if ((8000u <= tag)) {
9517          DO_(_extensions_.ParseField(tag, input, default_instance_,
9518                                      mutable_unknown_fields()));
9519          continue;
9520        }
9521        DO_(::google::protobuf::internal::WireFormat::SkipField(
9522              input, tag, mutable_unknown_fields()));
9523        break;
9524      }
9525    }
9526  }
9527success:
9528  // @@protoc_insertion_point(parse_success:google.protobuf.MessageOptions)
9529  return true;
9530failure:
9531  // @@protoc_insertion_point(parse_failure:google.protobuf.MessageOptions)
9532  return false;
9533#undef DO_
9534}
9535
9536void MessageOptions::SerializeWithCachedSizes(
9537    ::google::protobuf::io::CodedOutputStream* output) const {
9538  // @@protoc_insertion_point(serialize_start:google.protobuf.MessageOptions)
9539  // optional bool message_set_wire_format = 1 [default = false];
9540  if (has_message_set_wire_format()) {
9541    ::google::protobuf::internal::WireFormatLite::WriteBool(1, this->message_set_wire_format(), output);
9542  }
9543
9544  // optional bool no_standard_descriptor_accessor = 2 [default = false];
9545  if (has_no_standard_descriptor_accessor()) {
9546    ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->no_standard_descriptor_accessor(), output);
9547  }
9548
9549  // optional bool deprecated = 3 [default = false];
9550  if (has_deprecated()) {
9551    ::google::protobuf::internal::WireFormatLite::WriteBool(3, this->deprecated(), output);
9552  }
9553
9554  // optional bool map_entry = 7;
9555  if (has_map_entry()) {
9556    ::google::protobuf::internal::WireFormatLite::WriteBool(7, this->map_entry(), output);
9557  }
9558
9559  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
9560  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
9561    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
9562      999, this->uninterpreted_option(i), output);
9563  }
9564
9565  // Extension range [1000, 536870912)
9566  _extensions_.SerializeWithCachedSizes(
9567      1000, 536870912, output);
9568
9569  if (_internal_metadata_.have_unknown_fields()) {
9570    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
9571        unknown_fields(), output);
9572  }
9573  // @@protoc_insertion_point(serialize_end:google.protobuf.MessageOptions)
9574}
9575
9576::google::protobuf::uint8* MessageOptions::SerializeWithCachedSizesToArray(
9577    ::google::protobuf::uint8* target) const {
9578  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.MessageOptions)
9579  // optional bool message_set_wire_format = 1 [default = false];
9580  if (has_message_set_wire_format()) {
9581    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(1, this->message_set_wire_format(), target);
9582  }
9583
9584  // optional bool no_standard_descriptor_accessor = 2 [default = false];
9585  if (has_no_standard_descriptor_accessor()) {
9586    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(2, this->no_standard_descriptor_accessor(), target);
9587  }
9588
9589  // optional bool deprecated = 3 [default = false];
9590  if (has_deprecated()) {
9591    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(3, this->deprecated(), target);
9592  }
9593
9594  // optional bool map_entry = 7;
9595  if (has_map_entry()) {
9596    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(7, this->map_entry(), target);
9597  }
9598
9599  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
9600  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
9601    target = ::google::protobuf::internal::WireFormatLite::
9602      WriteMessageNoVirtualToArray(
9603        999, this->uninterpreted_option(i), target);
9604  }
9605
9606  // Extension range [1000, 536870912)
9607  target = _extensions_.SerializeWithCachedSizesToArray(
9608      1000, 536870912, target);
9609
9610  if (_internal_metadata_.have_unknown_fields()) {
9611    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
9612        unknown_fields(), target);
9613  }
9614  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.MessageOptions)
9615  return target;
9616}
9617
9618int MessageOptions::ByteSize() const {
9619// @@protoc_insertion_point(message_byte_size_start:google.protobuf.MessageOptions)
9620  int total_size = 0;
9621
9622  if (_has_bits_[0 / 32] & 15u) {
9623    // optional bool message_set_wire_format = 1 [default = false];
9624    if (has_message_set_wire_format()) {
9625      total_size += 1 + 1;
9626    }
9627
9628    // optional bool no_standard_descriptor_accessor = 2 [default = false];
9629    if (has_no_standard_descriptor_accessor()) {
9630      total_size += 1 + 1;
9631    }
9632
9633    // optional bool deprecated = 3 [default = false];
9634    if (has_deprecated()) {
9635      total_size += 1 + 1;
9636    }
9637
9638    // optional bool map_entry = 7;
9639    if (has_map_entry()) {
9640      total_size += 1 + 1;
9641    }
9642
9643  }
9644  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
9645  total_size += 2 * this->uninterpreted_option_size();
9646  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
9647    total_size +=
9648      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
9649        this->uninterpreted_option(i));
9650  }
9651
9652  total_size += _extensions_.ByteSize();
9653
9654  if (_internal_metadata_.have_unknown_fields()) {
9655    total_size +=
9656      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
9657        unknown_fields());
9658  }
9659  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
9660  _cached_size_ = total_size;
9661  GOOGLE_SAFE_CONCURRENT_WRITES_END();
9662  return total_size;
9663}
9664
9665void MessageOptions::MergeFrom(const ::google::protobuf::Message& from) {
9666// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.MessageOptions)
9667  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
9668  const MessageOptions* source =
9669      ::google::protobuf::internal::DynamicCastToGenerated<const MessageOptions>(
9670          &from);
9671  if (source == NULL) {
9672  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.MessageOptions)
9673    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
9674  } else {
9675  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.MessageOptions)
9676    MergeFrom(*source);
9677  }
9678}
9679
9680void MessageOptions::MergeFrom(const MessageOptions& from) {
9681// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.MessageOptions)
9682  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
9683  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
9684  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
9685    if (from.has_message_set_wire_format()) {
9686      set_message_set_wire_format(from.message_set_wire_format());
9687    }
9688    if (from.has_no_standard_descriptor_accessor()) {
9689      set_no_standard_descriptor_accessor(from.no_standard_descriptor_accessor());
9690    }
9691    if (from.has_deprecated()) {
9692      set_deprecated(from.deprecated());
9693    }
9694    if (from.has_map_entry()) {
9695      set_map_entry(from.map_entry());
9696    }
9697  }
9698  _extensions_.MergeFrom(from._extensions_);
9699  if (from._internal_metadata_.have_unknown_fields()) {
9700    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
9701  }
9702}
9703
9704void MessageOptions::CopyFrom(const ::google::protobuf::Message& from) {
9705// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.MessageOptions)
9706  if (&from == this) return;
9707  Clear();
9708  MergeFrom(from);
9709}
9710
9711void MessageOptions::CopyFrom(const MessageOptions& from) {
9712// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.MessageOptions)
9713  if (&from == this) return;
9714  Clear();
9715  MergeFrom(from);
9716}
9717
9718bool MessageOptions::IsInitialized() const {
9719
9720  if (!::google::protobuf::internal::AllAreInitialized(this->uninterpreted_option())) return false;
9721
9722  if (!_extensions_.IsInitialized()) return false;  return true;
9723}
9724
9725void MessageOptions::Swap(MessageOptions* other) {
9726  if (other == this) return;
9727  InternalSwap(other);
9728}
9729void MessageOptions::InternalSwap(MessageOptions* other) {
9730  std::swap(message_set_wire_format_, other->message_set_wire_format_);
9731  std::swap(no_standard_descriptor_accessor_, other->no_standard_descriptor_accessor_);
9732  std::swap(deprecated_, other->deprecated_);
9733  std::swap(map_entry_, other->map_entry_);
9734  uninterpreted_option_.UnsafeArenaSwap(&other->uninterpreted_option_);
9735  std::swap(_has_bits_[0], other->_has_bits_[0]);
9736  _internal_metadata_.Swap(&other->_internal_metadata_);
9737  std::swap(_cached_size_, other->_cached_size_);
9738  _extensions_.Swap(&other->_extensions_);
9739}
9740
9741::google::protobuf::Metadata MessageOptions::GetMetadata() const {
9742  protobuf_AssignDescriptorsOnce();
9743  ::google::protobuf::Metadata metadata;
9744  metadata.descriptor = MessageOptions_descriptor_;
9745  metadata.reflection = MessageOptions_reflection_;
9746  return metadata;
9747}
9748
9749#if PROTOBUF_INLINE_NOT_IN_HEADERS
9750// MessageOptions
9751
9752// optional bool message_set_wire_format = 1 [default = false];
9753bool MessageOptions::has_message_set_wire_format() const {
9754  return (_has_bits_[0] & 0x00000001u) != 0;
9755}
9756void MessageOptions::set_has_message_set_wire_format() {
9757  _has_bits_[0] |= 0x00000001u;
9758}
9759void MessageOptions::clear_has_message_set_wire_format() {
9760  _has_bits_[0] &= ~0x00000001u;
9761}
9762void MessageOptions::clear_message_set_wire_format() {
9763  message_set_wire_format_ = false;
9764  clear_has_message_set_wire_format();
9765}
9766 bool MessageOptions::message_set_wire_format() const {
9767  // @@protoc_insertion_point(field_get:google.protobuf.MessageOptions.message_set_wire_format)
9768  return message_set_wire_format_;
9769}
9770 void MessageOptions::set_message_set_wire_format(bool value) {
9771  set_has_message_set_wire_format();
9772  message_set_wire_format_ = value;
9773  // @@protoc_insertion_point(field_set:google.protobuf.MessageOptions.message_set_wire_format)
9774}
9775
9776// optional bool no_standard_descriptor_accessor = 2 [default = false];
9777bool MessageOptions::has_no_standard_descriptor_accessor() const {
9778  return (_has_bits_[0] & 0x00000002u) != 0;
9779}
9780void MessageOptions::set_has_no_standard_descriptor_accessor() {
9781  _has_bits_[0] |= 0x00000002u;
9782}
9783void MessageOptions::clear_has_no_standard_descriptor_accessor() {
9784  _has_bits_[0] &= ~0x00000002u;
9785}
9786void MessageOptions::clear_no_standard_descriptor_accessor() {
9787  no_standard_descriptor_accessor_ = false;
9788  clear_has_no_standard_descriptor_accessor();
9789}
9790 bool MessageOptions::no_standard_descriptor_accessor() const {
9791  // @@protoc_insertion_point(field_get:google.protobuf.MessageOptions.no_standard_descriptor_accessor)
9792  return no_standard_descriptor_accessor_;
9793}
9794 void MessageOptions::set_no_standard_descriptor_accessor(bool value) {
9795  set_has_no_standard_descriptor_accessor();
9796  no_standard_descriptor_accessor_ = value;
9797  // @@protoc_insertion_point(field_set:google.protobuf.MessageOptions.no_standard_descriptor_accessor)
9798}
9799
9800// optional bool deprecated = 3 [default = false];
9801bool MessageOptions::has_deprecated() const {
9802  return (_has_bits_[0] & 0x00000004u) != 0;
9803}
9804void MessageOptions::set_has_deprecated() {
9805  _has_bits_[0] |= 0x00000004u;
9806}
9807void MessageOptions::clear_has_deprecated() {
9808  _has_bits_[0] &= ~0x00000004u;
9809}
9810void MessageOptions::clear_deprecated() {
9811  deprecated_ = false;
9812  clear_has_deprecated();
9813}
9814 bool MessageOptions::deprecated() const {
9815  // @@protoc_insertion_point(field_get:google.protobuf.MessageOptions.deprecated)
9816  return deprecated_;
9817}
9818 void MessageOptions::set_deprecated(bool value) {
9819  set_has_deprecated();
9820  deprecated_ = value;
9821  // @@protoc_insertion_point(field_set:google.protobuf.MessageOptions.deprecated)
9822}
9823
9824// optional bool map_entry = 7;
9825bool MessageOptions::has_map_entry() const {
9826  return (_has_bits_[0] & 0x00000008u) != 0;
9827}
9828void MessageOptions::set_has_map_entry() {
9829  _has_bits_[0] |= 0x00000008u;
9830}
9831void MessageOptions::clear_has_map_entry() {
9832  _has_bits_[0] &= ~0x00000008u;
9833}
9834void MessageOptions::clear_map_entry() {
9835  map_entry_ = false;
9836  clear_has_map_entry();
9837}
9838 bool MessageOptions::map_entry() const {
9839  // @@protoc_insertion_point(field_get:google.protobuf.MessageOptions.map_entry)
9840  return map_entry_;
9841}
9842 void MessageOptions::set_map_entry(bool value) {
9843  set_has_map_entry();
9844  map_entry_ = value;
9845  // @@protoc_insertion_point(field_set:google.protobuf.MessageOptions.map_entry)
9846}
9847
9848// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
9849int MessageOptions::uninterpreted_option_size() const {
9850  return uninterpreted_option_.size();
9851}
9852void MessageOptions::clear_uninterpreted_option() {
9853  uninterpreted_option_.Clear();
9854}
9855const ::google::protobuf::UninterpretedOption& MessageOptions::uninterpreted_option(int index) const {
9856  // @@protoc_insertion_point(field_get:google.protobuf.MessageOptions.uninterpreted_option)
9857  return uninterpreted_option_.Get(index);
9858}
9859::google::protobuf::UninterpretedOption* MessageOptions::mutable_uninterpreted_option(int index) {
9860  // @@protoc_insertion_point(field_mutable:google.protobuf.MessageOptions.uninterpreted_option)
9861  return uninterpreted_option_.Mutable(index);
9862}
9863::google::protobuf::UninterpretedOption* MessageOptions::add_uninterpreted_option() {
9864  // @@protoc_insertion_point(field_add:google.protobuf.MessageOptions.uninterpreted_option)
9865  return uninterpreted_option_.Add();
9866}
9867::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >*
9868MessageOptions::mutable_uninterpreted_option() {
9869  // @@protoc_insertion_point(field_mutable_list:google.protobuf.MessageOptions.uninterpreted_option)
9870  return &uninterpreted_option_;
9871}
9872const ::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >&
9873MessageOptions::uninterpreted_option() const {
9874  // @@protoc_insertion_point(field_list:google.protobuf.MessageOptions.uninterpreted_option)
9875  return uninterpreted_option_;
9876}
9877
9878#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
9879
9880// ===================================================================
9881
9882const ::google::protobuf::EnumDescriptor* FieldOptions_CType_descriptor() {
9883  protobuf_AssignDescriptorsOnce();
9884  return FieldOptions_CType_descriptor_;
9885}
9886bool FieldOptions_CType_IsValid(int value) {
9887  switch(value) {
9888    case 0:
9889    case 1:
9890    case 2:
9891      return true;
9892    default:
9893      return false;
9894  }
9895}
9896
9897#if !defined(_MSC_VER) || _MSC_VER >= 1900
9898const FieldOptions_CType FieldOptions::STRING;
9899const FieldOptions_CType FieldOptions::CORD;
9900const FieldOptions_CType FieldOptions::STRING_PIECE;
9901const FieldOptions_CType FieldOptions::CType_MIN;
9902const FieldOptions_CType FieldOptions::CType_MAX;
9903const int FieldOptions::CType_ARRAYSIZE;
9904#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
9905const ::google::protobuf::EnumDescriptor* FieldOptions_JSType_descriptor() {
9906  protobuf_AssignDescriptorsOnce();
9907  return FieldOptions_JSType_descriptor_;
9908}
9909bool FieldOptions_JSType_IsValid(int value) {
9910  switch(value) {
9911    case 0:
9912    case 1:
9913    case 2:
9914      return true;
9915    default:
9916      return false;
9917  }
9918}
9919
9920#if !defined(_MSC_VER) || _MSC_VER >= 1900
9921const FieldOptions_JSType FieldOptions::JS_NORMAL;
9922const FieldOptions_JSType FieldOptions::JS_STRING;
9923const FieldOptions_JSType FieldOptions::JS_NUMBER;
9924const FieldOptions_JSType FieldOptions::JSType_MIN;
9925const FieldOptions_JSType FieldOptions::JSType_MAX;
9926const int FieldOptions::JSType_ARRAYSIZE;
9927#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
9928#if !defined(_MSC_VER) || _MSC_VER >= 1900
9929const int FieldOptions::kCtypeFieldNumber;
9930const int FieldOptions::kPackedFieldNumber;
9931const int FieldOptions::kJstypeFieldNumber;
9932const int FieldOptions::kLazyFieldNumber;
9933const int FieldOptions::kDeprecatedFieldNumber;
9934const int FieldOptions::kWeakFieldNumber;
9935const int FieldOptions::kUninterpretedOptionFieldNumber;
9936#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
9937
9938FieldOptions::FieldOptions()
9939  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
9940  SharedCtor();
9941  // @@protoc_insertion_point(constructor:google.protobuf.FieldOptions)
9942}
9943
9944void FieldOptions::InitAsDefaultInstance() {
9945}
9946
9947FieldOptions::FieldOptions(const FieldOptions& from)
9948  : ::google::protobuf::Message(),
9949    _internal_metadata_(NULL) {
9950  SharedCtor();
9951  MergeFrom(from);
9952  // @@protoc_insertion_point(copy_constructor:google.protobuf.FieldOptions)
9953}
9954
9955void FieldOptions::SharedCtor() {
9956  _cached_size_ = 0;
9957  ctype_ = 0;
9958  packed_ = false;
9959  jstype_ = 0;
9960  lazy_ = false;
9961  deprecated_ = false;
9962  weak_ = false;
9963  ::memset(_has_bits_, 0, sizeof(_has_bits_));
9964}
9965
9966FieldOptions::~FieldOptions() {
9967  // @@protoc_insertion_point(destructor:google.protobuf.FieldOptions)
9968  SharedDtor();
9969}
9970
9971void FieldOptions::SharedDtor() {
9972  if (this != default_instance_) {
9973  }
9974}
9975
9976void FieldOptions::SetCachedSize(int size) const {
9977  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
9978  _cached_size_ = size;
9979  GOOGLE_SAFE_CONCURRENT_WRITES_END();
9980}
9981const ::google::protobuf::Descriptor* FieldOptions::descriptor() {
9982  protobuf_AssignDescriptorsOnce();
9983  return FieldOptions_descriptor_;
9984}
9985
9986const FieldOptions& FieldOptions::default_instance() {
9987  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
9988  return *default_instance_;
9989}
9990
9991FieldOptions* FieldOptions::default_instance_ = NULL;
9992
9993FieldOptions* FieldOptions::New(::google::protobuf::Arena* arena) const {
9994  FieldOptions* n = new FieldOptions;
9995  if (arena != NULL) {
9996    arena->Own(n);
9997  }
9998  return n;
9999}
10000
10001void FieldOptions::Clear() {
10002// @@protoc_insertion_point(message_clear_start:google.protobuf.FieldOptions)
10003  _extensions_.Clear();
10004#if defined(__clang__)
10005#define ZR_HELPER_(f) \
10006  _Pragma("clang diagnostic push") \
10007  _Pragma("clang diagnostic ignored \"-Winvalid-offsetof\"") \
10008  __builtin_offsetof(FieldOptions, f) \
10009  _Pragma("clang diagnostic pop")
10010#else
10011#define ZR_HELPER_(f) reinterpret_cast<char*>(\
10012  &reinterpret_cast<FieldOptions*>(16)->f)
10013#endif
10014
10015#define ZR_(first, last) do {\
10016  ::memset(&(first), 0,\
10017           ZR_HELPER_(last) - ZR_HELPER_(first) + sizeof(last));\
10018} while (0)
10019
10020  if (_has_bits_[0 / 32] & 63u) {
10021    ZR_(ctype_, jstype_);
10022    ZR_(packed_, weak_);
10023  }
10024
10025#undef ZR_HELPER_
10026#undef ZR_
10027
10028  uninterpreted_option_.Clear();
10029  ::memset(_has_bits_, 0, sizeof(_has_bits_));
10030  if (_internal_metadata_.have_unknown_fields()) {
10031    mutable_unknown_fields()->Clear();
10032  }
10033}
10034
10035bool FieldOptions::MergePartialFromCodedStream(
10036    ::google::protobuf::io::CodedInputStream* input) {
10037#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
10038  ::google::protobuf::uint32 tag;
10039  // @@protoc_insertion_point(parse_start:google.protobuf.FieldOptions)
10040  for (;;) {
10041    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(16383);
10042    tag = p.first;
10043    if (!p.second) goto handle_unusual;
10044    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
10045      // optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];
10046      case 1: {
10047        if (tag == 8) {
10048          int value;
10049          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
10050                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
10051                 input, &value)));
10052          if (::google::protobuf::FieldOptions_CType_IsValid(value)) {
10053            set_ctype(static_cast< ::google::protobuf::FieldOptions_CType >(value));
10054          } else {
10055            mutable_unknown_fields()->AddVarint(1, value);
10056          }
10057        } else {
10058          goto handle_unusual;
10059        }
10060        if (input->ExpectTag(16)) goto parse_packed;
10061        break;
10062      }
10063
10064      // optional bool packed = 2;
10065      case 2: {
10066        if (tag == 16) {
10067         parse_packed:
10068          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
10069                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
10070                 input, &packed_)));
10071          set_has_packed();
10072        } else {
10073          goto handle_unusual;
10074        }
10075        if (input->ExpectTag(24)) goto parse_deprecated;
10076        break;
10077      }
10078
10079      // optional bool deprecated = 3 [default = false];
10080      case 3: {
10081        if (tag == 24) {
10082         parse_deprecated:
10083          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
10084                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
10085                 input, &deprecated_)));
10086          set_has_deprecated();
10087        } else {
10088          goto handle_unusual;
10089        }
10090        if (input->ExpectTag(40)) goto parse_lazy;
10091        break;
10092      }
10093
10094      // optional bool lazy = 5 [default = false];
10095      case 5: {
10096        if (tag == 40) {
10097         parse_lazy:
10098          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
10099                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
10100                 input, &lazy_)));
10101          set_has_lazy();
10102        } else {
10103          goto handle_unusual;
10104        }
10105        if (input->ExpectTag(48)) goto parse_jstype;
10106        break;
10107      }
10108
10109      // optional .google.protobuf.FieldOptions.JSType jstype = 6 [default = JS_NORMAL];
10110      case 6: {
10111        if (tag == 48) {
10112         parse_jstype:
10113          int value;
10114          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
10115                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
10116                 input, &value)));
10117          if (::google::protobuf::FieldOptions_JSType_IsValid(value)) {
10118            set_jstype(static_cast< ::google::protobuf::FieldOptions_JSType >(value));
10119          } else {
10120            mutable_unknown_fields()->AddVarint(6, value);
10121          }
10122        } else {
10123          goto handle_unusual;
10124        }
10125        if (input->ExpectTag(80)) goto parse_weak;
10126        break;
10127      }
10128
10129      // optional bool weak = 10 [default = false];
10130      case 10: {
10131        if (tag == 80) {
10132         parse_weak:
10133          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
10134                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
10135                 input, &weak_)));
10136          set_has_weak();
10137        } else {
10138          goto handle_unusual;
10139        }
10140        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
10141        break;
10142      }
10143
10144      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
10145      case 999: {
10146        if (tag == 7994) {
10147         parse_uninterpreted_option:
10148          DO_(input->IncrementRecursionDepth());
10149         parse_loop_uninterpreted_option:
10150          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
10151                input, add_uninterpreted_option()));
10152        } else {
10153          goto handle_unusual;
10154        }
10155        if (input->ExpectTag(7994)) goto parse_loop_uninterpreted_option;
10156        input->UnsafeDecrementRecursionDepth();
10157        if (input->ExpectAtEnd()) goto success;
10158        break;
10159      }
10160
10161      default: {
10162      handle_unusual:
10163        if (tag == 0 ||
10164            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
10165            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
10166          goto success;
10167        }
10168        if ((8000u <= tag)) {
10169          DO_(_extensions_.ParseField(tag, input, default_instance_,
10170                                      mutable_unknown_fields()));
10171          continue;
10172        }
10173        DO_(::google::protobuf::internal::WireFormat::SkipField(
10174              input, tag, mutable_unknown_fields()));
10175        break;
10176      }
10177    }
10178  }
10179success:
10180  // @@protoc_insertion_point(parse_success:google.protobuf.FieldOptions)
10181  return true;
10182failure:
10183  // @@protoc_insertion_point(parse_failure:google.protobuf.FieldOptions)
10184  return false;
10185#undef DO_
10186}
10187
10188void FieldOptions::SerializeWithCachedSizes(
10189    ::google::protobuf::io::CodedOutputStream* output) const {
10190  // @@protoc_insertion_point(serialize_start:google.protobuf.FieldOptions)
10191  // optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];
10192  if (has_ctype()) {
10193    ::google::protobuf::internal::WireFormatLite::WriteEnum(
10194      1, this->ctype(), output);
10195  }
10196
10197  // optional bool packed = 2;
10198  if (has_packed()) {
10199    ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->packed(), output);
10200  }
10201
10202  // optional bool deprecated = 3 [default = false];
10203  if (has_deprecated()) {
10204    ::google::protobuf::internal::WireFormatLite::WriteBool(3, this->deprecated(), output);
10205  }
10206
10207  // optional bool lazy = 5 [default = false];
10208  if (has_lazy()) {
10209    ::google::protobuf::internal::WireFormatLite::WriteBool(5, this->lazy(), output);
10210  }
10211
10212  // optional .google.protobuf.FieldOptions.JSType jstype = 6 [default = JS_NORMAL];
10213  if (has_jstype()) {
10214    ::google::protobuf::internal::WireFormatLite::WriteEnum(
10215      6, this->jstype(), output);
10216  }
10217
10218  // optional bool weak = 10 [default = false];
10219  if (has_weak()) {
10220    ::google::protobuf::internal::WireFormatLite::WriteBool(10, this->weak(), output);
10221  }
10222
10223  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
10224  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
10225    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
10226      999, this->uninterpreted_option(i), output);
10227  }
10228
10229  // Extension range [1000, 536870912)
10230  _extensions_.SerializeWithCachedSizes(
10231      1000, 536870912, output);
10232
10233  if (_internal_metadata_.have_unknown_fields()) {
10234    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
10235        unknown_fields(), output);
10236  }
10237  // @@protoc_insertion_point(serialize_end:google.protobuf.FieldOptions)
10238}
10239
10240::google::protobuf::uint8* FieldOptions::SerializeWithCachedSizesToArray(
10241    ::google::protobuf::uint8* target) const {
10242  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.FieldOptions)
10243  // optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];
10244  if (has_ctype()) {
10245    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
10246      1, this->ctype(), target);
10247  }
10248
10249  // optional bool packed = 2;
10250  if (has_packed()) {
10251    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(2, this->packed(), target);
10252  }
10253
10254  // optional bool deprecated = 3 [default = false];
10255  if (has_deprecated()) {
10256    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(3, this->deprecated(), target);
10257  }
10258
10259  // optional bool lazy = 5 [default = false];
10260  if (has_lazy()) {
10261    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(5, this->lazy(), target);
10262  }
10263
10264  // optional .google.protobuf.FieldOptions.JSType jstype = 6 [default = JS_NORMAL];
10265  if (has_jstype()) {
10266    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
10267      6, this->jstype(), target);
10268  }
10269
10270  // optional bool weak = 10 [default = false];
10271  if (has_weak()) {
10272    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(10, this->weak(), target);
10273  }
10274
10275  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
10276  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
10277    target = ::google::protobuf::internal::WireFormatLite::
10278      WriteMessageNoVirtualToArray(
10279        999, this->uninterpreted_option(i), target);
10280  }
10281
10282  // Extension range [1000, 536870912)
10283  target = _extensions_.SerializeWithCachedSizesToArray(
10284      1000, 536870912, target);
10285
10286  if (_internal_metadata_.have_unknown_fields()) {
10287    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
10288        unknown_fields(), target);
10289  }
10290  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.FieldOptions)
10291  return target;
10292}
10293
10294int FieldOptions::ByteSize() const {
10295// @@protoc_insertion_point(message_byte_size_start:google.protobuf.FieldOptions)
10296  int total_size = 0;
10297
10298  if (_has_bits_[0 / 32] & 63u) {
10299    // optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];
10300    if (has_ctype()) {
10301      total_size += 1 +
10302        ::google::protobuf::internal::WireFormatLite::EnumSize(this->ctype());
10303    }
10304
10305    // optional bool packed = 2;
10306    if (has_packed()) {
10307      total_size += 1 + 1;
10308    }
10309
10310    // optional .google.protobuf.FieldOptions.JSType jstype = 6 [default = JS_NORMAL];
10311    if (has_jstype()) {
10312      total_size += 1 +
10313        ::google::protobuf::internal::WireFormatLite::EnumSize(this->jstype());
10314    }
10315
10316    // optional bool lazy = 5 [default = false];
10317    if (has_lazy()) {
10318      total_size += 1 + 1;
10319    }
10320
10321    // optional bool deprecated = 3 [default = false];
10322    if (has_deprecated()) {
10323      total_size += 1 + 1;
10324    }
10325
10326    // optional bool weak = 10 [default = false];
10327    if (has_weak()) {
10328      total_size += 1 + 1;
10329    }
10330
10331  }
10332  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
10333  total_size += 2 * this->uninterpreted_option_size();
10334  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
10335    total_size +=
10336      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
10337        this->uninterpreted_option(i));
10338  }
10339
10340  total_size += _extensions_.ByteSize();
10341
10342  if (_internal_metadata_.have_unknown_fields()) {
10343    total_size +=
10344      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
10345        unknown_fields());
10346  }
10347  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
10348  _cached_size_ = total_size;
10349  GOOGLE_SAFE_CONCURRENT_WRITES_END();
10350  return total_size;
10351}
10352
10353void FieldOptions::MergeFrom(const ::google::protobuf::Message& from) {
10354// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.FieldOptions)
10355  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
10356  const FieldOptions* source =
10357      ::google::protobuf::internal::DynamicCastToGenerated<const FieldOptions>(
10358          &from);
10359  if (source == NULL) {
10360  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.FieldOptions)
10361    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
10362  } else {
10363  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.FieldOptions)
10364    MergeFrom(*source);
10365  }
10366}
10367
10368void FieldOptions::MergeFrom(const FieldOptions& from) {
10369// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.FieldOptions)
10370  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
10371  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
10372  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
10373    if (from.has_ctype()) {
10374      set_ctype(from.ctype());
10375    }
10376    if (from.has_packed()) {
10377      set_packed(from.packed());
10378    }
10379    if (from.has_jstype()) {
10380      set_jstype(from.jstype());
10381    }
10382    if (from.has_lazy()) {
10383      set_lazy(from.lazy());
10384    }
10385    if (from.has_deprecated()) {
10386      set_deprecated(from.deprecated());
10387    }
10388    if (from.has_weak()) {
10389      set_weak(from.weak());
10390    }
10391  }
10392  _extensions_.MergeFrom(from._extensions_);
10393  if (from._internal_metadata_.have_unknown_fields()) {
10394    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
10395  }
10396}
10397
10398void FieldOptions::CopyFrom(const ::google::protobuf::Message& from) {
10399// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.FieldOptions)
10400  if (&from == this) return;
10401  Clear();
10402  MergeFrom(from);
10403}
10404
10405void FieldOptions::CopyFrom(const FieldOptions& from) {
10406// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.FieldOptions)
10407  if (&from == this) return;
10408  Clear();
10409  MergeFrom(from);
10410}
10411
10412bool FieldOptions::IsInitialized() const {
10413
10414  if (!::google::protobuf::internal::AllAreInitialized(this->uninterpreted_option())) return false;
10415
10416  if (!_extensions_.IsInitialized()) return false;  return true;
10417}
10418
10419void FieldOptions::Swap(FieldOptions* other) {
10420  if (other == this) return;
10421  InternalSwap(other);
10422}
10423void FieldOptions::InternalSwap(FieldOptions* other) {
10424  std::swap(ctype_, other->ctype_);
10425  std::swap(packed_, other->packed_);
10426  std::swap(jstype_, other->jstype_);
10427  std::swap(lazy_, other->lazy_);
10428  std::swap(deprecated_, other->deprecated_);
10429  std::swap(weak_, other->weak_);
10430  uninterpreted_option_.UnsafeArenaSwap(&other->uninterpreted_option_);
10431  std::swap(_has_bits_[0], other->_has_bits_[0]);
10432  _internal_metadata_.Swap(&other->_internal_metadata_);
10433  std::swap(_cached_size_, other->_cached_size_);
10434  _extensions_.Swap(&other->_extensions_);
10435}
10436
10437::google::protobuf::Metadata FieldOptions::GetMetadata() const {
10438  protobuf_AssignDescriptorsOnce();
10439  ::google::protobuf::Metadata metadata;
10440  metadata.descriptor = FieldOptions_descriptor_;
10441  metadata.reflection = FieldOptions_reflection_;
10442  return metadata;
10443}
10444
10445#if PROTOBUF_INLINE_NOT_IN_HEADERS
10446// FieldOptions
10447
10448// optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];
10449bool FieldOptions::has_ctype() const {
10450  return (_has_bits_[0] & 0x00000001u) != 0;
10451}
10452void FieldOptions::set_has_ctype() {
10453  _has_bits_[0] |= 0x00000001u;
10454}
10455void FieldOptions::clear_has_ctype() {
10456  _has_bits_[0] &= ~0x00000001u;
10457}
10458void FieldOptions::clear_ctype() {
10459  ctype_ = 0;
10460  clear_has_ctype();
10461}
10462 ::google::protobuf::FieldOptions_CType FieldOptions::ctype() const {
10463  // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.ctype)
10464  return static_cast< ::google::protobuf::FieldOptions_CType >(ctype_);
10465}
10466 void FieldOptions::set_ctype(::google::protobuf::FieldOptions_CType value) {
10467  assert(::google::protobuf::FieldOptions_CType_IsValid(value));
10468  set_has_ctype();
10469  ctype_ = value;
10470  // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.ctype)
10471}
10472
10473// optional bool packed = 2;
10474bool FieldOptions::has_packed() const {
10475  return (_has_bits_[0] & 0x00000002u) != 0;
10476}
10477void FieldOptions::set_has_packed() {
10478  _has_bits_[0] |= 0x00000002u;
10479}
10480void FieldOptions::clear_has_packed() {
10481  _has_bits_[0] &= ~0x00000002u;
10482}
10483void FieldOptions::clear_packed() {
10484  packed_ = false;
10485  clear_has_packed();
10486}
10487 bool FieldOptions::packed() const {
10488  // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.packed)
10489  return packed_;
10490}
10491 void FieldOptions::set_packed(bool value) {
10492  set_has_packed();
10493  packed_ = value;
10494  // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.packed)
10495}
10496
10497// optional .google.protobuf.FieldOptions.JSType jstype = 6 [default = JS_NORMAL];
10498bool FieldOptions::has_jstype() const {
10499  return (_has_bits_[0] & 0x00000004u) != 0;
10500}
10501void FieldOptions::set_has_jstype() {
10502  _has_bits_[0] |= 0x00000004u;
10503}
10504void FieldOptions::clear_has_jstype() {
10505  _has_bits_[0] &= ~0x00000004u;
10506}
10507void FieldOptions::clear_jstype() {
10508  jstype_ = 0;
10509  clear_has_jstype();
10510}
10511 ::google::protobuf::FieldOptions_JSType FieldOptions::jstype() const {
10512  // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.jstype)
10513  return static_cast< ::google::protobuf::FieldOptions_JSType >(jstype_);
10514}
10515 void FieldOptions::set_jstype(::google::protobuf::FieldOptions_JSType value) {
10516  assert(::google::protobuf::FieldOptions_JSType_IsValid(value));
10517  set_has_jstype();
10518  jstype_ = value;
10519  // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.jstype)
10520}
10521
10522// optional bool lazy = 5 [default = false];
10523bool FieldOptions::has_lazy() const {
10524  return (_has_bits_[0] & 0x00000008u) != 0;
10525}
10526void FieldOptions::set_has_lazy() {
10527  _has_bits_[0] |= 0x00000008u;
10528}
10529void FieldOptions::clear_has_lazy() {
10530  _has_bits_[0] &= ~0x00000008u;
10531}
10532void FieldOptions::clear_lazy() {
10533  lazy_ = false;
10534  clear_has_lazy();
10535}
10536 bool FieldOptions::lazy() const {
10537  // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.lazy)
10538  return lazy_;
10539}
10540 void FieldOptions::set_lazy(bool value) {
10541  set_has_lazy();
10542  lazy_ = value;
10543  // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.lazy)
10544}
10545
10546// optional bool deprecated = 3 [default = false];
10547bool FieldOptions::has_deprecated() const {
10548  return (_has_bits_[0] & 0x00000010u) != 0;
10549}
10550void FieldOptions::set_has_deprecated() {
10551  _has_bits_[0] |= 0x00000010u;
10552}
10553void FieldOptions::clear_has_deprecated() {
10554  _has_bits_[0] &= ~0x00000010u;
10555}
10556void FieldOptions::clear_deprecated() {
10557  deprecated_ = false;
10558  clear_has_deprecated();
10559}
10560 bool FieldOptions::deprecated() const {
10561  // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.deprecated)
10562  return deprecated_;
10563}
10564 void FieldOptions::set_deprecated(bool value) {
10565  set_has_deprecated();
10566  deprecated_ = value;
10567  // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.deprecated)
10568}
10569
10570// optional bool weak = 10 [default = false];
10571bool FieldOptions::has_weak() const {
10572  return (_has_bits_[0] & 0x00000020u) != 0;
10573}
10574void FieldOptions::set_has_weak() {
10575  _has_bits_[0] |= 0x00000020u;
10576}
10577void FieldOptions::clear_has_weak() {
10578  _has_bits_[0] &= ~0x00000020u;
10579}
10580void FieldOptions::clear_weak() {
10581  weak_ = false;
10582  clear_has_weak();
10583}
10584 bool FieldOptions::weak() const {
10585  // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.weak)
10586  return weak_;
10587}
10588 void FieldOptions::set_weak(bool value) {
10589  set_has_weak();
10590  weak_ = value;
10591  // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.weak)
10592}
10593
10594// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
10595int FieldOptions::uninterpreted_option_size() const {
10596  return uninterpreted_option_.size();
10597}
10598void FieldOptions::clear_uninterpreted_option() {
10599  uninterpreted_option_.Clear();
10600}
10601const ::google::protobuf::UninterpretedOption& FieldOptions::uninterpreted_option(int index) const {
10602  // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.uninterpreted_option)
10603  return uninterpreted_option_.Get(index);
10604}
10605::google::protobuf::UninterpretedOption* FieldOptions::mutable_uninterpreted_option(int index) {
10606  // @@protoc_insertion_point(field_mutable:google.protobuf.FieldOptions.uninterpreted_option)
10607  return uninterpreted_option_.Mutable(index);
10608}
10609::google::protobuf::UninterpretedOption* FieldOptions::add_uninterpreted_option() {
10610  // @@protoc_insertion_point(field_add:google.protobuf.FieldOptions.uninterpreted_option)
10611  return uninterpreted_option_.Add();
10612}
10613::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >*
10614FieldOptions::mutable_uninterpreted_option() {
10615  // @@protoc_insertion_point(field_mutable_list:google.protobuf.FieldOptions.uninterpreted_option)
10616  return &uninterpreted_option_;
10617}
10618const ::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >&
10619FieldOptions::uninterpreted_option() const {
10620  // @@protoc_insertion_point(field_list:google.protobuf.FieldOptions.uninterpreted_option)
10621  return uninterpreted_option_;
10622}
10623
10624#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
10625
10626// ===================================================================
10627
10628#if !defined(_MSC_VER) || _MSC_VER >= 1900
10629const int EnumOptions::kAllowAliasFieldNumber;
10630const int EnumOptions::kDeprecatedFieldNumber;
10631const int EnumOptions::kUninterpretedOptionFieldNumber;
10632#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
10633
10634EnumOptions::EnumOptions()
10635  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
10636  SharedCtor();
10637  // @@protoc_insertion_point(constructor:google.protobuf.EnumOptions)
10638}
10639
10640void EnumOptions::InitAsDefaultInstance() {
10641}
10642
10643EnumOptions::EnumOptions(const EnumOptions& from)
10644  : ::google::protobuf::Message(),
10645    _internal_metadata_(NULL) {
10646  SharedCtor();
10647  MergeFrom(from);
10648  // @@protoc_insertion_point(copy_constructor:google.protobuf.EnumOptions)
10649}
10650
10651void EnumOptions::SharedCtor() {
10652  _cached_size_ = 0;
10653  allow_alias_ = false;
10654  deprecated_ = false;
10655  ::memset(_has_bits_, 0, sizeof(_has_bits_));
10656}
10657
10658EnumOptions::~EnumOptions() {
10659  // @@protoc_insertion_point(destructor:google.protobuf.EnumOptions)
10660  SharedDtor();
10661}
10662
10663void EnumOptions::SharedDtor() {
10664  if (this != default_instance_) {
10665  }
10666}
10667
10668void EnumOptions::SetCachedSize(int size) const {
10669  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
10670  _cached_size_ = size;
10671  GOOGLE_SAFE_CONCURRENT_WRITES_END();
10672}
10673const ::google::protobuf::Descriptor* EnumOptions::descriptor() {
10674  protobuf_AssignDescriptorsOnce();
10675  return EnumOptions_descriptor_;
10676}
10677
10678const EnumOptions& EnumOptions::default_instance() {
10679  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
10680  return *default_instance_;
10681}
10682
10683EnumOptions* EnumOptions::default_instance_ = NULL;
10684
10685EnumOptions* EnumOptions::New(::google::protobuf::Arena* arena) const {
10686  EnumOptions* n = new EnumOptions;
10687  if (arena != NULL) {
10688    arena->Own(n);
10689  }
10690  return n;
10691}
10692
10693void EnumOptions::Clear() {
10694// @@protoc_insertion_point(message_clear_start:google.protobuf.EnumOptions)
10695  _extensions_.Clear();
10696#if defined(__clang__)
10697#define ZR_HELPER_(f) \
10698  _Pragma("clang diagnostic push") \
10699  _Pragma("clang diagnostic ignored \"-Winvalid-offsetof\"") \
10700  __builtin_offsetof(EnumOptions, f) \
10701  _Pragma("clang diagnostic pop")
10702#else
10703#define ZR_HELPER_(f) reinterpret_cast<char*>(\
10704  &reinterpret_cast<EnumOptions*>(16)->f)
10705#endif
10706
10707#define ZR_(first, last) do {\
10708  ::memset(&(first), 0,\
10709           ZR_HELPER_(last) - ZR_HELPER_(first) + sizeof(last));\
10710} while (0)
10711
10712  ZR_(allow_alias_, deprecated_);
10713
10714#undef ZR_HELPER_
10715#undef ZR_
10716
10717  uninterpreted_option_.Clear();
10718  ::memset(_has_bits_, 0, sizeof(_has_bits_));
10719  if (_internal_metadata_.have_unknown_fields()) {
10720    mutable_unknown_fields()->Clear();
10721  }
10722}
10723
10724bool EnumOptions::MergePartialFromCodedStream(
10725    ::google::protobuf::io::CodedInputStream* input) {
10726#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
10727  ::google::protobuf::uint32 tag;
10728  // @@protoc_insertion_point(parse_start:google.protobuf.EnumOptions)
10729  for (;;) {
10730    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(16383);
10731    tag = p.first;
10732    if (!p.second) goto handle_unusual;
10733    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
10734      // optional bool allow_alias = 2;
10735      case 2: {
10736        if (tag == 16) {
10737          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
10738                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
10739                 input, &allow_alias_)));
10740          set_has_allow_alias();
10741        } else {
10742          goto handle_unusual;
10743        }
10744        if (input->ExpectTag(24)) goto parse_deprecated;
10745        break;
10746      }
10747
10748      // optional bool deprecated = 3 [default = false];
10749      case 3: {
10750        if (tag == 24) {
10751         parse_deprecated:
10752          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
10753                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
10754                 input, &deprecated_)));
10755          set_has_deprecated();
10756        } else {
10757          goto handle_unusual;
10758        }
10759        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
10760        break;
10761      }
10762
10763      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
10764      case 999: {
10765        if (tag == 7994) {
10766         parse_uninterpreted_option:
10767          DO_(input->IncrementRecursionDepth());
10768         parse_loop_uninterpreted_option:
10769          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
10770                input, add_uninterpreted_option()));
10771        } else {
10772          goto handle_unusual;
10773        }
10774        if (input->ExpectTag(7994)) goto parse_loop_uninterpreted_option;
10775        input->UnsafeDecrementRecursionDepth();
10776        if (input->ExpectAtEnd()) goto success;
10777        break;
10778      }
10779
10780      default: {
10781      handle_unusual:
10782        if (tag == 0 ||
10783            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
10784            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
10785          goto success;
10786        }
10787        if ((8000u <= tag)) {
10788          DO_(_extensions_.ParseField(tag, input, default_instance_,
10789                                      mutable_unknown_fields()));
10790          continue;
10791        }
10792        DO_(::google::protobuf::internal::WireFormat::SkipField(
10793              input, tag, mutable_unknown_fields()));
10794        break;
10795      }
10796    }
10797  }
10798success:
10799  // @@protoc_insertion_point(parse_success:google.protobuf.EnumOptions)
10800  return true;
10801failure:
10802  // @@protoc_insertion_point(parse_failure:google.protobuf.EnumOptions)
10803  return false;
10804#undef DO_
10805}
10806
10807void EnumOptions::SerializeWithCachedSizes(
10808    ::google::protobuf::io::CodedOutputStream* output) const {
10809  // @@protoc_insertion_point(serialize_start:google.protobuf.EnumOptions)
10810  // optional bool allow_alias = 2;
10811  if (has_allow_alias()) {
10812    ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->allow_alias(), output);
10813  }
10814
10815  // optional bool deprecated = 3 [default = false];
10816  if (has_deprecated()) {
10817    ::google::protobuf::internal::WireFormatLite::WriteBool(3, this->deprecated(), output);
10818  }
10819
10820  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
10821  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
10822    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
10823      999, this->uninterpreted_option(i), output);
10824  }
10825
10826  // Extension range [1000, 536870912)
10827  _extensions_.SerializeWithCachedSizes(
10828      1000, 536870912, output);
10829
10830  if (_internal_metadata_.have_unknown_fields()) {
10831    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
10832        unknown_fields(), output);
10833  }
10834  // @@protoc_insertion_point(serialize_end:google.protobuf.EnumOptions)
10835}
10836
10837::google::protobuf::uint8* EnumOptions::SerializeWithCachedSizesToArray(
10838    ::google::protobuf::uint8* target) const {
10839  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.EnumOptions)
10840  // optional bool allow_alias = 2;
10841  if (has_allow_alias()) {
10842    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(2, this->allow_alias(), target);
10843  }
10844
10845  // optional bool deprecated = 3 [default = false];
10846  if (has_deprecated()) {
10847    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(3, this->deprecated(), target);
10848  }
10849
10850  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
10851  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
10852    target = ::google::protobuf::internal::WireFormatLite::
10853      WriteMessageNoVirtualToArray(
10854        999, this->uninterpreted_option(i), target);
10855  }
10856
10857  // Extension range [1000, 536870912)
10858  target = _extensions_.SerializeWithCachedSizesToArray(
10859      1000, 536870912, target);
10860
10861  if (_internal_metadata_.have_unknown_fields()) {
10862    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
10863        unknown_fields(), target);
10864  }
10865  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.EnumOptions)
10866  return target;
10867}
10868
10869int EnumOptions::ByteSize() const {
10870// @@protoc_insertion_point(message_byte_size_start:google.protobuf.EnumOptions)
10871  int total_size = 0;
10872
10873  if (_has_bits_[0 / 32] & 3u) {
10874    // optional bool allow_alias = 2;
10875    if (has_allow_alias()) {
10876      total_size += 1 + 1;
10877    }
10878
10879    // optional bool deprecated = 3 [default = false];
10880    if (has_deprecated()) {
10881      total_size += 1 + 1;
10882    }
10883
10884  }
10885  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
10886  total_size += 2 * this->uninterpreted_option_size();
10887  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
10888    total_size +=
10889      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
10890        this->uninterpreted_option(i));
10891  }
10892
10893  total_size += _extensions_.ByteSize();
10894
10895  if (_internal_metadata_.have_unknown_fields()) {
10896    total_size +=
10897      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
10898        unknown_fields());
10899  }
10900  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
10901  _cached_size_ = total_size;
10902  GOOGLE_SAFE_CONCURRENT_WRITES_END();
10903  return total_size;
10904}
10905
10906void EnumOptions::MergeFrom(const ::google::protobuf::Message& from) {
10907// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.EnumOptions)
10908  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
10909  const EnumOptions* source =
10910      ::google::protobuf::internal::DynamicCastToGenerated<const EnumOptions>(
10911          &from);
10912  if (source == NULL) {
10913  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.EnumOptions)
10914    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
10915  } else {
10916  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.EnumOptions)
10917    MergeFrom(*source);
10918  }
10919}
10920
10921void EnumOptions::MergeFrom(const EnumOptions& from) {
10922// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.EnumOptions)
10923  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
10924  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
10925  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
10926    if (from.has_allow_alias()) {
10927      set_allow_alias(from.allow_alias());
10928    }
10929    if (from.has_deprecated()) {
10930      set_deprecated(from.deprecated());
10931    }
10932  }
10933  _extensions_.MergeFrom(from._extensions_);
10934  if (from._internal_metadata_.have_unknown_fields()) {
10935    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
10936  }
10937}
10938
10939void EnumOptions::CopyFrom(const ::google::protobuf::Message& from) {
10940// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.EnumOptions)
10941  if (&from == this) return;
10942  Clear();
10943  MergeFrom(from);
10944}
10945
10946void EnumOptions::CopyFrom(const EnumOptions& from) {
10947// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.EnumOptions)
10948  if (&from == this) return;
10949  Clear();
10950  MergeFrom(from);
10951}
10952
10953bool EnumOptions::IsInitialized() const {
10954
10955  if (!::google::protobuf::internal::AllAreInitialized(this->uninterpreted_option())) return false;
10956
10957  if (!_extensions_.IsInitialized()) return false;  return true;
10958}
10959
10960void EnumOptions::Swap(EnumOptions* other) {
10961  if (other == this) return;
10962  InternalSwap(other);
10963}
10964void EnumOptions::InternalSwap(EnumOptions* other) {
10965  std::swap(allow_alias_, other->allow_alias_);
10966  std::swap(deprecated_, other->deprecated_);
10967  uninterpreted_option_.UnsafeArenaSwap(&other->uninterpreted_option_);
10968  std::swap(_has_bits_[0], other->_has_bits_[0]);
10969  _internal_metadata_.Swap(&other->_internal_metadata_);
10970  std::swap(_cached_size_, other->_cached_size_);
10971  _extensions_.Swap(&other->_extensions_);
10972}
10973
10974::google::protobuf::Metadata EnumOptions::GetMetadata() const {
10975  protobuf_AssignDescriptorsOnce();
10976  ::google::protobuf::Metadata metadata;
10977  metadata.descriptor = EnumOptions_descriptor_;
10978  metadata.reflection = EnumOptions_reflection_;
10979  return metadata;
10980}
10981
10982#if PROTOBUF_INLINE_NOT_IN_HEADERS
10983// EnumOptions
10984
10985// optional bool allow_alias = 2;
10986bool EnumOptions::has_allow_alias() const {
10987  return (_has_bits_[0] & 0x00000001u) != 0;
10988}
10989void EnumOptions::set_has_allow_alias() {
10990  _has_bits_[0] |= 0x00000001u;
10991}
10992void EnumOptions::clear_has_allow_alias() {
10993  _has_bits_[0] &= ~0x00000001u;
10994}
10995void EnumOptions::clear_allow_alias() {
10996  allow_alias_ = false;
10997  clear_has_allow_alias();
10998}
10999 bool EnumOptions::allow_alias() const {
11000  // @@protoc_insertion_point(field_get:google.protobuf.EnumOptions.allow_alias)
11001  return allow_alias_;
11002}
11003 void EnumOptions::set_allow_alias(bool value) {
11004  set_has_allow_alias();
11005  allow_alias_ = value;
11006  // @@protoc_insertion_point(field_set:google.protobuf.EnumOptions.allow_alias)
11007}
11008
11009// optional bool deprecated = 3 [default = false];
11010bool EnumOptions::has_deprecated() const {
11011  return (_has_bits_[0] & 0x00000002u) != 0;
11012}
11013void EnumOptions::set_has_deprecated() {
11014  _has_bits_[0] |= 0x00000002u;
11015}
11016void EnumOptions::clear_has_deprecated() {
11017  _has_bits_[0] &= ~0x00000002u;
11018}
11019void EnumOptions::clear_deprecated() {
11020  deprecated_ = false;
11021  clear_has_deprecated();
11022}
11023 bool EnumOptions::deprecated() const {
11024  // @@protoc_insertion_point(field_get:google.protobuf.EnumOptions.deprecated)
11025  return deprecated_;
11026}
11027 void EnumOptions::set_deprecated(bool value) {
11028  set_has_deprecated();
11029  deprecated_ = value;
11030  // @@protoc_insertion_point(field_set:google.protobuf.EnumOptions.deprecated)
11031}
11032
11033// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11034int EnumOptions::uninterpreted_option_size() const {
11035  return uninterpreted_option_.size();
11036}
11037void EnumOptions::clear_uninterpreted_option() {
11038  uninterpreted_option_.Clear();
11039}
11040const ::google::protobuf::UninterpretedOption& EnumOptions::uninterpreted_option(int index) const {
11041  // @@protoc_insertion_point(field_get:google.protobuf.EnumOptions.uninterpreted_option)
11042  return uninterpreted_option_.Get(index);
11043}
11044::google::protobuf::UninterpretedOption* EnumOptions::mutable_uninterpreted_option(int index) {
11045  // @@protoc_insertion_point(field_mutable:google.protobuf.EnumOptions.uninterpreted_option)
11046  return uninterpreted_option_.Mutable(index);
11047}
11048::google::protobuf::UninterpretedOption* EnumOptions::add_uninterpreted_option() {
11049  // @@protoc_insertion_point(field_add:google.protobuf.EnumOptions.uninterpreted_option)
11050  return uninterpreted_option_.Add();
11051}
11052::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >*
11053EnumOptions::mutable_uninterpreted_option() {
11054  // @@protoc_insertion_point(field_mutable_list:google.protobuf.EnumOptions.uninterpreted_option)
11055  return &uninterpreted_option_;
11056}
11057const ::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >&
11058EnumOptions::uninterpreted_option() const {
11059  // @@protoc_insertion_point(field_list:google.protobuf.EnumOptions.uninterpreted_option)
11060  return uninterpreted_option_;
11061}
11062
11063#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
11064
11065// ===================================================================
11066
11067#if !defined(_MSC_VER) || _MSC_VER >= 1900
11068const int EnumValueOptions::kDeprecatedFieldNumber;
11069const int EnumValueOptions::kUninterpretedOptionFieldNumber;
11070#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
11071
11072EnumValueOptions::EnumValueOptions()
11073  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
11074  SharedCtor();
11075  // @@protoc_insertion_point(constructor:google.protobuf.EnumValueOptions)
11076}
11077
11078void EnumValueOptions::InitAsDefaultInstance() {
11079}
11080
11081EnumValueOptions::EnumValueOptions(const EnumValueOptions& from)
11082  : ::google::protobuf::Message(),
11083    _internal_metadata_(NULL) {
11084  SharedCtor();
11085  MergeFrom(from);
11086  // @@protoc_insertion_point(copy_constructor:google.protobuf.EnumValueOptions)
11087}
11088
11089void EnumValueOptions::SharedCtor() {
11090  _cached_size_ = 0;
11091  deprecated_ = false;
11092  ::memset(_has_bits_, 0, sizeof(_has_bits_));
11093}
11094
11095EnumValueOptions::~EnumValueOptions() {
11096  // @@protoc_insertion_point(destructor:google.protobuf.EnumValueOptions)
11097  SharedDtor();
11098}
11099
11100void EnumValueOptions::SharedDtor() {
11101  if (this != default_instance_) {
11102  }
11103}
11104
11105void EnumValueOptions::SetCachedSize(int size) const {
11106  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
11107  _cached_size_ = size;
11108  GOOGLE_SAFE_CONCURRENT_WRITES_END();
11109}
11110const ::google::protobuf::Descriptor* EnumValueOptions::descriptor() {
11111  protobuf_AssignDescriptorsOnce();
11112  return EnumValueOptions_descriptor_;
11113}
11114
11115const EnumValueOptions& EnumValueOptions::default_instance() {
11116  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
11117  return *default_instance_;
11118}
11119
11120EnumValueOptions* EnumValueOptions::default_instance_ = NULL;
11121
11122EnumValueOptions* EnumValueOptions::New(::google::protobuf::Arena* arena) const {
11123  EnumValueOptions* n = new EnumValueOptions;
11124  if (arena != NULL) {
11125    arena->Own(n);
11126  }
11127  return n;
11128}
11129
11130void EnumValueOptions::Clear() {
11131// @@protoc_insertion_point(message_clear_start:google.protobuf.EnumValueOptions)
11132  _extensions_.Clear();
11133  deprecated_ = false;
11134  uninterpreted_option_.Clear();
11135  ::memset(_has_bits_, 0, sizeof(_has_bits_));
11136  if (_internal_metadata_.have_unknown_fields()) {
11137    mutable_unknown_fields()->Clear();
11138  }
11139}
11140
11141bool EnumValueOptions::MergePartialFromCodedStream(
11142    ::google::protobuf::io::CodedInputStream* input) {
11143#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
11144  ::google::protobuf::uint32 tag;
11145  // @@protoc_insertion_point(parse_start:google.protobuf.EnumValueOptions)
11146  for (;;) {
11147    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(16383);
11148    tag = p.first;
11149    if (!p.second) goto handle_unusual;
11150    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
11151      // optional bool deprecated = 1 [default = false];
11152      case 1: {
11153        if (tag == 8) {
11154          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
11155                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
11156                 input, &deprecated_)));
11157          set_has_deprecated();
11158        } else {
11159          goto handle_unusual;
11160        }
11161        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
11162        break;
11163      }
11164
11165      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11166      case 999: {
11167        if (tag == 7994) {
11168         parse_uninterpreted_option:
11169          DO_(input->IncrementRecursionDepth());
11170         parse_loop_uninterpreted_option:
11171          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
11172                input, add_uninterpreted_option()));
11173        } else {
11174          goto handle_unusual;
11175        }
11176        if (input->ExpectTag(7994)) goto parse_loop_uninterpreted_option;
11177        input->UnsafeDecrementRecursionDepth();
11178        if (input->ExpectAtEnd()) goto success;
11179        break;
11180      }
11181
11182      default: {
11183      handle_unusual:
11184        if (tag == 0 ||
11185            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
11186            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
11187          goto success;
11188        }
11189        if ((8000u <= tag)) {
11190          DO_(_extensions_.ParseField(tag, input, default_instance_,
11191                                      mutable_unknown_fields()));
11192          continue;
11193        }
11194        DO_(::google::protobuf::internal::WireFormat::SkipField(
11195              input, tag, mutable_unknown_fields()));
11196        break;
11197      }
11198    }
11199  }
11200success:
11201  // @@protoc_insertion_point(parse_success:google.protobuf.EnumValueOptions)
11202  return true;
11203failure:
11204  // @@protoc_insertion_point(parse_failure:google.protobuf.EnumValueOptions)
11205  return false;
11206#undef DO_
11207}
11208
11209void EnumValueOptions::SerializeWithCachedSizes(
11210    ::google::protobuf::io::CodedOutputStream* output) const {
11211  // @@protoc_insertion_point(serialize_start:google.protobuf.EnumValueOptions)
11212  // optional bool deprecated = 1 [default = false];
11213  if (has_deprecated()) {
11214    ::google::protobuf::internal::WireFormatLite::WriteBool(1, this->deprecated(), output);
11215  }
11216
11217  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11218  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
11219    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
11220      999, this->uninterpreted_option(i), output);
11221  }
11222
11223  // Extension range [1000, 536870912)
11224  _extensions_.SerializeWithCachedSizes(
11225      1000, 536870912, output);
11226
11227  if (_internal_metadata_.have_unknown_fields()) {
11228    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
11229        unknown_fields(), output);
11230  }
11231  // @@protoc_insertion_point(serialize_end:google.protobuf.EnumValueOptions)
11232}
11233
11234::google::protobuf::uint8* EnumValueOptions::SerializeWithCachedSizesToArray(
11235    ::google::protobuf::uint8* target) const {
11236  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.EnumValueOptions)
11237  // optional bool deprecated = 1 [default = false];
11238  if (has_deprecated()) {
11239    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(1, this->deprecated(), target);
11240  }
11241
11242  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11243  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
11244    target = ::google::protobuf::internal::WireFormatLite::
11245      WriteMessageNoVirtualToArray(
11246        999, this->uninterpreted_option(i), target);
11247  }
11248
11249  // Extension range [1000, 536870912)
11250  target = _extensions_.SerializeWithCachedSizesToArray(
11251      1000, 536870912, target);
11252
11253  if (_internal_metadata_.have_unknown_fields()) {
11254    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
11255        unknown_fields(), target);
11256  }
11257  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.EnumValueOptions)
11258  return target;
11259}
11260
11261int EnumValueOptions::ByteSize() const {
11262// @@protoc_insertion_point(message_byte_size_start:google.protobuf.EnumValueOptions)
11263  int total_size = 0;
11264
11265  // optional bool deprecated = 1 [default = false];
11266  if (has_deprecated()) {
11267    total_size += 1 + 1;
11268  }
11269
11270  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11271  total_size += 2 * this->uninterpreted_option_size();
11272  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
11273    total_size +=
11274      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
11275        this->uninterpreted_option(i));
11276  }
11277
11278  total_size += _extensions_.ByteSize();
11279
11280  if (_internal_metadata_.have_unknown_fields()) {
11281    total_size +=
11282      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
11283        unknown_fields());
11284  }
11285  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
11286  _cached_size_ = total_size;
11287  GOOGLE_SAFE_CONCURRENT_WRITES_END();
11288  return total_size;
11289}
11290
11291void EnumValueOptions::MergeFrom(const ::google::protobuf::Message& from) {
11292// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.EnumValueOptions)
11293  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
11294  const EnumValueOptions* source =
11295      ::google::protobuf::internal::DynamicCastToGenerated<const EnumValueOptions>(
11296          &from);
11297  if (source == NULL) {
11298  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.EnumValueOptions)
11299    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
11300  } else {
11301  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.EnumValueOptions)
11302    MergeFrom(*source);
11303  }
11304}
11305
11306void EnumValueOptions::MergeFrom(const EnumValueOptions& from) {
11307// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.EnumValueOptions)
11308  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
11309  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
11310  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
11311    if (from.has_deprecated()) {
11312      set_deprecated(from.deprecated());
11313    }
11314  }
11315  _extensions_.MergeFrom(from._extensions_);
11316  if (from._internal_metadata_.have_unknown_fields()) {
11317    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
11318  }
11319}
11320
11321void EnumValueOptions::CopyFrom(const ::google::protobuf::Message& from) {
11322// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.EnumValueOptions)
11323  if (&from == this) return;
11324  Clear();
11325  MergeFrom(from);
11326}
11327
11328void EnumValueOptions::CopyFrom(const EnumValueOptions& from) {
11329// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.EnumValueOptions)
11330  if (&from == this) return;
11331  Clear();
11332  MergeFrom(from);
11333}
11334
11335bool EnumValueOptions::IsInitialized() const {
11336
11337  if (!::google::protobuf::internal::AllAreInitialized(this->uninterpreted_option())) return false;
11338
11339  if (!_extensions_.IsInitialized()) return false;  return true;
11340}
11341
11342void EnumValueOptions::Swap(EnumValueOptions* other) {
11343  if (other == this) return;
11344  InternalSwap(other);
11345}
11346void EnumValueOptions::InternalSwap(EnumValueOptions* other) {
11347  std::swap(deprecated_, other->deprecated_);
11348  uninterpreted_option_.UnsafeArenaSwap(&other->uninterpreted_option_);
11349  std::swap(_has_bits_[0], other->_has_bits_[0]);
11350  _internal_metadata_.Swap(&other->_internal_metadata_);
11351  std::swap(_cached_size_, other->_cached_size_);
11352  _extensions_.Swap(&other->_extensions_);
11353}
11354
11355::google::protobuf::Metadata EnumValueOptions::GetMetadata() const {
11356  protobuf_AssignDescriptorsOnce();
11357  ::google::protobuf::Metadata metadata;
11358  metadata.descriptor = EnumValueOptions_descriptor_;
11359  metadata.reflection = EnumValueOptions_reflection_;
11360  return metadata;
11361}
11362
11363#if PROTOBUF_INLINE_NOT_IN_HEADERS
11364// EnumValueOptions
11365
11366// optional bool deprecated = 1 [default = false];
11367bool EnumValueOptions::has_deprecated() const {
11368  return (_has_bits_[0] & 0x00000001u) != 0;
11369}
11370void EnumValueOptions::set_has_deprecated() {
11371  _has_bits_[0] |= 0x00000001u;
11372}
11373void EnumValueOptions::clear_has_deprecated() {
11374  _has_bits_[0] &= ~0x00000001u;
11375}
11376void EnumValueOptions::clear_deprecated() {
11377  deprecated_ = false;
11378  clear_has_deprecated();
11379}
11380 bool EnumValueOptions::deprecated() const {
11381  // @@protoc_insertion_point(field_get:google.protobuf.EnumValueOptions.deprecated)
11382  return deprecated_;
11383}
11384 void EnumValueOptions::set_deprecated(bool value) {
11385  set_has_deprecated();
11386  deprecated_ = value;
11387  // @@protoc_insertion_point(field_set:google.protobuf.EnumValueOptions.deprecated)
11388}
11389
11390// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11391int EnumValueOptions::uninterpreted_option_size() const {
11392  return uninterpreted_option_.size();
11393}
11394void EnumValueOptions::clear_uninterpreted_option() {
11395  uninterpreted_option_.Clear();
11396}
11397const ::google::protobuf::UninterpretedOption& EnumValueOptions::uninterpreted_option(int index) const {
11398  // @@protoc_insertion_point(field_get:google.protobuf.EnumValueOptions.uninterpreted_option)
11399  return uninterpreted_option_.Get(index);
11400}
11401::google::protobuf::UninterpretedOption* EnumValueOptions::mutable_uninterpreted_option(int index) {
11402  // @@protoc_insertion_point(field_mutable:google.protobuf.EnumValueOptions.uninterpreted_option)
11403  return uninterpreted_option_.Mutable(index);
11404}
11405::google::protobuf::UninterpretedOption* EnumValueOptions::add_uninterpreted_option() {
11406  // @@protoc_insertion_point(field_add:google.protobuf.EnumValueOptions.uninterpreted_option)
11407  return uninterpreted_option_.Add();
11408}
11409::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >*
11410EnumValueOptions::mutable_uninterpreted_option() {
11411  // @@protoc_insertion_point(field_mutable_list:google.protobuf.EnumValueOptions.uninterpreted_option)
11412  return &uninterpreted_option_;
11413}
11414const ::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >&
11415EnumValueOptions::uninterpreted_option() const {
11416  // @@protoc_insertion_point(field_list:google.protobuf.EnumValueOptions.uninterpreted_option)
11417  return uninterpreted_option_;
11418}
11419
11420#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
11421
11422// ===================================================================
11423
11424#if !defined(_MSC_VER) || _MSC_VER >= 1900
11425const int ServiceOptions::kDeprecatedFieldNumber;
11426const int ServiceOptions::kUninterpretedOptionFieldNumber;
11427#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
11428
11429ServiceOptions::ServiceOptions()
11430  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
11431  SharedCtor();
11432  // @@protoc_insertion_point(constructor:google.protobuf.ServiceOptions)
11433}
11434
11435void ServiceOptions::InitAsDefaultInstance() {
11436}
11437
11438ServiceOptions::ServiceOptions(const ServiceOptions& from)
11439  : ::google::protobuf::Message(),
11440    _internal_metadata_(NULL) {
11441  SharedCtor();
11442  MergeFrom(from);
11443  // @@protoc_insertion_point(copy_constructor:google.protobuf.ServiceOptions)
11444}
11445
11446void ServiceOptions::SharedCtor() {
11447  _cached_size_ = 0;
11448  deprecated_ = false;
11449  ::memset(_has_bits_, 0, sizeof(_has_bits_));
11450}
11451
11452ServiceOptions::~ServiceOptions() {
11453  // @@protoc_insertion_point(destructor:google.protobuf.ServiceOptions)
11454  SharedDtor();
11455}
11456
11457void ServiceOptions::SharedDtor() {
11458  if (this != default_instance_) {
11459  }
11460}
11461
11462void ServiceOptions::SetCachedSize(int size) const {
11463  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
11464  _cached_size_ = size;
11465  GOOGLE_SAFE_CONCURRENT_WRITES_END();
11466}
11467const ::google::protobuf::Descriptor* ServiceOptions::descriptor() {
11468  protobuf_AssignDescriptorsOnce();
11469  return ServiceOptions_descriptor_;
11470}
11471
11472const ServiceOptions& ServiceOptions::default_instance() {
11473  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
11474  return *default_instance_;
11475}
11476
11477ServiceOptions* ServiceOptions::default_instance_ = NULL;
11478
11479ServiceOptions* ServiceOptions::New(::google::protobuf::Arena* arena) const {
11480  ServiceOptions* n = new ServiceOptions;
11481  if (arena != NULL) {
11482    arena->Own(n);
11483  }
11484  return n;
11485}
11486
11487void ServiceOptions::Clear() {
11488// @@protoc_insertion_point(message_clear_start:google.protobuf.ServiceOptions)
11489  _extensions_.Clear();
11490  deprecated_ = false;
11491  uninterpreted_option_.Clear();
11492  ::memset(_has_bits_, 0, sizeof(_has_bits_));
11493  if (_internal_metadata_.have_unknown_fields()) {
11494    mutable_unknown_fields()->Clear();
11495  }
11496}
11497
11498bool ServiceOptions::MergePartialFromCodedStream(
11499    ::google::protobuf::io::CodedInputStream* input) {
11500#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
11501  ::google::protobuf::uint32 tag;
11502  // @@protoc_insertion_point(parse_start:google.protobuf.ServiceOptions)
11503  for (;;) {
11504    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(16383);
11505    tag = p.first;
11506    if (!p.second) goto handle_unusual;
11507    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
11508      // optional bool deprecated = 33 [default = false];
11509      case 33: {
11510        if (tag == 264) {
11511          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
11512                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
11513                 input, &deprecated_)));
11514          set_has_deprecated();
11515        } else {
11516          goto handle_unusual;
11517        }
11518        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
11519        break;
11520      }
11521
11522      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11523      case 999: {
11524        if (tag == 7994) {
11525         parse_uninterpreted_option:
11526          DO_(input->IncrementRecursionDepth());
11527         parse_loop_uninterpreted_option:
11528          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
11529                input, add_uninterpreted_option()));
11530        } else {
11531          goto handle_unusual;
11532        }
11533        if (input->ExpectTag(7994)) goto parse_loop_uninterpreted_option;
11534        input->UnsafeDecrementRecursionDepth();
11535        if (input->ExpectAtEnd()) goto success;
11536        break;
11537      }
11538
11539      default: {
11540      handle_unusual:
11541        if (tag == 0 ||
11542            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
11543            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
11544          goto success;
11545        }
11546        if ((8000u <= tag)) {
11547          DO_(_extensions_.ParseField(tag, input, default_instance_,
11548                                      mutable_unknown_fields()));
11549          continue;
11550        }
11551        DO_(::google::protobuf::internal::WireFormat::SkipField(
11552              input, tag, mutable_unknown_fields()));
11553        break;
11554      }
11555    }
11556  }
11557success:
11558  // @@protoc_insertion_point(parse_success:google.protobuf.ServiceOptions)
11559  return true;
11560failure:
11561  // @@protoc_insertion_point(parse_failure:google.protobuf.ServiceOptions)
11562  return false;
11563#undef DO_
11564}
11565
11566void ServiceOptions::SerializeWithCachedSizes(
11567    ::google::protobuf::io::CodedOutputStream* output) const {
11568  // @@protoc_insertion_point(serialize_start:google.protobuf.ServiceOptions)
11569  // optional bool deprecated = 33 [default = false];
11570  if (has_deprecated()) {
11571    ::google::protobuf::internal::WireFormatLite::WriteBool(33, this->deprecated(), output);
11572  }
11573
11574  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11575  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
11576    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
11577      999, this->uninterpreted_option(i), output);
11578  }
11579
11580  // Extension range [1000, 536870912)
11581  _extensions_.SerializeWithCachedSizes(
11582      1000, 536870912, output);
11583
11584  if (_internal_metadata_.have_unknown_fields()) {
11585    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
11586        unknown_fields(), output);
11587  }
11588  // @@protoc_insertion_point(serialize_end:google.protobuf.ServiceOptions)
11589}
11590
11591::google::protobuf::uint8* ServiceOptions::SerializeWithCachedSizesToArray(
11592    ::google::protobuf::uint8* target) const {
11593  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.ServiceOptions)
11594  // optional bool deprecated = 33 [default = false];
11595  if (has_deprecated()) {
11596    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(33, this->deprecated(), target);
11597  }
11598
11599  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11600  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
11601    target = ::google::protobuf::internal::WireFormatLite::
11602      WriteMessageNoVirtualToArray(
11603        999, this->uninterpreted_option(i), target);
11604  }
11605
11606  // Extension range [1000, 536870912)
11607  target = _extensions_.SerializeWithCachedSizesToArray(
11608      1000, 536870912, target);
11609
11610  if (_internal_metadata_.have_unknown_fields()) {
11611    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
11612        unknown_fields(), target);
11613  }
11614  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.ServiceOptions)
11615  return target;
11616}
11617
11618int ServiceOptions::ByteSize() const {
11619// @@protoc_insertion_point(message_byte_size_start:google.protobuf.ServiceOptions)
11620  int total_size = 0;
11621
11622  // optional bool deprecated = 33 [default = false];
11623  if (has_deprecated()) {
11624    total_size += 2 + 1;
11625  }
11626
11627  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11628  total_size += 2 * this->uninterpreted_option_size();
11629  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
11630    total_size +=
11631      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
11632        this->uninterpreted_option(i));
11633  }
11634
11635  total_size += _extensions_.ByteSize();
11636
11637  if (_internal_metadata_.have_unknown_fields()) {
11638    total_size +=
11639      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
11640        unknown_fields());
11641  }
11642  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
11643  _cached_size_ = total_size;
11644  GOOGLE_SAFE_CONCURRENT_WRITES_END();
11645  return total_size;
11646}
11647
11648void ServiceOptions::MergeFrom(const ::google::protobuf::Message& from) {
11649// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.ServiceOptions)
11650  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
11651  const ServiceOptions* source =
11652      ::google::protobuf::internal::DynamicCastToGenerated<const ServiceOptions>(
11653          &from);
11654  if (source == NULL) {
11655  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.ServiceOptions)
11656    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
11657  } else {
11658  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.ServiceOptions)
11659    MergeFrom(*source);
11660  }
11661}
11662
11663void ServiceOptions::MergeFrom(const ServiceOptions& from) {
11664// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.ServiceOptions)
11665  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
11666  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
11667  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
11668    if (from.has_deprecated()) {
11669      set_deprecated(from.deprecated());
11670    }
11671  }
11672  _extensions_.MergeFrom(from._extensions_);
11673  if (from._internal_metadata_.have_unknown_fields()) {
11674    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
11675  }
11676}
11677
11678void ServiceOptions::CopyFrom(const ::google::protobuf::Message& from) {
11679// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.ServiceOptions)
11680  if (&from == this) return;
11681  Clear();
11682  MergeFrom(from);
11683}
11684
11685void ServiceOptions::CopyFrom(const ServiceOptions& from) {
11686// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.ServiceOptions)
11687  if (&from == this) return;
11688  Clear();
11689  MergeFrom(from);
11690}
11691
11692bool ServiceOptions::IsInitialized() const {
11693
11694  if (!::google::protobuf::internal::AllAreInitialized(this->uninterpreted_option())) return false;
11695
11696  if (!_extensions_.IsInitialized()) return false;  return true;
11697}
11698
11699void ServiceOptions::Swap(ServiceOptions* other) {
11700  if (other == this) return;
11701  InternalSwap(other);
11702}
11703void ServiceOptions::InternalSwap(ServiceOptions* other) {
11704  std::swap(deprecated_, other->deprecated_);
11705  uninterpreted_option_.UnsafeArenaSwap(&other->uninterpreted_option_);
11706  std::swap(_has_bits_[0], other->_has_bits_[0]);
11707  _internal_metadata_.Swap(&other->_internal_metadata_);
11708  std::swap(_cached_size_, other->_cached_size_);
11709  _extensions_.Swap(&other->_extensions_);
11710}
11711
11712::google::protobuf::Metadata ServiceOptions::GetMetadata() const {
11713  protobuf_AssignDescriptorsOnce();
11714  ::google::protobuf::Metadata metadata;
11715  metadata.descriptor = ServiceOptions_descriptor_;
11716  metadata.reflection = ServiceOptions_reflection_;
11717  return metadata;
11718}
11719
11720#if PROTOBUF_INLINE_NOT_IN_HEADERS
11721// ServiceOptions
11722
11723// optional bool deprecated = 33 [default = false];
11724bool ServiceOptions::has_deprecated() const {
11725  return (_has_bits_[0] & 0x00000001u) != 0;
11726}
11727void ServiceOptions::set_has_deprecated() {
11728  _has_bits_[0] |= 0x00000001u;
11729}
11730void ServiceOptions::clear_has_deprecated() {
11731  _has_bits_[0] &= ~0x00000001u;
11732}
11733void ServiceOptions::clear_deprecated() {
11734  deprecated_ = false;
11735  clear_has_deprecated();
11736}
11737 bool ServiceOptions::deprecated() const {
11738  // @@protoc_insertion_point(field_get:google.protobuf.ServiceOptions.deprecated)
11739  return deprecated_;
11740}
11741 void ServiceOptions::set_deprecated(bool value) {
11742  set_has_deprecated();
11743  deprecated_ = value;
11744  // @@protoc_insertion_point(field_set:google.protobuf.ServiceOptions.deprecated)
11745}
11746
11747// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11748int ServiceOptions::uninterpreted_option_size() const {
11749  return uninterpreted_option_.size();
11750}
11751void ServiceOptions::clear_uninterpreted_option() {
11752  uninterpreted_option_.Clear();
11753}
11754const ::google::protobuf::UninterpretedOption& ServiceOptions::uninterpreted_option(int index) const {
11755  // @@protoc_insertion_point(field_get:google.protobuf.ServiceOptions.uninterpreted_option)
11756  return uninterpreted_option_.Get(index);
11757}
11758::google::protobuf::UninterpretedOption* ServiceOptions::mutable_uninterpreted_option(int index) {
11759  // @@protoc_insertion_point(field_mutable:google.protobuf.ServiceOptions.uninterpreted_option)
11760  return uninterpreted_option_.Mutable(index);
11761}
11762::google::protobuf::UninterpretedOption* ServiceOptions::add_uninterpreted_option() {
11763  // @@protoc_insertion_point(field_add:google.protobuf.ServiceOptions.uninterpreted_option)
11764  return uninterpreted_option_.Add();
11765}
11766::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >*
11767ServiceOptions::mutable_uninterpreted_option() {
11768  // @@protoc_insertion_point(field_mutable_list:google.protobuf.ServiceOptions.uninterpreted_option)
11769  return &uninterpreted_option_;
11770}
11771const ::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >&
11772ServiceOptions::uninterpreted_option() const {
11773  // @@protoc_insertion_point(field_list:google.protobuf.ServiceOptions.uninterpreted_option)
11774  return uninterpreted_option_;
11775}
11776
11777#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
11778
11779// ===================================================================
11780
11781#if !defined(_MSC_VER) || _MSC_VER >= 1900
11782const int MethodOptions::kDeprecatedFieldNumber;
11783const int MethodOptions::kUninterpretedOptionFieldNumber;
11784#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
11785
11786MethodOptions::MethodOptions()
11787  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
11788  SharedCtor();
11789  // @@protoc_insertion_point(constructor:google.protobuf.MethodOptions)
11790}
11791
11792void MethodOptions::InitAsDefaultInstance() {
11793}
11794
11795MethodOptions::MethodOptions(const MethodOptions& from)
11796  : ::google::protobuf::Message(),
11797    _internal_metadata_(NULL) {
11798  SharedCtor();
11799  MergeFrom(from);
11800  // @@protoc_insertion_point(copy_constructor:google.protobuf.MethodOptions)
11801}
11802
11803void MethodOptions::SharedCtor() {
11804  _cached_size_ = 0;
11805  deprecated_ = false;
11806  ::memset(_has_bits_, 0, sizeof(_has_bits_));
11807}
11808
11809MethodOptions::~MethodOptions() {
11810  // @@protoc_insertion_point(destructor:google.protobuf.MethodOptions)
11811  SharedDtor();
11812}
11813
11814void MethodOptions::SharedDtor() {
11815  if (this != default_instance_) {
11816  }
11817}
11818
11819void MethodOptions::SetCachedSize(int size) const {
11820  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
11821  _cached_size_ = size;
11822  GOOGLE_SAFE_CONCURRENT_WRITES_END();
11823}
11824const ::google::protobuf::Descriptor* MethodOptions::descriptor() {
11825  protobuf_AssignDescriptorsOnce();
11826  return MethodOptions_descriptor_;
11827}
11828
11829const MethodOptions& MethodOptions::default_instance() {
11830  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
11831  return *default_instance_;
11832}
11833
11834MethodOptions* MethodOptions::default_instance_ = NULL;
11835
11836MethodOptions* MethodOptions::New(::google::protobuf::Arena* arena) const {
11837  MethodOptions* n = new MethodOptions;
11838  if (arena != NULL) {
11839    arena->Own(n);
11840  }
11841  return n;
11842}
11843
11844void MethodOptions::Clear() {
11845// @@protoc_insertion_point(message_clear_start:google.protobuf.MethodOptions)
11846  _extensions_.Clear();
11847  deprecated_ = false;
11848  uninterpreted_option_.Clear();
11849  ::memset(_has_bits_, 0, sizeof(_has_bits_));
11850  if (_internal_metadata_.have_unknown_fields()) {
11851    mutable_unknown_fields()->Clear();
11852  }
11853}
11854
11855bool MethodOptions::MergePartialFromCodedStream(
11856    ::google::protobuf::io::CodedInputStream* input) {
11857#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
11858  ::google::protobuf::uint32 tag;
11859  // @@protoc_insertion_point(parse_start:google.protobuf.MethodOptions)
11860  for (;;) {
11861    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(16383);
11862    tag = p.first;
11863    if (!p.second) goto handle_unusual;
11864    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
11865      // optional bool deprecated = 33 [default = false];
11866      case 33: {
11867        if (tag == 264) {
11868          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
11869                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
11870                 input, &deprecated_)));
11871          set_has_deprecated();
11872        } else {
11873          goto handle_unusual;
11874        }
11875        if (input->ExpectTag(7994)) goto parse_uninterpreted_option;
11876        break;
11877      }
11878
11879      // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11880      case 999: {
11881        if (tag == 7994) {
11882         parse_uninterpreted_option:
11883          DO_(input->IncrementRecursionDepth());
11884         parse_loop_uninterpreted_option:
11885          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
11886                input, add_uninterpreted_option()));
11887        } else {
11888          goto handle_unusual;
11889        }
11890        if (input->ExpectTag(7994)) goto parse_loop_uninterpreted_option;
11891        input->UnsafeDecrementRecursionDepth();
11892        if (input->ExpectAtEnd()) goto success;
11893        break;
11894      }
11895
11896      default: {
11897      handle_unusual:
11898        if (tag == 0 ||
11899            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
11900            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
11901          goto success;
11902        }
11903        if ((8000u <= tag)) {
11904          DO_(_extensions_.ParseField(tag, input, default_instance_,
11905                                      mutable_unknown_fields()));
11906          continue;
11907        }
11908        DO_(::google::protobuf::internal::WireFormat::SkipField(
11909              input, tag, mutable_unknown_fields()));
11910        break;
11911      }
11912    }
11913  }
11914success:
11915  // @@protoc_insertion_point(parse_success:google.protobuf.MethodOptions)
11916  return true;
11917failure:
11918  // @@protoc_insertion_point(parse_failure:google.protobuf.MethodOptions)
11919  return false;
11920#undef DO_
11921}
11922
11923void MethodOptions::SerializeWithCachedSizes(
11924    ::google::protobuf::io::CodedOutputStream* output) const {
11925  // @@protoc_insertion_point(serialize_start:google.protobuf.MethodOptions)
11926  // optional bool deprecated = 33 [default = false];
11927  if (has_deprecated()) {
11928    ::google::protobuf::internal::WireFormatLite::WriteBool(33, this->deprecated(), output);
11929  }
11930
11931  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11932  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
11933    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
11934      999, this->uninterpreted_option(i), output);
11935  }
11936
11937  // Extension range [1000, 536870912)
11938  _extensions_.SerializeWithCachedSizes(
11939      1000, 536870912, output);
11940
11941  if (_internal_metadata_.have_unknown_fields()) {
11942    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
11943        unknown_fields(), output);
11944  }
11945  // @@protoc_insertion_point(serialize_end:google.protobuf.MethodOptions)
11946}
11947
11948::google::protobuf::uint8* MethodOptions::SerializeWithCachedSizesToArray(
11949    ::google::protobuf::uint8* target) const {
11950  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.MethodOptions)
11951  // optional bool deprecated = 33 [default = false];
11952  if (has_deprecated()) {
11953    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(33, this->deprecated(), target);
11954  }
11955
11956  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11957  for (unsigned int i = 0, n = this->uninterpreted_option_size(); i < n; i++) {
11958    target = ::google::protobuf::internal::WireFormatLite::
11959      WriteMessageNoVirtualToArray(
11960        999, this->uninterpreted_option(i), target);
11961  }
11962
11963  // Extension range [1000, 536870912)
11964  target = _extensions_.SerializeWithCachedSizesToArray(
11965      1000, 536870912, target);
11966
11967  if (_internal_metadata_.have_unknown_fields()) {
11968    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
11969        unknown_fields(), target);
11970  }
11971  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.MethodOptions)
11972  return target;
11973}
11974
11975int MethodOptions::ByteSize() const {
11976// @@protoc_insertion_point(message_byte_size_start:google.protobuf.MethodOptions)
11977  int total_size = 0;
11978
11979  // optional bool deprecated = 33 [default = false];
11980  if (has_deprecated()) {
11981    total_size += 2 + 1;
11982  }
11983
11984  // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
11985  total_size += 2 * this->uninterpreted_option_size();
11986  for (int i = 0; i < this->uninterpreted_option_size(); i++) {
11987    total_size +=
11988      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
11989        this->uninterpreted_option(i));
11990  }
11991
11992  total_size += _extensions_.ByteSize();
11993
11994  if (_internal_metadata_.have_unknown_fields()) {
11995    total_size +=
11996      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
11997        unknown_fields());
11998  }
11999  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
12000  _cached_size_ = total_size;
12001  GOOGLE_SAFE_CONCURRENT_WRITES_END();
12002  return total_size;
12003}
12004
12005void MethodOptions::MergeFrom(const ::google::protobuf::Message& from) {
12006// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.MethodOptions)
12007  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
12008  const MethodOptions* source =
12009      ::google::protobuf::internal::DynamicCastToGenerated<const MethodOptions>(
12010          &from);
12011  if (source == NULL) {
12012  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.MethodOptions)
12013    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
12014  } else {
12015  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.MethodOptions)
12016    MergeFrom(*source);
12017  }
12018}
12019
12020void MethodOptions::MergeFrom(const MethodOptions& from) {
12021// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.MethodOptions)
12022  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
12023  uninterpreted_option_.MergeFrom(from.uninterpreted_option_);
12024  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
12025    if (from.has_deprecated()) {
12026      set_deprecated(from.deprecated());
12027    }
12028  }
12029  _extensions_.MergeFrom(from._extensions_);
12030  if (from._internal_metadata_.have_unknown_fields()) {
12031    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
12032  }
12033}
12034
12035void MethodOptions::CopyFrom(const ::google::protobuf::Message& from) {
12036// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.MethodOptions)
12037  if (&from == this) return;
12038  Clear();
12039  MergeFrom(from);
12040}
12041
12042void MethodOptions::CopyFrom(const MethodOptions& from) {
12043// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.MethodOptions)
12044  if (&from == this) return;
12045  Clear();
12046  MergeFrom(from);
12047}
12048
12049bool MethodOptions::IsInitialized() const {
12050
12051  if (!::google::protobuf::internal::AllAreInitialized(this->uninterpreted_option())) return false;
12052
12053  if (!_extensions_.IsInitialized()) return false;  return true;
12054}
12055
12056void MethodOptions::Swap(MethodOptions* other) {
12057  if (other == this) return;
12058  InternalSwap(other);
12059}
12060void MethodOptions::InternalSwap(MethodOptions* other) {
12061  std::swap(deprecated_, other->deprecated_);
12062  uninterpreted_option_.UnsafeArenaSwap(&other->uninterpreted_option_);
12063  std::swap(_has_bits_[0], other->_has_bits_[0]);
12064  _internal_metadata_.Swap(&other->_internal_metadata_);
12065  std::swap(_cached_size_, other->_cached_size_);
12066  _extensions_.Swap(&other->_extensions_);
12067}
12068
12069::google::protobuf::Metadata MethodOptions::GetMetadata() const {
12070  protobuf_AssignDescriptorsOnce();
12071  ::google::protobuf::Metadata metadata;
12072  metadata.descriptor = MethodOptions_descriptor_;
12073  metadata.reflection = MethodOptions_reflection_;
12074  return metadata;
12075}
12076
12077#if PROTOBUF_INLINE_NOT_IN_HEADERS
12078// MethodOptions
12079
12080// optional bool deprecated = 33 [default = false];
12081bool MethodOptions::has_deprecated() const {
12082  return (_has_bits_[0] & 0x00000001u) != 0;
12083}
12084void MethodOptions::set_has_deprecated() {
12085  _has_bits_[0] |= 0x00000001u;
12086}
12087void MethodOptions::clear_has_deprecated() {
12088  _has_bits_[0] &= ~0x00000001u;
12089}
12090void MethodOptions::clear_deprecated() {
12091  deprecated_ = false;
12092  clear_has_deprecated();
12093}
12094 bool MethodOptions::deprecated() const {
12095  // @@protoc_insertion_point(field_get:google.protobuf.MethodOptions.deprecated)
12096  return deprecated_;
12097}
12098 void MethodOptions::set_deprecated(bool value) {
12099  set_has_deprecated();
12100  deprecated_ = value;
12101  // @@protoc_insertion_point(field_set:google.protobuf.MethodOptions.deprecated)
12102}
12103
12104// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
12105int MethodOptions::uninterpreted_option_size() const {
12106  return uninterpreted_option_.size();
12107}
12108void MethodOptions::clear_uninterpreted_option() {
12109  uninterpreted_option_.Clear();
12110}
12111const ::google::protobuf::UninterpretedOption& MethodOptions::uninterpreted_option(int index) const {
12112  // @@protoc_insertion_point(field_get:google.protobuf.MethodOptions.uninterpreted_option)
12113  return uninterpreted_option_.Get(index);
12114}
12115::google::protobuf::UninterpretedOption* MethodOptions::mutable_uninterpreted_option(int index) {
12116  // @@protoc_insertion_point(field_mutable:google.protobuf.MethodOptions.uninterpreted_option)
12117  return uninterpreted_option_.Mutable(index);
12118}
12119::google::protobuf::UninterpretedOption* MethodOptions::add_uninterpreted_option() {
12120  // @@protoc_insertion_point(field_add:google.protobuf.MethodOptions.uninterpreted_option)
12121  return uninterpreted_option_.Add();
12122}
12123::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >*
12124MethodOptions::mutable_uninterpreted_option() {
12125  // @@protoc_insertion_point(field_mutable_list:google.protobuf.MethodOptions.uninterpreted_option)
12126  return &uninterpreted_option_;
12127}
12128const ::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption >&
12129MethodOptions::uninterpreted_option() const {
12130  // @@protoc_insertion_point(field_list:google.protobuf.MethodOptions.uninterpreted_option)
12131  return uninterpreted_option_;
12132}
12133
12134#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
12135
12136// ===================================================================
12137
12138#if !defined(_MSC_VER) || _MSC_VER >= 1900
12139const int UninterpretedOption_NamePart::kNamePartFieldNumber;
12140const int UninterpretedOption_NamePart::kIsExtensionFieldNumber;
12141#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
12142
12143UninterpretedOption_NamePart::UninterpretedOption_NamePart()
12144  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
12145  SharedCtor();
12146  // @@protoc_insertion_point(constructor:google.protobuf.UninterpretedOption.NamePart)
12147}
12148
12149void UninterpretedOption_NamePart::InitAsDefaultInstance() {
12150}
12151
12152UninterpretedOption_NamePart::UninterpretedOption_NamePart(const UninterpretedOption_NamePart& from)
12153  : ::google::protobuf::Message(),
12154    _internal_metadata_(NULL) {
12155  SharedCtor();
12156  MergeFrom(from);
12157  // @@protoc_insertion_point(copy_constructor:google.protobuf.UninterpretedOption.NamePart)
12158}
12159
12160void UninterpretedOption_NamePart::SharedCtor() {
12161  ::google::protobuf::internal::GetEmptyString();
12162  _cached_size_ = 0;
12163  name_part_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12164  is_extension_ = false;
12165  ::memset(_has_bits_, 0, sizeof(_has_bits_));
12166}
12167
12168UninterpretedOption_NamePart::~UninterpretedOption_NamePart() {
12169  // @@protoc_insertion_point(destructor:google.protobuf.UninterpretedOption.NamePart)
12170  SharedDtor();
12171}
12172
12173void UninterpretedOption_NamePart::SharedDtor() {
12174  name_part_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12175  if (this != default_instance_) {
12176  }
12177}
12178
12179void UninterpretedOption_NamePart::SetCachedSize(int size) const {
12180  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
12181  _cached_size_ = size;
12182  GOOGLE_SAFE_CONCURRENT_WRITES_END();
12183}
12184const ::google::protobuf::Descriptor* UninterpretedOption_NamePart::descriptor() {
12185  protobuf_AssignDescriptorsOnce();
12186  return UninterpretedOption_NamePart_descriptor_;
12187}
12188
12189const UninterpretedOption_NamePart& UninterpretedOption_NamePart::default_instance() {
12190  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
12191  return *default_instance_;
12192}
12193
12194UninterpretedOption_NamePart* UninterpretedOption_NamePart::default_instance_ = NULL;
12195
12196UninterpretedOption_NamePart* UninterpretedOption_NamePart::New(::google::protobuf::Arena* arena) const {
12197  UninterpretedOption_NamePart* n = new UninterpretedOption_NamePart;
12198  if (arena != NULL) {
12199    arena->Own(n);
12200  }
12201  return n;
12202}
12203
12204void UninterpretedOption_NamePart::Clear() {
12205// @@protoc_insertion_point(message_clear_start:google.protobuf.UninterpretedOption.NamePart)
12206  if (_has_bits_[0 / 32] & 3u) {
12207    if (has_name_part()) {
12208      name_part_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12209    }
12210    is_extension_ = false;
12211  }
12212  ::memset(_has_bits_, 0, sizeof(_has_bits_));
12213  if (_internal_metadata_.have_unknown_fields()) {
12214    mutable_unknown_fields()->Clear();
12215  }
12216}
12217
12218bool UninterpretedOption_NamePart::MergePartialFromCodedStream(
12219    ::google::protobuf::io::CodedInputStream* input) {
12220#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
12221  ::google::protobuf::uint32 tag;
12222  // @@protoc_insertion_point(parse_start:google.protobuf.UninterpretedOption.NamePart)
12223  for (;;) {
12224    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
12225    tag = p.first;
12226    if (!p.second) goto handle_unusual;
12227    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
12228      // required string name_part = 1;
12229      case 1: {
12230        if (tag == 10) {
12231          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
12232                input, this->mutable_name_part()));
12233          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
12234            this->name_part().data(), this->name_part().length(),
12235            ::google::protobuf::internal::WireFormat::PARSE,
12236            "google.protobuf.UninterpretedOption.NamePart.name_part");
12237        } else {
12238          goto handle_unusual;
12239        }
12240        if (input->ExpectTag(16)) goto parse_is_extension;
12241        break;
12242      }
12243
12244      // required bool is_extension = 2;
12245      case 2: {
12246        if (tag == 16) {
12247         parse_is_extension:
12248          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
12249                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
12250                 input, &is_extension_)));
12251          set_has_is_extension();
12252        } else {
12253          goto handle_unusual;
12254        }
12255        if (input->ExpectAtEnd()) goto success;
12256        break;
12257      }
12258
12259      default: {
12260      handle_unusual:
12261        if (tag == 0 ||
12262            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
12263            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
12264          goto success;
12265        }
12266        DO_(::google::protobuf::internal::WireFormat::SkipField(
12267              input, tag, mutable_unknown_fields()));
12268        break;
12269      }
12270    }
12271  }
12272success:
12273  // @@protoc_insertion_point(parse_success:google.protobuf.UninterpretedOption.NamePart)
12274  return true;
12275failure:
12276  // @@protoc_insertion_point(parse_failure:google.protobuf.UninterpretedOption.NamePart)
12277  return false;
12278#undef DO_
12279}
12280
12281void UninterpretedOption_NamePart::SerializeWithCachedSizes(
12282    ::google::protobuf::io::CodedOutputStream* output) const {
12283  // @@protoc_insertion_point(serialize_start:google.protobuf.UninterpretedOption.NamePart)
12284  // required string name_part = 1;
12285  if (has_name_part()) {
12286    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
12287      this->name_part().data(), this->name_part().length(),
12288      ::google::protobuf::internal::WireFormat::SERIALIZE,
12289      "google.protobuf.UninterpretedOption.NamePart.name_part");
12290    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
12291      1, this->name_part(), output);
12292  }
12293
12294  // required bool is_extension = 2;
12295  if (has_is_extension()) {
12296    ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->is_extension(), output);
12297  }
12298
12299  if (_internal_metadata_.have_unknown_fields()) {
12300    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
12301        unknown_fields(), output);
12302  }
12303  // @@protoc_insertion_point(serialize_end:google.protobuf.UninterpretedOption.NamePart)
12304}
12305
12306::google::protobuf::uint8* UninterpretedOption_NamePart::SerializeWithCachedSizesToArray(
12307    ::google::protobuf::uint8* target) const {
12308  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.UninterpretedOption.NamePart)
12309  // required string name_part = 1;
12310  if (has_name_part()) {
12311    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
12312      this->name_part().data(), this->name_part().length(),
12313      ::google::protobuf::internal::WireFormat::SERIALIZE,
12314      "google.protobuf.UninterpretedOption.NamePart.name_part");
12315    target =
12316      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
12317        1, this->name_part(), target);
12318  }
12319
12320  // required bool is_extension = 2;
12321  if (has_is_extension()) {
12322    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(2, this->is_extension(), target);
12323  }
12324
12325  if (_internal_metadata_.have_unknown_fields()) {
12326    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
12327        unknown_fields(), target);
12328  }
12329  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.UninterpretedOption.NamePart)
12330  return target;
12331}
12332
12333int UninterpretedOption_NamePart::RequiredFieldsByteSizeFallback() const {
12334// @@protoc_insertion_point(required_fields_byte_size_fallback_start:google.protobuf.UninterpretedOption.NamePart)
12335  int total_size = 0;
12336
12337  if (has_name_part()) {
12338    // required string name_part = 1;
12339    total_size += 1 +
12340      ::google::protobuf::internal::WireFormatLite::StringSize(
12341        this->name_part());
12342  }
12343
12344  if (has_is_extension()) {
12345    // required bool is_extension = 2;
12346    total_size += 1 + 1;
12347  }
12348
12349  return total_size;
12350}
12351int UninterpretedOption_NamePart::ByteSize() const {
12352// @@protoc_insertion_point(message_byte_size_start:google.protobuf.UninterpretedOption.NamePart)
12353  int total_size = 0;
12354
12355  if (((_has_bits_[0] & 0x00000003) ^ 0x00000003) == 0) {  // All required fields are present.
12356    // required string name_part = 1;
12357    total_size += 1 +
12358      ::google::protobuf::internal::WireFormatLite::StringSize(
12359        this->name_part());
12360
12361    // required bool is_extension = 2;
12362    total_size += 1 + 1;
12363
12364  } else {
12365    total_size += RequiredFieldsByteSizeFallback();
12366  }
12367  if (_internal_metadata_.have_unknown_fields()) {
12368    total_size +=
12369      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
12370        unknown_fields());
12371  }
12372  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
12373  _cached_size_ = total_size;
12374  GOOGLE_SAFE_CONCURRENT_WRITES_END();
12375  return total_size;
12376}
12377
12378void UninterpretedOption_NamePart::MergeFrom(const ::google::protobuf::Message& from) {
12379// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.UninterpretedOption.NamePart)
12380  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
12381  const UninterpretedOption_NamePart* source =
12382      ::google::protobuf::internal::DynamicCastToGenerated<const UninterpretedOption_NamePart>(
12383          &from);
12384  if (source == NULL) {
12385  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.UninterpretedOption.NamePart)
12386    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
12387  } else {
12388  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.UninterpretedOption.NamePart)
12389    MergeFrom(*source);
12390  }
12391}
12392
12393void UninterpretedOption_NamePart::MergeFrom(const UninterpretedOption_NamePart& from) {
12394// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.UninterpretedOption.NamePart)
12395  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
12396  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
12397    if (from.has_name_part()) {
12398      set_has_name_part();
12399      name_part_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_part_);
12400    }
12401    if (from.has_is_extension()) {
12402      set_is_extension(from.is_extension());
12403    }
12404  }
12405  if (from._internal_metadata_.have_unknown_fields()) {
12406    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
12407  }
12408}
12409
12410void UninterpretedOption_NamePart::CopyFrom(const ::google::protobuf::Message& from) {
12411// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.UninterpretedOption.NamePart)
12412  if (&from == this) return;
12413  Clear();
12414  MergeFrom(from);
12415}
12416
12417void UninterpretedOption_NamePart::CopyFrom(const UninterpretedOption_NamePart& from) {
12418// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.UninterpretedOption.NamePart)
12419  if (&from == this) return;
12420  Clear();
12421  MergeFrom(from);
12422}
12423
12424bool UninterpretedOption_NamePart::IsInitialized() const {
12425  if ((_has_bits_[0] & 0x00000003) != 0x00000003) return false;
12426
12427  return true;
12428}
12429
12430void UninterpretedOption_NamePart::Swap(UninterpretedOption_NamePart* other) {
12431  if (other == this) return;
12432  InternalSwap(other);
12433}
12434void UninterpretedOption_NamePart::InternalSwap(UninterpretedOption_NamePart* other) {
12435  name_part_.Swap(&other->name_part_);
12436  std::swap(is_extension_, other->is_extension_);
12437  std::swap(_has_bits_[0], other->_has_bits_[0]);
12438  _internal_metadata_.Swap(&other->_internal_metadata_);
12439  std::swap(_cached_size_, other->_cached_size_);
12440}
12441
12442::google::protobuf::Metadata UninterpretedOption_NamePart::GetMetadata() const {
12443  protobuf_AssignDescriptorsOnce();
12444  ::google::protobuf::Metadata metadata;
12445  metadata.descriptor = UninterpretedOption_NamePart_descriptor_;
12446  metadata.reflection = UninterpretedOption_NamePart_reflection_;
12447  return metadata;
12448}
12449
12450
12451// -------------------------------------------------------------------
12452
12453#if !defined(_MSC_VER) || _MSC_VER >= 1900
12454const int UninterpretedOption::kNameFieldNumber;
12455const int UninterpretedOption::kIdentifierValueFieldNumber;
12456const int UninterpretedOption::kPositiveIntValueFieldNumber;
12457const int UninterpretedOption::kNegativeIntValueFieldNumber;
12458const int UninterpretedOption::kDoubleValueFieldNumber;
12459const int UninterpretedOption::kStringValueFieldNumber;
12460const int UninterpretedOption::kAggregateValueFieldNumber;
12461#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
12462
12463UninterpretedOption::UninterpretedOption()
12464  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
12465  SharedCtor();
12466  // @@protoc_insertion_point(constructor:google.protobuf.UninterpretedOption)
12467}
12468
12469void UninterpretedOption::InitAsDefaultInstance() {
12470}
12471
12472UninterpretedOption::UninterpretedOption(const UninterpretedOption& from)
12473  : ::google::protobuf::Message(),
12474    _internal_metadata_(NULL) {
12475  SharedCtor();
12476  MergeFrom(from);
12477  // @@protoc_insertion_point(copy_constructor:google.protobuf.UninterpretedOption)
12478}
12479
12480void UninterpretedOption::SharedCtor() {
12481  ::google::protobuf::internal::GetEmptyString();
12482  _cached_size_ = 0;
12483  identifier_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12484  positive_int_value_ = GOOGLE_ULONGLONG(0);
12485  negative_int_value_ = GOOGLE_LONGLONG(0);
12486  double_value_ = 0;
12487  string_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12488  aggregate_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12489  ::memset(_has_bits_, 0, sizeof(_has_bits_));
12490}
12491
12492UninterpretedOption::~UninterpretedOption() {
12493  // @@protoc_insertion_point(destructor:google.protobuf.UninterpretedOption)
12494  SharedDtor();
12495}
12496
12497void UninterpretedOption::SharedDtor() {
12498  identifier_value_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12499  string_value_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12500  aggregate_value_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12501  if (this != default_instance_) {
12502  }
12503}
12504
12505void UninterpretedOption::SetCachedSize(int size) const {
12506  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
12507  _cached_size_ = size;
12508  GOOGLE_SAFE_CONCURRENT_WRITES_END();
12509}
12510const ::google::protobuf::Descriptor* UninterpretedOption::descriptor() {
12511  protobuf_AssignDescriptorsOnce();
12512  return UninterpretedOption_descriptor_;
12513}
12514
12515const UninterpretedOption& UninterpretedOption::default_instance() {
12516  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
12517  return *default_instance_;
12518}
12519
12520UninterpretedOption* UninterpretedOption::default_instance_ = NULL;
12521
12522UninterpretedOption* UninterpretedOption::New(::google::protobuf::Arena* arena) const {
12523  UninterpretedOption* n = new UninterpretedOption;
12524  if (arena != NULL) {
12525    arena->Own(n);
12526  }
12527  return n;
12528}
12529
12530void UninterpretedOption::Clear() {
12531// @@protoc_insertion_point(message_clear_start:google.protobuf.UninterpretedOption)
12532#if defined(__clang__)
12533#define ZR_HELPER_(f) \
12534  _Pragma("clang diagnostic push") \
12535  _Pragma("clang diagnostic ignored \"-Winvalid-offsetof\"") \
12536  __builtin_offsetof(UninterpretedOption, f) \
12537  _Pragma("clang diagnostic pop")
12538#else
12539#define ZR_HELPER_(f) reinterpret_cast<char*>(\
12540  &reinterpret_cast<UninterpretedOption*>(16)->f)
12541#endif
12542
12543#define ZR_(first, last) do {\
12544  ::memset(&(first), 0,\
12545           ZR_HELPER_(last) - ZR_HELPER_(first) + sizeof(last));\
12546} while (0)
12547
12548  if (_has_bits_[0 / 32] & 126u) {
12549    ZR_(positive_int_value_, double_value_);
12550    if (has_identifier_value()) {
12551      identifier_value_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12552    }
12553    if (has_string_value()) {
12554      string_value_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12555    }
12556    if (has_aggregate_value()) {
12557      aggregate_value_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
12558    }
12559  }
12560
12561#undef ZR_HELPER_
12562#undef ZR_
12563
12564  name_.Clear();
12565  ::memset(_has_bits_, 0, sizeof(_has_bits_));
12566  if (_internal_metadata_.have_unknown_fields()) {
12567    mutable_unknown_fields()->Clear();
12568  }
12569}
12570
12571bool UninterpretedOption::MergePartialFromCodedStream(
12572    ::google::protobuf::io::CodedInputStream* input) {
12573#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
12574  ::google::protobuf::uint32 tag;
12575  // @@protoc_insertion_point(parse_start:google.protobuf.UninterpretedOption)
12576  for (;;) {
12577    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
12578    tag = p.first;
12579    if (!p.second) goto handle_unusual;
12580    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
12581      // repeated .google.protobuf.UninterpretedOption.NamePart name = 2;
12582      case 2: {
12583        if (tag == 18) {
12584          DO_(input->IncrementRecursionDepth());
12585         parse_loop_name:
12586          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
12587                input, add_name()));
12588        } else {
12589          goto handle_unusual;
12590        }
12591        if (input->ExpectTag(18)) goto parse_loop_name;
12592        input->UnsafeDecrementRecursionDepth();
12593        if (input->ExpectTag(26)) goto parse_identifier_value;
12594        break;
12595      }
12596
12597      // optional string identifier_value = 3;
12598      case 3: {
12599        if (tag == 26) {
12600         parse_identifier_value:
12601          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
12602                input, this->mutable_identifier_value()));
12603          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
12604            this->identifier_value().data(), this->identifier_value().length(),
12605            ::google::protobuf::internal::WireFormat::PARSE,
12606            "google.protobuf.UninterpretedOption.identifier_value");
12607        } else {
12608          goto handle_unusual;
12609        }
12610        if (input->ExpectTag(32)) goto parse_positive_int_value;
12611        break;
12612      }
12613
12614      // optional uint64 positive_int_value = 4;
12615      case 4: {
12616        if (tag == 32) {
12617         parse_positive_int_value:
12618          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
12619                   ::google::protobuf::uint64, ::google::protobuf::internal::WireFormatLite::TYPE_UINT64>(
12620                 input, &positive_int_value_)));
12621          set_has_positive_int_value();
12622        } else {
12623          goto handle_unusual;
12624        }
12625        if (input->ExpectTag(40)) goto parse_negative_int_value;
12626        break;
12627      }
12628
12629      // optional int64 negative_int_value = 5;
12630      case 5: {
12631        if (tag == 40) {
12632         parse_negative_int_value:
12633          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
12634                   ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
12635                 input, &negative_int_value_)));
12636          set_has_negative_int_value();
12637        } else {
12638          goto handle_unusual;
12639        }
12640        if (input->ExpectTag(49)) goto parse_double_value;
12641        break;
12642      }
12643
12644      // optional double double_value = 6;
12645      case 6: {
12646        if (tag == 49) {
12647         parse_double_value:
12648          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
12649                   double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>(
12650                 input, &double_value_)));
12651          set_has_double_value();
12652        } else {
12653          goto handle_unusual;
12654        }
12655        if (input->ExpectTag(58)) goto parse_string_value;
12656        break;
12657      }
12658
12659      // optional bytes string_value = 7;
12660      case 7: {
12661        if (tag == 58) {
12662         parse_string_value:
12663          DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
12664                input, this->mutable_string_value()));
12665        } else {
12666          goto handle_unusual;
12667        }
12668        if (input->ExpectTag(66)) goto parse_aggregate_value;
12669        break;
12670      }
12671
12672      // optional string aggregate_value = 8;
12673      case 8: {
12674        if (tag == 66) {
12675         parse_aggregate_value:
12676          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
12677                input, this->mutable_aggregate_value()));
12678          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
12679            this->aggregate_value().data(), this->aggregate_value().length(),
12680            ::google::protobuf::internal::WireFormat::PARSE,
12681            "google.protobuf.UninterpretedOption.aggregate_value");
12682        } else {
12683          goto handle_unusual;
12684        }
12685        if (input->ExpectAtEnd()) goto success;
12686        break;
12687      }
12688
12689      default: {
12690      handle_unusual:
12691        if (tag == 0 ||
12692            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
12693            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
12694          goto success;
12695        }
12696        DO_(::google::protobuf::internal::WireFormat::SkipField(
12697              input, tag, mutable_unknown_fields()));
12698        break;
12699      }
12700    }
12701  }
12702success:
12703  // @@protoc_insertion_point(parse_success:google.protobuf.UninterpretedOption)
12704  return true;
12705failure:
12706  // @@protoc_insertion_point(parse_failure:google.protobuf.UninterpretedOption)
12707  return false;
12708#undef DO_
12709}
12710
12711void UninterpretedOption::SerializeWithCachedSizes(
12712    ::google::protobuf::io::CodedOutputStream* output) const {
12713  // @@protoc_insertion_point(serialize_start:google.protobuf.UninterpretedOption)
12714  // repeated .google.protobuf.UninterpretedOption.NamePart name = 2;
12715  for (unsigned int i = 0, n = this->name_size(); i < n; i++) {
12716    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
12717      2, this->name(i), output);
12718  }
12719
12720  // optional string identifier_value = 3;
12721  if (has_identifier_value()) {
12722    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
12723      this->identifier_value().data(), this->identifier_value().length(),
12724      ::google::protobuf::internal::WireFormat::SERIALIZE,
12725      "google.protobuf.UninterpretedOption.identifier_value");
12726    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
12727      3, this->identifier_value(), output);
12728  }
12729
12730  // optional uint64 positive_int_value = 4;
12731  if (has_positive_int_value()) {
12732    ::google::protobuf::internal::WireFormatLite::WriteUInt64(4, this->positive_int_value(), output);
12733  }
12734
12735  // optional int64 negative_int_value = 5;
12736  if (has_negative_int_value()) {
12737    ::google::protobuf::internal::WireFormatLite::WriteInt64(5, this->negative_int_value(), output);
12738  }
12739
12740  // optional double double_value = 6;
12741  if (has_double_value()) {
12742    ::google::protobuf::internal::WireFormatLite::WriteDouble(6, this->double_value(), output);
12743  }
12744
12745  // optional bytes string_value = 7;
12746  if (has_string_value()) {
12747    ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
12748      7, this->string_value(), output);
12749  }
12750
12751  // optional string aggregate_value = 8;
12752  if (has_aggregate_value()) {
12753    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
12754      this->aggregate_value().data(), this->aggregate_value().length(),
12755      ::google::protobuf::internal::WireFormat::SERIALIZE,
12756      "google.protobuf.UninterpretedOption.aggregate_value");
12757    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
12758      8, this->aggregate_value(), output);
12759  }
12760
12761  if (_internal_metadata_.have_unknown_fields()) {
12762    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
12763        unknown_fields(), output);
12764  }
12765  // @@protoc_insertion_point(serialize_end:google.protobuf.UninterpretedOption)
12766}
12767
12768::google::protobuf::uint8* UninterpretedOption::SerializeWithCachedSizesToArray(
12769    ::google::protobuf::uint8* target) const {
12770  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.UninterpretedOption)
12771  // repeated .google.protobuf.UninterpretedOption.NamePart name = 2;
12772  for (unsigned int i = 0, n = this->name_size(); i < n; i++) {
12773    target = ::google::protobuf::internal::WireFormatLite::
12774      WriteMessageNoVirtualToArray(
12775        2, this->name(i), target);
12776  }
12777
12778  // optional string identifier_value = 3;
12779  if (has_identifier_value()) {
12780    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
12781      this->identifier_value().data(), this->identifier_value().length(),
12782      ::google::protobuf::internal::WireFormat::SERIALIZE,
12783      "google.protobuf.UninterpretedOption.identifier_value");
12784    target =
12785      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
12786        3, this->identifier_value(), target);
12787  }
12788
12789  // optional uint64 positive_int_value = 4;
12790  if (has_positive_int_value()) {
12791    target = ::google::protobuf::internal::WireFormatLite::WriteUInt64ToArray(4, this->positive_int_value(), target);
12792  }
12793
12794  // optional int64 negative_int_value = 5;
12795  if (has_negative_int_value()) {
12796    target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(5, this->negative_int_value(), target);
12797  }
12798
12799  // optional double double_value = 6;
12800  if (has_double_value()) {
12801    target = ::google::protobuf::internal::WireFormatLite::WriteDoubleToArray(6, this->double_value(), target);
12802  }
12803
12804  // optional bytes string_value = 7;
12805  if (has_string_value()) {
12806    target =
12807      ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
12808        7, this->string_value(), target);
12809  }
12810
12811  // optional string aggregate_value = 8;
12812  if (has_aggregate_value()) {
12813    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
12814      this->aggregate_value().data(), this->aggregate_value().length(),
12815      ::google::protobuf::internal::WireFormat::SERIALIZE,
12816      "google.protobuf.UninterpretedOption.aggregate_value");
12817    target =
12818      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
12819        8, this->aggregate_value(), target);
12820  }
12821
12822  if (_internal_metadata_.have_unknown_fields()) {
12823    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
12824        unknown_fields(), target);
12825  }
12826  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.UninterpretedOption)
12827  return target;
12828}
12829
12830int UninterpretedOption::ByteSize() const {
12831// @@protoc_insertion_point(message_byte_size_start:google.protobuf.UninterpretedOption)
12832  int total_size = 0;
12833
12834  if (_has_bits_[1 / 32] & 126u) {
12835    // optional string identifier_value = 3;
12836    if (has_identifier_value()) {
12837      total_size += 1 +
12838        ::google::protobuf::internal::WireFormatLite::StringSize(
12839          this->identifier_value());
12840    }
12841
12842    // optional uint64 positive_int_value = 4;
12843    if (has_positive_int_value()) {
12844      total_size += 1 +
12845        ::google::protobuf::internal::WireFormatLite::UInt64Size(
12846          this->positive_int_value());
12847    }
12848
12849    // optional int64 negative_int_value = 5;
12850    if (has_negative_int_value()) {
12851      total_size += 1 +
12852        ::google::protobuf::internal::WireFormatLite::Int64Size(
12853          this->negative_int_value());
12854    }
12855
12856    // optional double double_value = 6;
12857    if (has_double_value()) {
12858      total_size += 1 + 8;
12859    }
12860
12861    // optional bytes string_value = 7;
12862    if (has_string_value()) {
12863      total_size += 1 +
12864        ::google::protobuf::internal::WireFormatLite::BytesSize(
12865          this->string_value());
12866    }
12867
12868    // optional string aggregate_value = 8;
12869    if (has_aggregate_value()) {
12870      total_size += 1 +
12871        ::google::protobuf::internal::WireFormatLite::StringSize(
12872          this->aggregate_value());
12873    }
12874
12875  }
12876  // repeated .google.protobuf.UninterpretedOption.NamePart name = 2;
12877  total_size += 1 * this->name_size();
12878  for (int i = 0; i < this->name_size(); i++) {
12879    total_size +=
12880      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
12881        this->name(i));
12882  }
12883
12884  if (_internal_metadata_.have_unknown_fields()) {
12885    total_size +=
12886      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
12887        unknown_fields());
12888  }
12889  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
12890  _cached_size_ = total_size;
12891  GOOGLE_SAFE_CONCURRENT_WRITES_END();
12892  return total_size;
12893}
12894
12895void UninterpretedOption::MergeFrom(const ::google::protobuf::Message& from) {
12896// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.UninterpretedOption)
12897  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
12898  const UninterpretedOption* source =
12899      ::google::protobuf::internal::DynamicCastToGenerated<const UninterpretedOption>(
12900          &from);
12901  if (source == NULL) {
12902  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.UninterpretedOption)
12903    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
12904  } else {
12905  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.UninterpretedOption)
12906    MergeFrom(*source);
12907  }
12908}
12909
12910void UninterpretedOption::MergeFrom(const UninterpretedOption& from) {
12911// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.UninterpretedOption)
12912  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
12913  name_.MergeFrom(from.name_);
12914  if (from._has_bits_[1 / 32] & (0xffu << (1 % 32))) {
12915    if (from.has_identifier_value()) {
12916      set_has_identifier_value();
12917      identifier_value_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.identifier_value_);
12918    }
12919    if (from.has_positive_int_value()) {
12920      set_positive_int_value(from.positive_int_value());
12921    }
12922    if (from.has_negative_int_value()) {
12923      set_negative_int_value(from.negative_int_value());
12924    }
12925    if (from.has_double_value()) {
12926      set_double_value(from.double_value());
12927    }
12928    if (from.has_string_value()) {
12929      set_has_string_value();
12930      string_value_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.string_value_);
12931    }
12932    if (from.has_aggregate_value()) {
12933      set_has_aggregate_value();
12934      aggregate_value_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.aggregate_value_);
12935    }
12936  }
12937  if (from._internal_metadata_.have_unknown_fields()) {
12938    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
12939  }
12940}
12941
12942void UninterpretedOption::CopyFrom(const ::google::protobuf::Message& from) {
12943// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.UninterpretedOption)
12944  if (&from == this) return;
12945  Clear();
12946  MergeFrom(from);
12947}
12948
12949void UninterpretedOption::CopyFrom(const UninterpretedOption& from) {
12950// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.UninterpretedOption)
12951  if (&from == this) return;
12952  Clear();
12953  MergeFrom(from);
12954}
12955
12956bool UninterpretedOption::IsInitialized() const {
12957
12958  if (!::google::protobuf::internal::AllAreInitialized(this->name())) return false;
12959  return true;
12960}
12961
12962void UninterpretedOption::Swap(UninterpretedOption* other) {
12963  if (other == this) return;
12964  InternalSwap(other);
12965}
12966void UninterpretedOption::InternalSwap(UninterpretedOption* other) {
12967  name_.UnsafeArenaSwap(&other->name_);
12968  identifier_value_.Swap(&other->identifier_value_);
12969  std::swap(positive_int_value_, other->positive_int_value_);
12970  std::swap(negative_int_value_, other->negative_int_value_);
12971  std::swap(double_value_, other->double_value_);
12972  string_value_.Swap(&other->string_value_);
12973  aggregate_value_.Swap(&other->aggregate_value_);
12974  std::swap(_has_bits_[0], other->_has_bits_[0]);
12975  _internal_metadata_.Swap(&other->_internal_metadata_);
12976  std::swap(_cached_size_, other->_cached_size_);
12977}
12978
12979::google::protobuf::Metadata UninterpretedOption::GetMetadata() const {
12980  protobuf_AssignDescriptorsOnce();
12981  ::google::protobuf::Metadata metadata;
12982  metadata.descriptor = UninterpretedOption_descriptor_;
12983  metadata.reflection = UninterpretedOption_reflection_;
12984  return metadata;
12985}
12986
12987#if PROTOBUF_INLINE_NOT_IN_HEADERS
12988// UninterpretedOption_NamePart
12989
12990// required string name_part = 1;
12991bool UninterpretedOption_NamePart::has_name_part() const {
12992  return (_has_bits_[0] & 0x00000001u) != 0;
12993}
12994void UninterpretedOption_NamePart::set_has_name_part() {
12995  _has_bits_[0] |= 0x00000001u;
12996}
12997void UninterpretedOption_NamePart::clear_has_name_part() {
12998  _has_bits_[0] &= ~0x00000001u;
12999}
13000void UninterpretedOption_NamePart::clear_name_part() {
13001  name_part_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13002  clear_has_name_part();
13003}
13004 const ::std::string& UninterpretedOption_NamePart::name_part() const {
13005  // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.NamePart.name_part)
13006  return name_part_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13007}
13008 void UninterpretedOption_NamePart::set_name_part(const ::std::string& value) {
13009  set_has_name_part();
13010  name_part_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
13011  // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.NamePart.name_part)
13012}
13013 void UninterpretedOption_NamePart::set_name_part(const char* value) {
13014  set_has_name_part();
13015  name_part_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
13016  // @@protoc_insertion_point(field_set_char:google.protobuf.UninterpretedOption.NamePart.name_part)
13017}
13018 void UninterpretedOption_NamePart::set_name_part(const char* value, size_t size) {
13019  set_has_name_part();
13020  name_part_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
13021      ::std::string(reinterpret_cast<const char*>(value), size));
13022  // @@protoc_insertion_point(field_set_pointer:google.protobuf.UninterpretedOption.NamePart.name_part)
13023}
13024 ::std::string* UninterpretedOption_NamePart::mutable_name_part() {
13025  set_has_name_part();
13026  // @@protoc_insertion_point(field_mutable:google.protobuf.UninterpretedOption.NamePart.name_part)
13027  return name_part_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13028}
13029 ::std::string* UninterpretedOption_NamePart::release_name_part() {
13030  // @@protoc_insertion_point(field_release:google.protobuf.UninterpretedOption.NamePart.name_part)
13031  clear_has_name_part();
13032  return name_part_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13033}
13034 void UninterpretedOption_NamePart::set_allocated_name_part(::std::string* name_part) {
13035  if (name_part != NULL) {
13036    set_has_name_part();
13037  } else {
13038    clear_has_name_part();
13039  }
13040  name_part_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name_part);
13041  // @@protoc_insertion_point(field_set_allocated:google.protobuf.UninterpretedOption.NamePart.name_part)
13042}
13043
13044// required bool is_extension = 2;
13045bool UninterpretedOption_NamePart::has_is_extension() const {
13046  return (_has_bits_[0] & 0x00000002u) != 0;
13047}
13048void UninterpretedOption_NamePart::set_has_is_extension() {
13049  _has_bits_[0] |= 0x00000002u;
13050}
13051void UninterpretedOption_NamePart::clear_has_is_extension() {
13052  _has_bits_[0] &= ~0x00000002u;
13053}
13054void UninterpretedOption_NamePart::clear_is_extension() {
13055  is_extension_ = false;
13056  clear_has_is_extension();
13057}
13058 bool UninterpretedOption_NamePart::is_extension() const {
13059  // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.NamePart.is_extension)
13060  return is_extension_;
13061}
13062 void UninterpretedOption_NamePart::set_is_extension(bool value) {
13063  set_has_is_extension();
13064  is_extension_ = value;
13065  // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.NamePart.is_extension)
13066}
13067
13068// -------------------------------------------------------------------
13069
13070// UninterpretedOption
13071
13072// repeated .google.protobuf.UninterpretedOption.NamePart name = 2;
13073int UninterpretedOption::name_size() const {
13074  return name_.size();
13075}
13076void UninterpretedOption::clear_name() {
13077  name_.Clear();
13078}
13079const ::google::protobuf::UninterpretedOption_NamePart& UninterpretedOption::name(int index) const {
13080  // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.name)
13081  return name_.Get(index);
13082}
13083::google::protobuf::UninterpretedOption_NamePart* UninterpretedOption::mutable_name(int index) {
13084  // @@protoc_insertion_point(field_mutable:google.protobuf.UninterpretedOption.name)
13085  return name_.Mutable(index);
13086}
13087::google::protobuf::UninterpretedOption_NamePart* UninterpretedOption::add_name() {
13088  // @@protoc_insertion_point(field_add:google.protobuf.UninterpretedOption.name)
13089  return name_.Add();
13090}
13091::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption_NamePart >*
13092UninterpretedOption::mutable_name() {
13093  // @@protoc_insertion_point(field_mutable_list:google.protobuf.UninterpretedOption.name)
13094  return &name_;
13095}
13096const ::google::protobuf::RepeatedPtrField< ::google::protobuf::UninterpretedOption_NamePart >&
13097UninterpretedOption::name() const {
13098  // @@protoc_insertion_point(field_list:google.protobuf.UninterpretedOption.name)
13099  return name_;
13100}
13101
13102// optional string identifier_value = 3;
13103bool UninterpretedOption::has_identifier_value() const {
13104  return (_has_bits_[0] & 0x00000002u) != 0;
13105}
13106void UninterpretedOption::set_has_identifier_value() {
13107  _has_bits_[0] |= 0x00000002u;
13108}
13109void UninterpretedOption::clear_has_identifier_value() {
13110  _has_bits_[0] &= ~0x00000002u;
13111}
13112void UninterpretedOption::clear_identifier_value() {
13113  identifier_value_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13114  clear_has_identifier_value();
13115}
13116 const ::std::string& UninterpretedOption::identifier_value() const {
13117  // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.identifier_value)
13118  return identifier_value_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13119}
13120 void UninterpretedOption::set_identifier_value(const ::std::string& value) {
13121  set_has_identifier_value();
13122  identifier_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
13123  // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.identifier_value)
13124}
13125 void UninterpretedOption::set_identifier_value(const char* value) {
13126  set_has_identifier_value();
13127  identifier_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
13128  // @@protoc_insertion_point(field_set_char:google.protobuf.UninterpretedOption.identifier_value)
13129}
13130 void UninterpretedOption::set_identifier_value(const char* value, size_t size) {
13131  set_has_identifier_value();
13132  identifier_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
13133      ::std::string(reinterpret_cast<const char*>(value), size));
13134  // @@protoc_insertion_point(field_set_pointer:google.protobuf.UninterpretedOption.identifier_value)
13135}
13136 ::std::string* UninterpretedOption::mutable_identifier_value() {
13137  set_has_identifier_value();
13138  // @@protoc_insertion_point(field_mutable:google.protobuf.UninterpretedOption.identifier_value)
13139  return identifier_value_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13140}
13141 ::std::string* UninterpretedOption::release_identifier_value() {
13142  // @@protoc_insertion_point(field_release:google.protobuf.UninterpretedOption.identifier_value)
13143  clear_has_identifier_value();
13144  return identifier_value_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13145}
13146 void UninterpretedOption::set_allocated_identifier_value(::std::string* identifier_value) {
13147  if (identifier_value != NULL) {
13148    set_has_identifier_value();
13149  } else {
13150    clear_has_identifier_value();
13151  }
13152  identifier_value_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), identifier_value);
13153  // @@protoc_insertion_point(field_set_allocated:google.protobuf.UninterpretedOption.identifier_value)
13154}
13155
13156// optional uint64 positive_int_value = 4;
13157bool UninterpretedOption::has_positive_int_value() const {
13158  return (_has_bits_[0] & 0x00000004u) != 0;
13159}
13160void UninterpretedOption::set_has_positive_int_value() {
13161  _has_bits_[0] |= 0x00000004u;
13162}
13163void UninterpretedOption::clear_has_positive_int_value() {
13164  _has_bits_[0] &= ~0x00000004u;
13165}
13166void UninterpretedOption::clear_positive_int_value() {
13167  positive_int_value_ = GOOGLE_ULONGLONG(0);
13168  clear_has_positive_int_value();
13169}
13170 ::google::protobuf::uint64 UninterpretedOption::positive_int_value() const {
13171  // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.positive_int_value)
13172  return positive_int_value_;
13173}
13174 void UninterpretedOption::set_positive_int_value(::google::protobuf::uint64 value) {
13175  set_has_positive_int_value();
13176  positive_int_value_ = value;
13177  // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.positive_int_value)
13178}
13179
13180// optional int64 negative_int_value = 5;
13181bool UninterpretedOption::has_negative_int_value() const {
13182  return (_has_bits_[0] & 0x00000008u) != 0;
13183}
13184void UninterpretedOption::set_has_negative_int_value() {
13185  _has_bits_[0] |= 0x00000008u;
13186}
13187void UninterpretedOption::clear_has_negative_int_value() {
13188  _has_bits_[0] &= ~0x00000008u;
13189}
13190void UninterpretedOption::clear_negative_int_value() {
13191  negative_int_value_ = GOOGLE_LONGLONG(0);
13192  clear_has_negative_int_value();
13193}
13194 ::google::protobuf::int64 UninterpretedOption::negative_int_value() const {
13195  // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.negative_int_value)
13196  return negative_int_value_;
13197}
13198 void UninterpretedOption::set_negative_int_value(::google::protobuf::int64 value) {
13199  set_has_negative_int_value();
13200  negative_int_value_ = value;
13201  // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.negative_int_value)
13202}
13203
13204// optional double double_value = 6;
13205bool UninterpretedOption::has_double_value() const {
13206  return (_has_bits_[0] & 0x00000010u) != 0;
13207}
13208void UninterpretedOption::set_has_double_value() {
13209  _has_bits_[0] |= 0x00000010u;
13210}
13211void UninterpretedOption::clear_has_double_value() {
13212  _has_bits_[0] &= ~0x00000010u;
13213}
13214void UninterpretedOption::clear_double_value() {
13215  double_value_ = 0;
13216  clear_has_double_value();
13217}
13218 double UninterpretedOption::double_value() const {
13219  // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.double_value)
13220  return double_value_;
13221}
13222 void UninterpretedOption::set_double_value(double value) {
13223  set_has_double_value();
13224  double_value_ = value;
13225  // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.double_value)
13226}
13227
13228// optional bytes string_value = 7;
13229bool UninterpretedOption::has_string_value() const {
13230  return (_has_bits_[0] & 0x00000020u) != 0;
13231}
13232void UninterpretedOption::set_has_string_value() {
13233  _has_bits_[0] |= 0x00000020u;
13234}
13235void UninterpretedOption::clear_has_string_value() {
13236  _has_bits_[0] &= ~0x00000020u;
13237}
13238void UninterpretedOption::clear_string_value() {
13239  string_value_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13240  clear_has_string_value();
13241}
13242 const ::std::string& UninterpretedOption::string_value() const {
13243  // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.string_value)
13244  return string_value_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13245}
13246 void UninterpretedOption::set_string_value(const ::std::string& value) {
13247  set_has_string_value();
13248  string_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
13249  // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.string_value)
13250}
13251 void UninterpretedOption::set_string_value(const char* value) {
13252  set_has_string_value();
13253  string_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
13254  // @@protoc_insertion_point(field_set_char:google.protobuf.UninterpretedOption.string_value)
13255}
13256 void UninterpretedOption::set_string_value(const void* value, size_t size) {
13257  set_has_string_value();
13258  string_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
13259      ::std::string(reinterpret_cast<const char*>(value), size));
13260  // @@protoc_insertion_point(field_set_pointer:google.protobuf.UninterpretedOption.string_value)
13261}
13262 ::std::string* UninterpretedOption::mutable_string_value() {
13263  set_has_string_value();
13264  // @@protoc_insertion_point(field_mutable:google.protobuf.UninterpretedOption.string_value)
13265  return string_value_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13266}
13267 ::std::string* UninterpretedOption::release_string_value() {
13268  // @@protoc_insertion_point(field_release:google.protobuf.UninterpretedOption.string_value)
13269  clear_has_string_value();
13270  return string_value_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13271}
13272 void UninterpretedOption::set_allocated_string_value(::std::string* string_value) {
13273  if (string_value != NULL) {
13274    set_has_string_value();
13275  } else {
13276    clear_has_string_value();
13277  }
13278  string_value_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), string_value);
13279  // @@protoc_insertion_point(field_set_allocated:google.protobuf.UninterpretedOption.string_value)
13280}
13281
13282// optional string aggregate_value = 8;
13283bool UninterpretedOption::has_aggregate_value() const {
13284  return (_has_bits_[0] & 0x00000040u) != 0;
13285}
13286void UninterpretedOption::set_has_aggregate_value() {
13287  _has_bits_[0] |= 0x00000040u;
13288}
13289void UninterpretedOption::clear_has_aggregate_value() {
13290  _has_bits_[0] &= ~0x00000040u;
13291}
13292void UninterpretedOption::clear_aggregate_value() {
13293  aggregate_value_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13294  clear_has_aggregate_value();
13295}
13296 const ::std::string& UninterpretedOption::aggregate_value() const {
13297  // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.aggregate_value)
13298  return aggregate_value_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13299}
13300 void UninterpretedOption::set_aggregate_value(const ::std::string& value) {
13301  set_has_aggregate_value();
13302  aggregate_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
13303  // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.aggregate_value)
13304}
13305 void UninterpretedOption::set_aggregate_value(const char* value) {
13306  set_has_aggregate_value();
13307  aggregate_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
13308  // @@protoc_insertion_point(field_set_char:google.protobuf.UninterpretedOption.aggregate_value)
13309}
13310 void UninterpretedOption::set_aggregate_value(const char* value, size_t size) {
13311  set_has_aggregate_value();
13312  aggregate_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
13313      ::std::string(reinterpret_cast<const char*>(value), size));
13314  // @@protoc_insertion_point(field_set_pointer:google.protobuf.UninterpretedOption.aggregate_value)
13315}
13316 ::std::string* UninterpretedOption::mutable_aggregate_value() {
13317  set_has_aggregate_value();
13318  // @@protoc_insertion_point(field_mutable:google.protobuf.UninterpretedOption.aggregate_value)
13319  return aggregate_value_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13320}
13321 ::std::string* UninterpretedOption::release_aggregate_value() {
13322  // @@protoc_insertion_point(field_release:google.protobuf.UninterpretedOption.aggregate_value)
13323  clear_has_aggregate_value();
13324  return aggregate_value_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13325}
13326 void UninterpretedOption::set_allocated_aggregate_value(::std::string* aggregate_value) {
13327  if (aggregate_value != NULL) {
13328    set_has_aggregate_value();
13329  } else {
13330    clear_has_aggregate_value();
13331  }
13332  aggregate_value_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), aggregate_value);
13333  // @@protoc_insertion_point(field_set_allocated:google.protobuf.UninterpretedOption.aggregate_value)
13334}
13335
13336#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
13337
13338// ===================================================================
13339
13340#if !defined(_MSC_VER) || _MSC_VER >= 1900
13341const int SourceCodeInfo_Location::kPathFieldNumber;
13342const int SourceCodeInfo_Location::kSpanFieldNumber;
13343const int SourceCodeInfo_Location::kLeadingCommentsFieldNumber;
13344const int SourceCodeInfo_Location::kTrailingCommentsFieldNumber;
13345const int SourceCodeInfo_Location::kLeadingDetachedCommentsFieldNumber;
13346#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
13347
13348SourceCodeInfo_Location::SourceCodeInfo_Location()
13349  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
13350  SharedCtor();
13351  // @@protoc_insertion_point(constructor:google.protobuf.SourceCodeInfo.Location)
13352}
13353
13354void SourceCodeInfo_Location::InitAsDefaultInstance() {
13355}
13356
13357SourceCodeInfo_Location::SourceCodeInfo_Location(const SourceCodeInfo_Location& from)
13358  : ::google::protobuf::Message(),
13359    _internal_metadata_(NULL) {
13360  SharedCtor();
13361  MergeFrom(from);
13362  // @@protoc_insertion_point(copy_constructor:google.protobuf.SourceCodeInfo.Location)
13363}
13364
13365void SourceCodeInfo_Location::SharedCtor() {
13366  ::google::protobuf::internal::GetEmptyString();
13367  _cached_size_ = 0;
13368  leading_comments_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13369  trailing_comments_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13370  ::memset(_has_bits_, 0, sizeof(_has_bits_));
13371}
13372
13373SourceCodeInfo_Location::~SourceCodeInfo_Location() {
13374  // @@protoc_insertion_point(destructor:google.protobuf.SourceCodeInfo.Location)
13375  SharedDtor();
13376}
13377
13378void SourceCodeInfo_Location::SharedDtor() {
13379  leading_comments_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13380  trailing_comments_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13381  if (this != default_instance_) {
13382  }
13383}
13384
13385void SourceCodeInfo_Location::SetCachedSize(int size) const {
13386  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
13387  _cached_size_ = size;
13388  GOOGLE_SAFE_CONCURRENT_WRITES_END();
13389}
13390const ::google::protobuf::Descriptor* SourceCodeInfo_Location::descriptor() {
13391  protobuf_AssignDescriptorsOnce();
13392  return SourceCodeInfo_Location_descriptor_;
13393}
13394
13395const SourceCodeInfo_Location& SourceCodeInfo_Location::default_instance() {
13396  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
13397  return *default_instance_;
13398}
13399
13400SourceCodeInfo_Location* SourceCodeInfo_Location::default_instance_ = NULL;
13401
13402SourceCodeInfo_Location* SourceCodeInfo_Location::New(::google::protobuf::Arena* arena) const {
13403  SourceCodeInfo_Location* n = new SourceCodeInfo_Location;
13404  if (arena != NULL) {
13405    arena->Own(n);
13406  }
13407  return n;
13408}
13409
13410void SourceCodeInfo_Location::Clear() {
13411// @@protoc_insertion_point(message_clear_start:google.protobuf.SourceCodeInfo.Location)
13412  if (_has_bits_[0 / 32] & 12u) {
13413    if (has_leading_comments()) {
13414      leading_comments_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13415    }
13416    if (has_trailing_comments()) {
13417      trailing_comments_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
13418    }
13419  }
13420  path_.Clear();
13421  span_.Clear();
13422  leading_detached_comments_.Clear();
13423  ::memset(_has_bits_, 0, sizeof(_has_bits_));
13424  if (_internal_metadata_.have_unknown_fields()) {
13425    mutable_unknown_fields()->Clear();
13426  }
13427}
13428
13429bool SourceCodeInfo_Location::MergePartialFromCodedStream(
13430    ::google::protobuf::io::CodedInputStream* input) {
13431#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
13432  ::google::protobuf::uint32 tag;
13433  // @@protoc_insertion_point(parse_start:google.protobuf.SourceCodeInfo.Location)
13434  for (;;) {
13435    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
13436    tag = p.first;
13437    if (!p.second) goto handle_unusual;
13438    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
13439      // repeated int32 path = 1 [packed = true];
13440      case 1: {
13441        if (tag == 10) {
13442          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitive<
13443                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
13444                 input, this->mutable_path())));
13445        } else if (tag == 8) {
13446          DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitiveNoInline<
13447                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
13448                 1, 10, input, this->mutable_path())));
13449        } else {
13450          goto handle_unusual;
13451        }
13452        if (input->ExpectTag(18)) goto parse_span;
13453        break;
13454      }
13455
13456      // repeated int32 span = 2 [packed = true];
13457      case 2: {
13458        if (tag == 18) {
13459         parse_span:
13460          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitive<
13461                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
13462                 input, this->mutable_span())));
13463        } else if (tag == 16) {
13464          DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitiveNoInline<
13465                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
13466                 1, 18, input, this->mutable_span())));
13467        } else {
13468          goto handle_unusual;
13469        }
13470        if (input->ExpectTag(26)) goto parse_leading_comments;
13471        break;
13472      }
13473
13474      // optional string leading_comments = 3;
13475      case 3: {
13476        if (tag == 26) {
13477         parse_leading_comments:
13478          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
13479                input, this->mutable_leading_comments()));
13480          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
13481            this->leading_comments().data(), this->leading_comments().length(),
13482            ::google::protobuf::internal::WireFormat::PARSE,
13483            "google.protobuf.SourceCodeInfo.Location.leading_comments");
13484        } else {
13485          goto handle_unusual;
13486        }
13487        if (input->ExpectTag(34)) goto parse_trailing_comments;
13488        break;
13489      }
13490
13491      // optional string trailing_comments = 4;
13492      case 4: {
13493        if (tag == 34) {
13494         parse_trailing_comments:
13495          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
13496                input, this->mutable_trailing_comments()));
13497          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
13498            this->trailing_comments().data(), this->trailing_comments().length(),
13499            ::google::protobuf::internal::WireFormat::PARSE,
13500            "google.protobuf.SourceCodeInfo.Location.trailing_comments");
13501        } else {
13502          goto handle_unusual;
13503        }
13504        if (input->ExpectTag(50)) goto parse_leading_detached_comments;
13505        break;
13506      }
13507
13508      // repeated string leading_detached_comments = 6;
13509      case 6: {
13510        if (tag == 50) {
13511         parse_leading_detached_comments:
13512          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
13513                input, this->add_leading_detached_comments()));
13514          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
13515            this->leading_detached_comments(this->leading_detached_comments_size() - 1).data(),
13516            this->leading_detached_comments(this->leading_detached_comments_size() - 1).length(),
13517            ::google::protobuf::internal::WireFormat::PARSE,
13518            "google.protobuf.SourceCodeInfo.Location.leading_detached_comments");
13519        } else {
13520          goto handle_unusual;
13521        }
13522        if (input->ExpectTag(50)) goto parse_leading_detached_comments;
13523        if (input->ExpectAtEnd()) goto success;
13524        break;
13525      }
13526
13527      default: {
13528      handle_unusual:
13529        if (tag == 0 ||
13530            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
13531            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
13532          goto success;
13533        }
13534        DO_(::google::protobuf::internal::WireFormat::SkipField(
13535              input, tag, mutable_unknown_fields()));
13536        break;
13537      }
13538    }
13539  }
13540success:
13541  // @@protoc_insertion_point(parse_success:google.protobuf.SourceCodeInfo.Location)
13542  return true;
13543failure:
13544  // @@protoc_insertion_point(parse_failure:google.protobuf.SourceCodeInfo.Location)
13545  return false;
13546#undef DO_
13547}
13548
13549void SourceCodeInfo_Location::SerializeWithCachedSizes(
13550    ::google::protobuf::io::CodedOutputStream* output) const {
13551  // @@protoc_insertion_point(serialize_start:google.protobuf.SourceCodeInfo.Location)
13552  // repeated int32 path = 1 [packed = true];
13553  if (this->path_size() > 0) {
13554    ::google::protobuf::internal::WireFormatLite::WriteTag(1, ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED, output);
13555    output->WriteVarint32(_path_cached_byte_size_);
13556  }
13557  for (int i = 0; i < this->path_size(); i++) {
13558    ::google::protobuf::internal::WireFormatLite::WriteInt32NoTag(
13559      this->path(i), output);
13560  }
13561
13562  // repeated int32 span = 2 [packed = true];
13563  if (this->span_size() > 0) {
13564    ::google::protobuf::internal::WireFormatLite::WriteTag(2, ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED, output);
13565    output->WriteVarint32(_span_cached_byte_size_);
13566  }
13567  for (int i = 0; i < this->span_size(); i++) {
13568    ::google::protobuf::internal::WireFormatLite::WriteInt32NoTag(
13569      this->span(i), output);
13570  }
13571
13572  // optional string leading_comments = 3;
13573  if (has_leading_comments()) {
13574    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
13575      this->leading_comments().data(), this->leading_comments().length(),
13576      ::google::protobuf::internal::WireFormat::SERIALIZE,
13577      "google.protobuf.SourceCodeInfo.Location.leading_comments");
13578    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
13579      3, this->leading_comments(), output);
13580  }
13581
13582  // optional string trailing_comments = 4;
13583  if (has_trailing_comments()) {
13584    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
13585      this->trailing_comments().data(), this->trailing_comments().length(),
13586      ::google::protobuf::internal::WireFormat::SERIALIZE,
13587      "google.protobuf.SourceCodeInfo.Location.trailing_comments");
13588    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
13589      4, this->trailing_comments(), output);
13590  }
13591
13592  // repeated string leading_detached_comments = 6;
13593  for (int i = 0; i < this->leading_detached_comments_size(); i++) {
13594    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
13595      this->leading_detached_comments(i).data(), this->leading_detached_comments(i).length(),
13596      ::google::protobuf::internal::WireFormat::SERIALIZE,
13597      "google.protobuf.SourceCodeInfo.Location.leading_detached_comments");
13598    ::google::protobuf::internal::WireFormatLite::WriteString(
13599      6, this->leading_detached_comments(i), output);
13600  }
13601
13602  if (_internal_metadata_.have_unknown_fields()) {
13603    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
13604        unknown_fields(), output);
13605  }
13606  // @@protoc_insertion_point(serialize_end:google.protobuf.SourceCodeInfo.Location)
13607}
13608
13609::google::protobuf::uint8* SourceCodeInfo_Location::SerializeWithCachedSizesToArray(
13610    ::google::protobuf::uint8* target) const {
13611  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.SourceCodeInfo.Location)
13612  // repeated int32 path = 1 [packed = true];
13613  if (this->path_size() > 0) {
13614    target = ::google::protobuf::internal::WireFormatLite::WriteTagToArray(
13615      1,
13616      ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED,
13617      target);
13618    target = ::google::protobuf::io::CodedOutputStream::WriteVarint32ToArray(
13619      _path_cached_byte_size_, target);
13620  }
13621  for (int i = 0; i < this->path_size(); i++) {
13622    target = ::google::protobuf::internal::WireFormatLite::
13623      WriteInt32NoTagToArray(this->path(i), target);
13624  }
13625
13626  // repeated int32 span = 2 [packed = true];
13627  if (this->span_size() > 0) {
13628    target = ::google::protobuf::internal::WireFormatLite::WriteTagToArray(
13629      2,
13630      ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED,
13631      target);
13632    target = ::google::protobuf::io::CodedOutputStream::WriteVarint32ToArray(
13633      _span_cached_byte_size_, target);
13634  }
13635  for (int i = 0; i < this->span_size(); i++) {
13636    target = ::google::protobuf::internal::WireFormatLite::
13637      WriteInt32NoTagToArray(this->span(i), target);
13638  }
13639
13640  // optional string leading_comments = 3;
13641  if (has_leading_comments()) {
13642    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
13643      this->leading_comments().data(), this->leading_comments().length(),
13644      ::google::protobuf::internal::WireFormat::SERIALIZE,
13645      "google.protobuf.SourceCodeInfo.Location.leading_comments");
13646    target =
13647      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
13648        3, this->leading_comments(), target);
13649  }
13650
13651  // optional string trailing_comments = 4;
13652  if (has_trailing_comments()) {
13653    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
13654      this->trailing_comments().data(), this->trailing_comments().length(),
13655      ::google::protobuf::internal::WireFormat::SERIALIZE,
13656      "google.protobuf.SourceCodeInfo.Location.trailing_comments");
13657    target =
13658      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
13659        4, this->trailing_comments(), target);
13660  }
13661
13662  // repeated string leading_detached_comments = 6;
13663  for (int i = 0; i < this->leading_detached_comments_size(); i++) {
13664    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
13665      this->leading_detached_comments(i).data(), this->leading_detached_comments(i).length(),
13666      ::google::protobuf::internal::WireFormat::SERIALIZE,
13667      "google.protobuf.SourceCodeInfo.Location.leading_detached_comments");
13668    target = ::google::protobuf::internal::WireFormatLite::
13669      WriteStringToArray(6, this->leading_detached_comments(i), target);
13670  }
13671
13672  if (_internal_metadata_.have_unknown_fields()) {
13673    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
13674        unknown_fields(), target);
13675  }
13676  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.SourceCodeInfo.Location)
13677  return target;
13678}
13679
13680int SourceCodeInfo_Location::ByteSize() const {
13681// @@protoc_insertion_point(message_byte_size_start:google.protobuf.SourceCodeInfo.Location)
13682  int total_size = 0;
13683
13684  if (_has_bits_[2 / 32] & 12u) {
13685    // optional string leading_comments = 3;
13686    if (has_leading_comments()) {
13687      total_size += 1 +
13688        ::google::protobuf::internal::WireFormatLite::StringSize(
13689          this->leading_comments());
13690    }
13691
13692    // optional string trailing_comments = 4;
13693    if (has_trailing_comments()) {
13694      total_size += 1 +
13695        ::google::protobuf::internal::WireFormatLite::StringSize(
13696          this->trailing_comments());
13697    }
13698
13699  }
13700  // repeated int32 path = 1 [packed = true];
13701  {
13702    int data_size = 0;
13703    for (int i = 0; i < this->path_size(); i++) {
13704      data_size += ::google::protobuf::internal::WireFormatLite::
13705        Int32Size(this->path(i));
13706    }
13707    if (data_size > 0) {
13708      total_size += 1 +
13709        ::google::protobuf::internal::WireFormatLite::Int32Size(data_size);
13710    }
13711    GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
13712    _path_cached_byte_size_ = data_size;
13713    GOOGLE_SAFE_CONCURRENT_WRITES_END();
13714    total_size += data_size;
13715  }
13716
13717  // repeated int32 span = 2 [packed = true];
13718  {
13719    int data_size = 0;
13720    for (int i = 0; i < this->span_size(); i++) {
13721      data_size += ::google::protobuf::internal::WireFormatLite::
13722        Int32Size(this->span(i));
13723    }
13724    if (data_size > 0) {
13725      total_size += 1 +
13726        ::google::protobuf::internal::WireFormatLite::Int32Size(data_size);
13727    }
13728    GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
13729    _span_cached_byte_size_ = data_size;
13730    GOOGLE_SAFE_CONCURRENT_WRITES_END();
13731    total_size += data_size;
13732  }
13733
13734  // repeated string leading_detached_comments = 6;
13735  total_size += 1 * this->leading_detached_comments_size();
13736  for (int i = 0; i < this->leading_detached_comments_size(); i++) {
13737    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
13738      this->leading_detached_comments(i));
13739  }
13740
13741  if (_internal_metadata_.have_unknown_fields()) {
13742    total_size +=
13743      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
13744        unknown_fields());
13745  }
13746  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
13747  _cached_size_ = total_size;
13748  GOOGLE_SAFE_CONCURRENT_WRITES_END();
13749  return total_size;
13750}
13751
13752void SourceCodeInfo_Location::MergeFrom(const ::google::protobuf::Message& from) {
13753// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.SourceCodeInfo.Location)
13754  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
13755  const SourceCodeInfo_Location* source =
13756      ::google::protobuf::internal::DynamicCastToGenerated<const SourceCodeInfo_Location>(
13757          &from);
13758  if (source == NULL) {
13759  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.SourceCodeInfo.Location)
13760    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
13761  } else {
13762  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.SourceCodeInfo.Location)
13763    MergeFrom(*source);
13764  }
13765}
13766
13767void SourceCodeInfo_Location::MergeFrom(const SourceCodeInfo_Location& from) {
13768// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.SourceCodeInfo.Location)
13769  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
13770  path_.MergeFrom(from.path_);
13771  span_.MergeFrom(from.span_);
13772  leading_detached_comments_.MergeFrom(from.leading_detached_comments_);
13773  if (from._has_bits_[2 / 32] & (0xffu << (2 % 32))) {
13774    if (from.has_leading_comments()) {
13775      set_has_leading_comments();
13776      leading_comments_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.leading_comments_);
13777    }
13778    if (from.has_trailing_comments()) {
13779      set_has_trailing_comments();
13780      trailing_comments_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.trailing_comments_);
13781    }
13782  }
13783  if (from._internal_metadata_.have_unknown_fields()) {
13784    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
13785  }
13786}
13787
13788void SourceCodeInfo_Location::CopyFrom(const ::google::protobuf::Message& from) {
13789// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.SourceCodeInfo.Location)
13790  if (&from == this) return;
13791  Clear();
13792  MergeFrom(from);
13793}
13794
13795void SourceCodeInfo_Location::CopyFrom(const SourceCodeInfo_Location& from) {
13796// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.SourceCodeInfo.Location)
13797  if (&from == this) return;
13798  Clear();
13799  MergeFrom(from);
13800}
13801
13802bool SourceCodeInfo_Location::IsInitialized() const {
13803
13804  return true;
13805}
13806
13807void SourceCodeInfo_Location::Swap(SourceCodeInfo_Location* other) {
13808  if (other == this) return;
13809  InternalSwap(other);
13810}
13811void SourceCodeInfo_Location::InternalSwap(SourceCodeInfo_Location* other) {
13812  path_.UnsafeArenaSwap(&other->path_);
13813  span_.UnsafeArenaSwap(&other->span_);
13814  leading_comments_.Swap(&other->leading_comments_);
13815  trailing_comments_.Swap(&other->trailing_comments_);
13816  leading_detached_comments_.UnsafeArenaSwap(&other->leading_detached_comments_);
13817  std::swap(_has_bits_[0], other->_has_bits_[0]);
13818  _internal_metadata_.Swap(&other->_internal_metadata_);
13819  std::swap(_cached_size_, other->_cached_size_);
13820}
13821
13822::google::protobuf::Metadata SourceCodeInfo_Location::GetMetadata() const {
13823  protobuf_AssignDescriptorsOnce();
13824  ::google::protobuf::Metadata metadata;
13825  metadata.descriptor = SourceCodeInfo_Location_descriptor_;
13826  metadata.reflection = SourceCodeInfo_Location_reflection_;
13827  return metadata;
13828}
13829
13830
13831// -------------------------------------------------------------------
13832
13833#if !defined(_MSC_VER) || _MSC_VER >= 1900
13834const int SourceCodeInfo::kLocationFieldNumber;
13835#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
13836
13837SourceCodeInfo::SourceCodeInfo()
13838  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
13839  SharedCtor();
13840  // @@protoc_insertion_point(constructor:google.protobuf.SourceCodeInfo)
13841}
13842
13843void SourceCodeInfo::InitAsDefaultInstance() {
13844}
13845
13846SourceCodeInfo::SourceCodeInfo(const SourceCodeInfo& from)
13847  : ::google::protobuf::Message(),
13848    _internal_metadata_(NULL) {
13849  SharedCtor();
13850  MergeFrom(from);
13851  // @@protoc_insertion_point(copy_constructor:google.protobuf.SourceCodeInfo)
13852}
13853
13854void SourceCodeInfo::SharedCtor() {
13855  _cached_size_ = 0;
13856  ::memset(_has_bits_, 0, sizeof(_has_bits_));
13857}
13858
13859SourceCodeInfo::~SourceCodeInfo() {
13860  // @@protoc_insertion_point(destructor:google.protobuf.SourceCodeInfo)
13861  SharedDtor();
13862}
13863
13864void SourceCodeInfo::SharedDtor() {
13865  if (this != default_instance_) {
13866  }
13867}
13868
13869void SourceCodeInfo::SetCachedSize(int size) const {
13870  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
13871  _cached_size_ = size;
13872  GOOGLE_SAFE_CONCURRENT_WRITES_END();
13873}
13874const ::google::protobuf::Descriptor* SourceCodeInfo::descriptor() {
13875  protobuf_AssignDescriptorsOnce();
13876  return SourceCodeInfo_descriptor_;
13877}
13878
13879const SourceCodeInfo& SourceCodeInfo::default_instance() {
13880  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
13881  return *default_instance_;
13882}
13883
13884SourceCodeInfo* SourceCodeInfo::default_instance_ = NULL;
13885
13886SourceCodeInfo* SourceCodeInfo::New(::google::protobuf::Arena* arena) const {
13887  SourceCodeInfo* n = new SourceCodeInfo;
13888  if (arena != NULL) {
13889    arena->Own(n);
13890  }
13891  return n;
13892}
13893
13894void SourceCodeInfo::Clear() {
13895// @@protoc_insertion_point(message_clear_start:google.protobuf.SourceCodeInfo)
13896  location_.Clear();
13897  ::memset(_has_bits_, 0, sizeof(_has_bits_));
13898  if (_internal_metadata_.have_unknown_fields()) {
13899    mutable_unknown_fields()->Clear();
13900  }
13901}
13902
13903bool SourceCodeInfo::MergePartialFromCodedStream(
13904    ::google::protobuf::io::CodedInputStream* input) {
13905#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
13906  ::google::protobuf::uint32 tag;
13907  // @@protoc_insertion_point(parse_start:google.protobuf.SourceCodeInfo)
13908  for (;;) {
13909    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
13910    tag = p.first;
13911    if (!p.second) goto handle_unusual;
13912    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
13913      // repeated .google.protobuf.SourceCodeInfo.Location location = 1;
13914      case 1: {
13915        if (tag == 10) {
13916          DO_(input->IncrementRecursionDepth());
13917         parse_loop_location:
13918          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
13919                input, add_location()));
13920        } else {
13921          goto handle_unusual;
13922        }
13923        if (input->ExpectTag(10)) goto parse_loop_location;
13924        input->UnsafeDecrementRecursionDepth();
13925        if (input->ExpectAtEnd()) goto success;
13926        break;
13927      }
13928
13929      default: {
13930      handle_unusual:
13931        if (tag == 0 ||
13932            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
13933            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
13934          goto success;
13935        }
13936        DO_(::google::protobuf::internal::WireFormat::SkipField(
13937              input, tag, mutable_unknown_fields()));
13938        break;
13939      }
13940    }
13941  }
13942success:
13943  // @@protoc_insertion_point(parse_success:google.protobuf.SourceCodeInfo)
13944  return true;
13945failure:
13946  // @@protoc_insertion_point(parse_failure:google.protobuf.SourceCodeInfo)
13947  return false;
13948#undef DO_
13949}
13950
13951void SourceCodeInfo::SerializeWithCachedSizes(
13952    ::google::protobuf::io::CodedOutputStream* output) const {
13953  // @@protoc_insertion_point(serialize_start:google.protobuf.SourceCodeInfo)
13954  // repeated .google.protobuf.SourceCodeInfo.Location location = 1;
13955  for (unsigned int i = 0, n = this->location_size(); i < n; i++) {
13956    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
13957      1, this->location(i), output);
13958  }
13959
13960  if (_internal_metadata_.have_unknown_fields()) {
13961    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
13962        unknown_fields(), output);
13963  }
13964  // @@protoc_insertion_point(serialize_end:google.protobuf.SourceCodeInfo)
13965}
13966
13967::google::protobuf::uint8* SourceCodeInfo::SerializeWithCachedSizesToArray(
13968    ::google::protobuf::uint8* target) const {
13969  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.SourceCodeInfo)
13970  // repeated .google.protobuf.SourceCodeInfo.Location location = 1;
13971  for (unsigned int i = 0, n = this->location_size(); i < n; i++) {
13972    target = ::google::protobuf::internal::WireFormatLite::
13973      WriteMessageNoVirtualToArray(
13974        1, this->location(i), target);
13975  }
13976
13977  if (_internal_metadata_.have_unknown_fields()) {
13978    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
13979        unknown_fields(), target);
13980  }
13981  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.SourceCodeInfo)
13982  return target;
13983}
13984
13985int SourceCodeInfo::ByteSize() const {
13986// @@protoc_insertion_point(message_byte_size_start:google.protobuf.SourceCodeInfo)
13987  int total_size = 0;
13988
13989  // repeated .google.protobuf.SourceCodeInfo.Location location = 1;
13990  total_size += 1 * this->location_size();
13991  for (int i = 0; i < this->location_size(); i++) {
13992    total_size +=
13993      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
13994        this->location(i));
13995  }
13996
13997  if (_internal_metadata_.have_unknown_fields()) {
13998    total_size +=
13999      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
14000        unknown_fields());
14001  }
14002  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
14003  _cached_size_ = total_size;
14004  GOOGLE_SAFE_CONCURRENT_WRITES_END();
14005  return total_size;
14006}
14007
14008void SourceCodeInfo::MergeFrom(const ::google::protobuf::Message& from) {
14009// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.SourceCodeInfo)
14010  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
14011  const SourceCodeInfo* source =
14012      ::google::protobuf::internal::DynamicCastToGenerated<const SourceCodeInfo>(
14013          &from);
14014  if (source == NULL) {
14015  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.SourceCodeInfo)
14016    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
14017  } else {
14018  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.SourceCodeInfo)
14019    MergeFrom(*source);
14020  }
14021}
14022
14023void SourceCodeInfo::MergeFrom(const SourceCodeInfo& from) {
14024// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.SourceCodeInfo)
14025  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
14026  location_.MergeFrom(from.location_);
14027  if (from._internal_metadata_.have_unknown_fields()) {
14028    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
14029  }
14030}
14031
14032void SourceCodeInfo::CopyFrom(const ::google::protobuf::Message& from) {
14033// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.SourceCodeInfo)
14034  if (&from == this) return;
14035  Clear();
14036  MergeFrom(from);
14037}
14038
14039void SourceCodeInfo::CopyFrom(const SourceCodeInfo& from) {
14040// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.SourceCodeInfo)
14041  if (&from == this) return;
14042  Clear();
14043  MergeFrom(from);
14044}
14045
14046bool SourceCodeInfo::IsInitialized() const {
14047
14048  return true;
14049}
14050
14051void SourceCodeInfo::Swap(SourceCodeInfo* other) {
14052  if (other == this) return;
14053  InternalSwap(other);
14054}
14055void SourceCodeInfo::InternalSwap(SourceCodeInfo* other) {
14056  location_.UnsafeArenaSwap(&other->location_);
14057  std::swap(_has_bits_[0], other->_has_bits_[0]);
14058  _internal_metadata_.Swap(&other->_internal_metadata_);
14059  std::swap(_cached_size_, other->_cached_size_);
14060}
14061
14062::google::protobuf::Metadata SourceCodeInfo::GetMetadata() const {
14063  protobuf_AssignDescriptorsOnce();
14064  ::google::protobuf::Metadata metadata;
14065  metadata.descriptor = SourceCodeInfo_descriptor_;
14066  metadata.reflection = SourceCodeInfo_reflection_;
14067  return metadata;
14068}
14069
14070#if PROTOBUF_INLINE_NOT_IN_HEADERS
14071// SourceCodeInfo_Location
14072
14073// repeated int32 path = 1 [packed = true];
14074int SourceCodeInfo_Location::path_size() const {
14075  return path_.size();
14076}
14077void SourceCodeInfo_Location::clear_path() {
14078  path_.Clear();
14079}
14080 ::google::protobuf::int32 SourceCodeInfo_Location::path(int index) const {
14081  // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.Location.path)
14082  return path_.Get(index);
14083}
14084 void SourceCodeInfo_Location::set_path(int index, ::google::protobuf::int32 value) {
14085  path_.Set(index, value);
14086  // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.path)
14087}
14088 void SourceCodeInfo_Location::add_path(::google::protobuf::int32 value) {
14089  path_.Add(value);
14090  // @@protoc_insertion_point(field_add:google.protobuf.SourceCodeInfo.Location.path)
14091}
14092 const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
14093SourceCodeInfo_Location::path() const {
14094  // @@protoc_insertion_point(field_list:google.protobuf.SourceCodeInfo.Location.path)
14095  return path_;
14096}
14097 ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
14098SourceCodeInfo_Location::mutable_path() {
14099  // @@protoc_insertion_point(field_mutable_list:google.protobuf.SourceCodeInfo.Location.path)
14100  return &path_;
14101}
14102
14103// repeated int32 span = 2 [packed = true];
14104int SourceCodeInfo_Location::span_size() const {
14105  return span_.size();
14106}
14107void SourceCodeInfo_Location::clear_span() {
14108  span_.Clear();
14109}
14110 ::google::protobuf::int32 SourceCodeInfo_Location::span(int index) const {
14111  // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.Location.span)
14112  return span_.Get(index);
14113}
14114 void SourceCodeInfo_Location::set_span(int index, ::google::protobuf::int32 value) {
14115  span_.Set(index, value);
14116  // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.span)
14117}
14118 void SourceCodeInfo_Location::add_span(::google::protobuf::int32 value) {
14119  span_.Add(value);
14120  // @@protoc_insertion_point(field_add:google.protobuf.SourceCodeInfo.Location.span)
14121}
14122 const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
14123SourceCodeInfo_Location::span() const {
14124  // @@protoc_insertion_point(field_list:google.protobuf.SourceCodeInfo.Location.span)
14125  return span_;
14126}
14127 ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
14128SourceCodeInfo_Location::mutable_span() {
14129  // @@protoc_insertion_point(field_mutable_list:google.protobuf.SourceCodeInfo.Location.span)
14130  return &span_;
14131}
14132
14133// optional string leading_comments = 3;
14134bool SourceCodeInfo_Location::has_leading_comments() const {
14135  return (_has_bits_[0] & 0x00000004u) != 0;
14136}
14137void SourceCodeInfo_Location::set_has_leading_comments() {
14138  _has_bits_[0] |= 0x00000004u;
14139}
14140void SourceCodeInfo_Location::clear_has_leading_comments() {
14141  _has_bits_[0] &= ~0x00000004u;
14142}
14143void SourceCodeInfo_Location::clear_leading_comments() {
14144  leading_comments_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14145  clear_has_leading_comments();
14146}
14147 const ::std::string& SourceCodeInfo_Location::leading_comments() const {
14148  // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.Location.leading_comments)
14149  return leading_comments_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14150}
14151 void SourceCodeInfo_Location::set_leading_comments(const ::std::string& value) {
14152  set_has_leading_comments();
14153  leading_comments_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
14154  // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.leading_comments)
14155}
14156 void SourceCodeInfo_Location::set_leading_comments(const char* value) {
14157  set_has_leading_comments();
14158  leading_comments_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
14159  // @@protoc_insertion_point(field_set_char:google.protobuf.SourceCodeInfo.Location.leading_comments)
14160}
14161 void SourceCodeInfo_Location::set_leading_comments(const char* value, size_t size) {
14162  set_has_leading_comments();
14163  leading_comments_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
14164      ::std::string(reinterpret_cast<const char*>(value), size));
14165  // @@protoc_insertion_point(field_set_pointer:google.protobuf.SourceCodeInfo.Location.leading_comments)
14166}
14167 ::std::string* SourceCodeInfo_Location::mutable_leading_comments() {
14168  set_has_leading_comments();
14169  // @@protoc_insertion_point(field_mutable:google.protobuf.SourceCodeInfo.Location.leading_comments)
14170  return leading_comments_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14171}
14172 ::std::string* SourceCodeInfo_Location::release_leading_comments() {
14173  // @@protoc_insertion_point(field_release:google.protobuf.SourceCodeInfo.Location.leading_comments)
14174  clear_has_leading_comments();
14175  return leading_comments_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14176}
14177 void SourceCodeInfo_Location::set_allocated_leading_comments(::std::string* leading_comments) {
14178  if (leading_comments != NULL) {
14179    set_has_leading_comments();
14180  } else {
14181    clear_has_leading_comments();
14182  }
14183  leading_comments_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), leading_comments);
14184  // @@protoc_insertion_point(field_set_allocated:google.protobuf.SourceCodeInfo.Location.leading_comments)
14185}
14186
14187// optional string trailing_comments = 4;
14188bool SourceCodeInfo_Location::has_trailing_comments() const {
14189  return (_has_bits_[0] & 0x00000008u) != 0;
14190}
14191void SourceCodeInfo_Location::set_has_trailing_comments() {
14192  _has_bits_[0] |= 0x00000008u;
14193}
14194void SourceCodeInfo_Location::clear_has_trailing_comments() {
14195  _has_bits_[0] &= ~0x00000008u;
14196}
14197void SourceCodeInfo_Location::clear_trailing_comments() {
14198  trailing_comments_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14199  clear_has_trailing_comments();
14200}
14201 const ::std::string& SourceCodeInfo_Location::trailing_comments() const {
14202  // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.Location.trailing_comments)
14203  return trailing_comments_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14204}
14205 void SourceCodeInfo_Location::set_trailing_comments(const ::std::string& value) {
14206  set_has_trailing_comments();
14207  trailing_comments_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
14208  // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.trailing_comments)
14209}
14210 void SourceCodeInfo_Location::set_trailing_comments(const char* value) {
14211  set_has_trailing_comments();
14212  trailing_comments_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
14213  // @@protoc_insertion_point(field_set_char:google.protobuf.SourceCodeInfo.Location.trailing_comments)
14214}
14215 void SourceCodeInfo_Location::set_trailing_comments(const char* value, size_t size) {
14216  set_has_trailing_comments();
14217  trailing_comments_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
14218      ::std::string(reinterpret_cast<const char*>(value), size));
14219  // @@protoc_insertion_point(field_set_pointer:google.protobuf.SourceCodeInfo.Location.trailing_comments)
14220}
14221 ::std::string* SourceCodeInfo_Location::mutable_trailing_comments() {
14222  set_has_trailing_comments();
14223  // @@protoc_insertion_point(field_mutable:google.protobuf.SourceCodeInfo.Location.trailing_comments)
14224  return trailing_comments_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14225}
14226 ::std::string* SourceCodeInfo_Location::release_trailing_comments() {
14227  // @@protoc_insertion_point(field_release:google.protobuf.SourceCodeInfo.Location.trailing_comments)
14228  clear_has_trailing_comments();
14229  return trailing_comments_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14230}
14231 void SourceCodeInfo_Location::set_allocated_trailing_comments(::std::string* trailing_comments) {
14232  if (trailing_comments != NULL) {
14233    set_has_trailing_comments();
14234  } else {
14235    clear_has_trailing_comments();
14236  }
14237  trailing_comments_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), trailing_comments);
14238  // @@protoc_insertion_point(field_set_allocated:google.protobuf.SourceCodeInfo.Location.trailing_comments)
14239}
14240
14241// repeated string leading_detached_comments = 6;
14242int SourceCodeInfo_Location::leading_detached_comments_size() const {
14243  return leading_detached_comments_.size();
14244}
14245void SourceCodeInfo_Location::clear_leading_detached_comments() {
14246  leading_detached_comments_.Clear();
14247}
14248 const ::std::string& SourceCodeInfo_Location::leading_detached_comments(int index) const {
14249  // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14250  return leading_detached_comments_.Get(index);
14251}
14252 ::std::string* SourceCodeInfo_Location::mutable_leading_detached_comments(int index) {
14253  // @@protoc_insertion_point(field_mutable:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14254  return leading_detached_comments_.Mutable(index);
14255}
14256 void SourceCodeInfo_Location::set_leading_detached_comments(int index, const ::std::string& value) {
14257  // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14258  leading_detached_comments_.Mutable(index)->assign(value);
14259}
14260 void SourceCodeInfo_Location::set_leading_detached_comments(int index, const char* value) {
14261  leading_detached_comments_.Mutable(index)->assign(value);
14262  // @@protoc_insertion_point(field_set_char:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14263}
14264 void SourceCodeInfo_Location::set_leading_detached_comments(int index, const char* value, size_t size) {
14265  leading_detached_comments_.Mutable(index)->assign(
14266    reinterpret_cast<const char*>(value), size);
14267  // @@protoc_insertion_point(field_set_pointer:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14268}
14269 ::std::string* SourceCodeInfo_Location::add_leading_detached_comments() {
14270  // @@protoc_insertion_point(field_add_mutable:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14271  return leading_detached_comments_.Add();
14272}
14273 void SourceCodeInfo_Location::add_leading_detached_comments(const ::std::string& value) {
14274  leading_detached_comments_.Add()->assign(value);
14275  // @@protoc_insertion_point(field_add:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14276}
14277 void SourceCodeInfo_Location::add_leading_detached_comments(const char* value) {
14278  leading_detached_comments_.Add()->assign(value);
14279  // @@protoc_insertion_point(field_add_char:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14280}
14281 void SourceCodeInfo_Location::add_leading_detached_comments(const char* value, size_t size) {
14282  leading_detached_comments_.Add()->assign(reinterpret_cast<const char*>(value), size);
14283  // @@protoc_insertion_point(field_add_pointer:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14284}
14285 const ::google::protobuf::RepeatedPtrField< ::std::string>&
14286SourceCodeInfo_Location::leading_detached_comments() const {
14287  // @@protoc_insertion_point(field_list:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14288  return leading_detached_comments_;
14289}
14290 ::google::protobuf::RepeatedPtrField< ::std::string>*
14291SourceCodeInfo_Location::mutable_leading_detached_comments() {
14292  // @@protoc_insertion_point(field_mutable_list:google.protobuf.SourceCodeInfo.Location.leading_detached_comments)
14293  return &leading_detached_comments_;
14294}
14295
14296// -------------------------------------------------------------------
14297
14298// SourceCodeInfo
14299
14300// repeated .google.protobuf.SourceCodeInfo.Location location = 1;
14301int SourceCodeInfo::location_size() const {
14302  return location_.size();
14303}
14304void SourceCodeInfo::clear_location() {
14305  location_.Clear();
14306}
14307const ::google::protobuf::SourceCodeInfo_Location& SourceCodeInfo::location(int index) const {
14308  // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.location)
14309  return location_.Get(index);
14310}
14311::google::protobuf::SourceCodeInfo_Location* SourceCodeInfo::mutable_location(int index) {
14312  // @@protoc_insertion_point(field_mutable:google.protobuf.SourceCodeInfo.location)
14313  return location_.Mutable(index);
14314}
14315::google::protobuf::SourceCodeInfo_Location* SourceCodeInfo::add_location() {
14316  // @@protoc_insertion_point(field_add:google.protobuf.SourceCodeInfo.location)
14317  return location_.Add();
14318}
14319::google::protobuf::RepeatedPtrField< ::google::protobuf::SourceCodeInfo_Location >*
14320SourceCodeInfo::mutable_location() {
14321  // @@protoc_insertion_point(field_mutable_list:google.protobuf.SourceCodeInfo.location)
14322  return &location_;
14323}
14324const ::google::protobuf::RepeatedPtrField< ::google::protobuf::SourceCodeInfo_Location >&
14325SourceCodeInfo::location() const {
14326  // @@protoc_insertion_point(field_list:google.protobuf.SourceCodeInfo.location)
14327  return location_;
14328}
14329
14330#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
14331
14332// ===================================================================
14333
14334#if !defined(_MSC_VER) || _MSC_VER >= 1900
14335const int GeneratedCodeInfo_Annotation::kPathFieldNumber;
14336const int GeneratedCodeInfo_Annotation::kSourceFileFieldNumber;
14337const int GeneratedCodeInfo_Annotation::kBeginFieldNumber;
14338const int GeneratedCodeInfo_Annotation::kEndFieldNumber;
14339#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
14340
14341GeneratedCodeInfo_Annotation::GeneratedCodeInfo_Annotation()
14342  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
14343  SharedCtor();
14344  // @@protoc_insertion_point(constructor:google.protobuf.GeneratedCodeInfo.Annotation)
14345}
14346
14347void GeneratedCodeInfo_Annotation::InitAsDefaultInstance() {
14348}
14349
14350GeneratedCodeInfo_Annotation::GeneratedCodeInfo_Annotation(const GeneratedCodeInfo_Annotation& from)
14351  : ::google::protobuf::Message(),
14352    _internal_metadata_(NULL) {
14353  SharedCtor();
14354  MergeFrom(from);
14355  // @@protoc_insertion_point(copy_constructor:google.protobuf.GeneratedCodeInfo.Annotation)
14356}
14357
14358void GeneratedCodeInfo_Annotation::SharedCtor() {
14359  ::google::protobuf::internal::GetEmptyString();
14360  _cached_size_ = 0;
14361  source_file_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14362  begin_ = 0;
14363  end_ = 0;
14364  ::memset(_has_bits_, 0, sizeof(_has_bits_));
14365}
14366
14367GeneratedCodeInfo_Annotation::~GeneratedCodeInfo_Annotation() {
14368  // @@protoc_insertion_point(destructor:google.protobuf.GeneratedCodeInfo.Annotation)
14369  SharedDtor();
14370}
14371
14372void GeneratedCodeInfo_Annotation::SharedDtor() {
14373  source_file_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14374  if (this != default_instance_) {
14375  }
14376}
14377
14378void GeneratedCodeInfo_Annotation::SetCachedSize(int size) const {
14379  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
14380  _cached_size_ = size;
14381  GOOGLE_SAFE_CONCURRENT_WRITES_END();
14382}
14383const ::google::protobuf::Descriptor* GeneratedCodeInfo_Annotation::descriptor() {
14384  protobuf_AssignDescriptorsOnce();
14385  return GeneratedCodeInfo_Annotation_descriptor_;
14386}
14387
14388const GeneratedCodeInfo_Annotation& GeneratedCodeInfo_Annotation::default_instance() {
14389  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
14390  return *default_instance_;
14391}
14392
14393GeneratedCodeInfo_Annotation* GeneratedCodeInfo_Annotation::default_instance_ = NULL;
14394
14395GeneratedCodeInfo_Annotation* GeneratedCodeInfo_Annotation::New(::google::protobuf::Arena* arena) const {
14396  GeneratedCodeInfo_Annotation* n = new GeneratedCodeInfo_Annotation;
14397  if (arena != NULL) {
14398    arena->Own(n);
14399  }
14400  return n;
14401}
14402
14403void GeneratedCodeInfo_Annotation::Clear() {
14404// @@protoc_insertion_point(message_clear_start:google.protobuf.GeneratedCodeInfo.Annotation)
14405#if defined(__clang__)
14406#define ZR_HELPER_(f) \
14407  _Pragma("clang diagnostic push") \
14408  _Pragma("clang diagnostic ignored \"-Winvalid-offsetof\"") \
14409  __builtin_offsetof(GeneratedCodeInfo_Annotation, f) \
14410  _Pragma("clang diagnostic pop")
14411#else
14412#define ZR_HELPER_(f) reinterpret_cast<char*>(\
14413  &reinterpret_cast<GeneratedCodeInfo_Annotation*>(16)->f)
14414#endif
14415
14416#define ZR_(first, last) do {\
14417  ::memset(&(first), 0,\
14418           ZR_HELPER_(last) - ZR_HELPER_(first) + sizeof(last));\
14419} while (0)
14420
14421  if (_has_bits_[0 / 32] & 14u) {
14422    ZR_(begin_, end_);
14423    if (has_source_file()) {
14424      source_file_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
14425    }
14426  }
14427
14428#undef ZR_HELPER_
14429#undef ZR_
14430
14431  path_.Clear();
14432  ::memset(_has_bits_, 0, sizeof(_has_bits_));
14433  if (_internal_metadata_.have_unknown_fields()) {
14434    mutable_unknown_fields()->Clear();
14435  }
14436}
14437
14438bool GeneratedCodeInfo_Annotation::MergePartialFromCodedStream(
14439    ::google::protobuf::io::CodedInputStream* input) {
14440#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
14441  ::google::protobuf::uint32 tag;
14442  // @@protoc_insertion_point(parse_start:google.protobuf.GeneratedCodeInfo.Annotation)
14443  for (;;) {
14444    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
14445    tag = p.first;
14446    if (!p.second) goto handle_unusual;
14447    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
14448      // repeated int32 path = 1 [packed = true];
14449      case 1: {
14450        if (tag == 10) {
14451          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitive<
14452                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
14453                 input, this->mutable_path())));
14454        } else if (tag == 8) {
14455          DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitiveNoInline<
14456                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
14457                 1, 10, input, this->mutable_path())));
14458        } else {
14459          goto handle_unusual;
14460        }
14461        if (input->ExpectTag(18)) goto parse_source_file;
14462        break;
14463      }
14464
14465      // optional string source_file = 2;
14466      case 2: {
14467        if (tag == 18) {
14468         parse_source_file:
14469          DO_(::google::protobuf::internal::WireFormatLite::ReadString(
14470                input, this->mutable_source_file()));
14471          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
14472            this->source_file().data(), this->source_file().length(),
14473            ::google::protobuf::internal::WireFormat::PARSE,
14474            "google.protobuf.GeneratedCodeInfo.Annotation.source_file");
14475        } else {
14476          goto handle_unusual;
14477        }
14478        if (input->ExpectTag(24)) goto parse_begin;
14479        break;
14480      }
14481
14482      // optional int32 begin = 3;
14483      case 3: {
14484        if (tag == 24) {
14485         parse_begin:
14486          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
14487                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
14488                 input, &begin_)));
14489          set_has_begin();
14490        } else {
14491          goto handle_unusual;
14492        }
14493        if (input->ExpectTag(32)) goto parse_end;
14494        break;
14495      }
14496
14497      // optional int32 end = 4;
14498      case 4: {
14499        if (tag == 32) {
14500         parse_end:
14501          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
14502                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
14503                 input, &end_)));
14504          set_has_end();
14505        } else {
14506          goto handle_unusual;
14507        }
14508        if (input->ExpectAtEnd()) goto success;
14509        break;
14510      }
14511
14512      default: {
14513      handle_unusual:
14514        if (tag == 0 ||
14515            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
14516            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
14517          goto success;
14518        }
14519        DO_(::google::protobuf::internal::WireFormat::SkipField(
14520              input, tag, mutable_unknown_fields()));
14521        break;
14522      }
14523    }
14524  }
14525success:
14526  // @@protoc_insertion_point(parse_success:google.protobuf.GeneratedCodeInfo.Annotation)
14527  return true;
14528failure:
14529  // @@protoc_insertion_point(parse_failure:google.protobuf.GeneratedCodeInfo.Annotation)
14530  return false;
14531#undef DO_
14532}
14533
14534void GeneratedCodeInfo_Annotation::SerializeWithCachedSizes(
14535    ::google::protobuf::io::CodedOutputStream* output) const {
14536  // @@protoc_insertion_point(serialize_start:google.protobuf.GeneratedCodeInfo.Annotation)
14537  // repeated int32 path = 1 [packed = true];
14538  if (this->path_size() > 0) {
14539    ::google::protobuf::internal::WireFormatLite::WriteTag(1, ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED, output);
14540    output->WriteVarint32(_path_cached_byte_size_);
14541  }
14542  for (int i = 0; i < this->path_size(); i++) {
14543    ::google::protobuf::internal::WireFormatLite::WriteInt32NoTag(
14544      this->path(i), output);
14545  }
14546
14547  // optional string source_file = 2;
14548  if (has_source_file()) {
14549    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
14550      this->source_file().data(), this->source_file().length(),
14551      ::google::protobuf::internal::WireFormat::SERIALIZE,
14552      "google.protobuf.GeneratedCodeInfo.Annotation.source_file");
14553    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
14554      2, this->source_file(), output);
14555  }
14556
14557  // optional int32 begin = 3;
14558  if (has_begin()) {
14559    ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->begin(), output);
14560  }
14561
14562  // optional int32 end = 4;
14563  if (has_end()) {
14564    ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->end(), output);
14565  }
14566
14567  if (_internal_metadata_.have_unknown_fields()) {
14568    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
14569        unknown_fields(), output);
14570  }
14571  // @@protoc_insertion_point(serialize_end:google.protobuf.GeneratedCodeInfo.Annotation)
14572}
14573
14574::google::protobuf::uint8* GeneratedCodeInfo_Annotation::SerializeWithCachedSizesToArray(
14575    ::google::protobuf::uint8* target) const {
14576  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.GeneratedCodeInfo.Annotation)
14577  // repeated int32 path = 1 [packed = true];
14578  if (this->path_size() > 0) {
14579    target = ::google::protobuf::internal::WireFormatLite::WriteTagToArray(
14580      1,
14581      ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED,
14582      target);
14583    target = ::google::protobuf::io::CodedOutputStream::WriteVarint32ToArray(
14584      _path_cached_byte_size_, target);
14585  }
14586  for (int i = 0; i < this->path_size(); i++) {
14587    target = ::google::protobuf::internal::WireFormatLite::
14588      WriteInt32NoTagToArray(this->path(i), target);
14589  }
14590
14591  // optional string source_file = 2;
14592  if (has_source_file()) {
14593    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
14594      this->source_file().data(), this->source_file().length(),
14595      ::google::protobuf::internal::WireFormat::SERIALIZE,
14596      "google.protobuf.GeneratedCodeInfo.Annotation.source_file");
14597    target =
14598      ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
14599        2, this->source_file(), target);
14600  }
14601
14602  // optional int32 begin = 3;
14603  if (has_begin()) {
14604    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->begin(), target);
14605  }
14606
14607  // optional int32 end = 4;
14608  if (has_end()) {
14609    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->end(), target);
14610  }
14611
14612  if (_internal_metadata_.have_unknown_fields()) {
14613    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
14614        unknown_fields(), target);
14615  }
14616  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.GeneratedCodeInfo.Annotation)
14617  return target;
14618}
14619
14620int GeneratedCodeInfo_Annotation::ByteSize() const {
14621// @@protoc_insertion_point(message_byte_size_start:google.protobuf.GeneratedCodeInfo.Annotation)
14622  int total_size = 0;
14623
14624  if (_has_bits_[1 / 32] & 14u) {
14625    // optional string source_file = 2;
14626    if (has_source_file()) {
14627      total_size += 1 +
14628        ::google::protobuf::internal::WireFormatLite::StringSize(
14629          this->source_file());
14630    }
14631
14632    // optional int32 begin = 3;
14633    if (has_begin()) {
14634      total_size += 1 +
14635        ::google::protobuf::internal::WireFormatLite::Int32Size(
14636          this->begin());
14637    }
14638
14639    // optional int32 end = 4;
14640    if (has_end()) {
14641      total_size += 1 +
14642        ::google::protobuf::internal::WireFormatLite::Int32Size(
14643          this->end());
14644    }
14645
14646  }
14647  // repeated int32 path = 1 [packed = true];
14648  {
14649    int data_size = 0;
14650    for (int i = 0; i < this->path_size(); i++) {
14651      data_size += ::google::protobuf::internal::WireFormatLite::
14652        Int32Size(this->path(i));
14653    }
14654    if (data_size > 0) {
14655      total_size += 1 +
14656        ::google::protobuf::internal::WireFormatLite::Int32Size(data_size);
14657    }
14658    GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
14659    _path_cached_byte_size_ = data_size;
14660    GOOGLE_SAFE_CONCURRENT_WRITES_END();
14661    total_size += data_size;
14662  }
14663
14664  if (_internal_metadata_.have_unknown_fields()) {
14665    total_size +=
14666      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
14667        unknown_fields());
14668  }
14669  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
14670  _cached_size_ = total_size;
14671  GOOGLE_SAFE_CONCURRENT_WRITES_END();
14672  return total_size;
14673}
14674
14675void GeneratedCodeInfo_Annotation::MergeFrom(const ::google::protobuf::Message& from) {
14676// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.GeneratedCodeInfo.Annotation)
14677  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
14678  const GeneratedCodeInfo_Annotation* source =
14679      ::google::protobuf::internal::DynamicCastToGenerated<const GeneratedCodeInfo_Annotation>(
14680          &from);
14681  if (source == NULL) {
14682  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.GeneratedCodeInfo.Annotation)
14683    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
14684  } else {
14685  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.GeneratedCodeInfo.Annotation)
14686    MergeFrom(*source);
14687  }
14688}
14689
14690void GeneratedCodeInfo_Annotation::MergeFrom(const GeneratedCodeInfo_Annotation& from) {
14691// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.GeneratedCodeInfo.Annotation)
14692  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
14693  path_.MergeFrom(from.path_);
14694  if (from._has_bits_[1 / 32] & (0xffu << (1 % 32))) {
14695    if (from.has_source_file()) {
14696      set_has_source_file();
14697      source_file_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.source_file_);
14698    }
14699    if (from.has_begin()) {
14700      set_begin(from.begin());
14701    }
14702    if (from.has_end()) {
14703      set_end(from.end());
14704    }
14705  }
14706  if (from._internal_metadata_.have_unknown_fields()) {
14707    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
14708  }
14709}
14710
14711void GeneratedCodeInfo_Annotation::CopyFrom(const ::google::protobuf::Message& from) {
14712// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.GeneratedCodeInfo.Annotation)
14713  if (&from == this) return;
14714  Clear();
14715  MergeFrom(from);
14716}
14717
14718void GeneratedCodeInfo_Annotation::CopyFrom(const GeneratedCodeInfo_Annotation& from) {
14719// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.GeneratedCodeInfo.Annotation)
14720  if (&from == this) return;
14721  Clear();
14722  MergeFrom(from);
14723}
14724
14725bool GeneratedCodeInfo_Annotation::IsInitialized() const {
14726
14727  return true;
14728}
14729
14730void GeneratedCodeInfo_Annotation::Swap(GeneratedCodeInfo_Annotation* other) {
14731  if (other == this) return;
14732  InternalSwap(other);
14733}
14734void GeneratedCodeInfo_Annotation::InternalSwap(GeneratedCodeInfo_Annotation* other) {
14735  path_.UnsafeArenaSwap(&other->path_);
14736  source_file_.Swap(&other->source_file_);
14737  std::swap(begin_, other->begin_);
14738  std::swap(end_, other->end_);
14739  std::swap(_has_bits_[0], other->_has_bits_[0]);
14740  _internal_metadata_.Swap(&other->_internal_metadata_);
14741  std::swap(_cached_size_, other->_cached_size_);
14742}
14743
14744::google::protobuf::Metadata GeneratedCodeInfo_Annotation::GetMetadata() const {
14745  protobuf_AssignDescriptorsOnce();
14746  ::google::protobuf::Metadata metadata;
14747  metadata.descriptor = GeneratedCodeInfo_Annotation_descriptor_;
14748  metadata.reflection = GeneratedCodeInfo_Annotation_reflection_;
14749  return metadata;
14750}
14751
14752
14753// -------------------------------------------------------------------
14754
14755#if !defined(_MSC_VER) || _MSC_VER >= 1900
14756const int GeneratedCodeInfo::kAnnotationFieldNumber;
14757#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
14758
14759GeneratedCodeInfo::GeneratedCodeInfo()
14760  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
14761  SharedCtor();
14762  // @@protoc_insertion_point(constructor:google.protobuf.GeneratedCodeInfo)
14763}
14764
14765void GeneratedCodeInfo::InitAsDefaultInstance() {
14766}
14767
14768GeneratedCodeInfo::GeneratedCodeInfo(const GeneratedCodeInfo& from)
14769  : ::google::protobuf::Message(),
14770    _internal_metadata_(NULL) {
14771  SharedCtor();
14772  MergeFrom(from);
14773  // @@protoc_insertion_point(copy_constructor:google.protobuf.GeneratedCodeInfo)
14774}
14775
14776void GeneratedCodeInfo::SharedCtor() {
14777  _cached_size_ = 0;
14778  ::memset(_has_bits_, 0, sizeof(_has_bits_));
14779}
14780
14781GeneratedCodeInfo::~GeneratedCodeInfo() {
14782  // @@protoc_insertion_point(destructor:google.protobuf.GeneratedCodeInfo)
14783  SharedDtor();
14784}
14785
14786void GeneratedCodeInfo::SharedDtor() {
14787  if (this != default_instance_) {
14788  }
14789}
14790
14791void GeneratedCodeInfo::SetCachedSize(int size) const {
14792  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
14793  _cached_size_ = size;
14794  GOOGLE_SAFE_CONCURRENT_WRITES_END();
14795}
14796const ::google::protobuf::Descriptor* GeneratedCodeInfo::descriptor() {
14797  protobuf_AssignDescriptorsOnce();
14798  return GeneratedCodeInfo_descriptor_;
14799}
14800
14801const GeneratedCodeInfo& GeneratedCodeInfo::default_instance() {
14802  if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto();
14803  return *default_instance_;
14804}
14805
14806GeneratedCodeInfo* GeneratedCodeInfo::default_instance_ = NULL;
14807
14808GeneratedCodeInfo* GeneratedCodeInfo::New(::google::protobuf::Arena* arena) const {
14809  GeneratedCodeInfo* n = new GeneratedCodeInfo;
14810  if (arena != NULL) {
14811    arena->Own(n);
14812  }
14813  return n;
14814}
14815
14816void GeneratedCodeInfo::Clear() {
14817// @@protoc_insertion_point(message_clear_start:google.protobuf.GeneratedCodeInfo)
14818  annotation_.Clear();
14819  ::memset(_has_bits_, 0, sizeof(_has_bits_));
14820  if (_internal_metadata_.have_unknown_fields()) {
14821    mutable_unknown_fields()->Clear();
14822  }
14823}
14824
14825bool GeneratedCodeInfo::MergePartialFromCodedStream(
14826    ::google::protobuf::io::CodedInputStream* input) {
14827#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
14828  ::google::protobuf::uint32 tag;
14829  // @@protoc_insertion_point(parse_start:google.protobuf.GeneratedCodeInfo)
14830  for (;;) {
14831    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
14832    tag = p.first;
14833    if (!p.second) goto handle_unusual;
14834    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
14835      // repeated .google.protobuf.GeneratedCodeInfo.Annotation annotation = 1;
14836      case 1: {
14837        if (tag == 10) {
14838          DO_(input->IncrementRecursionDepth());
14839         parse_loop_annotation:
14840          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtualNoRecursionDepth(
14841                input, add_annotation()));
14842        } else {
14843          goto handle_unusual;
14844        }
14845        if (input->ExpectTag(10)) goto parse_loop_annotation;
14846        input->UnsafeDecrementRecursionDepth();
14847        if (input->ExpectAtEnd()) goto success;
14848        break;
14849      }
14850
14851      default: {
14852      handle_unusual:
14853        if (tag == 0 ||
14854            ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
14855            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
14856          goto success;
14857        }
14858        DO_(::google::protobuf::internal::WireFormat::SkipField(
14859              input, tag, mutable_unknown_fields()));
14860        break;
14861      }
14862    }
14863  }
14864success:
14865  // @@protoc_insertion_point(parse_success:google.protobuf.GeneratedCodeInfo)
14866  return true;
14867failure:
14868  // @@protoc_insertion_point(parse_failure:google.protobuf.GeneratedCodeInfo)
14869  return false;
14870#undef DO_
14871}
14872
14873void GeneratedCodeInfo::SerializeWithCachedSizes(
14874    ::google::protobuf::io::CodedOutputStream* output) const {
14875  // @@protoc_insertion_point(serialize_start:google.protobuf.GeneratedCodeInfo)
14876  // repeated .google.protobuf.GeneratedCodeInfo.Annotation annotation = 1;
14877  for (unsigned int i = 0, n = this->annotation_size(); i < n; i++) {
14878    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
14879      1, this->annotation(i), output);
14880  }
14881
14882  if (_internal_metadata_.have_unknown_fields()) {
14883    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
14884        unknown_fields(), output);
14885  }
14886  // @@protoc_insertion_point(serialize_end:google.protobuf.GeneratedCodeInfo)
14887}
14888
14889::google::protobuf::uint8* GeneratedCodeInfo::SerializeWithCachedSizesToArray(
14890    ::google::protobuf::uint8* target) const {
14891  // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.GeneratedCodeInfo)
14892  // repeated .google.protobuf.GeneratedCodeInfo.Annotation annotation = 1;
14893  for (unsigned int i = 0, n = this->annotation_size(); i < n; i++) {
14894    target = ::google::protobuf::internal::WireFormatLite::
14895      WriteMessageNoVirtualToArray(
14896        1, this->annotation(i), target);
14897  }
14898
14899  if (_internal_metadata_.have_unknown_fields()) {
14900    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
14901        unknown_fields(), target);
14902  }
14903  // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.GeneratedCodeInfo)
14904  return target;
14905}
14906
14907int GeneratedCodeInfo::ByteSize() const {
14908// @@protoc_insertion_point(message_byte_size_start:google.protobuf.GeneratedCodeInfo)
14909  int total_size = 0;
14910
14911  // repeated .google.protobuf.GeneratedCodeInfo.Annotation annotation = 1;
14912  total_size += 1 * this->annotation_size();
14913  for (int i = 0; i < this->annotation_size(); i++) {
14914    total_size +=
14915      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
14916        this->annotation(i));
14917  }
14918
14919  if (_internal_metadata_.have_unknown_fields()) {
14920    total_size +=
14921      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
14922        unknown_fields());
14923  }
14924  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
14925  _cached_size_ = total_size;
14926  GOOGLE_SAFE_CONCURRENT_WRITES_END();
14927  return total_size;
14928}
14929
14930void GeneratedCodeInfo::MergeFrom(const ::google::protobuf::Message& from) {
14931// @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.GeneratedCodeInfo)
14932  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
14933  const GeneratedCodeInfo* source =
14934      ::google::protobuf::internal::DynamicCastToGenerated<const GeneratedCodeInfo>(
14935          &from);
14936  if (source == NULL) {
14937  // @@protoc_insertion_point(generalized_merge_from_cast_fail:google.protobuf.GeneratedCodeInfo)
14938    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
14939  } else {
14940  // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.GeneratedCodeInfo)
14941    MergeFrom(*source);
14942  }
14943}
14944
14945void GeneratedCodeInfo::MergeFrom(const GeneratedCodeInfo& from) {
14946// @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.GeneratedCodeInfo)
14947  if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
14948  annotation_.MergeFrom(from.annotation_);
14949  if (from._internal_metadata_.have_unknown_fields()) {
14950    mutable_unknown_fields()->MergeFrom(from.unknown_fields());
14951  }
14952}
14953
14954void GeneratedCodeInfo::CopyFrom(const ::google::protobuf::Message& from) {
14955// @@protoc_insertion_point(generalized_copy_from_start:google.protobuf.GeneratedCodeInfo)
14956  if (&from == this) return;
14957  Clear();
14958  MergeFrom(from);
14959}
14960
14961void GeneratedCodeInfo::CopyFrom(const GeneratedCodeInfo& from) {
14962// @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.GeneratedCodeInfo)
14963  if (&from == this) return;
14964  Clear();
14965  MergeFrom(from);
14966}
14967
14968bool GeneratedCodeInfo::IsInitialized() const {
14969
14970  return true;
14971}
14972
14973void GeneratedCodeInfo::Swap(GeneratedCodeInfo* other) {
14974  if (other == this) return;
14975  InternalSwap(other);
14976}
14977void GeneratedCodeInfo::InternalSwap(GeneratedCodeInfo* other) {
14978  annotation_.UnsafeArenaSwap(&other->annotation_);
14979  std::swap(_has_bits_[0], other->_has_bits_[0]);
14980  _internal_metadata_.Swap(&other->_internal_metadata_);
14981  std::swap(_cached_size_, other->_cached_size_);
14982}
14983
14984::google::protobuf::Metadata GeneratedCodeInfo::GetMetadata() const {
14985  protobuf_AssignDescriptorsOnce();
14986  ::google::protobuf::Metadata metadata;
14987  metadata.descriptor = GeneratedCodeInfo_descriptor_;
14988  metadata.reflection = GeneratedCodeInfo_reflection_;
14989  return metadata;
14990}
14991
14992#if PROTOBUF_INLINE_NOT_IN_HEADERS
14993// GeneratedCodeInfo_Annotation
14994
14995// repeated int32 path = 1 [packed = true];
14996int GeneratedCodeInfo_Annotation::path_size() const {
14997  return path_.size();
14998}
14999void GeneratedCodeInfo_Annotation::clear_path() {
15000  path_.Clear();
15001}
15002 ::google::protobuf::int32 GeneratedCodeInfo_Annotation::path(int index) const {
15003  // @@protoc_insertion_point(field_get:google.protobuf.GeneratedCodeInfo.Annotation.path)
15004  return path_.Get(index);
15005}
15006 void GeneratedCodeInfo_Annotation::set_path(int index, ::google::protobuf::int32 value) {
15007  path_.Set(index, value);
15008  // @@protoc_insertion_point(field_set:google.protobuf.GeneratedCodeInfo.Annotation.path)
15009}
15010 void GeneratedCodeInfo_Annotation::add_path(::google::protobuf::int32 value) {
15011  path_.Add(value);
15012  // @@protoc_insertion_point(field_add:google.protobuf.GeneratedCodeInfo.Annotation.path)
15013}
15014 const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
15015GeneratedCodeInfo_Annotation::path() const {
15016  // @@protoc_insertion_point(field_list:google.protobuf.GeneratedCodeInfo.Annotation.path)
15017  return path_;
15018}
15019 ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
15020GeneratedCodeInfo_Annotation::mutable_path() {
15021  // @@protoc_insertion_point(field_mutable_list:google.protobuf.GeneratedCodeInfo.Annotation.path)
15022  return &path_;
15023}
15024
15025// optional string source_file = 2;
15026bool GeneratedCodeInfo_Annotation::has_source_file() const {
15027  return (_has_bits_[0] & 0x00000002u) != 0;
15028}
15029void GeneratedCodeInfo_Annotation::set_has_source_file() {
15030  _has_bits_[0] |= 0x00000002u;
15031}
15032void GeneratedCodeInfo_Annotation::clear_has_source_file() {
15033  _has_bits_[0] &= ~0x00000002u;
15034}
15035void GeneratedCodeInfo_Annotation::clear_source_file() {
15036  source_file_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
15037  clear_has_source_file();
15038}
15039 const ::std::string& GeneratedCodeInfo_Annotation::source_file() const {
15040  // @@protoc_insertion_point(field_get:google.protobuf.GeneratedCodeInfo.Annotation.source_file)
15041  return source_file_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
15042}
15043 void GeneratedCodeInfo_Annotation::set_source_file(const ::std::string& value) {
15044  set_has_source_file();
15045  source_file_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
15046  // @@protoc_insertion_point(field_set:google.protobuf.GeneratedCodeInfo.Annotation.source_file)
15047}
15048 void GeneratedCodeInfo_Annotation::set_source_file(const char* value) {
15049  set_has_source_file();
15050  source_file_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
15051  // @@protoc_insertion_point(field_set_char:google.protobuf.GeneratedCodeInfo.Annotation.source_file)
15052}
15053 void GeneratedCodeInfo_Annotation::set_source_file(const char* value, size_t size) {
15054  set_has_source_file();
15055  source_file_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
15056      ::std::string(reinterpret_cast<const char*>(value), size));
15057  // @@protoc_insertion_point(field_set_pointer:google.protobuf.GeneratedCodeInfo.Annotation.source_file)
15058}
15059 ::std::string* GeneratedCodeInfo_Annotation::mutable_source_file() {
15060  set_has_source_file();
15061  // @@protoc_insertion_point(field_mutable:google.protobuf.GeneratedCodeInfo.Annotation.source_file)
15062  return source_file_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
15063}
15064 ::std::string* GeneratedCodeInfo_Annotation::release_source_file() {
15065  // @@protoc_insertion_point(field_release:google.protobuf.GeneratedCodeInfo.Annotation.source_file)
15066  clear_has_source_file();
15067  return source_file_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
15068}
15069 void GeneratedCodeInfo_Annotation::set_allocated_source_file(::std::string* source_file) {
15070  if (source_file != NULL) {
15071    set_has_source_file();
15072  } else {
15073    clear_has_source_file();
15074  }
15075  source_file_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), source_file);
15076  // @@protoc_insertion_point(field_set_allocated:google.protobuf.GeneratedCodeInfo.Annotation.source_file)
15077}
15078
15079// optional int32 begin = 3;
15080bool GeneratedCodeInfo_Annotation::has_begin() const {
15081  return (_has_bits_[0] & 0x00000004u) != 0;
15082}
15083void GeneratedCodeInfo_Annotation::set_has_begin() {
15084  _has_bits_[0] |= 0x00000004u;
15085}
15086void GeneratedCodeInfo_Annotation::clear_has_begin() {
15087  _has_bits_[0] &= ~0x00000004u;
15088}
15089void GeneratedCodeInfo_Annotation::clear_begin() {
15090  begin_ = 0;
15091  clear_has_begin();
15092}
15093 ::google::protobuf::int32 GeneratedCodeInfo_Annotation::begin() const {
15094  // @@protoc_insertion_point(field_get:google.protobuf.GeneratedCodeInfo.Annotation.begin)
15095  return begin_;
15096}
15097 void GeneratedCodeInfo_Annotation::set_begin(::google::protobuf::int32 value) {
15098  set_has_begin();
15099  begin_ = value;
15100  // @@protoc_insertion_point(field_set:google.protobuf.GeneratedCodeInfo.Annotation.begin)
15101}
15102
15103// optional int32 end = 4;
15104bool GeneratedCodeInfo_Annotation::has_end() const {
15105  return (_has_bits_[0] & 0x00000008u) != 0;
15106}
15107void GeneratedCodeInfo_Annotation::set_has_end() {
15108  _has_bits_[0] |= 0x00000008u;
15109}
15110void GeneratedCodeInfo_Annotation::clear_has_end() {
15111  _has_bits_[0] &= ~0x00000008u;
15112}
15113void GeneratedCodeInfo_Annotation::clear_end() {
15114  end_ = 0;
15115  clear_has_end();
15116}
15117 ::google::protobuf::int32 GeneratedCodeInfo_Annotation::end() const {
15118  // @@protoc_insertion_point(field_get:google.protobuf.GeneratedCodeInfo.Annotation.end)
15119  return end_;
15120}
15121 void GeneratedCodeInfo_Annotation::set_end(::google::protobuf::int32 value) {
15122  set_has_end();
15123  end_ = value;
15124  // @@protoc_insertion_point(field_set:google.protobuf.GeneratedCodeInfo.Annotation.end)
15125}
15126
15127// -------------------------------------------------------------------
15128
15129// GeneratedCodeInfo
15130
15131// repeated .google.protobuf.GeneratedCodeInfo.Annotation annotation = 1;
15132int GeneratedCodeInfo::annotation_size() const {
15133  return annotation_.size();
15134}
15135void GeneratedCodeInfo::clear_annotation() {
15136  annotation_.Clear();
15137}
15138const ::google::protobuf::GeneratedCodeInfo_Annotation& GeneratedCodeInfo::annotation(int index) const {
15139  // @@protoc_insertion_point(field_get:google.protobuf.GeneratedCodeInfo.annotation)
15140  return annotation_.Get(index);
15141}
15142::google::protobuf::GeneratedCodeInfo_Annotation* GeneratedCodeInfo::mutable_annotation(int index) {
15143  // @@protoc_insertion_point(field_mutable:google.protobuf.GeneratedCodeInfo.annotation)
15144  return annotation_.Mutable(index);
15145}
15146::google::protobuf::GeneratedCodeInfo_Annotation* GeneratedCodeInfo::add_annotation() {
15147  // @@protoc_insertion_point(field_add:google.protobuf.GeneratedCodeInfo.annotation)
15148  return annotation_.Add();
15149}
15150::google::protobuf::RepeatedPtrField< ::google::protobuf::GeneratedCodeInfo_Annotation >*
15151GeneratedCodeInfo::mutable_annotation() {
15152  // @@protoc_insertion_point(field_mutable_list:google.protobuf.GeneratedCodeInfo.annotation)
15153  return &annotation_;
15154}
15155const ::google::protobuf::RepeatedPtrField< ::google::protobuf::GeneratedCodeInfo_Annotation >&
15156GeneratedCodeInfo::annotation() const {
15157  // @@protoc_insertion_point(field_list:google.protobuf.GeneratedCodeInfo.annotation)
15158  return annotation_;
15159}
15160
15161#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS
15162
15163// @@protoc_insertion_point(namespace_scope)
15164
15165}  // namespace protobuf
15166}  // namespace google
15167
15168// @@protoc_insertion_point(global_scope)
15169