1#![allow(unknown_lints)]
6#![allow(clippy::all)]
7
8#![cfg_attr(rustfmt, rustfmt_skip)]
9
10#![allow(box_pointers)]
11#![allow(dead_code)]
12#![allow(missing_docs)]
13#![allow(non_camel_case_types)]
14#![allow(non_snake_case)]
15#![allow(non_upper_case_globals)]
16#![allow(trivial_casts)]
17#![allow(unsafe_code)]
18#![allow(unused_imports)]
19#![allow(unused_results)]
20use protobuf::Message as Message_imported_for_functions;
23use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
24
25#[derive(PartialEq,Clone,Default)]
26#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
27pub struct FileDescriptorSet {
28 file: ::protobuf::RepeatedField<FileDescriptorProto>,
30 #[cfg_attr(feature = "with-serde", serde(skip))]
32 pub unknown_fields: ::protobuf::UnknownFields,
33 #[cfg_attr(feature = "with-serde", serde(skip))]
34 pub cached_size: ::protobuf::CachedSize,
35}
36
37impl<'a> ::std::default::Default for &'a FileDescriptorSet {
38 fn default() -> &'a FileDescriptorSet {
39 <FileDescriptorSet as ::protobuf::Message>::default_instance()
40 }
41}
42
43impl FileDescriptorSet {
44 pub fn new() -> FileDescriptorSet {
45 ::std::default::Default::default()
46 }
47
48 pub fn get_file(&self) -> &[FileDescriptorProto] {
52 &self.file
53 }
54 pub fn clear_file(&mut self) {
55 self.file.clear();
56 }
57
58 pub fn set_file(&mut self, v: ::protobuf::RepeatedField<FileDescriptorProto>) {
60 self.file = v;
61 }
62
63 pub fn mut_file(&mut self) -> &mut ::protobuf::RepeatedField<FileDescriptorProto> {
65 &mut self.file
66 }
67
68 pub fn take_file(&mut self) -> ::protobuf::RepeatedField<FileDescriptorProto> {
70 ::std::mem::replace(&mut self.file, ::protobuf::RepeatedField::new())
71 }
72}
73
74impl ::protobuf::Message for FileDescriptorSet {
75 fn is_initialized(&self) -> bool {
76 for v in &self.file {
77 if !v.is_initialized() {
78 return false;
79 }
80 };
81 true
82 }
83
84 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
85 while !is.eof()? {
86 let (field_number, wire_type) = is.read_tag_unpack()?;
87 match field_number {
88 1 => {
89 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.file)?;
90 },
91 _ => {
92 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
93 },
94 };
95 }
96 ::std::result::Result::Ok(())
97 }
98
99 #[allow(unused_variables)]
101 fn compute_size(&self) -> u32 {
102 let mut my_size = 0;
103 for value in &self.file {
104 let len = value.compute_size();
105 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
106 };
107 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
108 self.cached_size.set(my_size);
109 my_size
110 }
111
112 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
113 for v in &self.file {
114 os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
115 os.write_raw_varint32(v.get_cached_size())?;
116 v.write_to_with_cached_sizes(os)?;
117 };
118 os.write_unknown_fields(self.get_unknown_fields())?;
119 ::std::result::Result::Ok(())
120 }
121
122 fn get_cached_size(&self) -> u32 {
123 self.cached_size.get()
124 }
125
126 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
127 &self.unknown_fields
128 }
129
130 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
131 &mut self.unknown_fields
132 }
133
134 fn as_any(&self) -> &dyn (::std::any::Any) {
135 self as &dyn (::std::any::Any)
136 }
137 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
138 self as &mut dyn (::std::any::Any)
139 }
140 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
141 self
142 }
143
144 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
145 Self::descriptor_static()
146 }
147
148 fn new() -> FileDescriptorSet {
149 FileDescriptorSet::new()
150 }
151
152 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
153 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
154 lock: ::protobuf::lazy::ONCE_INIT,
155 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
156 };
157 unsafe {
158 descriptor.get(|| {
159 let mut fields = ::std::vec::Vec::new();
160 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<FileDescriptorProto>>(
161 "file",
162 |m: &FileDescriptorSet| { &m.file },
163 |m: &mut FileDescriptorSet| { &mut m.file },
164 ));
165 ::protobuf::reflect::MessageDescriptor::new::<FileDescriptorSet>(
166 "FileDescriptorSet",
167 fields,
168 file_descriptor_proto()
169 )
170 })
171 }
172 }
173
174 fn default_instance() -> &'static FileDescriptorSet {
175 static mut instance: ::protobuf::lazy::Lazy<FileDescriptorSet> = ::protobuf::lazy::Lazy {
176 lock: ::protobuf::lazy::ONCE_INIT,
177 ptr: 0 as *const FileDescriptorSet,
178 };
179 unsafe {
180 instance.get(FileDescriptorSet::new)
181 }
182 }
183}
184
185impl ::protobuf::Clear for FileDescriptorSet {
186 fn clear(&mut self) {
187 self.file.clear();
188 self.unknown_fields.clear();
189 }
190}
191
192impl ::std::fmt::Debug for FileDescriptorSet {
193 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
194 ::protobuf::text_format::fmt(self, f)
195 }
196}
197
198impl ::protobuf::reflect::ProtobufValue for FileDescriptorSet {
199 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
200 ::protobuf::reflect::ProtobufValueRef::Message(self)
201 }
202}
203
204#[derive(PartialEq,Clone,Default)]
205#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
206pub struct FileDescriptorProto {
207 name: ::protobuf::SingularField<::std::string::String>,
209 package: ::protobuf::SingularField<::std::string::String>,
210 dependency: ::protobuf::RepeatedField<::std::string::String>,
211 public_dependency: ::std::vec::Vec<i32>,
212 weak_dependency: ::std::vec::Vec<i32>,
213 message_type: ::protobuf::RepeatedField<DescriptorProto>,
214 enum_type: ::protobuf::RepeatedField<EnumDescriptorProto>,
215 service: ::protobuf::RepeatedField<ServiceDescriptorProto>,
216 extension: ::protobuf::RepeatedField<FieldDescriptorProto>,
217 options: ::protobuf::SingularPtrField<FileOptions>,
218 source_code_info: ::protobuf::SingularPtrField<SourceCodeInfo>,
219 syntax: ::protobuf::SingularField<::std::string::String>,
220 #[cfg_attr(feature = "with-serde", serde(skip))]
222 pub unknown_fields: ::protobuf::UnknownFields,
223 #[cfg_attr(feature = "with-serde", serde(skip))]
224 pub cached_size: ::protobuf::CachedSize,
225}
226
227impl<'a> ::std::default::Default for &'a FileDescriptorProto {
228 fn default() -> &'a FileDescriptorProto {
229 <FileDescriptorProto as ::protobuf::Message>::default_instance()
230 }
231}
232
233impl FileDescriptorProto {
234 pub fn new() -> FileDescriptorProto {
235 ::std::default::Default::default()
236 }
237
238 pub fn get_name(&self) -> &str {
242 match self.name.as_ref() {
243 Some(v) => &v,
244 None => "",
245 }
246 }
247 pub fn clear_name(&mut self) {
248 self.name.clear();
249 }
250
251 pub fn has_name(&self) -> bool {
252 self.name.is_some()
253 }
254
255 pub fn set_name(&mut self, v: ::std::string::String) {
257 self.name = ::protobuf::SingularField::some(v);
258 }
259
260 pub fn mut_name(&mut self) -> &mut ::std::string::String {
263 if self.name.is_none() {
264 self.name.set_default();
265 }
266 self.name.as_mut().unwrap()
267 }
268
269 pub fn take_name(&mut self) -> ::std::string::String {
271 self.name.take().unwrap_or_else(|| ::std::string::String::new())
272 }
273
274 pub fn get_package(&self) -> &str {
278 match self.package.as_ref() {
279 Some(v) => &v,
280 None => "",
281 }
282 }
283 pub fn clear_package(&mut self) {
284 self.package.clear();
285 }
286
287 pub fn has_package(&self) -> bool {
288 self.package.is_some()
289 }
290
291 pub fn set_package(&mut self, v: ::std::string::String) {
293 self.package = ::protobuf::SingularField::some(v);
294 }
295
296 pub fn mut_package(&mut self) -> &mut ::std::string::String {
299 if self.package.is_none() {
300 self.package.set_default();
301 }
302 self.package.as_mut().unwrap()
303 }
304
305 pub fn take_package(&mut self) -> ::std::string::String {
307 self.package.take().unwrap_or_else(|| ::std::string::String::new())
308 }
309
310 pub fn get_dependency(&self) -> &[::std::string::String] {
314 &self.dependency
315 }
316 pub fn clear_dependency(&mut self) {
317 self.dependency.clear();
318 }
319
320 pub fn set_dependency(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
322 self.dependency = v;
323 }
324
325 pub fn mut_dependency(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
327 &mut self.dependency
328 }
329
330 pub fn take_dependency(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
332 ::std::mem::replace(&mut self.dependency, ::protobuf::RepeatedField::new())
333 }
334
335 pub fn get_public_dependency(&self) -> &[i32] {
339 &self.public_dependency
340 }
341 pub fn clear_public_dependency(&mut self) {
342 self.public_dependency.clear();
343 }
344
345 pub fn set_public_dependency(&mut self, v: ::std::vec::Vec<i32>) {
347 self.public_dependency = v;
348 }
349
350 pub fn mut_public_dependency(&mut self) -> &mut ::std::vec::Vec<i32> {
352 &mut self.public_dependency
353 }
354
355 pub fn take_public_dependency(&mut self) -> ::std::vec::Vec<i32> {
357 ::std::mem::replace(&mut self.public_dependency, ::std::vec::Vec::new())
358 }
359
360 pub fn get_weak_dependency(&self) -> &[i32] {
364 &self.weak_dependency
365 }
366 pub fn clear_weak_dependency(&mut self) {
367 self.weak_dependency.clear();
368 }
369
370 pub fn set_weak_dependency(&mut self, v: ::std::vec::Vec<i32>) {
372 self.weak_dependency = v;
373 }
374
375 pub fn mut_weak_dependency(&mut self) -> &mut ::std::vec::Vec<i32> {
377 &mut self.weak_dependency
378 }
379
380 pub fn take_weak_dependency(&mut self) -> ::std::vec::Vec<i32> {
382 ::std::mem::replace(&mut self.weak_dependency, ::std::vec::Vec::new())
383 }
384
385 pub fn get_message_type(&self) -> &[DescriptorProto] {
389 &self.message_type
390 }
391 pub fn clear_message_type(&mut self) {
392 self.message_type.clear();
393 }
394
395 pub fn set_message_type(&mut self, v: ::protobuf::RepeatedField<DescriptorProto>) {
397 self.message_type = v;
398 }
399
400 pub fn mut_message_type(&mut self) -> &mut ::protobuf::RepeatedField<DescriptorProto> {
402 &mut self.message_type
403 }
404
405 pub fn take_message_type(&mut self) -> ::protobuf::RepeatedField<DescriptorProto> {
407 ::std::mem::replace(&mut self.message_type, ::protobuf::RepeatedField::new())
408 }
409
410 pub fn get_enum_type(&self) -> &[EnumDescriptorProto] {
414 &self.enum_type
415 }
416 pub fn clear_enum_type(&mut self) {
417 self.enum_type.clear();
418 }
419
420 pub fn set_enum_type(&mut self, v: ::protobuf::RepeatedField<EnumDescriptorProto>) {
422 self.enum_type = v;
423 }
424
425 pub fn mut_enum_type(&mut self) -> &mut ::protobuf::RepeatedField<EnumDescriptorProto> {
427 &mut self.enum_type
428 }
429
430 pub fn take_enum_type(&mut self) -> ::protobuf::RepeatedField<EnumDescriptorProto> {
432 ::std::mem::replace(&mut self.enum_type, ::protobuf::RepeatedField::new())
433 }
434
435 pub fn get_service(&self) -> &[ServiceDescriptorProto] {
439 &self.service
440 }
441 pub fn clear_service(&mut self) {
442 self.service.clear();
443 }
444
445 pub fn set_service(&mut self, v: ::protobuf::RepeatedField<ServiceDescriptorProto>) {
447 self.service = v;
448 }
449
450 pub fn mut_service(&mut self) -> &mut ::protobuf::RepeatedField<ServiceDescriptorProto> {
452 &mut self.service
453 }
454
455 pub fn take_service(&mut self) -> ::protobuf::RepeatedField<ServiceDescriptorProto> {
457 ::std::mem::replace(&mut self.service, ::protobuf::RepeatedField::new())
458 }
459
460 pub fn get_extension(&self) -> &[FieldDescriptorProto] {
464 &self.extension
465 }
466 pub fn clear_extension(&mut self) {
467 self.extension.clear();
468 }
469
470 pub fn set_extension(&mut self, v: ::protobuf::RepeatedField<FieldDescriptorProto>) {
472 self.extension = v;
473 }
474
475 pub fn mut_extension(&mut self) -> &mut ::protobuf::RepeatedField<FieldDescriptorProto> {
477 &mut self.extension
478 }
479
480 pub fn take_extension(&mut self) -> ::protobuf::RepeatedField<FieldDescriptorProto> {
482 ::std::mem::replace(&mut self.extension, ::protobuf::RepeatedField::new())
483 }
484
485 pub fn get_options(&self) -> &FileOptions {
489 self.options.as_ref().unwrap_or_else(|| FileOptions::default_instance())
490 }
491 pub fn clear_options(&mut self) {
492 self.options.clear();
493 }
494
495 pub fn has_options(&self) -> bool {
496 self.options.is_some()
497 }
498
499 pub fn set_options(&mut self, v: FileOptions) {
501 self.options = ::protobuf::SingularPtrField::some(v);
502 }
503
504 pub fn mut_options(&mut self) -> &mut FileOptions {
507 if self.options.is_none() {
508 self.options.set_default();
509 }
510 self.options.as_mut().unwrap()
511 }
512
513 pub fn take_options(&mut self) -> FileOptions {
515 self.options.take().unwrap_or_else(|| FileOptions::new())
516 }
517
518 pub fn get_source_code_info(&self) -> &SourceCodeInfo {
522 self.source_code_info.as_ref().unwrap_or_else(|| SourceCodeInfo::default_instance())
523 }
524 pub fn clear_source_code_info(&mut self) {
525 self.source_code_info.clear();
526 }
527
528 pub fn has_source_code_info(&self) -> bool {
529 self.source_code_info.is_some()
530 }
531
532 pub fn set_source_code_info(&mut self, v: SourceCodeInfo) {
534 self.source_code_info = ::protobuf::SingularPtrField::some(v);
535 }
536
537 pub fn mut_source_code_info(&mut self) -> &mut SourceCodeInfo {
540 if self.source_code_info.is_none() {
541 self.source_code_info.set_default();
542 }
543 self.source_code_info.as_mut().unwrap()
544 }
545
546 pub fn take_source_code_info(&mut self) -> SourceCodeInfo {
548 self.source_code_info.take().unwrap_or_else(|| SourceCodeInfo::new())
549 }
550
551 pub fn get_syntax(&self) -> &str {
555 match self.syntax.as_ref() {
556 Some(v) => &v,
557 None => "",
558 }
559 }
560 pub fn clear_syntax(&mut self) {
561 self.syntax.clear();
562 }
563
564 pub fn has_syntax(&self) -> bool {
565 self.syntax.is_some()
566 }
567
568 pub fn set_syntax(&mut self, v: ::std::string::String) {
570 self.syntax = ::protobuf::SingularField::some(v);
571 }
572
573 pub fn mut_syntax(&mut self) -> &mut ::std::string::String {
576 if self.syntax.is_none() {
577 self.syntax.set_default();
578 }
579 self.syntax.as_mut().unwrap()
580 }
581
582 pub fn take_syntax(&mut self) -> ::std::string::String {
584 self.syntax.take().unwrap_or_else(|| ::std::string::String::new())
585 }
586}
587
588impl ::protobuf::Message for FileDescriptorProto {
589 fn is_initialized(&self) -> bool {
590 for v in &self.message_type {
591 if !v.is_initialized() {
592 return false;
593 }
594 };
595 for v in &self.enum_type {
596 if !v.is_initialized() {
597 return false;
598 }
599 };
600 for v in &self.service {
601 if !v.is_initialized() {
602 return false;
603 }
604 };
605 for v in &self.extension {
606 if !v.is_initialized() {
607 return false;
608 }
609 };
610 for v in &self.options {
611 if !v.is_initialized() {
612 return false;
613 }
614 };
615 for v in &self.source_code_info {
616 if !v.is_initialized() {
617 return false;
618 }
619 };
620 true
621 }
622
623 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
624 while !is.eof()? {
625 let (field_number, wire_type) = is.read_tag_unpack()?;
626 match field_number {
627 1 => {
628 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.name)?;
629 },
630 2 => {
631 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.package)?;
632 },
633 3 => {
634 ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.dependency)?;
635 },
636 10 => {
637 ::protobuf::rt::read_repeated_int32_into(wire_type, is, &mut self.public_dependency)?;
638 },
639 11 => {
640 ::protobuf::rt::read_repeated_int32_into(wire_type, is, &mut self.weak_dependency)?;
641 },
642 4 => {
643 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.message_type)?;
644 },
645 5 => {
646 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.enum_type)?;
647 },
648 6 => {
649 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.service)?;
650 },
651 7 => {
652 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.extension)?;
653 },
654 8 => {
655 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.options)?;
656 },
657 9 => {
658 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.source_code_info)?;
659 },
660 12 => {
661 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.syntax)?;
662 },
663 _ => {
664 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
665 },
666 };
667 }
668 ::std::result::Result::Ok(())
669 }
670
671 #[allow(unused_variables)]
673 fn compute_size(&self) -> u32 {
674 let mut my_size = 0;
675 if let Some(ref v) = self.name.as_ref() {
676 my_size += ::protobuf::rt::string_size(1, &v);
677 }
678 if let Some(ref v) = self.package.as_ref() {
679 my_size += ::protobuf::rt::string_size(2, &v);
680 }
681 for value in &self.dependency {
682 my_size += ::protobuf::rt::string_size(3, &value);
683 };
684 for value in &self.public_dependency {
685 my_size += ::protobuf::rt::value_size(10, *value, ::protobuf::wire_format::WireTypeVarint);
686 };
687 for value in &self.weak_dependency {
688 my_size += ::protobuf::rt::value_size(11, *value, ::protobuf::wire_format::WireTypeVarint);
689 };
690 for value in &self.message_type {
691 let len = value.compute_size();
692 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
693 };
694 for value in &self.enum_type {
695 let len = value.compute_size();
696 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
697 };
698 for value in &self.service {
699 let len = value.compute_size();
700 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
701 };
702 for value in &self.extension {
703 let len = value.compute_size();
704 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
705 };
706 if let Some(ref v) = self.options.as_ref() {
707 let len = v.compute_size();
708 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
709 }
710 if let Some(ref v) = self.source_code_info.as_ref() {
711 let len = v.compute_size();
712 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
713 }
714 if let Some(ref v) = self.syntax.as_ref() {
715 my_size += ::protobuf::rt::string_size(12, &v);
716 }
717 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
718 self.cached_size.set(my_size);
719 my_size
720 }
721
722 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
723 if let Some(ref v) = self.name.as_ref() {
724 os.write_string(1, &v)?;
725 }
726 if let Some(ref v) = self.package.as_ref() {
727 os.write_string(2, &v)?;
728 }
729 for v in &self.dependency {
730 os.write_string(3, &v)?;
731 };
732 for v in &self.public_dependency {
733 os.write_int32(10, *v)?;
734 };
735 for v in &self.weak_dependency {
736 os.write_int32(11, *v)?;
737 };
738 for v in &self.message_type {
739 os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
740 os.write_raw_varint32(v.get_cached_size())?;
741 v.write_to_with_cached_sizes(os)?;
742 };
743 for v in &self.enum_type {
744 os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
745 os.write_raw_varint32(v.get_cached_size())?;
746 v.write_to_with_cached_sizes(os)?;
747 };
748 for v in &self.service {
749 os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?;
750 os.write_raw_varint32(v.get_cached_size())?;
751 v.write_to_with_cached_sizes(os)?;
752 };
753 for v in &self.extension {
754 os.write_tag(7, ::protobuf::wire_format::WireTypeLengthDelimited)?;
755 os.write_raw_varint32(v.get_cached_size())?;
756 v.write_to_with_cached_sizes(os)?;
757 };
758 if let Some(ref v) = self.options.as_ref() {
759 os.write_tag(8, ::protobuf::wire_format::WireTypeLengthDelimited)?;
760 os.write_raw_varint32(v.get_cached_size())?;
761 v.write_to_with_cached_sizes(os)?;
762 }
763 if let Some(ref v) = self.source_code_info.as_ref() {
764 os.write_tag(9, ::protobuf::wire_format::WireTypeLengthDelimited)?;
765 os.write_raw_varint32(v.get_cached_size())?;
766 v.write_to_with_cached_sizes(os)?;
767 }
768 if let Some(ref v) = self.syntax.as_ref() {
769 os.write_string(12, &v)?;
770 }
771 os.write_unknown_fields(self.get_unknown_fields())?;
772 ::std::result::Result::Ok(())
773 }
774
775 fn get_cached_size(&self) -> u32 {
776 self.cached_size.get()
777 }
778
779 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
780 &self.unknown_fields
781 }
782
783 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
784 &mut self.unknown_fields
785 }
786
787 fn as_any(&self) -> &dyn (::std::any::Any) {
788 self as &dyn (::std::any::Any)
789 }
790 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
791 self as &mut dyn (::std::any::Any)
792 }
793 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
794 self
795 }
796
797 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
798 Self::descriptor_static()
799 }
800
801 fn new() -> FileDescriptorProto {
802 FileDescriptorProto::new()
803 }
804
805 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
806 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
807 lock: ::protobuf::lazy::ONCE_INIT,
808 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
809 };
810 unsafe {
811 descriptor.get(|| {
812 let mut fields = ::std::vec::Vec::new();
813 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
814 "name",
815 |m: &FileDescriptorProto| { &m.name },
816 |m: &mut FileDescriptorProto| { &mut m.name },
817 ));
818 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
819 "package",
820 |m: &FileDescriptorProto| { &m.package },
821 |m: &mut FileDescriptorProto| { &mut m.package },
822 ));
823 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
824 "dependency",
825 |m: &FileDescriptorProto| { &m.dependency },
826 |m: &mut FileDescriptorProto| { &mut m.dependency },
827 ));
828 fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
829 "public_dependency",
830 |m: &FileDescriptorProto| { &m.public_dependency },
831 |m: &mut FileDescriptorProto| { &mut m.public_dependency },
832 ));
833 fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
834 "weak_dependency",
835 |m: &FileDescriptorProto| { &m.weak_dependency },
836 |m: &mut FileDescriptorProto| { &mut m.weak_dependency },
837 ));
838 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<DescriptorProto>>(
839 "message_type",
840 |m: &FileDescriptorProto| { &m.message_type },
841 |m: &mut FileDescriptorProto| { &mut m.message_type },
842 ));
843 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<EnumDescriptorProto>>(
844 "enum_type",
845 |m: &FileDescriptorProto| { &m.enum_type },
846 |m: &mut FileDescriptorProto| { &mut m.enum_type },
847 ));
848 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<ServiceDescriptorProto>>(
849 "service",
850 |m: &FileDescriptorProto| { &m.service },
851 |m: &mut FileDescriptorProto| { &mut m.service },
852 ));
853 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<FieldDescriptorProto>>(
854 "extension",
855 |m: &FileDescriptorProto| { &m.extension },
856 |m: &mut FileDescriptorProto| { &mut m.extension },
857 ));
858 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<FileOptions>>(
859 "options",
860 |m: &FileDescriptorProto| { &m.options },
861 |m: &mut FileDescriptorProto| { &mut m.options },
862 ));
863 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<SourceCodeInfo>>(
864 "source_code_info",
865 |m: &FileDescriptorProto| { &m.source_code_info },
866 |m: &mut FileDescriptorProto| { &mut m.source_code_info },
867 ));
868 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
869 "syntax",
870 |m: &FileDescriptorProto| { &m.syntax },
871 |m: &mut FileDescriptorProto| { &mut m.syntax },
872 ));
873 ::protobuf::reflect::MessageDescriptor::new::<FileDescriptorProto>(
874 "FileDescriptorProto",
875 fields,
876 file_descriptor_proto()
877 )
878 })
879 }
880 }
881
882 fn default_instance() -> &'static FileDescriptorProto {
883 static mut instance: ::protobuf::lazy::Lazy<FileDescriptorProto> = ::protobuf::lazy::Lazy {
884 lock: ::protobuf::lazy::ONCE_INIT,
885 ptr: 0 as *const FileDescriptorProto,
886 };
887 unsafe {
888 instance.get(FileDescriptorProto::new)
889 }
890 }
891}
892
893impl ::protobuf::Clear for FileDescriptorProto {
894 fn clear(&mut self) {
895 self.name.clear();
896 self.package.clear();
897 self.dependency.clear();
898 self.public_dependency.clear();
899 self.weak_dependency.clear();
900 self.message_type.clear();
901 self.enum_type.clear();
902 self.service.clear();
903 self.extension.clear();
904 self.options.clear();
905 self.source_code_info.clear();
906 self.syntax.clear();
907 self.unknown_fields.clear();
908 }
909}
910
911impl ::std::fmt::Debug for FileDescriptorProto {
912 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
913 ::protobuf::text_format::fmt(self, f)
914 }
915}
916
917impl ::protobuf::reflect::ProtobufValue for FileDescriptorProto {
918 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
919 ::protobuf::reflect::ProtobufValueRef::Message(self)
920 }
921}
922
923#[derive(PartialEq,Clone,Default)]
924#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
925pub struct DescriptorProto {
926 name: ::protobuf::SingularField<::std::string::String>,
928 field: ::protobuf::RepeatedField<FieldDescriptorProto>,
929 extension: ::protobuf::RepeatedField<FieldDescriptorProto>,
930 nested_type: ::protobuf::RepeatedField<DescriptorProto>,
931 enum_type: ::protobuf::RepeatedField<EnumDescriptorProto>,
932 extension_range: ::protobuf::RepeatedField<DescriptorProto_ExtensionRange>,
933 oneof_decl: ::protobuf::RepeatedField<OneofDescriptorProto>,
934 options: ::protobuf::SingularPtrField<MessageOptions>,
935 reserved_range: ::protobuf::RepeatedField<DescriptorProto_ReservedRange>,
936 reserved_name: ::protobuf::RepeatedField<::std::string::String>,
937 #[cfg_attr(feature = "with-serde", serde(skip))]
939 pub unknown_fields: ::protobuf::UnknownFields,
940 #[cfg_attr(feature = "with-serde", serde(skip))]
941 pub cached_size: ::protobuf::CachedSize,
942}
943
944impl<'a> ::std::default::Default for &'a DescriptorProto {
945 fn default() -> &'a DescriptorProto {
946 <DescriptorProto as ::protobuf::Message>::default_instance()
947 }
948}
949
950impl DescriptorProto {
951 pub fn new() -> DescriptorProto {
952 ::std::default::Default::default()
953 }
954
955 pub fn get_name(&self) -> &str {
959 match self.name.as_ref() {
960 Some(v) => &v,
961 None => "",
962 }
963 }
964 pub fn clear_name(&mut self) {
965 self.name.clear();
966 }
967
968 pub fn has_name(&self) -> bool {
969 self.name.is_some()
970 }
971
972 pub fn set_name(&mut self, v: ::std::string::String) {
974 self.name = ::protobuf::SingularField::some(v);
975 }
976
977 pub fn mut_name(&mut self) -> &mut ::std::string::String {
980 if self.name.is_none() {
981 self.name.set_default();
982 }
983 self.name.as_mut().unwrap()
984 }
985
986 pub fn take_name(&mut self) -> ::std::string::String {
988 self.name.take().unwrap_or_else(|| ::std::string::String::new())
989 }
990
991 pub fn get_field(&self) -> &[FieldDescriptorProto] {
995 &self.field
996 }
997 pub fn clear_field(&mut self) {
998 self.field.clear();
999 }
1000
1001 pub fn set_field(&mut self, v: ::protobuf::RepeatedField<FieldDescriptorProto>) {
1003 self.field = v;
1004 }
1005
1006 pub fn mut_field(&mut self) -> &mut ::protobuf::RepeatedField<FieldDescriptorProto> {
1008 &mut self.field
1009 }
1010
1011 pub fn take_field(&mut self) -> ::protobuf::RepeatedField<FieldDescriptorProto> {
1013 ::std::mem::replace(&mut self.field, ::protobuf::RepeatedField::new())
1014 }
1015
1016 pub fn get_extension(&self) -> &[FieldDescriptorProto] {
1020 &self.extension
1021 }
1022 pub fn clear_extension(&mut self) {
1023 self.extension.clear();
1024 }
1025
1026 pub fn set_extension(&mut self, v: ::protobuf::RepeatedField<FieldDescriptorProto>) {
1028 self.extension = v;
1029 }
1030
1031 pub fn mut_extension(&mut self) -> &mut ::protobuf::RepeatedField<FieldDescriptorProto> {
1033 &mut self.extension
1034 }
1035
1036 pub fn take_extension(&mut self) -> ::protobuf::RepeatedField<FieldDescriptorProto> {
1038 ::std::mem::replace(&mut self.extension, ::protobuf::RepeatedField::new())
1039 }
1040
1041 pub fn get_nested_type(&self) -> &[DescriptorProto] {
1045 &self.nested_type
1046 }
1047 pub fn clear_nested_type(&mut self) {
1048 self.nested_type.clear();
1049 }
1050
1051 pub fn set_nested_type(&mut self, v: ::protobuf::RepeatedField<DescriptorProto>) {
1053 self.nested_type = v;
1054 }
1055
1056 pub fn mut_nested_type(&mut self) -> &mut ::protobuf::RepeatedField<DescriptorProto> {
1058 &mut self.nested_type
1059 }
1060
1061 pub fn take_nested_type(&mut self) -> ::protobuf::RepeatedField<DescriptorProto> {
1063 ::std::mem::replace(&mut self.nested_type, ::protobuf::RepeatedField::new())
1064 }
1065
1066 pub fn get_enum_type(&self) -> &[EnumDescriptorProto] {
1070 &self.enum_type
1071 }
1072 pub fn clear_enum_type(&mut self) {
1073 self.enum_type.clear();
1074 }
1075
1076 pub fn set_enum_type(&mut self, v: ::protobuf::RepeatedField<EnumDescriptorProto>) {
1078 self.enum_type = v;
1079 }
1080
1081 pub fn mut_enum_type(&mut self) -> &mut ::protobuf::RepeatedField<EnumDescriptorProto> {
1083 &mut self.enum_type
1084 }
1085
1086 pub fn take_enum_type(&mut self) -> ::protobuf::RepeatedField<EnumDescriptorProto> {
1088 ::std::mem::replace(&mut self.enum_type, ::protobuf::RepeatedField::new())
1089 }
1090
1091 pub fn get_extension_range(&self) -> &[DescriptorProto_ExtensionRange] {
1095 &self.extension_range
1096 }
1097 pub fn clear_extension_range(&mut self) {
1098 self.extension_range.clear();
1099 }
1100
1101 pub fn set_extension_range(&mut self, v: ::protobuf::RepeatedField<DescriptorProto_ExtensionRange>) {
1103 self.extension_range = v;
1104 }
1105
1106 pub fn mut_extension_range(&mut self) -> &mut ::protobuf::RepeatedField<DescriptorProto_ExtensionRange> {
1108 &mut self.extension_range
1109 }
1110
1111 pub fn take_extension_range(&mut self) -> ::protobuf::RepeatedField<DescriptorProto_ExtensionRange> {
1113 ::std::mem::replace(&mut self.extension_range, ::protobuf::RepeatedField::new())
1114 }
1115
1116 pub fn get_oneof_decl(&self) -> &[OneofDescriptorProto] {
1120 &self.oneof_decl
1121 }
1122 pub fn clear_oneof_decl(&mut self) {
1123 self.oneof_decl.clear();
1124 }
1125
1126 pub fn set_oneof_decl(&mut self, v: ::protobuf::RepeatedField<OneofDescriptorProto>) {
1128 self.oneof_decl = v;
1129 }
1130
1131 pub fn mut_oneof_decl(&mut self) -> &mut ::protobuf::RepeatedField<OneofDescriptorProto> {
1133 &mut self.oneof_decl
1134 }
1135
1136 pub fn take_oneof_decl(&mut self) -> ::protobuf::RepeatedField<OneofDescriptorProto> {
1138 ::std::mem::replace(&mut self.oneof_decl, ::protobuf::RepeatedField::new())
1139 }
1140
1141 pub fn get_options(&self) -> &MessageOptions {
1145 self.options.as_ref().unwrap_or_else(|| MessageOptions::default_instance())
1146 }
1147 pub fn clear_options(&mut self) {
1148 self.options.clear();
1149 }
1150
1151 pub fn has_options(&self) -> bool {
1152 self.options.is_some()
1153 }
1154
1155 pub fn set_options(&mut self, v: MessageOptions) {
1157 self.options = ::protobuf::SingularPtrField::some(v);
1158 }
1159
1160 pub fn mut_options(&mut self) -> &mut MessageOptions {
1163 if self.options.is_none() {
1164 self.options.set_default();
1165 }
1166 self.options.as_mut().unwrap()
1167 }
1168
1169 pub fn take_options(&mut self) -> MessageOptions {
1171 self.options.take().unwrap_or_else(|| MessageOptions::new())
1172 }
1173
1174 pub fn get_reserved_range(&self) -> &[DescriptorProto_ReservedRange] {
1178 &self.reserved_range
1179 }
1180 pub fn clear_reserved_range(&mut self) {
1181 self.reserved_range.clear();
1182 }
1183
1184 pub fn set_reserved_range(&mut self, v: ::protobuf::RepeatedField<DescriptorProto_ReservedRange>) {
1186 self.reserved_range = v;
1187 }
1188
1189 pub fn mut_reserved_range(&mut self) -> &mut ::protobuf::RepeatedField<DescriptorProto_ReservedRange> {
1191 &mut self.reserved_range
1192 }
1193
1194 pub fn take_reserved_range(&mut self) -> ::protobuf::RepeatedField<DescriptorProto_ReservedRange> {
1196 ::std::mem::replace(&mut self.reserved_range, ::protobuf::RepeatedField::new())
1197 }
1198
1199 pub fn get_reserved_name(&self) -> &[::std::string::String] {
1203 &self.reserved_name
1204 }
1205 pub fn clear_reserved_name(&mut self) {
1206 self.reserved_name.clear();
1207 }
1208
1209 pub fn set_reserved_name(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
1211 self.reserved_name = v;
1212 }
1213
1214 pub fn mut_reserved_name(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
1216 &mut self.reserved_name
1217 }
1218
1219 pub fn take_reserved_name(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
1221 ::std::mem::replace(&mut self.reserved_name, ::protobuf::RepeatedField::new())
1222 }
1223}
1224
1225impl ::protobuf::Message for DescriptorProto {
1226 fn is_initialized(&self) -> bool {
1227 for v in &self.field {
1228 if !v.is_initialized() {
1229 return false;
1230 }
1231 };
1232 for v in &self.extension {
1233 if !v.is_initialized() {
1234 return false;
1235 }
1236 };
1237 for v in &self.nested_type {
1238 if !v.is_initialized() {
1239 return false;
1240 }
1241 };
1242 for v in &self.enum_type {
1243 if !v.is_initialized() {
1244 return false;
1245 }
1246 };
1247 for v in &self.extension_range {
1248 if !v.is_initialized() {
1249 return false;
1250 }
1251 };
1252 for v in &self.oneof_decl {
1253 if !v.is_initialized() {
1254 return false;
1255 }
1256 };
1257 for v in &self.options {
1258 if !v.is_initialized() {
1259 return false;
1260 }
1261 };
1262 for v in &self.reserved_range {
1263 if !v.is_initialized() {
1264 return false;
1265 }
1266 };
1267 true
1268 }
1269
1270 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
1271 while !is.eof()? {
1272 let (field_number, wire_type) = is.read_tag_unpack()?;
1273 match field_number {
1274 1 => {
1275 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.name)?;
1276 },
1277 2 => {
1278 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.field)?;
1279 },
1280 6 => {
1281 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.extension)?;
1282 },
1283 3 => {
1284 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.nested_type)?;
1285 },
1286 4 => {
1287 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.enum_type)?;
1288 },
1289 5 => {
1290 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.extension_range)?;
1291 },
1292 8 => {
1293 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.oneof_decl)?;
1294 },
1295 7 => {
1296 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.options)?;
1297 },
1298 9 => {
1299 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.reserved_range)?;
1300 },
1301 10 => {
1302 ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.reserved_name)?;
1303 },
1304 _ => {
1305 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1306 },
1307 };
1308 }
1309 ::std::result::Result::Ok(())
1310 }
1311
1312 #[allow(unused_variables)]
1314 fn compute_size(&self) -> u32 {
1315 let mut my_size = 0;
1316 if let Some(ref v) = self.name.as_ref() {
1317 my_size += ::protobuf::rt::string_size(1, &v);
1318 }
1319 for value in &self.field {
1320 let len = value.compute_size();
1321 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1322 };
1323 for value in &self.extension {
1324 let len = value.compute_size();
1325 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1326 };
1327 for value in &self.nested_type {
1328 let len = value.compute_size();
1329 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1330 };
1331 for value in &self.enum_type {
1332 let len = value.compute_size();
1333 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1334 };
1335 for value in &self.extension_range {
1336 let len = value.compute_size();
1337 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1338 };
1339 for value in &self.oneof_decl {
1340 let len = value.compute_size();
1341 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1342 };
1343 if let Some(ref v) = self.options.as_ref() {
1344 let len = v.compute_size();
1345 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1346 }
1347 for value in &self.reserved_range {
1348 let len = value.compute_size();
1349 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1350 };
1351 for value in &self.reserved_name {
1352 my_size += ::protobuf::rt::string_size(10, &value);
1353 };
1354 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1355 self.cached_size.set(my_size);
1356 my_size
1357 }
1358
1359 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
1360 if let Some(ref v) = self.name.as_ref() {
1361 os.write_string(1, &v)?;
1362 }
1363 for v in &self.field {
1364 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1365 os.write_raw_varint32(v.get_cached_size())?;
1366 v.write_to_with_cached_sizes(os)?;
1367 };
1368 for v in &self.extension {
1369 os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1370 os.write_raw_varint32(v.get_cached_size())?;
1371 v.write_to_with_cached_sizes(os)?;
1372 };
1373 for v in &self.nested_type {
1374 os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1375 os.write_raw_varint32(v.get_cached_size())?;
1376 v.write_to_with_cached_sizes(os)?;
1377 };
1378 for v in &self.enum_type {
1379 os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1380 os.write_raw_varint32(v.get_cached_size())?;
1381 v.write_to_with_cached_sizes(os)?;
1382 };
1383 for v in &self.extension_range {
1384 os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1385 os.write_raw_varint32(v.get_cached_size())?;
1386 v.write_to_with_cached_sizes(os)?;
1387 };
1388 for v in &self.oneof_decl {
1389 os.write_tag(8, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1390 os.write_raw_varint32(v.get_cached_size())?;
1391 v.write_to_with_cached_sizes(os)?;
1392 };
1393 if let Some(ref v) = self.options.as_ref() {
1394 os.write_tag(7, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1395 os.write_raw_varint32(v.get_cached_size())?;
1396 v.write_to_with_cached_sizes(os)?;
1397 }
1398 for v in &self.reserved_range {
1399 os.write_tag(9, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1400 os.write_raw_varint32(v.get_cached_size())?;
1401 v.write_to_with_cached_sizes(os)?;
1402 };
1403 for v in &self.reserved_name {
1404 os.write_string(10, &v)?;
1405 };
1406 os.write_unknown_fields(self.get_unknown_fields())?;
1407 ::std::result::Result::Ok(())
1408 }
1409
1410 fn get_cached_size(&self) -> u32 {
1411 self.cached_size.get()
1412 }
1413
1414 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1415 &self.unknown_fields
1416 }
1417
1418 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1419 &mut self.unknown_fields
1420 }
1421
1422 fn as_any(&self) -> &dyn (::std::any::Any) {
1423 self as &dyn (::std::any::Any)
1424 }
1425 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1426 self as &mut dyn (::std::any::Any)
1427 }
1428 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1429 self
1430 }
1431
1432 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1433 Self::descriptor_static()
1434 }
1435
1436 fn new() -> DescriptorProto {
1437 DescriptorProto::new()
1438 }
1439
1440 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1441 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
1442 lock: ::protobuf::lazy::ONCE_INIT,
1443 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
1444 };
1445 unsafe {
1446 descriptor.get(|| {
1447 let mut fields = ::std::vec::Vec::new();
1448 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1449 "name",
1450 |m: &DescriptorProto| { &m.name },
1451 |m: &mut DescriptorProto| { &mut m.name },
1452 ));
1453 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<FieldDescriptorProto>>(
1454 "field",
1455 |m: &DescriptorProto| { &m.field },
1456 |m: &mut DescriptorProto| { &mut m.field },
1457 ));
1458 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<FieldDescriptorProto>>(
1459 "extension",
1460 |m: &DescriptorProto| { &m.extension },
1461 |m: &mut DescriptorProto| { &mut m.extension },
1462 ));
1463 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<DescriptorProto>>(
1464 "nested_type",
1465 |m: &DescriptorProto| { &m.nested_type },
1466 |m: &mut DescriptorProto| { &mut m.nested_type },
1467 ));
1468 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<EnumDescriptorProto>>(
1469 "enum_type",
1470 |m: &DescriptorProto| { &m.enum_type },
1471 |m: &mut DescriptorProto| { &mut m.enum_type },
1472 ));
1473 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<DescriptorProto_ExtensionRange>>(
1474 "extension_range",
1475 |m: &DescriptorProto| { &m.extension_range },
1476 |m: &mut DescriptorProto| { &mut m.extension_range },
1477 ));
1478 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OneofDescriptorProto>>(
1479 "oneof_decl",
1480 |m: &DescriptorProto| { &m.oneof_decl },
1481 |m: &mut DescriptorProto| { &mut m.oneof_decl },
1482 ));
1483 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<MessageOptions>>(
1484 "options",
1485 |m: &DescriptorProto| { &m.options },
1486 |m: &mut DescriptorProto| { &mut m.options },
1487 ));
1488 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<DescriptorProto_ReservedRange>>(
1489 "reserved_range",
1490 |m: &DescriptorProto| { &m.reserved_range },
1491 |m: &mut DescriptorProto| { &mut m.reserved_range },
1492 ));
1493 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1494 "reserved_name",
1495 |m: &DescriptorProto| { &m.reserved_name },
1496 |m: &mut DescriptorProto| { &mut m.reserved_name },
1497 ));
1498 ::protobuf::reflect::MessageDescriptor::new::<DescriptorProto>(
1499 "DescriptorProto",
1500 fields,
1501 file_descriptor_proto()
1502 )
1503 })
1504 }
1505 }
1506
1507 fn default_instance() -> &'static DescriptorProto {
1508 static mut instance: ::protobuf::lazy::Lazy<DescriptorProto> = ::protobuf::lazy::Lazy {
1509 lock: ::protobuf::lazy::ONCE_INIT,
1510 ptr: 0 as *const DescriptorProto,
1511 };
1512 unsafe {
1513 instance.get(DescriptorProto::new)
1514 }
1515 }
1516}
1517
1518impl ::protobuf::Clear for DescriptorProto {
1519 fn clear(&mut self) {
1520 self.name.clear();
1521 self.field.clear();
1522 self.extension.clear();
1523 self.nested_type.clear();
1524 self.enum_type.clear();
1525 self.extension_range.clear();
1526 self.oneof_decl.clear();
1527 self.options.clear();
1528 self.reserved_range.clear();
1529 self.reserved_name.clear();
1530 self.unknown_fields.clear();
1531 }
1532}
1533
1534impl ::std::fmt::Debug for DescriptorProto {
1535 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1536 ::protobuf::text_format::fmt(self, f)
1537 }
1538}
1539
1540impl ::protobuf::reflect::ProtobufValue for DescriptorProto {
1541 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
1542 ::protobuf::reflect::ProtobufValueRef::Message(self)
1543 }
1544}
1545
1546#[derive(PartialEq,Clone,Default)]
1547#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
1548pub struct DescriptorProto_ExtensionRange {
1549 start: ::std::option::Option<i32>,
1551 end: ::std::option::Option<i32>,
1552 #[cfg_attr(feature = "with-serde", serde(skip))]
1554 pub unknown_fields: ::protobuf::UnknownFields,
1555 #[cfg_attr(feature = "with-serde", serde(skip))]
1556 pub cached_size: ::protobuf::CachedSize,
1557}
1558
1559impl<'a> ::std::default::Default for &'a DescriptorProto_ExtensionRange {
1560 fn default() -> &'a DescriptorProto_ExtensionRange {
1561 <DescriptorProto_ExtensionRange as ::protobuf::Message>::default_instance()
1562 }
1563}
1564
1565impl DescriptorProto_ExtensionRange {
1566 pub fn new() -> DescriptorProto_ExtensionRange {
1567 ::std::default::Default::default()
1568 }
1569
1570 pub fn get_start(&self) -> i32 {
1574 self.start.unwrap_or(0)
1575 }
1576 pub fn clear_start(&mut self) {
1577 self.start = ::std::option::Option::None;
1578 }
1579
1580 pub fn has_start(&self) -> bool {
1581 self.start.is_some()
1582 }
1583
1584 pub fn set_start(&mut self, v: i32) {
1586 self.start = ::std::option::Option::Some(v);
1587 }
1588
1589 pub fn get_end(&self) -> i32 {
1593 self.end.unwrap_or(0)
1594 }
1595 pub fn clear_end(&mut self) {
1596 self.end = ::std::option::Option::None;
1597 }
1598
1599 pub fn has_end(&self) -> bool {
1600 self.end.is_some()
1601 }
1602
1603 pub fn set_end(&mut self, v: i32) {
1605 self.end = ::std::option::Option::Some(v);
1606 }
1607}
1608
1609impl ::protobuf::Message for DescriptorProto_ExtensionRange {
1610 fn is_initialized(&self) -> bool {
1611 true
1612 }
1613
1614 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
1615 while !is.eof()? {
1616 let (field_number, wire_type) = is.read_tag_unpack()?;
1617 match field_number {
1618 1 => {
1619 if wire_type != ::protobuf::wire_format::WireTypeVarint {
1620 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1621 }
1622 let tmp = is.read_int32()?;
1623 self.start = ::std::option::Option::Some(tmp);
1624 },
1625 2 => {
1626 if wire_type != ::protobuf::wire_format::WireTypeVarint {
1627 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1628 }
1629 let tmp = is.read_int32()?;
1630 self.end = ::std::option::Option::Some(tmp);
1631 },
1632 _ => {
1633 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1634 },
1635 };
1636 }
1637 ::std::result::Result::Ok(())
1638 }
1639
1640 #[allow(unused_variables)]
1642 fn compute_size(&self) -> u32 {
1643 let mut my_size = 0;
1644 if let Some(v) = self.start {
1645 my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint);
1646 }
1647 if let Some(v) = self.end {
1648 my_size += ::protobuf::rt::value_size(2, v, ::protobuf::wire_format::WireTypeVarint);
1649 }
1650 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1651 self.cached_size.set(my_size);
1652 my_size
1653 }
1654
1655 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
1656 if let Some(v) = self.start {
1657 os.write_int32(1, v)?;
1658 }
1659 if let Some(v) = self.end {
1660 os.write_int32(2, v)?;
1661 }
1662 os.write_unknown_fields(self.get_unknown_fields())?;
1663 ::std::result::Result::Ok(())
1664 }
1665
1666 fn get_cached_size(&self) -> u32 {
1667 self.cached_size.get()
1668 }
1669
1670 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1671 &self.unknown_fields
1672 }
1673
1674 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1675 &mut self.unknown_fields
1676 }
1677
1678 fn as_any(&self) -> &dyn (::std::any::Any) {
1679 self as &dyn (::std::any::Any)
1680 }
1681 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1682 self as &mut dyn (::std::any::Any)
1683 }
1684 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1685 self
1686 }
1687
1688 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1689 Self::descriptor_static()
1690 }
1691
1692 fn new() -> DescriptorProto_ExtensionRange {
1693 DescriptorProto_ExtensionRange::new()
1694 }
1695
1696 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1697 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
1698 lock: ::protobuf::lazy::ONCE_INIT,
1699 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
1700 };
1701 unsafe {
1702 descriptor.get(|| {
1703 let mut fields = ::std::vec::Vec::new();
1704 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
1705 "start",
1706 |m: &DescriptorProto_ExtensionRange| { &m.start },
1707 |m: &mut DescriptorProto_ExtensionRange| { &mut m.start },
1708 ));
1709 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
1710 "end",
1711 |m: &DescriptorProto_ExtensionRange| { &m.end },
1712 |m: &mut DescriptorProto_ExtensionRange| { &mut m.end },
1713 ));
1714 ::protobuf::reflect::MessageDescriptor::new::<DescriptorProto_ExtensionRange>(
1715 "DescriptorProto_ExtensionRange",
1716 fields,
1717 file_descriptor_proto()
1718 )
1719 })
1720 }
1721 }
1722
1723 fn default_instance() -> &'static DescriptorProto_ExtensionRange {
1724 static mut instance: ::protobuf::lazy::Lazy<DescriptorProto_ExtensionRange> = ::protobuf::lazy::Lazy {
1725 lock: ::protobuf::lazy::ONCE_INIT,
1726 ptr: 0 as *const DescriptorProto_ExtensionRange,
1727 };
1728 unsafe {
1729 instance.get(DescriptorProto_ExtensionRange::new)
1730 }
1731 }
1732}
1733
1734impl ::protobuf::Clear for DescriptorProto_ExtensionRange {
1735 fn clear(&mut self) {
1736 self.start = ::std::option::Option::None;
1737 self.end = ::std::option::Option::None;
1738 self.unknown_fields.clear();
1739 }
1740}
1741
1742impl ::std::fmt::Debug for DescriptorProto_ExtensionRange {
1743 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1744 ::protobuf::text_format::fmt(self, f)
1745 }
1746}
1747
1748impl ::protobuf::reflect::ProtobufValue for DescriptorProto_ExtensionRange {
1749 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
1750 ::protobuf::reflect::ProtobufValueRef::Message(self)
1751 }
1752}
1753
1754#[derive(PartialEq,Clone,Default)]
1755#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
1756pub struct DescriptorProto_ReservedRange {
1757 start: ::std::option::Option<i32>,
1759 end: ::std::option::Option<i32>,
1760 #[cfg_attr(feature = "with-serde", serde(skip))]
1762 pub unknown_fields: ::protobuf::UnknownFields,
1763 #[cfg_attr(feature = "with-serde", serde(skip))]
1764 pub cached_size: ::protobuf::CachedSize,
1765}
1766
1767impl<'a> ::std::default::Default for &'a DescriptorProto_ReservedRange {
1768 fn default() -> &'a DescriptorProto_ReservedRange {
1769 <DescriptorProto_ReservedRange as ::protobuf::Message>::default_instance()
1770 }
1771}
1772
1773impl DescriptorProto_ReservedRange {
1774 pub fn new() -> DescriptorProto_ReservedRange {
1775 ::std::default::Default::default()
1776 }
1777
1778 pub fn get_start(&self) -> i32 {
1782 self.start.unwrap_or(0)
1783 }
1784 pub fn clear_start(&mut self) {
1785 self.start = ::std::option::Option::None;
1786 }
1787
1788 pub fn has_start(&self) -> bool {
1789 self.start.is_some()
1790 }
1791
1792 pub fn set_start(&mut self, v: i32) {
1794 self.start = ::std::option::Option::Some(v);
1795 }
1796
1797 pub fn get_end(&self) -> i32 {
1801 self.end.unwrap_or(0)
1802 }
1803 pub fn clear_end(&mut self) {
1804 self.end = ::std::option::Option::None;
1805 }
1806
1807 pub fn has_end(&self) -> bool {
1808 self.end.is_some()
1809 }
1810
1811 pub fn set_end(&mut self, v: i32) {
1813 self.end = ::std::option::Option::Some(v);
1814 }
1815}
1816
1817impl ::protobuf::Message for DescriptorProto_ReservedRange {
1818 fn is_initialized(&self) -> bool {
1819 true
1820 }
1821
1822 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
1823 while !is.eof()? {
1824 let (field_number, wire_type) = is.read_tag_unpack()?;
1825 match field_number {
1826 1 => {
1827 if wire_type != ::protobuf::wire_format::WireTypeVarint {
1828 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1829 }
1830 let tmp = is.read_int32()?;
1831 self.start = ::std::option::Option::Some(tmp);
1832 },
1833 2 => {
1834 if wire_type != ::protobuf::wire_format::WireTypeVarint {
1835 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1836 }
1837 let tmp = is.read_int32()?;
1838 self.end = ::std::option::Option::Some(tmp);
1839 },
1840 _ => {
1841 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1842 },
1843 };
1844 }
1845 ::std::result::Result::Ok(())
1846 }
1847
1848 #[allow(unused_variables)]
1850 fn compute_size(&self) -> u32 {
1851 let mut my_size = 0;
1852 if let Some(v) = self.start {
1853 my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint);
1854 }
1855 if let Some(v) = self.end {
1856 my_size += ::protobuf::rt::value_size(2, v, ::protobuf::wire_format::WireTypeVarint);
1857 }
1858 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1859 self.cached_size.set(my_size);
1860 my_size
1861 }
1862
1863 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
1864 if let Some(v) = self.start {
1865 os.write_int32(1, v)?;
1866 }
1867 if let Some(v) = self.end {
1868 os.write_int32(2, v)?;
1869 }
1870 os.write_unknown_fields(self.get_unknown_fields())?;
1871 ::std::result::Result::Ok(())
1872 }
1873
1874 fn get_cached_size(&self) -> u32 {
1875 self.cached_size.get()
1876 }
1877
1878 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1879 &self.unknown_fields
1880 }
1881
1882 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1883 &mut self.unknown_fields
1884 }
1885
1886 fn as_any(&self) -> &dyn (::std::any::Any) {
1887 self as &dyn (::std::any::Any)
1888 }
1889 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1890 self as &mut dyn (::std::any::Any)
1891 }
1892 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1893 self
1894 }
1895
1896 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1897 Self::descriptor_static()
1898 }
1899
1900 fn new() -> DescriptorProto_ReservedRange {
1901 DescriptorProto_ReservedRange::new()
1902 }
1903
1904 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1905 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
1906 lock: ::protobuf::lazy::ONCE_INIT,
1907 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
1908 };
1909 unsafe {
1910 descriptor.get(|| {
1911 let mut fields = ::std::vec::Vec::new();
1912 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
1913 "start",
1914 |m: &DescriptorProto_ReservedRange| { &m.start },
1915 |m: &mut DescriptorProto_ReservedRange| { &mut m.start },
1916 ));
1917 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
1918 "end",
1919 |m: &DescriptorProto_ReservedRange| { &m.end },
1920 |m: &mut DescriptorProto_ReservedRange| { &mut m.end },
1921 ));
1922 ::protobuf::reflect::MessageDescriptor::new::<DescriptorProto_ReservedRange>(
1923 "DescriptorProto_ReservedRange",
1924 fields,
1925 file_descriptor_proto()
1926 )
1927 })
1928 }
1929 }
1930
1931 fn default_instance() -> &'static DescriptorProto_ReservedRange {
1932 static mut instance: ::protobuf::lazy::Lazy<DescriptorProto_ReservedRange> = ::protobuf::lazy::Lazy {
1933 lock: ::protobuf::lazy::ONCE_INIT,
1934 ptr: 0 as *const DescriptorProto_ReservedRange,
1935 };
1936 unsafe {
1937 instance.get(DescriptorProto_ReservedRange::new)
1938 }
1939 }
1940}
1941
1942impl ::protobuf::Clear for DescriptorProto_ReservedRange {
1943 fn clear(&mut self) {
1944 self.start = ::std::option::Option::None;
1945 self.end = ::std::option::Option::None;
1946 self.unknown_fields.clear();
1947 }
1948}
1949
1950impl ::std::fmt::Debug for DescriptorProto_ReservedRange {
1951 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1952 ::protobuf::text_format::fmt(self, f)
1953 }
1954}
1955
1956impl ::protobuf::reflect::ProtobufValue for DescriptorProto_ReservedRange {
1957 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
1958 ::protobuf::reflect::ProtobufValueRef::Message(self)
1959 }
1960}
1961
1962#[derive(PartialEq,Clone,Default)]
1963#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
1964pub struct FieldDescriptorProto {
1965 name: ::protobuf::SingularField<::std::string::String>,
1967 number: ::std::option::Option<i32>,
1968 label: ::std::option::Option<FieldDescriptorProto_Label>,
1969 field_type: ::std::option::Option<FieldDescriptorProto_Type>,
1970 type_name: ::protobuf::SingularField<::std::string::String>,
1971 extendee: ::protobuf::SingularField<::std::string::String>,
1972 default_value: ::protobuf::SingularField<::std::string::String>,
1973 oneof_index: ::std::option::Option<i32>,
1974 json_name: ::protobuf::SingularField<::std::string::String>,
1975 options: ::protobuf::SingularPtrField<FieldOptions>,
1976 #[cfg_attr(feature = "with-serde", serde(skip))]
1978 pub unknown_fields: ::protobuf::UnknownFields,
1979 #[cfg_attr(feature = "with-serde", serde(skip))]
1980 pub cached_size: ::protobuf::CachedSize,
1981}
1982
1983impl<'a> ::std::default::Default for &'a FieldDescriptorProto {
1984 fn default() -> &'a FieldDescriptorProto {
1985 <FieldDescriptorProto as ::protobuf::Message>::default_instance()
1986 }
1987}
1988
1989impl FieldDescriptorProto {
1990 pub fn new() -> FieldDescriptorProto {
1991 ::std::default::Default::default()
1992 }
1993
1994 pub fn get_name(&self) -> &str {
1998 match self.name.as_ref() {
1999 Some(v) => &v,
2000 None => "",
2001 }
2002 }
2003 pub fn clear_name(&mut self) {
2004 self.name.clear();
2005 }
2006
2007 pub fn has_name(&self) -> bool {
2008 self.name.is_some()
2009 }
2010
2011 pub fn set_name(&mut self, v: ::std::string::String) {
2013 self.name = ::protobuf::SingularField::some(v);
2014 }
2015
2016 pub fn mut_name(&mut self) -> &mut ::std::string::String {
2019 if self.name.is_none() {
2020 self.name.set_default();
2021 }
2022 self.name.as_mut().unwrap()
2023 }
2024
2025 pub fn take_name(&mut self) -> ::std::string::String {
2027 self.name.take().unwrap_or_else(|| ::std::string::String::new())
2028 }
2029
2030 pub fn get_number(&self) -> i32 {
2034 self.number.unwrap_or(0)
2035 }
2036 pub fn clear_number(&mut self) {
2037 self.number = ::std::option::Option::None;
2038 }
2039
2040 pub fn has_number(&self) -> bool {
2041 self.number.is_some()
2042 }
2043
2044 pub fn set_number(&mut self, v: i32) {
2046 self.number = ::std::option::Option::Some(v);
2047 }
2048
2049 pub fn get_label(&self) -> FieldDescriptorProto_Label {
2053 self.label.unwrap_or(FieldDescriptorProto_Label::LABEL_OPTIONAL)
2054 }
2055 pub fn clear_label(&mut self) {
2056 self.label = ::std::option::Option::None;
2057 }
2058
2059 pub fn has_label(&self) -> bool {
2060 self.label.is_some()
2061 }
2062
2063 pub fn set_label(&mut self, v: FieldDescriptorProto_Label) {
2065 self.label = ::std::option::Option::Some(v);
2066 }
2067
2068 pub fn get_field_type(&self) -> FieldDescriptorProto_Type {
2072 self.field_type.unwrap_or(FieldDescriptorProto_Type::TYPE_DOUBLE)
2073 }
2074 pub fn clear_field_type(&mut self) {
2075 self.field_type = ::std::option::Option::None;
2076 }
2077
2078 pub fn has_field_type(&self) -> bool {
2079 self.field_type.is_some()
2080 }
2081
2082 pub fn set_field_type(&mut self, v: FieldDescriptorProto_Type) {
2084 self.field_type = ::std::option::Option::Some(v);
2085 }
2086
2087 pub fn get_type_name(&self) -> &str {
2091 match self.type_name.as_ref() {
2092 Some(v) => &v,
2093 None => "",
2094 }
2095 }
2096 pub fn clear_type_name(&mut self) {
2097 self.type_name.clear();
2098 }
2099
2100 pub fn has_type_name(&self) -> bool {
2101 self.type_name.is_some()
2102 }
2103
2104 pub fn set_type_name(&mut self, v: ::std::string::String) {
2106 self.type_name = ::protobuf::SingularField::some(v);
2107 }
2108
2109 pub fn mut_type_name(&mut self) -> &mut ::std::string::String {
2112 if self.type_name.is_none() {
2113 self.type_name.set_default();
2114 }
2115 self.type_name.as_mut().unwrap()
2116 }
2117
2118 pub fn take_type_name(&mut self) -> ::std::string::String {
2120 self.type_name.take().unwrap_or_else(|| ::std::string::String::new())
2121 }
2122
2123 pub fn get_extendee(&self) -> &str {
2127 match self.extendee.as_ref() {
2128 Some(v) => &v,
2129 None => "",
2130 }
2131 }
2132 pub fn clear_extendee(&mut self) {
2133 self.extendee.clear();
2134 }
2135
2136 pub fn has_extendee(&self) -> bool {
2137 self.extendee.is_some()
2138 }
2139
2140 pub fn set_extendee(&mut self, v: ::std::string::String) {
2142 self.extendee = ::protobuf::SingularField::some(v);
2143 }
2144
2145 pub fn mut_extendee(&mut self) -> &mut ::std::string::String {
2148 if self.extendee.is_none() {
2149 self.extendee.set_default();
2150 }
2151 self.extendee.as_mut().unwrap()
2152 }
2153
2154 pub fn take_extendee(&mut self) -> ::std::string::String {
2156 self.extendee.take().unwrap_or_else(|| ::std::string::String::new())
2157 }
2158
2159 pub fn get_default_value(&self) -> &str {
2163 match self.default_value.as_ref() {
2164 Some(v) => &v,
2165 None => "",
2166 }
2167 }
2168 pub fn clear_default_value(&mut self) {
2169 self.default_value.clear();
2170 }
2171
2172 pub fn has_default_value(&self) -> bool {
2173 self.default_value.is_some()
2174 }
2175
2176 pub fn set_default_value(&mut self, v: ::std::string::String) {
2178 self.default_value = ::protobuf::SingularField::some(v);
2179 }
2180
2181 pub fn mut_default_value(&mut self) -> &mut ::std::string::String {
2184 if self.default_value.is_none() {
2185 self.default_value.set_default();
2186 }
2187 self.default_value.as_mut().unwrap()
2188 }
2189
2190 pub fn take_default_value(&mut self) -> ::std::string::String {
2192 self.default_value.take().unwrap_or_else(|| ::std::string::String::new())
2193 }
2194
2195 pub fn get_oneof_index(&self) -> i32 {
2199 self.oneof_index.unwrap_or(0)
2200 }
2201 pub fn clear_oneof_index(&mut self) {
2202 self.oneof_index = ::std::option::Option::None;
2203 }
2204
2205 pub fn has_oneof_index(&self) -> bool {
2206 self.oneof_index.is_some()
2207 }
2208
2209 pub fn set_oneof_index(&mut self, v: i32) {
2211 self.oneof_index = ::std::option::Option::Some(v);
2212 }
2213
2214 pub fn get_json_name(&self) -> &str {
2218 match self.json_name.as_ref() {
2219 Some(v) => &v,
2220 None => "",
2221 }
2222 }
2223 pub fn clear_json_name(&mut self) {
2224 self.json_name.clear();
2225 }
2226
2227 pub fn has_json_name(&self) -> bool {
2228 self.json_name.is_some()
2229 }
2230
2231 pub fn set_json_name(&mut self, v: ::std::string::String) {
2233 self.json_name = ::protobuf::SingularField::some(v);
2234 }
2235
2236 pub fn mut_json_name(&mut self) -> &mut ::std::string::String {
2239 if self.json_name.is_none() {
2240 self.json_name.set_default();
2241 }
2242 self.json_name.as_mut().unwrap()
2243 }
2244
2245 pub fn take_json_name(&mut self) -> ::std::string::String {
2247 self.json_name.take().unwrap_or_else(|| ::std::string::String::new())
2248 }
2249
2250 pub fn get_options(&self) -> &FieldOptions {
2254 self.options.as_ref().unwrap_or_else(|| FieldOptions::default_instance())
2255 }
2256 pub fn clear_options(&mut self) {
2257 self.options.clear();
2258 }
2259
2260 pub fn has_options(&self) -> bool {
2261 self.options.is_some()
2262 }
2263
2264 pub fn set_options(&mut self, v: FieldOptions) {
2266 self.options = ::protobuf::SingularPtrField::some(v);
2267 }
2268
2269 pub fn mut_options(&mut self) -> &mut FieldOptions {
2272 if self.options.is_none() {
2273 self.options.set_default();
2274 }
2275 self.options.as_mut().unwrap()
2276 }
2277
2278 pub fn take_options(&mut self) -> FieldOptions {
2280 self.options.take().unwrap_or_else(|| FieldOptions::new())
2281 }
2282}
2283
2284impl ::protobuf::Message for FieldDescriptorProto {
2285 fn is_initialized(&self) -> bool {
2286 for v in &self.options {
2287 if !v.is_initialized() {
2288 return false;
2289 }
2290 };
2291 true
2292 }
2293
2294 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
2295 while !is.eof()? {
2296 let (field_number, wire_type) = is.read_tag_unpack()?;
2297 match field_number {
2298 1 => {
2299 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.name)?;
2300 },
2301 3 => {
2302 if wire_type != ::protobuf::wire_format::WireTypeVarint {
2303 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2304 }
2305 let tmp = is.read_int32()?;
2306 self.number = ::std::option::Option::Some(tmp);
2307 },
2308 4 => {
2309 ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.label, 4, &mut self.unknown_fields)?
2310 },
2311 5 => {
2312 ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.field_type, 5, &mut self.unknown_fields)?
2313 },
2314 6 => {
2315 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.type_name)?;
2316 },
2317 2 => {
2318 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.extendee)?;
2319 },
2320 7 => {
2321 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.default_value)?;
2322 },
2323 9 => {
2324 if wire_type != ::protobuf::wire_format::WireTypeVarint {
2325 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2326 }
2327 let tmp = is.read_int32()?;
2328 self.oneof_index = ::std::option::Option::Some(tmp);
2329 },
2330 10 => {
2331 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.json_name)?;
2332 },
2333 8 => {
2334 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.options)?;
2335 },
2336 _ => {
2337 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
2338 },
2339 };
2340 }
2341 ::std::result::Result::Ok(())
2342 }
2343
2344 #[allow(unused_variables)]
2346 fn compute_size(&self) -> u32 {
2347 let mut my_size = 0;
2348 if let Some(ref v) = self.name.as_ref() {
2349 my_size += ::protobuf::rt::string_size(1, &v);
2350 }
2351 if let Some(v) = self.number {
2352 my_size += ::protobuf::rt::value_size(3, v, ::protobuf::wire_format::WireTypeVarint);
2353 }
2354 if let Some(v) = self.label {
2355 my_size += ::protobuf::rt::enum_size(4, v);
2356 }
2357 if let Some(v) = self.field_type {
2358 my_size += ::protobuf::rt::enum_size(5, v);
2359 }
2360 if let Some(ref v) = self.type_name.as_ref() {
2361 my_size += ::protobuf::rt::string_size(6, &v);
2362 }
2363 if let Some(ref v) = self.extendee.as_ref() {
2364 my_size += ::protobuf::rt::string_size(2, &v);
2365 }
2366 if let Some(ref v) = self.default_value.as_ref() {
2367 my_size += ::protobuf::rt::string_size(7, &v);
2368 }
2369 if let Some(v) = self.oneof_index {
2370 my_size += ::protobuf::rt::value_size(9, v, ::protobuf::wire_format::WireTypeVarint);
2371 }
2372 if let Some(ref v) = self.json_name.as_ref() {
2373 my_size += ::protobuf::rt::string_size(10, &v);
2374 }
2375 if let Some(ref v) = self.options.as_ref() {
2376 let len = v.compute_size();
2377 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2378 }
2379 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
2380 self.cached_size.set(my_size);
2381 my_size
2382 }
2383
2384 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
2385 if let Some(ref v) = self.name.as_ref() {
2386 os.write_string(1, &v)?;
2387 }
2388 if let Some(v) = self.number {
2389 os.write_int32(3, v)?;
2390 }
2391 if let Some(v) = self.label {
2392 os.write_enum(4, v.value())?;
2393 }
2394 if let Some(v) = self.field_type {
2395 os.write_enum(5, v.value())?;
2396 }
2397 if let Some(ref v) = self.type_name.as_ref() {
2398 os.write_string(6, &v)?;
2399 }
2400 if let Some(ref v) = self.extendee.as_ref() {
2401 os.write_string(2, &v)?;
2402 }
2403 if let Some(ref v) = self.default_value.as_ref() {
2404 os.write_string(7, &v)?;
2405 }
2406 if let Some(v) = self.oneof_index {
2407 os.write_int32(9, v)?;
2408 }
2409 if let Some(ref v) = self.json_name.as_ref() {
2410 os.write_string(10, &v)?;
2411 }
2412 if let Some(ref v) = self.options.as_ref() {
2413 os.write_tag(8, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2414 os.write_raw_varint32(v.get_cached_size())?;
2415 v.write_to_with_cached_sizes(os)?;
2416 }
2417 os.write_unknown_fields(self.get_unknown_fields())?;
2418 ::std::result::Result::Ok(())
2419 }
2420
2421 fn get_cached_size(&self) -> u32 {
2422 self.cached_size.get()
2423 }
2424
2425 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
2426 &self.unknown_fields
2427 }
2428
2429 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
2430 &mut self.unknown_fields
2431 }
2432
2433 fn as_any(&self) -> &dyn (::std::any::Any) {
2434 self as &dyn (::std::any::Any)
2435 }
2436 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
2437 self as &mut dyn (::std::any::Any)
2438 }
2439 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
2440 self
2441 }
2442
2443 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
2444 Self::descriptor_static()
2445 }
2446
2447 fn new() -> FieldDescriptorProto {
2448 FieldDescriptorProto::new()
2449 }
2450
2451 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
2452 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
2453 lock: ::protobuf::lazy::ONCE_INIT,
2454 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
2455 };
2456 unsafe {
2457 descriptor.get(|| {
2458 let mut fields = ::std::vec::Vec::new();
2459 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2460 "name",
2461 |m: &FieldDescriptorProto| { &m.name },
2462 |m: &mut FieldDescriptorProto| { &mut m.name },
2463 ));
2464 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
2465 "number",
2466 |m: &FieldDescriptorProto| { &m.number },
2467 |m: &mut FieldDescriptorProto| { &mut m.number },
2468 ));
2469 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<FieldDescriptorProto_Label>>(
2470 "label",
2471 |m: &FieldDescriptorProto| { &m.label },
2472 |m: &mut FieldDescriptorProto| { &mut m.label },
2473 ));
2474 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<FieldDescriptorProto_Type>>(
2475 "type",
2476 |m: &FieldDescriptorProto| { &m.field_type },
2477 |m: &mut FieldDescriptorProto| { &mut m.field_type },
2478 ));
2479 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2480 "type_name",
2481 |m: &FieldDescriptorProto| { &m.type_name },
2482 |m: &mut FieldDescriptorProto| { &mut m.type_name },
2483 ));
2484 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2485 "extendee",
2486 |m: &FieldDescriptorProto| { &m.extendee },
2487 |m: &mut FieldDescriptorProto| { &mut m.extendee },
2488 ));
2489 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2490 "default_value",
2491 |m: &FieldDescriptorProto| { &m.default_value },
2492 |m: &mut FieldDescriptorProto| { &mut m.default_value },
2493 ));
2494 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
2495 "oneof_index",
2496 |m: &FieldDescriptorProto| { &m.oneof_index },
2497 |m: &mut FieldDescriptorProto| { &mut m.oneof_index },
2498 ));
2499 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2500 "json_name",
2501 |m: &FieldDescriptorProto| { &m.json_name },
2502 |m: &mut FieldDescriptorProto| { &mut m.json_name },
2503 ));
2504 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<FieldOptions>>(
2505 "options",
2506 |m: &FieldDescriptorProto| { &m.options },
2507 |m: &mut FieldDescriptorProto| { &mut m.options },
2508 ));
2509 ::protobuf::reflect::MessageDescriptor::new::<FieldDescriptorProto>(
2510 "FieldDescriptorProto",
2511 fields,
2512 file_descriptor_proto()
2513 )
2514 })
2515 }
2516 }
2517
2518 fn default_instance() -> &'static FieldDescriptorProto {
2519 static mut instance: ::protobuf::lazy::Lazy<FieldDescriptorProto> = ::protobuf::lazy::Lazy {
2520 lock: ::protobuf::lazy::ONCE_INIT,
2521 ptr: 0 as *const FieldDescriptorProto,
2522 };
2523 unsafe {
2524 instance.get(FieldDescriptorProto::new)
2525 }
2526 }
2527}
2528
2529impl ::protobuf::Clear for FieldDescriptorProto {
2530 fn clear(&mut self) {
2531 self.name.clear();
2532 self.number = ::std::option::Option::None;
2533 self.label = ::std::option::Option::None;
2534 self.field_type = ::std::option::Option::None;
2535 self.type_name.clear();
2536 self.extendee.clear();
2537 self.default_value.clear();
2538 self.oneof_index = ::std::option::Option::None;
2539 self.json_name.clear();
2540 self.options.clear();
2541 self.unknown_fields.clear();
2542 }
2543}
2544
2545impl ::std::fmt::Debug for FieldDescriptorProto {
2546 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2547 ::protobuf::text_format::fmt(self, f)
2548 }
2549}
2550
2551impl ::protobuf::reflect::ProtobufValue for FieldDescriptorProto {
2552 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
2553 ::protobuf::reflect::ProtobufValueRef::Message(self)
2554 }
2555}
2556
2557#[derive(Clone,PartialEq,Eq,Debug,Hash)]
2558#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
2559pub enum FieldDescriptorProto_Type {
2560 TYPE_DOUBLE = 1,
2561 TYPE_FLOAT = 2,
2562 TYPE_INT64 = 3,
2563 TYPE_UINT64 = 4,
2564 TYPE_INT32 = 5,
2565 TYPE_FIXED64 = 6,
2566 TYPE_FIXED32 = 7,
2567 TYPE_BOOL = 8,
2568 TYPE_STRING = 9,
2569 TYPE_GROUP = 10,
2570 TYPE_MESSAGE = 11,
2571 TYPE_BYTES = 12,
2572 TYPE_UINT32 = 13,
2573 TYPE_ENUM = 14,
2574 TYPE_SFIXED32 = 15,
2575 TYPE_SFIXED64 = 16,
2576 TYPE_SINT32 = 17,
2577 TYPE_SINT64 = 18,
2578}
2579
2580impl ::protobuf::ProtobufEnum for FieldDescriptorProto_Type {
2581 fn value(&self) -> i32 {
2582 *self as i32
2583 }
2584
2585 fn from_i32(value: i32) -> ::std::option::Option<FieldDescriptorProto_Type> {
2586 match value {
2587 1 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_DOUBLE),
2588 2 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_FLOAT),
2589 3 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_INT64),
2590 4 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_UINT64),
2591 5 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_INT32),
2592 6 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_FIXED64),
2593 7 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_FIXED32),
2594 8 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_BOOL),
2595 9 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_STRING),
2596 10 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_GROUP),
2597 11 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_MESSAGE),
2598 12 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_BYTES),
2599 13 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_UINT32),
2600 14 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_ENUM),
2601 15 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_SFIXED32),
2602 16 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_SFIXED64),
2603 17 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_SINT32),
2604 18 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_SINT64),
2605 _ => ::std::option::Option::None
2606 }
2607 }
2608
2609 fn values() -> &'static [Self] {
2610 static values: &'static [FieldDescriptorProto_Type] = &[
2611 FieldDescriptorProto_Type::TYPE_DOUBLE,
2612 FieldDescriptorProto_Type::TYPE_FLOAT,
2613 FieldDescriptorProto_Type::TYPE_INT64,
2614 FieldDescriptorProto_Type::TYPE_UINT64,
2615 FieldDescriptorProto_Type::TYPE_INT32,
2616 FieldDescriptorProto_Type::TYPE_FIXED64,
2617 FieldDescriptorProto_Type::TYPE_FIXED32,
2618 FieldDescriptorProto_Type::TYPE_BOOL,
2619 FieldDescriptorProto_Type::TYPE_STRING,
2620 FieldDescriptorProto_Type::TYPE_GROUP,
2621 FieldDescriptorProto_Type::TYPE_MESSAGE,
2622 FieldDescriptorProto_Type::TYPE_BYTES,
2623 FieldDescriptorProto_Type::TYPE_UINT32,
2624 FieldDescriptorProto_Type::TYPE_ENUM,
2625 FieldDescriptorProto_Type::TYPE_SFIXED32,
2626 FieldDescriptorProto_Type::TYPE_SFIXED64,
2627 FieldDescriptorProto_Type::TYPE_SINT32,
2628 FieldDescriptorProto_Type::TYPE_SINT64,
2629 ];
2630 values
2631 }
2632
2633 fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
2634 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy {
2635 lock: ::protobuf::lazy::ONCE_INIT,
2636 ptr: 0 as *const ::protobuf::reflect::EnumDescriptor,
2637 };
2638 unsafe {
2639 descriptor.get(|| {
2640 ::protobuf::reflect::EnumDescriptor::new("FieldDescriptorProto_Type", file_descriptor_proto())
2641 })
2642 }
2643 }
2644}
2645
2646impl ::std::marker::Copy for FieldDescriptorProto_Type {
2647}
2648
2649impl ::std::default::Default for FieldDescriptorProto_Type {
2651 fn default() -> Self {
2652 FieldDescriptorProto_Type::TYPE_DOUBLE
2653 }
2654}
2655
2656impl ::protobuf::reflect::ProtobufValue for FieldDescriptorProto_Type {
2657 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
2658 ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor())
2659 }
2660}
2661
2662#[derive(Clone,PartialEq,Eq,Debug,Hash)]
2663#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
2664pub enum FieldDescriptorProto_Label {
2665 LABEL_OPTIONAL = 1,
2666 LABEL_REQUIRED = 2,
2667 LABEL_REPEATED = 3,
2668}
2669
2670impl ::protobuf::ProtobufEnum for FieldDescriptorProto_Label {
2671 fn value(&self) -> i32 {
2672 *self as i32
2673 }
2674
2675 fn from_i32(value: i32) -> ::std::option::Option<FieldDescriptorProto_Label> {
2676 match value {
2677 1 => ::std::option::Option::Some(FieldDescriptorProto_Label::LABEL_OPTIONAL),
2678 2 => ::std::option::Option::Some(FieldDescriptorProto_Label::LABEL_REQUIRED),
2679 3 => ::std::option::Option::Some(FieldDescriptorProto_Label::LABEL_REPEATED),
2680 _ => ::std::option::Option::None
2681 }
2682 }
2683
2684 fn values() -> &'static [Self] {
2685 static values: &'static [FieldDescriptorProto_Label] = &[
2686 FieldDescriptorProto_Label::LABEL_OPTIONAL,
2687 FieldDescriptorProto_Label::LABEL_REQUIRED,
2688 FieldDescriptorProto_Label::LABEL_REPEATED,
2689 ];
2690 values
2691 }
2692
2693 fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
2694 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy {
2695 lock: ::protobuf::lazy::ONCE_INIT,
2696 ptr: 0 as *const ::protobuf::reflect::EnumDescriptor,
2697 };
2698 unsafe {
2699 descriptor.get(|| {
2700 ::protobuf::reflect::EnumDescriptor::new("FieldDescriptorProto_Label", file_descriptor_proto())
2701 })
2702 }
2703 }
2704}
2705
2706impl ::std::marker::Copy for FieldDescriptorProto_Label {
2707}
2708
2709impl ::std::default::Default for FieldDescriptorProto_Label {
2711 fn default() -> Self {
2712 FieldDescriptorProto_Label::LABEL_OPTIONAL
2713 }
2714}
2715
2716impl ::protobuf::reflect::ProtobufValue for FieldDescriptorProto_Label {
2717 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
2718 ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor())
2719 }
2720}
2721
2722#[derive(PartialEq,Clone,Default)]
2723#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
2724pub struct OneofDescriptorProto {
2725 name: ::protobuf::SingularField<::std::string::String>,
2727 options: ::protobuf::SingularPtrField<OneofOptions>,
2728 #[cfg_attr(feature = "with-serde", serde(skip))]
2730 pub unknown_fields: ::protobuf::UnknownFields,
2731 #[cfg_attr(feature = "with-serde", serde(skip))]
2732 pub cached_size: ::protobuf::CachedSize,
2733}
2734
2735impl<'a> ::std::default::Default for &'a OneofDescriptorProto {
2736 fn default() -> &'a OneofDescriptorProto {
2737 <OneofDescriptorProto as ::protobuf::Message>::default_instance()
2738 }
2739}
2740
2741impl OneofDescriptorProto {
2742 pub fn new() -> OneofDescriptorProto {
2743 ::std::default::Default::default()
2744 }
2745
2746 pub fn get_name(&self) -> &str {
2750 match self.name.as_ref() {
2751 Some(v) => &v,
2752 None => "",
2753 }
2754 }
2755 pub fn clear_name(&mut self) {
2756 self.name.clear();
2757 }
2758
2759 pub fn has_name(&self) -> bool {
2760 self.name.is_some()
2761 }
2762
2763 pub fn set_name(&mut self, v: ::std::string::String) {
2765 self.name = ::protobuf::SingularField::some(v);
2766 }
2767
2768 pub fn mut_name(&mut self) -> &mut ::std::string::String {
2771 if self.name.is_none() {
2772 self.name.set_default();
2773 }
2774 self.name.as_mut().unwrap()
2775 }
2776
2777 pub fn take_name(&mut self) -> ::std::string::String {
2779 self.name.take().unwrap_or_else(|| ::std::string::String::new())
2780 }
2781
2782 pub fn get_options(&self) -> &OneofOptions {
2786 self.options.as_ref().unwrap_or_else(|| OneofOptions::default_instance())
2787 }
2788 pub fn clear_options(&mut self) {
2789 self.options.clear();
2790 }
2791
2792 pub fn has_options(&self) -> bool {
2793 self.options.is_some()
2794 }
2795
2796 pub fn set_options(&mut self, v: OneofOptions) {
2798 self.options = ::protobuf::SingularPtrField::some(v);
2799 }
2800
2801 pub fn mut_options(&mut self) -> &mut OneofOptions {
2804 if self.options.is_none() {
2805 self.options.set_default();
2806 }
2807 self.options.as_mut().unwrap()
2808 }
2809
2810 pub fn take_options(&mut self) -> OneofOptions {
2812 self.options.take().unwrap_or_else(|| OneofOptions::new())
2813 }
2814}
2815
2816impl ::protobuf::Message for OneofDescriptorProto {
2817 fn is_initialized(&self) -> bool {
2818 for v in &self.options {
2819 if !v.is_initialized() {
2820 return false;
2821 }
2822 };
2823 true
2824 }
2825
2826 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
2827 while !is.eof()? {
2828 let (field_number, wire_type) = is.read_tag_unpack()?;
2829 match field_number {
2830 1 => {
2831 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.name)?;
2832 },
2833 2 => {
2834 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.options)?;
2835 },
2836 _ => {
2837 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
2838 },
2839 };
2840 }
2841 ::std::result::Result::Ok(())
2842 }
2843
2844 #[allow(unused_variables)]
2846 fn compute_size(&self) -> u32 {
2847 let mut my_size = 0;
2848 if let Some(ref v) = self.name.as_ref() {
2849 my_size += ::protobuf::rt::string_size(1, &v);
2850 }
2851 if let Some(ref v) = self.options.as_ref() {
2852 let len = v.compute_size();
2853 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2854 }
2855 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
2856 self.cached_size.set(my_size);
2857 my_size
2858 }
2859
2860 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
2861 if let Some(ref v) = self.name.as_ref() {
2862 os.write_string(1, &v)?;
2863 }
2864 if let Some(ref v) = self.options.as_ref() {
2865 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2866 os.write_raw_varint32(v.get_cached_size())?;
2867 v.write_to_with_cached_sizes(os)?;
2868 }
2869 os.write_unknown_fields(self.get_unknown_fields())?;
2870 ::std::result::Result::Ok(())
2871 }
2872
2873 fn get_cached_size(&self) -> u32 {
2874 self.cached_size.get()
2875 }
2876
2877 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
2878 &self.unknown_fields
2879 }
2880
2881 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
2882 &mut self.unknown_fields
2883 }
2884
2885 fn as_any(&self) -> &dyn (::std::any::Any) {
2886 self as &dyn (::std::any::Any)
2887 }
2888 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
2889 self as &mut dyn (::std::any::Any)
2890 }
2891 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
2892 self
2893 }
2894
2895 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
2896 Self::descriptor_static()
2897 }
2898
2899 fn new() -> OneofDescriptorProto {
2900 OneofDescriptorProto::new()
2901 }
2902
2903 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
2904 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
2905 lock: ::protobuf::lazy::ONCE_INIT,
2906 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
2907 };
2908 unsafe {
2909 descriptor.get(|| {
2910 let mut fields = ::std::vec::Vec::new();
2911 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2912 "name",
2913 |m: &OneofDescriptorProto| { &m.name },
2914 |m: &mut OneofDescriptorProto| { &mut m.name },
2915 ));
2916 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OneofOptions>>(
2917 "options",
2918 |m: &OneofDescriptorProto| { &m.options },
2919 |m: &mut OneofDescriptorProto| { &mut m.options },
2920 ));
2921 ::protobuf::reflect::MessageDescriptor::new::<OneofDescriptorProto>(
2922 "OneofDescriptorProto",
2923 fields,
2924 file_descriptor_proto()
2925 )
2926 })
2927 }
2928 }
2929
2930 fn default_instance() -> &'static OneofDescriptorProto {
2931 static mut instance: ::protobuf::lazy::Lazy<OneofDescriptorProto> = ::protobuf::lazy::Lazy {
2932 lock: ::protobuf::lazy::ONCE_INIT,
2933 ptr: 0 as *const OneofDescriptorProto,
2934 };
2935 unsafe {
2936 instance.get(OneofDescriptorProto::new)
2937 }
2938 }
2939}
2940
2941impl ::protobuf::Clear for OneofDescriptorProto {
2942 fn clear(&mut self) {
2943 self.name.clear();
2944 self.options.clear();
2945 self.unknown_fields.clear();
2946 }
2947}
2948
2949impl ::std::fmt::Debug for OneofDescriptorProto {
2950 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2951 ::protobuf::text_format::fmt(self, f)
2952 }
2953}
2954
2955impl ::protobuf::reflect::ProtobufValue for OneofDescriptorProto {
2956 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
2957 ::protobuf::reflect::ProtobufValueRef::Message(self)
2958 }
2959}
2960
2961#[derive(PartialEq,Clone,Default)]
2962#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
2963pub struct EnumDescriptorProto {
2964 name: ::protobuf::SingularField<::std::string::String>,
2966 value: ::protobuf::RepeatedField<EnumValueDescriptorProto>,
2967 options: ::protobuf::SingularPtrField<EnumOptions>,
2968 #[cfg_attr(feature = "with-serde", serde(skip))]
2970 pub unknown_fields: ::protobuf::UnknownFields,
2971 #[cfg_attr(feature = "with-serde", serde(skip))]
2972 pub cached_size: ::protobuf::CachedSize,
2973}
2974
2975impl<'a> ::std::default::Default for &'a EnumDescriptorProto {
2976 fn default() -> &'a EnumDescriptorProto {
2977 <EnumDescriptorProto as ::protobuf::Message>::default_instance()
2978 }
2979}
2980
2981impl EnumDescriptorProto {
2982 pub fn new() -> EnumDescriptorProto {
2983 ::std::default::Default::default()
2984 }
2985
2986 pub fn get_name(&self) -> &str {
2990 match self.name.as_ref() {
2991 Some(v) => &v,
2992 None => "",
2993 }
2994 }
2995 pub fn clear_name(&mut self) {
2996 self.name.clear();
2997 }
2998
2999 pub fn has_name(&self) -> bool {
3000 self.name.is_some()
3001 }
3002
3003 pub fn set_name(&mut self, v: ::std::string::String) {
3005 self.name = ::protobuf::SingularField::some(v);
3006 }
3007
3008 pub fn mut_name(&mut self) -> &mut ::std::string::String {
3011 if self.name.is_none() {
3012 self.name.set_default();
3013 }
3014 self.name.as_mut().unwrap()
3015 }
3016
3017 pub fn take_name(&mut self) -> ::std::string::String {
3019 self.name.take().unwrap_or_else(|| ::std::string::String::new())
3020 }
3021
3022 pub fn get_value(&self) -> &[EnumValueDescriptorProto] {
3026 &self.value
3027 }
3028 pub fn clear_value(&mut self) {
3029 self.value.clear();
3030 }
3031
3032 pub fn set_value(&mut self, v: ::protobuf::RepeatedField<EnumValueDescriptorProto>) {
3034 self.value = v;
3035 }
3036
3037 pub fn mut_value(&mut self) -> &mut ::protobuf::RepeatedField<EnumValueDescriptorProto> {
3039 &mut self.value
3040 }
3041
3042 pub fn take_value(&mut self) -> ::protobuf::RepeatedField<EnumValueDescriptorProto> {
3044 ::std::mem::replace(&mut self.value, ::protobuf::RepeatedField::new())
3045 }
3046
3047 pub fn get_options(&self) -> &EnumOptions {
3051 self.options.as_ref().unwrap_or_else(|| EnumOptions::default_instance())
3052 }
3053 pub fn clear_options(&mut self) {
3054 self.options.clear();
3055 }
3056
3057 pub fn has_options(&self) -> bool {
3058 self.options.is_some()
3059 }
3060
3061 pub fn set_options(&mut self, v: EnumOptions) {
3063 self.options = ::protobuf::SingularPtrField::some(v);
3064 }
3065
3066 pub fn mut_options(&mut self) -> &mut EnumOptions {
3069 if self.options.is_none() {
3070 self.options.set_default();
3071 }
3072 self.options.as_mut().unwrap()
3073 }
3074
3075 pub fn take_options(&mut self) -> EnumOptions {
3077 self.options.take().unwrap_or_else(|| EnumOptions::new())
3078 }
3079}
3080
3081impl ::protobuf::Message for EnumDescriptorProto {
3082 fn is_initialized(&self) -> bool {
3083 for v in &self.value {
3084 if !v.is_initialized() {
3085 return false;
3086 }
3087 };
3088 for v in &self.options {
3089 if !v.is_initialized() {
3090 return false;
3091 }
3092 };
3093 true
3094 }
3095
3096 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
3097 while !is.eof()? {
3098 let (field_number, wire_type) = is.read_tag_unpack()?;
3099 match field_number {
3100 1 => {
3101 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.name)?;
3102 },
3103 2 => {
3104 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.value)?;
3105 },
3106 3 => {
3107 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.options)?;
3108 },
3109 _ => {
3110 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
3111 },
3112 };
3113 }
3114 ::std::result::Result::Ok(())
3115 }
3116
3117 #[allow(unused_variables)]
3119 fn compute_size(&self) -> u32 {
3120 let mut my_size = 0;
3121 if let Some(ref v) = self.name.as_ref() {
3122 my_size += ::protobuf::rt::string_size(1, &v);
3123 }
3124 for value in &self.value {
3125 let len = value.compute_size();
3126 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
3127 };
3128 if let Some(ref v) = self.options.as_ref() {
3129 let len = v.compute_size();
3130 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
3131 }
3132 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
3133 self.cached_size.set(my_size);
3134 my_size
3135 }
3136
3137 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
3138 if let Some(ref v) = self.name.as_ref() {
3139 os.write_string(1, &v)?;
3140 }
3141 for v in &self.value {
3142 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3143 os.write_raw_varint32(v.get_cached_size())?;
3144 v.write_to_with_cached_sizes(os)?;
3145 };
3146 if let Some(ref v) = self.options.as_ref() {
3147 os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3148 os.write_raw_varint32(v.get_cached_size())?;
3149 v.write_to_with_cached_sizes(os)?;
3150 }
3151 os.write_unknown_fields(self.get_unknown_fields())?;
3152 ::std::result::Result::Ok(())
3153 }
3154
3155 fn get_cached_size(&self) -> u32 {
3156 self.cached_size.get()
3157 }
3158
3159 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
3160 &self.unknown_fields
3161 }
3162
3163 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
3164 &mut self.unknown_fields
3165 }
3166
3167 fn as_any(&self) -> &dyn (::std::any::Any) {
3168 self as &dyn (::std::any::Any)
3169 }
3170 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
3171 self as &mut dyn (::std::any::Any)
3172 }
3173 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
3174 self
3175 }
3176
3177 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
3178 Self::descriptor_static()
3179 }
3180
3181 fn new() -> EnumDescriptorProto {
3182 EnumDescriptorProto::new()
3183 }
3184
3185 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
3186 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
3187 lock: ::protobuf::lazy::ONCE_INIT,
3188 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
3189 };
3190 unsafe {
3191 descriptor.get(|| {
3192 let mut fields = ::std::vec::Vec::new();
3193 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3194 "name",
3195 |m: &EnumDescriptorProto| { &m.name },
3196 |m: &mut EnumDescriptorProto| { &mut m.name },
3197 ));
3198 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<EnumValueDescriptorProto>>(
3199 "value",
3200 |m: &EnumDescriptorProto| { &m.value },
3201 |m: &mut EnumDescriptorProto| { &mut m.value },
3202 ));
3203 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<EnumOptions>>(
3204 "options",
3205 |m: &EnumDescriptorProto| { &m.options },
3206 |m: &mut EnumDescriptorProto| { &mut m.options },
3207 ));
3208 ::protobuf::reflect::MessageDescriptor::new::<EnumDescriptorProto>(
3209 "EnumDescriptorProto",
3210 fields,
3211 file_descriptor_proto()
3212 )
3213 })
3214 }
3215 }
3216
3217 fn default_instance() -> &'static EnumDescriptorProto {
3218 static mut instance: ::protobuf::lazy::Lazy<EnumDescriptorProto> = ::protobuf::lazy::Lazy {
3219 lock: ::protobuf::lazy::ONCE_INIT,
3220 ptr: 0 as *const EnumDescriptorProto,
3221 };
3222 unsafe {
3223 instance.get(EnumDescriptorProto::new)
3224 }
3225 }
3226}
3227
3228impl ::protobuf::Clear for EnumDescriptorProto {
3229 fn clear(&mut self) {
3230 self.name.clear();
3231 self.value.clear();
3232 self.options.clear();
3233 self.unknown_fields.clear();
3234 }
3235}
3236
3237impl ::std::fmt::Debug for EnumDescriptorProto {
3238 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3239 ::protobuf::text_format::fmt(self, f)
3240 }
3241}
3242
3243impl ::protobuf::reflect::ProtobufValue for EnumDescriptorProto {
3244 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
3245 ::protobuf::reflect::ProtobufValueRef::Message(self)
3246 }
3247}
3248
3249#[derive(PartialEq,Clone,Default)]
3250#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
3251pub struct EnumValueDescriptorProto {
3252 name: ::protobuf::SingularField<::std::string::String>,
3254 number: ::std::option::Option<i32>,
3255 options: ::protobuf::SingularPtrField<EnumValueOptions>,
3256 #[cfg_attr(feature = "with-serde", serde(skip))]
3258 pub unknown_fields: ::protobuf::UnknownFields,
3259 #[cfg_attr(feature = "with-serde", serde(skip))]
3260 pub cached_size: ::protobuf::CachedSize,
3261}
3262
3263impl<'a> ::std::default::Default for &'a EnumValueDescriptorProto {
3264 fn default() -> &'a EnumValueDescriptorProto {
3265 <EnumValueDescriptorProto as ::protobuf::Message>::default_instance()
3266 }
3267}
3268
3269impl EnumValueDescriptorProto {
3270 pub fn new() -> EnumValueDescriptorProto {
3271 ::std::default::Default::default()
3272 }
3273
3274 pub fn get_name(&self) -> &str {
3278 match self.name.as_ref() {
3279 Some(v) => &v,
3280 None => "",
3281 }
3282 }
3283 pub fn clear_name(&mut self) {
3284 self.name.clear();
3285 }
3286
3287 pub fn has_name(&self) -> bool {
3288 self.name.is_some()
3289 }
3290
3291 pub fn set_name(&mut self, v: ::std::string::String) {
3293 self.name = ::protobuf::SingularField::some(v);
3294 }
3295
3296 pub fn mut_name(&mut self) -> &mut ::std::string::String {
3299 if self.name.is_none() {
3300 self.name.set_default();
3301 }
3302 self.name.as_mut().unwrap()
3303 }
3304
3305 pub fn take_name(&mut self) -> ::std::string::String {
3307 self.name.take().unwrap_or_else(|| ::std::string::String::new())
3308 }
3309
3310 pub fn get_number(&self) -> i32 {
3314 self.number.unwrap_or(0)
3315 }
3316 pub fn clear_number(&mut self) {
3317 self.number = ::std::option::Option::None;
3318 }
3319
3320 pub fn has_number(&self) -> bool {
3321 self.number.is_some()
3322 }
3323
3324 pub fn set_number(&mut self, v: i32) {
3326 self.number = ::std::option::Option::Some(v);
3327 }
3328
3329 pub fn get_options(&self) -> &EnumValueOptions {
3333 self.options.as_ref().unwrap_or_else(|| EnumValueOptions::default_instance())
3334 }
3335 pub fn clear_options(&mut self) {
3336 self.options.clear();
3337 }
3338
3339 pub fn has_options(&self) -> bool {
3340 self.options.is_some()
3341 }
3342
3343 pub fn set_options(&mut self, v: EnumValueOptions) {
3345 self.options = ::protobuf::SingularPtrField::some(v);
3346 }
3347
3348 pub fn mut_options(&mut self) -> &mut EnumValueOptions {
3351 if self.options.is_none() {
3352 self.options.set_default();
3353 }
3354 self.options.as_mut().unwrap()
3355 }
3356
3357 pub fn take_options(&mut self) -> EnumValueOptions {
3359 self.options.take().unwrap_or_else(|| EnumValueOptions::new())
3360 }
3361}
3362
3363impl ::protobuf::Message for EnumValueDescriptorProto {
3364 fn is_initialized(&self) -> bool {
3365 for v in &self.options {
3366 if !v.is_initialized() {
3367 return false;
3368 }
3369 };
3370 true
3371 }
3372
3373 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
3374 while !is.eof()? {
3375 let (field_number, wire_type) = is.read_tag_unpack()?;
3376 match field_number {
3377 1 => {
3378 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.name)?;
3379 },
3380 2 => {
3381 if wire_type != ::protobuf::wire_format::WireTypeVarint {
3382 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
3383 }
3384 let tmp = is.read_int32()?;
3385 self.number = ::std::option::Option::Some(tmp);
3386 },
3387 3 => {
3388 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.options)?;
3389 },
3390 _ => {
3391 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
3392 },
3393 };
3394 }
3395 ::std::result::Result::Ok(())
3396 }
3397
3398 #[allow(unused_variables)]
3400 fn compute_size(&self) -> u32 {
3401 let mut my_size = 0;
3402 if let Some(ref v) = self.name.as_ref() {
3403 my_size += ::protobuf::rt::string_size(1, &v);
3404 }
3405 if let Some(v) = self.number {
3406 my_size += ::protobuf::rt::value_size(2, v, ::protobuf::wire_format::WireTypeVarint);
3407 }
3408 if let Some(ref v) = self.options.as_ref() {
3409 let len = v.compute_size();
3410 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
3411 }
3412 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
3413 self.cached_size.set(my_size);
3414 my_size
3415 }
3416
3417 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
3418 if let Some(ref v) = self.name.as_ref() {
3419 os.write_string(1, &v)?;
3420 }
3421 if let Some(v) = self.number {
3422 os.write_int32(2, v)?;
3423 }
3424 if let Some(ref v) = self.options.as_ref() {
3425 os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3426 os.write_raw_varint32(v.get_cached_size())?;
3427 v.write_to_with_cached_sizes(os)?;
3428 }
3429 os.write_unknown_fields(self.get_unknown_fields())?;
3430 ::std::result::Result::Ok(())
3431 }
3432
3433 fn get_cached_size(&self) -> u32 {
3434 self.cached_size.get()
3435 }
3436
3437 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
3438 &self.unknown_fields
3439 }
3440
3441 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
3442 &mut self.unknown_fields
3443 }
3444
3445 fn as_any(&self) -> &dyn (::std::any::Any) {
3446 self as &dyn (::std::any::Any)
3447 }
3448 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
3449 self as &mut dyn (::std::any::Any)
3450 }
3451 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
3452 self
3453 }
3454
3455 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
3456 Self::descriptor_static()
3457 }
3458
3459 fn new() -> EnumValueDescriptorProto {
3460 EnumValueDescriptorProto::new()
3461 }
3462
3463 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
3464 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
3465 lock: ::protobuf::lazy::ONCE_INIT,
3466 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
3467 };
3468 unsafe {
3469 descriptor.get(|| {
3470 let mut fields = ::std::vec::Vec::new();
3471 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3472 "name",
3473 |m: &EnumValueDescriptorProto| { &m.name },
3474 |m: &mut EnumValueDescriptorProto| { &mut m.name },
3475 ));
3476 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
3477 "number",
3478 |m: &EnumValueDescriptorProto| { &m.number },
3479 |m: &mut EnumValueDescriptorProto| { &mut m.number },
3480 ));
3481 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<EnumValueOptions>>(
3482 "options",
3483 |m: &EnumValueDescriptorProto| { &m.options },
3484 |m: &mut EnumValueDescriptorProto| { &mut m.options },
3485 ));
3486 ::protobuf::reflect::MessageDescriptor::new::<EnumValueDescriptorProto>(
3487 "EnumValueDescriptorProto",
3488 fields,
3489 file_descriptor_proto()
3490 )
3491 })
3492 }
3493 }
3494
3495 fn default_instance() -> &'static EnumValueDescriptorProto {
3496 static mut instance: ::protobuf::lazy::Lazy<EnumValueDescriptorProto> = ::protobuf::lazy::Lazy {
3497 lock: ::protobuf::lazy::ONCE_INIT,
3498 ptr: 0 as *const EnumValueDescriptorProto,
3499 };
3500 unsafe {
3501 instance.get(EnumValueDescriptorProto::new)
3502 }
3503 }
3504}
3505
3506impl ::protobuf::Clear for EnumValueDescriptorProto {
3507 fn clear(&mut self) {
3508 self.name.clear();
3509 self.number = ::std::option::Option::None;
3510 self.options.clear();
3511 self.unknown_fields.clear();
3512 }
3513}
3514
3515impl ::std::fmt::Debug for EnumValueDescriptorProto {
3516 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3517 ::protobuf::text_format::fmt(self, f)
3518 }
3519}
3520
3521impl ::protobuf::reflect::ProtobufValue for EnumValueDescriptorProto {
3522 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
3523 ::protobuf::reflect::ProtobufValueRef::Message(self)
3524 }
3525}
3526
3527#[derive(PartialEq,Clone,Default)]
3528#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
3529pub struct ServiceDescriptorProto {
3530 name: ::protobuf::SingularField<::std::string::String>,
3532 method: ::protobuf::RepeatedField<MethodDescriptorProto>,
3533 options: ::protobuf::SingularPtrField<ServiceOptions>,
3534 #[cfg_attr(feature = "with-serde", serde(skip))]
3536 pub unknown_fields: ::protobuf::UnknownFields,
3537 #[cfg_attr(feature = "with-serde", serde(skip))]
3538 pub cached_size: ::protobuf::CachedSize,
3539}
3540
3541impl<'a> ::std::default::Default for &'a ServiceDescriptorProto {
3542 fn default() -> &'a ServiceDescriptorProto {
3543 <ServiceDescriptorProto as ::protobuf::Message>::default_instance()
3544 }
3545}
3546
3547impl ServiceDescriptorProto {
3548 pub fn new() -> ServiceDescriptorProto {
3549 ::std::default::Default::default()
3550 }
3551
3552 pub fn get_name(&self) -> &str {
3556 match self.name.as_ref() {
3557 Some(v) => &v,
3558 None => "",
3559 }
3560 }
3561 pub fn clear_name(&mut self) {
3562 self.name.clear();
3563 }
3564
3565 pub fn has_name(&self) -> bool {
3566 self.name.is_some()
3567 }
3568
3569 pub fn set_name(&mut self, v: ::std::string::String) {
3571 self.name = ::protobuf::SingularField::some(v);
3572 }
3573
3574 pub fn mut_name(&mut self) -> &mut ::std::string::String {
3577 if self.name.is_none() {
3578 self.name.set_default();
3579 }
3580 self.name.as_mut().unwrap()
3581 }
3582
3583 pub fn take_name(&mut self) -> ::std::string::String {
3585 self.name.take().unwrap_or_else(|| ::std::string::String::new())
3586 }
3587
3588 pub fn get_method(&self) -> &[MethodDescriptorProto] {
3592 &self.method
3593 }
3594 pub fn clear_method(&mut self) {
3595 self.method.clear();
3596 }
3597
3598 pub fn set_method(&mut self, v: ::protobuf::RepeatedField<MethodDescriptorProto>) {
3600 self.method = v;
3601 }
3602
3603 pub fn mut_method(&mut self) -> &mut ::protobuf::RepeatedField<MethodDescriptorProto> {
3605 &mut self.method
3606 }
3607
3608 pub fn take_method(&mut self) -> ::protobuf::RepeatedField<MethodDescriptorProto> {
3610 ::std::mem::replace(&mut self.method, ::protobuf::RepeatedField::new())
3611 }
3612
3613 pub fn get_options(&self) -> &ServiceOptions {
3617 self.options.as_ref().unwrap_or_else(|| ServiceOptions::default_instance())
3618 }
3619 pub fn clear_options(&mut self) {
3620 self.options.clear();
3621 }
3622
3623 pub fn has_options(&self) -> bool {
3624 self.options.is_some()
3625 }
3626
3627 pub fn set_options(&mut self, v: ServiceOptions) {
3629 self.options = ::protobuf::SingularPtrField::some(v);
3630 }
3631
3632 pub fn mut_options(&mut self) -> &mut ServiceOptions {
3635 if self.options.is_none() {
3636 self.options.set_default();
3637 }
3638 self.options.as_mut().unwrap()
3639 }
3640
3641 pub fn take_options(&mut self) -> ServiceOptions {
3643 self.options.take().unwrap_or_else(|| ServiceOptions::new())
3644 }
3645}
3646
3647impl ::protobuf::Message for ServiceDescriptorProto {
3648 fn is_initialized(&self) -> bool {
3649 for v in &self.method {
3650 if !v.is_initialized() {
3651 return false;
3652 }
3653 };
3654 for v in &self.options {
3655 if !v.is_initialized() {
3656 return false;
3657 }
3658 };
3659 true
3660 }
3661
3662 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
3663 while !is.eof()? {
3664 let (field_number, wire_type) = is.read_tag_unpack()?;
3665 match field_number {
3666 1 => {
3667 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.name)?;
3668 },
3669 2 => {
3670 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.method)?;
3671 },
3672 3 => {
3673 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.options)?;
3674 },
3675 _ => {
3676 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
3677 },
3678 };
3679 }
3680 ::std::result::Result::Ok(())
3681 }
3682
3683 #[allow(unused_variables)]
3685 fn compute_size(&self) -> u32 {
3686 let mut my_size = 0;
3687 if let Some(ref v) = self.name.as_ref() {
3688 my_size += ::protobuf::rt::string_size(1, &v);
3689 }
3690 for value in &self.method {
3691 let len = value.compute_size();
3692 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
3693 };
3694 if let Some(ref v) = self.options.as_ref() {
3695 let len = v.compute_size();
3696 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
3697 }
3698 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
3699 self.cached_size.set(my_size);
3700 my_size
3701 }
3702
3703 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
3704 if let Some(ref v) = self.name.as_ref() {
3705 os.write_string(1, &v)?;
3706 }
3707 for v in &self.method {
3708 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3709 os.write_raw_varint32(v.get_cached_size())?;
3710 v.write_to_with_cached_sizes(os)?;
3711 };
3712 if let Some(ref v) = self.options.as_ref() {
3713 os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3714 os.write_raw_varint32(v.get_cached_size())?;
3715 v.write_to_with_cached_sizes(os)?;
3716 }
3717 os.write_unknown_fields(self.get_unknown_fields())?;
3718 ::std::result::Result::Ok(())
3719 }
3720
3721 fn get_cached_size(&self) -> u32 {
3722 self.cached_size.get()
3723 }
3724
3725 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
3726 &self.unknown_fields
3727 }
3728
3729 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
3730 &mut self.unknown_fields
3731 }
3732
3733 fn as_any(&self) -> &dyn (::std::any::Any) {
3734 self as &dyn (::std::any::Any)
3735 }
3736 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
3737 self as &mut dyn (::std::any::Any)
3738 }
3739 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
3740 self
3741 }
3742
3743 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
3744 Self::descriptor_static()
3745 }
3746
3747 fn new() -> ServiceDescriptorProto {
3748 ServiceDescriptorProto::new()
3749 }
3750
3751 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
3752 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
3753 lock: ::protobuf::lazy::ONCE_INIT,
3754 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
3755 };
3756 unsafe {
3757 descriptor.get(|| {
3758 let mut fields = ::std::vec::Vec::new();
3759 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3760 "name",
3761 |m: &ServiceDescriptorProto| { &m.name },
3762 |m: &mut ServiceDescriptorProto| { &mut m.name },
3763 ));
3764 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<MethodDescriptorProto>>(
3765 "method",
3766 |m: &ServiceDescriptorProto| { &m.method },
3767 |m: &mut ServiceDescriptorProto| { &mut m.method },
3768 ));
3769 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<ServiceOptions>>(
3770 "options",
3771 |m: &ServiceDescriptorProto| { &m.options },
3772 |m: &mut ServiceDescriptorProto| { &mut m.options },
3773 ));
3774 ::protobuf::reflect::MessageDescriptor::new::<ServiceDescriptorProto>(
3775 "ServiceDescriptorProto",
3776 fields,
3777 file_descriptor_proto()
3778 )
3779 })
3780 }
3781 }
3782
3783 fn default_instance() -> &'static ServiceDescriptorProto {
3784 static mut instance: ::protobuf::lazy::Lazy<ServiceDescriptorProto> = ::protobuf::lazy::Lazy {
3785 lock: ::protobuf::lazy::ONCE_INIT,
3786 ptr: 0 as *const ServiceDescriptorProto,
3787 };
3788 unsafe {
3789 instance.get(ServiceDescriptorProto::new)
3790 }
3791 }
3792}
3793
3794impl ::protobuf::Clear for ServiceDescriptorProto {
3795 fn clear(&mut self) {
3796 self.name.clear();
3797 self.method.clear();
3798 self.options.clear();
3799 self.unknown_fields.clear();
3800 }
3801}
3802
3803impl ::std::fmt::Debug for ServiceDescriptorProto {
3804 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3805 ::protobuf::text_format::fmt(self, f)
3806 }
3807}
3808
3809impl ::protobuf::reflect::ProtobufValue for ServiceDescriptorProto {
3810 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
3811 ::protobuf::reflect::ProtobufValueRef::Message(self)
3812 }
3813}
3814
3815#[derive(PartialEq,Clone,Default)]
3816#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
3817pub struct MethodDescriptorProto {
3818 name: ::protobuf::SingularField<::std::string::String>,
3820 input_type: ::protobuf::SingularField<::std::string::String>,
3821 output_type: ::protobuf::SingularField<::std::string::String>,
3822 options: ::protobuf::SingularPtrField<MethodOptions>,
3823 client_streaming: ::std::option::Option<bool>,
3824 server_streaming: ::std::option::Option<bool>,
3825 #[cfg_attr(feature = "with-serde", serde(skip))]
3827 pub unknown_fields: ::protobuf::UnknownFields,
3828 #[cfg_attr(feature = "with-serde", serde(skip))]
3829 pub cached_size: ::protobuf::CachedSize,
3830}
3831
3832impl<'a> ::std::default::Default for &'a MethodDescriptorProto {
3833 fn default() -> &'a MethodDescriptorProto {
3834 <MethodDescriptorProto as ::protobuf::Message>::default_instance()
3835 }
3836}
3837
3838impl MethodDescriptorProto {
3839 pub fn new() -> MethodDescriptorProto {
3840 ::std::default::Default::default()
3841 }
3842
3843 pub fn get_name(&self) -> &str {
3847 match self.name.as_ref() {
3848 Some(v) => &v,
3849 None => "",
3850 }
3851 }
3852 pub fn clear_name(&mut self) {
3853 self.name.clear();
3854 }
3855
3856 pub fn has_name(&self) -> bool {
3857 self.name.is_some()
3858 }
3859
3860 pub fn set_name(&mut self, v: ::std::string::String) {
3862 self.name = ::protobuf::SingularField::some(v);
3863 }
3864
3865 pub fn mut_name(&mut self) -> &mut ::std::string::String {
3868 if self.name.is_none() {
3869 self.name.set_default();
3870 }
3871 self.name.as_mut().unwrap()
3872 }
3873
3874 pub fn take_name(&mut self) -> ::std::string::String {
3876 self.name.take().unwrap_or_else(|| ::std::string::String::new())
3877 }
3878
3879 pub fn get_input_type(&self) -> &str {
3883 match self.input_type.as_ref() {
3884 Some(v) => &v,
3885 None => "",
3886 }
3887 }
3888 pub fn clear_input_type(&mut self) {
3889 self.input_type.clear();
3890 }
3891
3892 pub fn has_input_type(&self) -> bool {
3893 self.input_type.is_some()
3894 }
3895
3896 pub fn set_input_type(&mut self, v: ::std::string::String) {
3898 self.input_type = ::protobuf::SingularField::some(v);
3899 }
3900
3901 pub fn mut_input_type(&mut self) -> &mut ::std::string::String {
3904 if self.input_type.is_none() {
3905 self.input_type.set_default();
3906 }
3907 self.input_type.as_mut().unwrap()
3908 }
3909
3910 pub fn take_input_type(&mut self) -> ::std::string::String {
3912 self.input_type.take().unwrap_or_else(|| ::std::string::String::new())
3913 }
3914
3915 pub fn get_output_type(&self) -> &str {
3919 match self.output_type.as_ref() {
3920 Some(v) => &v,
3921 None => "",
3922 }
3923 }
3924 pub fn clear_output_type(&mut self) {
3925 self.output_type.clear();
3926 }
3927
3928 pub fn has_output_type(&self) -> bool {
3929 self.output_type.is_some()
3930 }
3931
3932 pub fn set_output_type(&mut self, v: ::std::string::String) {
3934 self.output_type = ::protobuf::SingularField::some(v);
3935 }
3936
3937 pub fn mut_output_type(&mut self) -> &mut ::std::string::String {
3940 if self.output_type.is_none() {
3941 self.output_type.set_default();
3942 }
3943 self.output_type.as_mut().unwrap()
3944 }
3945
3946 pub fn take_output_type(&mut self) -> ::std::string::String {
3948 self.output_type.take().unwrap_or_else(|| ::std::string::String::new())
3949 }
3950
3951 pub fn get_options(&self) -> &MethodOptions {
3955 self.options.as_ref().unwrap_or_else(|| MethodOptions::default_instance())
3956 }
3957 pub fn clear_options(&mut self) {
3958 self.options.clear();
3959 }
3960
3961 pub fn has_options(&self) -> bool {
3962 self.options.is_some()
3963 }
3964
3965 pub fn set_options(&mut self, v: MethodOptions) {
3967 self.options = ::protobuf::SingularPtrField::some(v);
3968 }
3969
3970 pub fn mut_options(&mut self) -> &mut MethodOptions {
3973 if self.options.is_none() {
3974 self.options.set_default();
3975 }
3976 self.options.as_mut().unwrap()
3977 }
3978
3979 pub fn take_options(&mut self) -> MethodOptions {
3981 self.options.take().unwrap_or_else(|| MethodOptions::new())
3982 }
3983
3984 pub fn get_client_streaming(&self) -> bool {
3988 self.client_streaming.unwrap_or(false)
3989 }
3990 pub fn clear_client_streaming(&mut self) {
3991 self.client_streaming = ::std::option::Option::None;
3992 }
3993
3994 pub fn has_client_streaming(&self) -> bool {
3995 self.client_streaming.is_some()
3996 }
3997
3998 pub fn set_client_streaming(&mut self, v: bool) {
4000 self.client_streaming = ::std::option::Option::Some(v);
4001 }
4002
4003 pub fn get_server_streaming(&self) -> bool {
4007 self.server_streaming.unwrap_or(false)
4008 }
4009 pub fn clear_server_streaming(&mut self) {
4010 self.server_streaming = ::std::option::Option::None;
4011 }
4012
4013 pub fn has_server_streaming(&self) -> bool {
4014 self.server_streaming.is_some()
4015 }
4016
4017 pub fn set_server_streaming(&mut self, v: bool) {
4019 self.server_streaming = ::std::option::Option::Some(v);
4020 }
4021}
4022
4023impl ::protobuf::Message for MethodDescriptorProto {
4024 fn is_initialized(&self) -> bool {
4025 for v in &self.options {
4026 if !v.is_initialized() {
4027 return false;
4028 }
4029 };
4030 true
4031 }
4032
4033 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
4034 while !is.eof()? {
4035 let (field_number, wire_type) = is.read_tag_unpack()?;
4036 match field_number {
4037 1 => {
4038 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.name)?;
4039 },
4040 2 => {
4041 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.input_type)?;
4042 },
4043 3 => {
4044 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.output_type)?;
4045 },
4046 4 => {
4047 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.options)?;
4048 },
4049 5 => {
4050 if wire_type != ::protobuf::wire_format::WireTypeVarint {
4051 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4052 }
4053 let tmp = is.read_bool()?;
4054 self.client_streaming = ::std::option::Option::Some(tmp);
4055 },
4056 6 => {
4057 if wire_type != ::protobuf::wire_format::WireTypeVarint {
4058 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4059 }
4060 let tmp = is.read_bool()?;
4061 self.server_streaming = ::std::option::Option::Some(tmp);
4062 },
4063 _ => {
4064 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
4065 },
4066 };
4067 }
4068 ::std::result::Result::Ok(())
4069 }
4070
4071 #[allow(unused_variables)]
4073 fn compute_size(&self) -> u32 {
4074 let mut my_size = 0;
4075 if let Some(ref v) = self.name.as_ref() {
4076 my_size += ::protobuf::rt::string_size(1, &v);
4077 }
4078 if let Some(ref v) = self.input_type.as_ref() {
4079 my_size += ::protobuf::rt::string_size(2, &v);
4080 }
4081 if let Some(ref v) = self.output_type.as_ref() {
4082 my_size += ::protobuf::rt::string_size(3, &v);
4083 }
4084 if let Some(ref v) = self.options.as_ref() {
4085 let len = v.compute_size();
4086 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
4087 }
4088 if let Some(v) = self.client_streaming {
4089 my_size += 2;
4090 }
4091 if let Some(v) = self.server_streaming {
4092 my_size += 2;
4093 }
4094 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
4095 self.cached_size.set(my_size);
4096 my_size
4097 }
4098
4099 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
4100 if let Some(ref v) = self.name.as_ref() {
4101 os.write_string(1, &v)?;
4102 }
4103 if let Some(ref v) = self.input_type.as_ref() {
4104 os.write_string(2, &v)?;
4105 }
4106 if let Some(ref v) = self.output_type.as_ref() {
4107 os.write_string(3, &v)?;
4108 }
4109 if let Some(ref v) = self.options.as_ref() {
4110 os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
4111 os.write_raw_varint32(v.get_cached_size())?;
4112 v.write_to_with_cached_sizes(os)?;
4113 }
4114 if let Some(v) = self.client_streaming {
4115 os.write_bool(5, v)?;
4116 }
4117 if let Some(v) = self.server_streaming {
4118 os.write_bool(6, v)?;
4119 }
4120 os.write_unknown_fields(self.get_unknown_fields())?;
4121 ::std::result::Result::Ok(())
4122 }
4123
4124 fn get_cached_size(&self) -> u32 {
4125 self.cached_size.get()
4126 }
4127
4128 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
4129 &self.unknown_fields
4130 }
4131
4132 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
4133 &mut self.unknown_fields
4134 }
4135
4136 fn as_any(&self) -> &dyn (::std::any::Any) {
4137 self as &dyn (::std::any::Any)
4138 }
4139 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
4140 self as &mut dyn (::std::any::Any)
4141 }
4142 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
4143 self
4144 }
4145
4146 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
4147 Self::descriptor_static()
4148 }
4149
4150 fn new() -> MethodDescriptorProto {
4151 MethodDescriptorProto::new()
4152 }
4153
4154 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
4155 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
4156 lock: ::protobuf::lazy::ONCE_INIT,
4157 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
4158 };
4159 unsafe {
4160 descriptor.get(|| {
4161 let mut fields = ::std::vec::Vec::new();
4162 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4163 "name",
4164 |m: &MethodDescriptorProto| { &m.name },
4165 |m: &mut MethodDescriptorProto| { &mut m.name },
4166 ));
4167 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4168 "input_type",
4169 |m: &MethodDescriptorProto| { &m.input_type },
4170 |m: &mut MethodDescriptorProto| { &mut m.input_type },
4171 ));
4172 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4173 "output_type",
4174 |m: &MethodDescriptorProto| { &m.output_type },
4175 |m: &mut MethodDescriptorProto| { &mut m.output_type },
4176 ));
4177 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<MethodOptions>>(
4178 "options",
4179 |m: &MethodDescriptorProto| { &m.options },
4180 |m: &mut MethodDescriptorProto| { &mut m.options },
4181 ));
4182 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
4183 "client_streaming",
4184 |m: &MethodDescriptorProto| { &m.client_streaming },
4185 |m: &mut MethodDescriptorProto| { &mut m.client_streaming },
4186 ));
4187 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
4188 "server_streaming",
4189 |m: &MethodDescriptorProto| { &m.server_streaming },
4190 |m: &mut MethodDescriptorProto| { &mut m.server_streaming },
4191 ));
4192 ::protobuf::reflect::MessageDescriptor::new::<MethodDescriptorProto>(
4193 "MethodDescriptorProto",
4194 fields,
4195 file_descriptor_proto()
4196 )
4197 })
4198 }
4199 }
4200
4201 fn default_instance() -> &'static MethodDescriptorProto {
4202 static mut instance: ::protobuf::lazy::Lazy<MethodDescriptorProto> = ::protobuf::lazy::Lazy {
4203 lock: ::protobuf::lazy::ONCE_INIT,
4204 ptr: 0 as *const MethodDescriptorProto,
4205 };
4206 unsafe {
4207 instance.get(MethodDescriptorProto::new)
4208 }
4209 }
4210}
4211
4212impl ::protobuf::Clear for MethodDescriptorProto {
4213 fn clear(&mut self) {
4214 self.name.clear();
4215 self.input_type.clear();
4216 self.output_type.clear();
4217 self.options.clear();
4218 self.client_streaming = ::std::option::Option::None;
4219 self.server_streaming = ::std::option::Option::None;
4220 self.unknown_fields.clear();
4221 }
4222}
4223
4224impl ::std::fmt::Debug for MethodDescriptorProto {
4225 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4226 ::protobuf::text_format::fmt(self, f)
4227 }
4228}
4229
4230impl ::protobuf::reflect::ProtobufValue for MethodDescriptorProto {
4231 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
4232 ::protobuf::reflect::ProtobufValueRef::Message(self)
4233 }
4234}
4235
4236#[derive(PartialEq,Clone,Default)]
4237#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
4238pub struct FileOptions {
4239 java_package: ::protobuf::SingularField<::std::string::String>,
4241 java_outer_classname: ::protobuf::SingularField<::std::string::String>,
4242 java_multiple_files: ::std::option::Option<bool>,
4243 java_generate_equals_and_hash: ::std::option::Option<bool>,
4244 java_string_check_utf8: ::std::option::Option<bool>,
4245 optimize_for: ::std::option::Option<FileOptions_OptimizeMode>,
4246 go_package: ::protobuf::SingularField<::std::string::String>,
4247 cc_generic_services: ::std::option::Option<bool>,
4248 java_generic_services: ::std::option::Option<bool>,
4249 py_generic_services: ::std::option::Option<bool>,
4250 deprecated: ::std::option::Option<bool>,
4251 cc_enable_arenas: ::std::option::Option<bool>,
4252 objc_class_prefix: ::protobuf::SingularField<::std::string::String>,
4253 csharp_namespace: ::protobuf::SingularField<::std::string::String>,
4254 uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
4255 #[cfg_attr(feature = "with-serde", serde(skip))]
4257 pub unknown_fields: ::protobuf::UnknownFields,
4258 #[cfg_attr(feature = "with-serde", serde(skip))]
4259 pub cached_size: ::protobuf::CachedSize,
4260}
4261
4262impl<'a> ::std::default::Default for &'a FileOptions {
4263 fn default() -> &'a FileOptions {
4264 <FileOptions as ::protobuf::Message>::default_instance()
4265 }
4266}
4267
4268impl FileOptions {
4269 pub fn new() -> FileOptions {
4270 ::std::default::Default::default()
4271 }
4272
4273 pub fn get_java_package(&self) -> &str {
4277 match self.java_package.as_ref() {
4278 Some(v) => &v,
4279 None => "",
4280 }
4281 }
4282 pub fn clear_java_package(&mut self) {
4283 self.java_package.clear();
4284 }
4285
4286 pub fn has_java_package(&self) -> bool {
4287 self.java_package.is_some()
4288 }
4289
4290 pub fn set_java_package(&mut self, v: ::std::string::String) {
4292 self.java_package = ::protobuf::SingularField::some(v);
4293 }
4294
4295 pub fn mut_java_package(&mut self) -> &mut ::std::string::String {
4298 if self.java_package.is_none() {
4299 self.java_package.set_default();
4300 }
4301 self.java_package.as_mut().unwrap()
4302 }
4303
4304 pub fn take_java_package(&mut self) -> ::std::string::String {
4306 self.java_package.take().unwrap_or_else(|| ::std::string::String::new())
4307 }
4308
4309 pub fn get_java_outer_classname(&self) -> &str {
4313 match self.java_outer_classname.as_ref() {
4314 Some(v) => &v,
4315 None => "",
4316 }
4317 }
4318 pub fn clear_java_outer_classname(&mut self) {
4319 self.java_outer_classname.clear();
4320 }
4321
4322 pub fn has_java_outer_classname(&self) -> bool {
4323 self.java_outer_classname.is_some()
4324 }
4325
4326 pub fn set_java_outer_classname(&mut self, v: ::std::string::String) {
4328 self.java_outer_classname = ::protobuf::SingularField::some(v);
4329 }
4330
4331 pub fn mut_java_outer_classname(&mut self) -> &mut ::std::string::String {
4334 if self.java_outer_classname.is_none() {
4335 self.java_outer_classname.set_default();
4336 }
4337 self.java_outer_classname.as_mut().unwrap()
4338 }
4339
4340 pub fn take_java_outer_classname(&mut self) -> ::std::string::String {
4342 self.java_outer_classname.take().unwrap_or_else(|| ::std::string::String::new())
4343 }
4344
4345 pub fn get_java_multiple_files(&self) -> bool {
4349 self.java_multiple_files.unwrap_or(false)
4350 }
4351 pub fn clear_java_multiple_files(&mut self) {
4352 self.java_multiple_files = ::std::option::Option::None;
4353 }
4354
4355 pub fn has_java_multiple_files(&self) -> bool {
4356 self.java_multiple_files.is_some()
4357 }
4358
4359 pub fn set_java_multiple_files(&mut self, v: bool) {
4361 self.java_multiple_files = ::std::option::Option::Some(v);
4362 }
4363
4364 pub fn get_java_generate_equals_and_hash(&self) -> bool {
4368 self.java_generate_equals_and_hash.unwrap_or(false)
4369 }
4370 pub fn clear_java_generate_equals_and_hash(&mut self) {
4371 self.java_generate_equals_and_hash = ::std::option::Option::None;
4372 }
4373
4374 pub fn has_java_generate_equals_and_hash(&self) -> bool {
4375 self.java_generate_equals_and_hash.is_some()
4376 }
4377
4378 pub fn set_java_generate_equals_and_hash(&mut self, v: bool) {
4380 self.java_generate_equals_and_hash = ::std::option::Option::Some(v);
4381 }
4382
4383 pub fn get_java_string_check_utf8(&self) -> bool {
4387 self.java_string_check_utf8.unwrap_or(false)
4388 }
4389 pub fn clear_java_string_check_utf8(&mut self) {
4390 self.java_string_check_utf8 = ::std::option::Option::None;
4391 }
4392
4393 pub fn has_java_string_check_utf8(&self) -> bool {
4394 self.java_string_check_utf8.is_some()
4395 }
4396
4397 pub fn set_java_string_check_utf8(&mut self, v: bool) {
4399 self.java_string_check_utf8 = ::std::option::Option::Some(v);
4400 }
4401
4402 pub fn get_optimize_for(&self) -> FileOptions_OptimizeMode {
4406 self.optimize_for.unwrap_or(FileOptions_OptimizeMode::SPEED)
4407 }
4408 pub fn clear_optimize_for(&mut self) {
4409 self.optimize_for = ::std::option::Option::None;
4410 }
4411
4412 pub fn has_optimize_for(&self) -> bool {
4413 self.optimize_for.is_some()
4414 }
4415
4416 pub fn set_optimize_for(&mut self, v: FileOptions_OptimizeMode) {
4418 self.optimize_for = ::std::option::Option::Some(v);
4419 }
4420
4421 pub fn get_go_package(&self) -> &str {
4425 match self.go_package.as_ref() {
4426 Some(v) => &v,
4427 None => "",
4428 }
4429 }
4430 pub fn clear_go_package(&mut self) {
4431 self.go_package.clear();
4432 }
4433
4434 pub fn has_go_package(&self) -> bool {
4435 self.go_package.is_some()
4436 }
4437
4438 pub fn set_go_package(&mut self, v: ::std::string::String) {
4440 self.go_package = ::protobuf::SingularField::some(v);
4441 }
4442
4443 pub fn mut_go_package(&mut self) -> &mut ::std::string::String {
4446 if self.go_package.is_none() {
4447 self.go_package.set_default();
4448 }
4449 self.go_package.as_mut().unwrap()
4450 }
4451
4452 pub fn take_go_package(&mut self) -> ::std::string::String {
4454 self.go_package.take().unwrap_or_else(|| ::std::string::String::new())
4455 }
4456
4457 pub fn get_cc_generic_services(&self) -> bool {
4461 self.cc_generic_services.unwrap_or(false)
4462 }
4463 pub fn clear_cc_generic_services(&mut self) {
4464 self.cc_generic_services = ::std::option::Option::None;
4465 }
4466
4467 pub fn has_cc_generic_services(&self) -> bool {
4468 self.cc_generic_services.is_some()
4469 }
4470
4471 pub fn set_cc_generic_services(&mut self, v: bool) {
4473 self.cc_generic_services = ::std::option::Option::Some(v);
4474 }
4475
4476 pub fn get_java_generic_services(&self) -> bool {
4480 self.java_generic_services.unwrap_or(false)
4481 }
4482 pub fn clear_java_generic_services(&mut self) {
4483 self.java_generic_services = ::std::option::Option::None;
4484 }
4485
4486 pub fn has_java_generic_services(&self) -> bool {
4487 self.java_generic_services.is_some()
4488 }
4489
4490 pub fn set_java_generic_services(&mut self, v: bool) {
4492 self.java_generic_services = ::std::option::Option::Some(v);
4493 }
4494
4495 pub fn get_py_generic_services(&self) -> bool {
4499 self.py_generic_services.unwrap_or(false)
4500 }
4501 pub fn clear_py_generic_services(&mut self) {
4502 self.py_generic_services = ::std::option::Option::None;
4503 }
4504
4505 pub fn has_py_generic_services(&self) -> bool {
4506 self.py_generic_services.is_some()
4507 }
4508
4509 pub fn set_py_generic_services(&mut self, v: bool) {
4511 self.py_generic_services = ::std::option::Option::Some(v);
4512 }
4513
4514 pub fn get_deprecated(&self) -> bool {
4518 self.deprecated.unwrap_or(false)
4519 }
4520 pub fn clear_deprecated(&mut self) {
4521 self.deprecated = ::std::option::Option::None;
4522 }
4523
4524 pub fn has_deprecated(&self) -> bool {
4525 self.deprecated.is_some()
4526 }
4527
4528 pub fn set_deprecated(&mut self, v: bool) {
4530 self.deprecated = ::std::option::Option::Some(v);
4531 }
4532
4533 pub fn get_cc_enable_arenas(&self) -> bool {
4537 self.cc_enable_arenas.unwrap_or(false)
4538 }
4539 pub fn clear_cc_enable_arenas(&mut self) {
4540 self.cc_enable_arenas = ::std::option::Option::None;
4541 }
4542
4543 pub fn has_cc_enable_arenas(&self) -> bool {
4544 self.cc_enable_arenas.is_some()
4545 }
4546
4547 pub fn set_cc_enable_arenas(&mut self, v: bool) {
4549 self.cc_enable_arenas = ::std::option::Option::Some(v);
4550 }
4551
4552 pub fn get_objc_class_prefix(&self) -> &str {
4556 match self.objc_class_prefix.as_ref() {
4557 Some(v) => &v,
4558 None => "",
4559 }
4560 }
4561 pub fn clear_objc_class_prefix(&mut self) {
4562 self.objc_class_prefix.clear();
4563 }
4564
4565 pub fn has_objc_class_prefix(&self) -> bool {
4566 self.objc_class_prefix.is_some()
4567 }
4568
4569 pub fn set_objc_class_prefix(&mut self, v: ::std::string::String) {
4571 self.objc_class_prefix = ::protobuf::SingularField::some(v);
4572 }
4573
4574 pub fn mut_objc_class_prefix(&mut self) -> &mut ::std::string::String {
4577 if self.objc_class_prefix.is_none() {
4578 self.objc_class_prefix.set_default();
4579 }
4580 self.objc_class_prefix.as_mut().unwrap()
4581 }
4582
4583 pub fn take_objc_class_prefix(&mut self) -> ::std::string::String {
4585 self.objc_class_prefix.take().unwrap_or_else(|| ::std::string::String::new())
4586 }
4587
4588 pub fn get_csharp_namespace(&self) -> &str {
4592 match self.csharp_namespace.as_ref() {
4593 Some(v) => &v,
4594 None => "",
4595 }
4596 }
4597 pub fn clear_csharp_namespace(&mut self) {
4598 self.csharp_namespace.clear();
4599 }
4600
4601 pub fn has_csharp_namespace(&self) -> bool {
4602 self.csharp_namespace.is_some()
4603 }
4604
4605 pub fn set_csharp_namespace(&mut self, v: ::std::string::String) {
4607 self.csharp_namespace = ::protobuf::SingularField::some(v);
4608 }
4609
4610 pub fn mut_csharp_namespace(&mut self) -> &mut ::std::string::String {
4613 if self.csharp_namespace.is_none() {
4614 self.csharp_namespace.set_default();
4615 }
4616 self.csharp_namespace.as_mut().unwrap()
4617 }
4618
4619 pub fn take_csharp_namespace(&mut self) -> ::std::string::String {
4621 self.csharp_namespace.take().unwrap_or_else(|| ::std::string::String::new())
4622 }
4623
4624 pub fn get_uninterpreted_option(&self) -> &[UninterpretedOption] {
4628 &self.uninterpreted_option
4629 }
4630 pub fn clear_uninterpreted_option(&mut self) {
4631 self.uninterpreted_option.clear();
4632 }
4633
4634 pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
4636 self.uninterpreted_option = v;
4637 }
4638
4639 pub fn mut_uninterpreted_option(&mut self) -> &mut ::protobuf::RepeatedField<UninterpretedOption> {
4641 &mut self.uninterpreted_option
4642 }
4643
4644 pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
4646 ::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
4647 }
4648}
4649
4650impl ::protobuf::Message for FileOptions {
4651 fn is_initialized(&self) -> bool {
4652 for v in &self.uninterpreted_option {
4653 if !v.is_initialized() {
4654 return false;
4655 }
4656 };
4657 true
4658 }
4659
4660 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
4661 while !is.eof()? {
4662 let (field_number, wire_type) = is.read_tag_unpack()?;
4663 match field_number {
4664 1 => {
4665 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.java_package)?;
4666 },
4667 8 => {
4668 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.java_outer_classname)?;
4669 },
4670 10 => {
4671 if wire_type != ::protobuf::wire_format::WireTypeVarint {
4672 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4673 }
4674 let tmp = is.read_bool()?;
4675 self.java_multiple_files = ::std::option::Option::Some(tmp);
4676 },
4677 20 => {
4678 if wire_type != ::protobuf::wire_format::WireTypeVarint {
4679 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4680 }
4681 let tmp = is.read_bool()?;
4682 self.java_generate_equals_and_hash = ::std::option::Option::Some(tmp);
4683 },
4684 27 => {
4685 if wire_type != ::protobuf::wire_format::WireTypeVarint {
4686 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4687 }
4688 let tmp = is.read_bool()?;
4689 self.java_string_check_utf8 = ::std::option::Option::Some(tmp);
4690 },
4691 9 => {
4692 ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.optimize_for, 9, &mut self.unknown_fields)?
4693 },
4694 11 => {
4695 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.go_package)?;
4696 },
4697 16 => {
4698 if wire_type != ::protobuf::wire_format::WireTypeVarint {
4699 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4700 }
4701 let tmp = is.read_bool()?;
4702 self.cc_generic_services = ::std::option::Option::Some(tmp);
4703 },
4704 17 => {
4705 if wire_type != ::protobuf::wire_format::WireTypeVarint {
4706 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4707 }
4708 let tmp = is.read_bool()?;
4709 self.java_generic_services = ::std::option::Option::Some(tmp);
4710 },
4711 18 => {
4712 if wire_type != ::protobuf::wire_format::WireTypeVarint {
4713 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4714 }
4715 let tmp = is.read_bool()?;
4716 self.py_generic_services = ::std::option::Option::Some(tmp);
4717 },
4718 23 => {
4719 if wire_type != ::protobuf::wire_format::WireTypeVarint {
4720 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4721 }
4722 let tmp = is.read_bool()?;
4723 self.deprecated = ::std::option::Option::Some(tmp);
4724 },
4725 31 => {
4726 if wire_type != ::protobuf::wire_format::WireTypeVarint {
4727 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4728 }
4729 let tmp = is.read_bool()?;
4730 self.cc_enable_arenas = ::std::option::Option::Some(tmp);
4731 },
4732 36 => {
4733 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.objc_class_prefix)?;
4734 },
4735 37 => {
4736 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.csharp_namespace)?;
4737 },
4738 999 => {
4739 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option)?;
4740 },
4741 _ => {
4742 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
4743 },
4744 };
4745 }
4746 ::std::result::Result::Ok(())
4747 }
4748
4749 #[allow(unused_variables)]
4751 fn compute_size(&self) -> u32 {
4752 let mut my_size = 0;
4753 if let Some(ref v) = self.java_package.as_ref() {
4754 my_size += ::protobuf::rt::string_size(1, &v);
4755 }
4756 if let Some(ref v) = self.java_outer_classname.as_ref() {
4757 my_size += ::protobuf::rt::string_size(8, &v);
4758 }
4759 if let Some(v) = self.java_multiple_files {
4760 my_size += 2;
4761 }
4762 if let Some(v) = self.java_generate_equals_and_hash {
4763 my_size += 3;
4764 }
4765 if let Some(v) = self.java_string_check_utf8 {
4766 my_size += 3;
4767 }
4768 if let Some(v) = self.optimize_for {
4769 my_size += ::protobuf::rt::enum_size(9, v);
4770 }
4771 if let Some(ref v) = self.go_package.as_ref() {
4772 my_size += ::protobuf::rt::string_size(11, &v);
4773 }
4774 if let Some(v) = self.cc_generic_services {
4775 my_size += 3;
4776 }
4777 if let Some(v) = self.java_generic_services {
4778 my_size += 3;
4779 }
4780 if let Some(v) = self.py_generic_services {
4781 my_size += 3;
4782 }
4783 if let Some(v) = self.deprecated {
4784 my_size += 3;
4785 }
4786 if let Some(v) = self.cc_enable_arenas {
4787 my_size += 3;
4788 }
4789 if let Some(ref v) = self.objc_class_prefix.as_ref() {
4790 my_size += ::protobuf::rt::string_size(36, &v);
4791 }
4792 if let Some(ref v) = self.csharp_namespace.as_ref() {
4793 my_size += ::protobuf::rt::string_size(37, &v);
4794 }
4795 for value in &self.uninterpreted_option {
4796 let len = value.compute_size();
4797 my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
4798 };
4799 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
4800 self.cached_size.set(my_size);
4801 my_size
4802 }
4803
4804 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
4805 if let Some(ref v) = self.java_package.as_ref() {
4806 os.write_string(1, &v)?;
4807 }
4808 if let Some(ref v) = self.java_outer_classname.as_ref() {
4809 os.write_string(8, &v)?;
4810 }
4811 if let Some(v) = self.java_multiple_files {
4812 os.write_bool(10, v)?;
4813 }
4814 if let Some(v) = self.java_generate_equals_and_hash {
4815 os.write_bool(20, v)?;
4816 }
4817 if let Some(v) = self.java_string_check_utf8 {
4818 os.write_bool(27, v)?;
4819 }
4820 if let Some(v) = self.optimize_for {
4821 os.write_enum(9, v.value())?;
4822 }
4823 if let Some(ref v) = self.go_package.as_ref() {
4824 os.write_string(11, &v)?;
4825 }
4826 if let Some(v) = self.cc_generic_services {
4827 os.write_bool(16, v)?;
4828 }
4829 if let Some(v) = self.java_generic_services {
4830 os.write_bool(17, v)?;
4831 }
4832 if let Some(v) = self.py_generic_services {
4833 os.write_bool(18, v)?;
4834 }
4835 if let Some(v) = self.deprecated {
4836 os.write_bool(23, v)?;
4837 }
4838 if let Some(v) = self.cc_enable_arenas {
4839 os.write_bool(31, v)?;
4840 }
4841 if let Some(ref v) = self.objc_class_prefix.as_ref() {
4842 os.write_string(36, &v)?;
4843 }
4844 if let Some(ref v) = self.csharp_namespace.as_ref() {
4845 os.write_string(37, &v)?;
4846 }
4847 for v in &self.uninterpreted_option {
4848 os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited)?;
4849 os.write_raw_varint32(v.get_cached_size())?;
4850 v.write_to_with_cached_sizes(os)?;
4851 };
4852 os.write_unknown_fields(self.get_unknown_fields())?;
4853 ::std::result::Result::Ok(())
4854 }
4855
4856 fn get_cached_size(&self) -> u32 {
4857 self.cached_size.get()
4858 }
4859
4860 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
4861 &self.unknown_fields
4862 }
4863
4864 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
4865 &mut self.unknown_fields
4866 }
4867
4868 fn as_any(&self) -> &dyn (::std::any::Any) {
4869 self as &dyn (::std::any::Any)
4870 }
4871 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
4872 self as &mut dyn (::std::any::Any)
4873 }
4874 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
4875 self
4876 }
4877
4878 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
4879 Self::descriptor_static()
4880 }
4881
4882 fn new() -> FileOptions {
4883 FileOptions::new()
4884 }
4885
4886 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
4887 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
4888 lock: ::protobuf::lazy::ONCE_INIT,
4889 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
4890 };
4891 unsafe {
4892 descriptor.get(|| {
4893 let mut fields = ::std::vec::Vec::new();
4894 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4895 "java_package",
4896 |m: &FileOptions| { &m.java_package },
4897 |m: &mut FileOptions| { &mut m.java_package },
4898 ));
4899 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4900 "java_outer_classname",
4901 |m: &FileOptions| { &m.java_outer_classname },
4902 |m: &mut FileOptions| { &mut m.java_outer_classname },
4903 ));
4904 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
4905 "java_multiple_files",
4906 |m: &FileOptions| { &m.java_multiple_files },
4907 |m: &mut FileOptions| { &mut m.java_multiple_files },
4908 ));
4909 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
4910 "java_generate_equals_and_hash",
4911 |m: &FileOptions| { &m.java_generate_equals_and_hash },
4912 |m: &mut FileOptions| { &mut m.java_generate_equals_and_hash },
4913 ));
4914 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
4915 "java_string_check_utf8",
4916 |m: &FileOptions| { &m.java_string_check_utf8 },
4917 |m: &mut FileOptions| { &mut m.java_string_check_utf8 },
4918 ));
4919 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<FileOptions_OptimizeMode>>(
4920 "optimize_for",
4921 |m: &FileOptions| { &m.optimize_for },
4922 |m: &mut FileOptions| { &mut m.optimize_for },
4923 ));
4924 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4925 "go_package",
4926 |m: &FileOptions| { &m.go_package },
4927 |m: &mut FileOptions| { &mut m.go_package },
4928 ));
4929 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
4930 "cc_generic_services",
4931 |m: &FileOptions| { &m.cc_generic_services },
4932 |m: &mut FileOptions| { &mut m.cc_generic_services },
4933 ));
4934 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
4935 "java_generic_services",
4936 |m: &FileOptions| { &m.java_generic_services },
4937 |m: &mut FileOptions| { &mut m.java_generic_services },
4938 ));
4939 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
4940 "py_generic_services",
4941 |m: &FileOptions| { &m.py_generic_services },
4942 |m: &mut FileOptions| { &mut m.py_generic_services },
4943 ));
4944 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
4945 "deprecated",
4946 |m: &FileOptions| { &m.deprecated },
4947 |m: &mut FileOptions| { &mut m.deprecated },
4948 ));
4949 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
4950 "cc_enable_arenas",
4951 |m: &FileOptions| { &m.cc_enable_arenas },
4952 |m: &mut FileOptions| { &mut m.cc_enable_arenas },
4953 ));
4954 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4955 "objc_class_prefix",
4956 |m: &FileOptions| { &m.objc_class_prefix },
4957 |m: &mut FileOptions| { &mut m.objc_class_prefix },
4958 ));
4959 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4960 "csharp_namespace",
4961 |m: &FileOptions| { &m.csharp_namespace },
4962 |m: &mut FileOptions| { &mut m.csharp_namespace },
4963 ));
4964 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<UninterpretedOption>>(
4965 "uninterpreted_option",
4966 |m: &FileOptions| { &m.uninterpreted_option },
4967 |m: &mut FileOptions| { &mut m.uninterpreted_option },
4968 ));
4969 ::protobuf::reflect::MessageDescriptor::new::<FileOptions>(
4970 "FileOptions",
4971 fields,
4972 file_descriptor_proto()
4973 )
4974 })
4975 }
4976 }
4977
4978 fn default_instance() -> &'static FileOptions {
4979 static mut instance: ::protobuf::lazy::Lazy<FileOptions> = ::protobuf::lazy::Lazy {
4980 lock: ::protobuf::lazy::ONCE_INIT,
4981 ptr: 0 as *const FileOptions,
4982 };
4983 unsafe {
4984 instance.get(FileOptions::new)
4985 }
4986 }
4987}
4988
4989impl ::protobuf::Clear for FileOptions {
4990 fn clear(&mut self) {
4991 self.java_package.clear();
4992 self.java_outer_classname.clear();
4993 self.java_multiple_files = ::std::option::Option::None;
4994 self.java_generate_equals_and_hash = ::std::option::Option::None;
4995 self.java_string_check_utf8 = ::std::option::Option::None;
4996 self.optimize_for = ::std::option::Option::None;
4997 self.go_package.clear();
4998 self.cc_generic_services = ::std::option::Option::None;
4999 self.java_generic_services = ::std::option::Option::None;
5000 self.py_generic_services = ::std::option::Option::None;
5001 self.deprecated = ::std::option::Option::None;
5002 self.cc_enable_arenas = ::std::option::Option::None;
5003 self.objc_class_prefix.clear();
5004 self.csharp_namespace.clear();
5005 self.uninterpreted_option.clear();
5006 self.unknown_fields.clear();
5007 }
5008}
5009
5010impl ::std::fmt::Debug for FileOptions {
5011 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5012 ::protobuf::text_format::fmt(self, f)
5013 }
5014}
5015
5016impl ::protobuf::reflect::ProtobufValue for FileOptions {
5017 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
5018 ::protobuf::reflect::ProtobufValueRef::Message(self)
5019 }
5020}
5021
5022#[derive(Clone,PartialEq,Eq,Debug,Hash)]
5023#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
5024pub enum FileOptions_OptimizeMode {
5025 SPEED = 1,
5026 CODE_SIZE = 2,
5027 LITE_RUNTIME = 3,
5028}
5029
5030impl ::protobuf::ProtobufEnum for FileOptions_OptimizeMode {
5031 fn value(&self) -> i32 {
5032 *self as i32
5033 }
5034
5035 fn from_i32(value: i32) -> ::std::option::Option<FileOptions_OptimizeMode> {
5036 match value {
5037 1 => ::std::option::Option::Some(FileOptions_OptimizeMode::SPEED),
5038 2 => ::std::option::Option::Some(FileOptions_OptimizeMode::CODE_SIZE),
5039 3 => ::std::option::Option::Some(FileOptions_OptimizeMode::LITE_RUNTIME),
5040 _ => ::std::option::Option::None
5041 }
5042 }
5043
5044 fn values() -> &'static [Self] {
5045 static values: &'static [FileOptions_OptimizeMode] = &[
5046 FileOptions_OptimizeMode::SPEED,
5047 FileOptions_OptimizeMode::CODE_SIZE,
5048 FileOptions_OptimizeMode::LITE_RUNTIME,
5049 ];
5050 values
5051 }
5052
5053 fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
5054 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy {
5055 lock: ::protobuf::lazy::ONCE_INIT,
5056 ptr: 0 as *const ::protobuf::reflect::EnumDescriptor,
5057 };
5058 unsafe {
5059 descriptor.get(|| {
5060 ::protobuf::reflect::EnumDescriptor::new("FileOptions_OptimizeMode", file_descriptor_proto())
5061 })
5062 }
5063 }
5064}
5065
5066impl ::std::marker::Copy for FileOptions_OptimizeMode {
5067}
5068
5069impl ::std::default::Default for FileOptions_OptimizeMode {
5071 fn default() -> Self {
5072 FileOptions_OptimizeMode::SPEED
5073 }
5074}
5075
5076impl ::protobuf::reflect::ProtobufValue for FileOptions_OptimizeMode {
5077 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
5078 ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor())
5079 }
5080}
5081
5082#[derive(PartialEq,Clone,Default)]
5083#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
5084pub struct MessageOptions {
5085 message_set_wire_format: ::std::option::Option<bool>,
5087 no_standard_descriptor_accessor: ::std::option::Option<bool>,
5088 deprecated: ::std::option::Option<bool>,
5089 map_entry: ::std::option::Option<bool>,
5090 uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
5091 #[cfg_attr(feature = "with-serde", serde(skip))]
5093 pub unknown_fields: ::protobuf::UnknownFields,
5094 #[cfg_attr(feature = "with-serde", serde(skip))]
5095 pub cached_size: ::protobuf::CachedSize,
5096}
5097
5098impl<'a> ::std::default::Default for &'a MessageOptions {
5099 fn default() -> &'a MessageOptions {
5100 <MessageOptions as ::protobuf::Message>::default_instance()
5101 }
5102}
5103
5104impl MessageOptions {
5105 pub fn new() -> MessageOptions {
5106 ::std::default::Default::default()
5107 }
5108
5109 pub fn get_message_set_wire_format(&self) -> bool {
5113 self.message_set_wire_format.unwrap_or(false)
5114 }
5115 pub fn clear_message_set_wire_format(&mut self) {
5116 self.message_set_wire_format = ::std::option::Option::None;
5117 }
5118
5119 pub fn has_message_set_wire_format(&self) -> bool {
5120 self.message_set_wire_format.is_some()
5121 }
5122
5123 pub fn set_message_set_wire_format(&mut self, v: bool) {
5125 self.message_set_wire_format = ::std::option::Option::Some(v);
5126 }
5127
5128 pub fn get_no_standard_descriptor_accessor(&self) -> bool {
5132 self.no_standard_descriptor_accessor.unwrap_or(false)
5133 }
5134 pub fn clear_no_standard_descriptor_accessor(&mut self) {
5135 self.no_standard_descriptor_accessor = ::std::option::Option::None;
5136 }
5137
5138 pub fn has_no_standard_descriptor_accessor(&self) -> bool {
5139 self.no_standard_descriptor_accessor.is_some()
5140 }
5141
5142 pub fn set_no_standard_descriptor_accessor(&mut self, v: bool) {
5144 self.no_standard_descriptor_accessor = ::std::option::Option::Some(v);
5145 }
5146
5147 pub fn get_deprecated(&self) -> bool {
5151 self.deprecated.unwrap_or(false)
5152 }
5153 pub fn clear_deprecated(&mut self) {
5154 self.deprecated = ::std::option::Option::None;
5155 }
5156
5157 pub fn has_deprecated(&self) -> bool {
5158 self.deprecated.is_some()
5159 }
5160
5161 pub fn set_deprecated(&mut self, v: bool) {
5163 self.deprecated = ::std::option::Option::Some(v);
5164 }
5165
5166 pub fn get_map_entry(&self) -> bool {
5170 self.map_entry.unwrap_or(false)
5171 }
5172 pub fn clear_map_entry(&mut self) {
5173 self.map_entry = ::std::option::Option::None;
5174 }
5175
5176 pub fn has_map_entry(&self) -> bool {
5177 self.map_entry.is_some()
5178 }
5179
5180 pub fn set_map_entry(&mut self, v: bool) {
5182 self.map_entry = ::std::option::Option::Some(v);
5183 }
5184
5185 pub fn get_uninterpreted_option(&self) -> &[UninterpretedOption] {
5189 &self.uninterpreted_option
5190 }
5191 pub fn clear_uninterpreted_option(&mut self) {
5192 self.uninterpreted_option.clear();
5193 }
5194
5195 pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
5197 self.uninterpreted_option = v;
5198 }
5199
5200 pub fn mut_uninterpreted_option(&mut self) -> &mut ::protobuf::RepeatedField<UninterpretedOption> {
5202 &mut self.uninterpreted_option
5203 }
5204
5205 pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
5207 ::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
5208 }
5209}
5210
5211impl ::protobuf::Message for MessageOptions {
5212 fn is_initialized(&self) -> bool {
5213 for v in &self.uninterpreted_option {
5214 if !v.is_initialized() {
5215 return false;
5216 }
5217 };
5218 true
5219 }
5220
5221 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
5222 while !is.eof()? {
5223 let (field_number, wire_type) = is.read_tag_unpack()?;
5224 match field_number {
5225 1 => {
5226 if wire_type != ::protobuf::wire_format::WireTypeVarint {
5227 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
5228 }
5229 let tmp = is.read_bool()?;
5230 self.message_set_wire_format = ::std::option::Option::Some(tmp);
5231 },
5232 2 => {
5233 if wire_type != ::protobuf::wire_format::WireTypeVarint {
5234 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
5235 }
5236 let tmp = is.read_bool()?;
5237 self.no_standard_descriptor_accessor = ::std::option::Option::Some(tmp);
5238 },
5239 3 => {
5240 if wire_type != ::protobuf::wire_format::WireTypeVarint {
5241 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
5242 }
5243 let tmp = is.read_bool()?;
5244 self.deprecated = ::std::option::Option::Some(tmp);
5245 },
5246 7 => {
5247 if wire_type != ::protobuf::wire_format::WireTypeVarint {
5248 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
5249 }
5250 let tmp = is.read_bool()?;
5251 self.map_entry = ::std::option::Option::Some(tmp);
5252 },
5253 999 => {
5254 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option)?;
5255 },
5256 _ => {
5257 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
5258 },
5259 };
5260 }
5261 ::std::result::Result::Ok(())
5262 }
5263
5264 #[allow(unused_variables)]
5266 fn compute_size(&self) -> u32 {
5267 let mut my_size = 0;
5268 if let Some(v) = self.message_set_wire_format {
5269 my_size += 2;
5270 }
5271 if let Some(v) = self.no_standard_descriptor_accessor {
5272 my_size += 2;
5273 }
5274 if let Some(v) = self.deprecated {
5275 my_size += 2;
5276 }
5277 if let Some(v) = self.map_entry {
5278 my_size += 2;
5279 }
5280 for value in &self.uninterpreted_option {
5281 let len = value.compute_size();
5282 my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
5283 };
5284 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
5285 self.cached_size.set(my_size);
5286 my_size
5287 }
5288
5289 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
5290 if let Some(v) = self.message_set_wire_format {
5291 os.write_bool(1, v)?;
5292 }
5293 if let Some(v) = self.no_standard_descriptor_accessor {
5294 os.write_bool(2, v)?;
5295 }
5296 if let Some(v) = self.deprecated {
5297 os.write_bool(3, v)?;
5298 }
5299 if let Some(v) = self.map_entry {
5300 os.write_bool(7, v)?;
5301 }
5302 for v in &self.uninterpreted_option {
5303 os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited)?;
5304 os.write_raw_varint32(v.get_cached_size())?;
5305 v.write_to_with_cached_sizes(os)?;
5306 };
5307 os.write_unknown_fields(self.get_unknown_fields())?;
5308 ::std::result::Result::Ok(())
5309 }
5310
5311 fn get_cached_size(&self) -> u32 {
5312 self.cached_size.get()
5313 }
5314
5315 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
5316 &self.unknown_fields
5317 }
5318
5319 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
5320 &mut self.unknown_fields
5321 }
5322
5323 fn as_any(&self) -> &dyn (::std::any::Any) {
5324 self as &dyn (::std::any::Any)
5325 }
5326 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
5327 self as &mut dyn (::std::any::Any)
5328 }
5329 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
5330 self
5331 }
5332
5333 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
5334 Self::descriptor_static()
5335 }
5336
5337 fn new() -> MessageOptions {
5338 MessageOptions::new()
5339 }
5340
5341 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
5342 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
5343 lock: ::protobuf::lazy::ONCE_INIT,
5344 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
5345 };
5346 unsafe {
5347 descriptor.get(|| {
5348 let mut fields = ::std::vec::Vec::new();
5349 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
5350 "message_set_wire_format",
5351 |m: &MessageOptions| { &m.message_set_wire_format },
5352 |m: &mut MessageOptions| { &mut m.message_set_wire_format },
5353 ));
5354 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
5355 "no_standard_descriptor_accessor",
5356 |m: &MessageOptions| { &m.no_standard_descriptor_accessor },
5357 |m: &mut MessageOptions| { &mut m.no_standard_descriptor_accessor },
5358 ));
5359 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
5360 "deprecated",
5361 |m: &MessageOptions| { &m.deprecated },
5362 |m: &mut MessageOptions| { &mut m.deprecated },
5363 ));
5364 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
5365 "map_entry",
5366 |m: &MessageOptions| { &m.map_entry },
5367 |m: &mut MessageOptions| { &mut m.map_entry },
5368 ));
5369 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<UninterpretedOption>>(
5370 "uninterpreted_option",
5371 |m: &MessageOptions| { &m.uninterpreted_option },
5372 |m: &mut MessageOptions| { &mut m.uninterpreted_option },
5373 ));
5374 ::protobuf::reflect::MessageDescriptor::new::<MessageOptions>(
5375 "MessageOptions",
5376 fields,
5377 file_descriptor_proto()
5378 )
5379 })
5380 }
5381 }
5382
5383 fn default_instance() -> &'static MessageOptions {
5384 static mut instance: ::protobuf::lazy::Lazy<MessageOptions> = ::protobuf::lazy::Lazy {
5385 lock: ::protobuf::lazy::ONCE_INIT,
5386 ptr: 0 as *const MessageOptions,
5387 };
5388 unsafe {
5389 instance.get(MessageOptions::new)
5390 }
5391 }
5392}
5393
5394impl ::protobuf::Clear for MessageOptions {
5395 fn clear(&mut self) {
5396 self.message_set_wire_format = ::std::option::Option::None;
5397 self.no_standard_descriptor_accessor = ::std::option::Option::None;
5398 self.deprecated = ::std::option::Option::None;
5399 self.map_entry = ::std::option::Option::None;
5400 self.uninterpreted_option.clear();
5401 self.unknown_fields.clear();
5402 }
5403}
5404
5405impl ::std::fmt::Debug for MessageOptions {
5406 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5407 ::protobuf::text_format::fmt(self, f)
5408 }
5409}
5410
5411impl ::protobuf::reflect::ProtobufValue for MessageOptions {
5412 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
5413 ::protobuf::reflect::ProtobufValueRef::Message(self)
5414 }
5415}
5416
5417#[derive(PartialEq,Clone,Default)]
5418#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
5419pub struct FieldOptions {
5420 ctype: ::std::option::Option<FieldOptions_CType>,
5422 packed: ::std::option::Option<bool>,
5423 jstype: ::std::option::Option<FieldOptions_JSType>,
5424 lazy: ::std::option::Option<bool>,
5425 deprecated: ::std::option::Option<bool>,
5426 weak: ::std::option::Option<bool>,
5427 uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
5428 #[cfg_attr(feature = "with-serde", serde(skip))]
5430 pub unknown_fields: ::protobuf::UnknownFields,
5431 #[cfg_attr(feature = "with-serde", serde(skip))]
5432 pub cached_size: ::protobuf::CachedSize,
5433}
5434
5435impl<'a> ::std::default::Default for &'a FieldOptions {
5436 fn default() -> &'a FieldOptions {
5437 <FieldOptions as ::protobuf::Message>::default_instance()
5438 }
5439}
5440
5441impl FieldOptions {
5442 pub fn new() -> FieldOptions {
5443 ::std::default::Default::default()
5444 }
5445
5446 pub fn get_ctype(&self) -> FieldOptions_CType {
5450 self.ctype.unwrap_or(FieldOptions_CType::STRING)
5451 }
5452 pub fn clear_ctype(&mut self) {
5453 self.ctype = ::std::option::Option::None;
5454 }
5455
5456 pub fn has_ctype(&self) -> bool {
5457 self.ctype.is_some()
5458 }
5459
5460 pub fn set_ctype(&mut self, v: FieldOptions_CType) {
5462 self.ctype = ::std::option::Option::Some(v);
5463 }
5464
5465 pub fn get_packed(&self) -> bool {
5469 self.packed.unwrap_or(false)
5470 }
5471 pub fn clear_packed(&mut self) {
5472 self.packed = ::std::option::Option::None;
5473 }
5474
5475 pub fn has_packed(&self) -> bool {
5476 self.packed.is_some()
5477 }
5478
5479 pub fn set_packed(&mut self, v: bool) {
5481 self.packed = ::std::option::Option::Some(v);
5482 }
5483
5484 pub fn get_jstype(&self) -> FieldOptions_JSType {
5488 self.jstype.unwrap_or(FieldOptions_JSType::JS_NORMAL)
5489 }
5490 pub fn clear_jstype(&mut self) {
5491 self.jstype = ::std::option::Option::None;
5492 }
5493
5494 pub fn has_jstype(&self) -> bool {
5495 self.jstype.is_some()
5496 }
5497
5498 pub fn set_jstype(&mut self, v: FieldOptions_JSType) {
5500 self.jstype = ::std::option::Option::Some(v);
5501 }
5502
5503 pub fn get_lazy(&self) -> bool {
5507 self.lazy.unwrap_or(false)
5508 }
5509 pub fn clear_lazy(&mut self) {
5510 self.lazy = ::std::option::Option::None;
5511 }
5512
5513 pub fn has_lazy(&self) -> bool {
5514 self.lazy.is_some()
5515 }
5516
5517 pub fn set_lazy(&mut self, v: bool) {
5519 self.lazy = ::std::option::Option::Some(v);
5520 }
5521
5522 pub fn get_deprecated(&self) -> bool {
5526 self.deprecated.unwrap_or(false)
5527 }
5528 pub fn clear_deprecated(&mut self) {
5529 self.deprecated = ::std::option::Option::None;
5530 }
5531
5532 pub fn has_deprecated(&self) -> bool {
5533 self.deprecated.is_some()
5534 }
5535
5536 pub fn set_deprecated(&mut self, v: bool) {
5538 self.deprecated = ::std::option::Option::Some(v);
5539 }
5540
5541 pub fn get_weak(&self) -> bool {
5545 self.weak.unwrap_or(false)
5546 }
5547 pub fn clear_weak(&mut self) {
5548 self.weak = ::std::option::Option::None;
5549 }
5550
5551 pub fn has_weak(&self) -> bool {
5552 self.weak.is_some()
5553 }
5554
5555 pub fn set_weak(&mut self, v: bool) {
5557 self.weak = ::std::option::Option::Some(v);
5558 }
5559
5560 pub fn get_uninterpreted_option(&self) -> &[UninterpretedOption] {
5564 &self.uninterpreted_option
5565 }
5566 pub fn clear_uninterpreted_option(&mut self) {
5567 self.uninterpreted_option.clear();
5568 }
5569
5570 pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
5572 self.uninterpreted_option = v;
5573 }
5574
5575 pub fn mut_uninterpreted_option(&mut self) -> &mut ::protobuf::RepeatedField<UninterpretedOption> {
5577 &mut self.uninterpreted_option
5578 }
5579
5580 pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
5582 ::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
5583 }
5584}
5585
5586impl ::protobuf::Message for FieldOptions {
5587 fn is_initialized(&self) -> bool {
5588 for v in &self.uninterpreted_option {
5589 if !v.is_initialized() {
5590 return false;
5591 }
5592 };
5593 true
5594 }
5595
5596 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
5597 while !is.eof()? {
5598 let (field_number, wire_type) = is.read_tag_unpack()?;
5599 match field_number {
5600 1 => {
5601 ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.ctype, 1, &mut self.unknown_fields)?
5602 },
5603 2 => {
5604 if wire_type != ::protobuf::wire_format::WireTypeVarint {
5605 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
5606 }
5607 let tmp = is.read_bool()?;
5608 self.packed = ::std::option::Option::Some(tmp);
5609 },
5610 6 => {
5611 ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.jstype, 6, &mut self.unknown_fields)?
5612 },
5613 5 => {
5614 if wire_type != ::protobuf::wire_format::WireTypeVarint {
5615 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
5616 }
5617 let tmp = is.read_bool()?;
5618 self.lazy = ::std::option::Option::Some(tmp);
5619 },
5620 3 => {
5621 if wire_type != ::protobuf::wire_format::WireTypeVarint {
5622 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
5623 }
5624 let tmp = is.read_bool()?;
5625 self.deprecated = ::std::option::Option::Some(tmp);
5626 },
5627 10 => {
5628 if wire_type != ::protobuf::wire_format::WireTypeVarint {
5629 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
5630 }
5631 let tmp = is.read_bool()?;
5632 self.weak = ::std::option::Option::Some(tmp);
5633 },
5634 999 => {
5635 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option)?;
5636 },
5637 _ => {
5638 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
5639 },
5640 };
5641 }
5642 ::std::result::Result::Ok(())
5643 }
5644
5645 #[allow(unused_variables)]
5647 fn compute_size(&self) -> u32 {
5648 let mut my_size = 0;
5649 if let Some(v) = self.ctype {
5650 my_size += ::protobuf::rt::enum_size(1, v);
5651 }
5652 if let Some(v) = self.packed {
5653 my_size += 2;
5654 }
5655 if let Some(v) = self.jstype {
5656 my_size += ::protobuf::rt::enum_size(6, v);
5657 }
5658 if let Some(v) = self.lazy {
5659 my_size += 2;
5660 }
5661 if let Some(v) = self.deprecated {
5662 my_size += 2;
5663 }
5664 if let Some(v) = self.weak {
5665 my_size += 2;
5666 }
5667 for value in &self.uninterpreted_option {
5668 let len = value.compute_size();
5669 my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
5670 };
5671 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
5672 self.cached_size.set(my_size);
5673 my_size
5674 }
5675
5676 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
5677 if let Some(v) = self.ctype {
5678 os.write_enum(1, v.value())?;
5679 }
5680 if let Some(v) = self.packed {
5681 os.write_bool(2, v)?;
5682 }
5683 if let Some(v) = self.jstype {
5684 os.write_enum(6, v.value())?;
5685 }
5686 if let Some(v) = self.lazy {
5687 os.write_bool(5, v)?;
5688 }
5689 if let Some(v) = self.deprecated {
5690 os.write_bool(3, v)?;
5691 }
5692 if let Some(v) = self.weak {
5693 os.write_bool(10, v)?;
5694 }
5695 for v in &self.uninterpreted_option {
5696 os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited)?;
5697 os.write_raw_varint32(v.get_cached_size())?;
5698 v.write_to_with_cached_sizes(os)?;
5699 };
5700 os.write_unknown_fields(self.get_unknown_fields())?;
5701 ::std::result::Result::Ok(())
5702 }
5703
5704 fn get_cached_size(&self) -> u32 {
5705 self.cached_size.get()
5706 }
5707
5708 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
5709 &self.unknown_fields
5710 }
5711
5712 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
5713 &mut self.unknown_fields
5714 }
5715
5716 fn as_any(&self) -> &dyn (::std::any::Any) {
5717 self as &dyn (::std::any::Any)
5718 }
5719 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
5720 self as &mut dyn (::std::any::Any)
5721 }
5722 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
5723 self
5724 }
5725
5726 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
5727 Self::descriptor_static()
5728 }
5729
5730 fn new() -> FieldOptions {
5731 FieldOptions::new()
5732 }
5733
5734 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
5735 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
5736 lock: ::protobuf::lazy::ONCE_INIT,
5737 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
5738 };
5739 unsafe {
5740 descriptor.get(|| {
5741 let mut fields = ::std::vec::Vec::new();
5742 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<FieldOptions_CType>>(
5743 "ctype",
5744 |m: &FieldOptions| { &m.ctype },
5745 |m: &mut FieldOptions| { &mut m.ctype },
5746 ));
5747 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
5748 "packed",
5749 |m: &FieldOptions| { &m.packed },
5750 |m: &mut FieldOptions| { &mut m.packed },
5751 ));
5752 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<FieldOptions_JSType>>(
5753 "jstype",
5754 |m: &FieldOptions| { &m.jstype },
5755 |m: &mut FieldOptions| { &mut m.jstype },
5756 ));
5757 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
5758 "lazy",
5759 |m: &FieldOptions| { &m.lazy },
5760 |m: &mut FieldOptions| { &mut m.lazy },
5761 ));
5762 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
5763 "deprecated",
5764 |m: &FieldOptions| { &m.deprecated },
5765 |m: &mut FieldOptions| { &mut m.deprecated },
5766 ));
5767 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
5768 "weak",
5769 |m: &FieldOptions| { &m.weak },
5770 |m: &mut FieldOptions| { &mut m.weak },
5771 ));
5772 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<UninterpretedOption>>(
5773 "uninterpreted_option",
5774 |m: &FieldOptions| { &m.uninterpreted_option },
5775 |m: &mut FieldOptions| { &mut m.uninterpreted_option },
5776 ));
5777 ::protobuf::reflect::MessageDescriptor::new::<FieldOptions>(
5778 "FieldOptions",
5779 fields,
5780 file_descriptor_proto()
5781 )
5782 })
5783 }
5784 }
5785
5786 fn default_instance() -> &'static FieldOptions {
5787 static mut instance: ::protobuf::lazy::Lazy<FieldOptions> = ::protobuf::lazy::Lazy {
5788 lock: ::protobuf::lazy::ONCE_INIT,
5789 ptr: 0 as *const FieldOptions,
5790 };
5791 unsafe {
5792 instance.get(FieldOptions::new)
5793 }
5794 }
5795}
5796
5797impl ::protobuf::Clear for FieldOptions {
5798 fn clear(&mut self) {
5799 self.ctype = ::std::option::Option::None;
5800 self.packed = ::std::option::Option::None;
5801 self.jstype = ::std::option::Option::None;
5802 self.lazy = ::std::option::Option::None;
5803 self.deprecated = ::std::option::Option::None;
5804 self.weak = ::std::option::Option::None;
5805 self.uninterpreted_option.clear();
5806 self.unknown_fields.clear();
5807 }
5808}
5809
5810impl ::std::fmt::Debug for FieldOptions {
5811 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5812 ::protobuf::text_format::fmt(self, f)
5813 }
5814}
5815
5816impl ::protobuf::reflect::ProtobufValue for FieldOptions {
5817 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
5818 ::protobuf::reflect::ProtobufValueRef::Message(self)
5819 }
5820}
5821
5822#[derive(Clone,PartialEq,Eq,Debug,Hash)]
5823#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
5824pub enum FieldOptions_CType {
5825 STRING = 0,
5826 CORD = 1,
5827 STRING_PIECE = 2,
5828}
5829
5830impl ::protobuf::ProtobufEnum for FieldOptions_CType {
5831 fn value(&self) -> i32 {
5832 *self as i32
5833 }
5834
5835 fn from_i32(value: i32) -> ::std::option::Option<FieldOptions_CType> {
5836 match value {
5837 0 => ::std::option::Option::Some(FieldOptions_CType::STRING),
5838 1 => ::std::option::Option::Some(FieldOptions_CType::CORD),
5839 2 => ::std::option::Option::Some(FieldOptions_CType::STRING_PIECE),
5840 _ => ::std::option::Option::None
5841 }
5842 }
5843
5844 fn values() -> &'static [Self] {
5845 static values: &'static [FieldOptions_CType] = &[
5846 FieldOptions_CType::STRING,
5847 FieldOptions_CType::CORD,
5848 FieldOptions_CType::STRING_PIECE,
5849 ];
5850 values
5851 }
5852
5853 fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
5854 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy {
5855 lock: ::protobuf::lazy::ONCE_INIT,
5856 ptr: 0 as *const ::protobuf::reflect::EnumDescriptor,
5857 };
5858 unsafe {
5859 descriptor.get(|| {
5860 ::protobuf::reflect::EnumDescriptor::new("FieldOptions_CType", file_descriptor_proto())
5861 })
5862 }
5863 }
5864}
5865
5866impl ::std::marker::Copy for FieldOptions_CType {
5867}
5868
5869impl ::std::default::Default for FieldOptions_CType {
5870 fn default() -> Self {
5871 FieldOptions_CType::STRING
5872 }
5873}
5874
5875impl ::protobuf::reflect::ProtobufValue for FieldOptions_CType {
5876 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
5877 ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor())
5878 }
5879}
5880
5881#[derive(Clone,PartialEq,Eq,Debug,Hash)]
5882#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
5883pub enum FieldOptions_JSType {
5884 JS_NORMAL = 0,
5885 JS_STRING = 1,
5886 JS_NUMBER = 2,
5887}
5888
5889impl ::protobuf::ProtobufEnum for FieldOptions_JSType {
5890 fn value(&self) -> i32 {
5891 *self as i32
5892 }
5893
5894 fn from_i32(value: i32) -> ::std::option::Option<FieldOptions_JSType> {
5895 match value {
5896 0 => ::std::option::Option::Some(FieldOptions_JSType::JS_NORMAL),
5897 1 => ::std::option::Option::Some(FieldOptions_JSType::JS_STRING),
5898 2 => ::std::option::Option::Some(FieldOptions_JSType::JS_NUMBER),
5899 _ => ::std::option::Option::None
5900 }
5901 }
5902
5903 fn values() -> &'static [Self] {
5904 static values: &'static [FieldOptions_JSType] = &[
5905 FieldOptions_JSType::JS_NORMAL,
5906 FieldOptions_JSType::JS_STRING,
5907 FieldOptions_JSType::JS_NUMBER,
5908 ];
5909 values
5910 }
5911
5912 fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
5913 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy {
5914 lock: ::protobuf::lazy::ONCE_INIT,
5915 ptr: 0 as *const ::protobuf::reflect::EnumDescriptor,
5916 };
5917 unsafe {
5918 descriptor.get(|| {
5919 ::protobuf::reflect::EnumDescriptor::new("FieldOptions_JSType", file_descriptor_proto())
5920 })
5921 }
5922 }
5923}
5924
5925impl ::std::marker::Copy for FieldOptions_JSType {
5926}
5927
5928impl ::std::default::Default for FieldOptions_JSType {
5929 fn default() -> Self {
5930 FieldOptions_JSType::JS_NORMAL
5931 }
5932}
5933
5934impl ::protobuf::reflect::ProtobufValue for FieldOptions_JSType {
5935 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
5936 ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor())
5937 }
5938}
5939
5940#[derive(PartialEq,Clone,Default)]
5941#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
5942pub struct OneofOptions {
5943 uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
5945 #[cfg_attr(feature = "with-serde", serde(skip))]
5947 pub unknown_fields: ::protobuf::UnknownFields,
5948 #[cfg_attr(feature = "with-serde", serde(skip))]
5949 pub cached_size: ::protobuf::CachedSize,
5950}
5951
5952impl<'a> ::std::default::Default for &'a OneofOptions {
5953 fn default() -> &'a OneofOptions {
5954 <OneofOptions as ::protobuf::Message>::default_instance()
5955 }
5956}
5957
5958impl OneofOptions {
5959 pub fn new() -> OneofOptions {
5960 ::std::default::Default::default()
5961 }
5962
5963 pub fn get_uninterpreted_option(&self) -> &[UninterpretedOption] {
5967 &self.uninterpreted_option
5968 }
5969 pub fn clear_uninterpreted_option(&mut self) {
5970 self.uninterpreted_option.clear();
5971 }
5972
5973 pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
5975 self.uninterpreted_option = v;
5976 }
5977
5978 pub fn mut_uninterpreted_option(&mut self) -> &mut ::protobuf::RepeatedField<UninterpretedOption> {
5980 &mut self.uninterpreted_option
5981 }
5982
5983 pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
5985 ::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
5986 }
5987}
5988
5989impl ::protobuf::Message for OneofOptions {
5990 fn is_initialized(&self) -> bool {
5991 for v in &self.uninterpreted_option {
5992 if !v.is_initialized() {
5993 return false;
5994 }
5995 };
5996 true
5997 }
5998
5999 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
6000 while !is.eof()? {
6001 let (field_number, wire_type) = is.read_tag_unpack()?;
6002 match field_number {
6003 999 => {
6004 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option)?;
6005 },
6006 _ => {
6007 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
6008 },
6009 };
6010 }
6011 ::std::result::Result::Ok(())
6012 }
6013
6014 #[allow(unused_variables)]
6016 fn compute_size(&self) -> u32 {
6017 let mut my_size = 0;
6018 for value in &self.uninterpreted_option {
6019 let len = value.compute_size();
6020 my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
6021 };
6022 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
6023 self.cached_size.set(my_size);
6024 my_size
6025 }
6026
6027 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
6028 for v in &self.uninterpreted_option {
6029 os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited)?;
6030 os.write_raw_varint32(v.get_cached_size())?;
6031 v.write_to_with_cached_sizes(os)?;
6032 };
6033 os.write_unknown_fields(self.get_unknown_fields())?;
6034 ::std::result::Result::Ok(())
6035 }
6036
6037 fn get_cached_size(&self) -> u32 {
6038 self.cached_size.get()
6039 }
6040
6041 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
6042 &self.unknown_fields
6043 }
6044
6045 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
6046 &mut self.unknown_fields
6047 }
6048
6049 fn as_any(&self) -> &dyn (::std::any::Any) {
6050 self as &dyn (::std::any::Any)
6051 }
6052 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
6053 self as &mut dyn (::std::any::Any)
6054 }
6055 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
6056 self
6057 }
6058
6059 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
6060 Self::descriptor_static()
6061 }
6062
6063 fn new() -> OneofOptions {
6064 OneofOptions::new()
6065 }
6066
6067 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
6068 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
6069 lock: ::protobuf::lazy::ONCE_INIT,
6070 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
6071 };
6072 unsafe {
6073 descriptor.get(|| {
6074 let mut fields = ::std::vec::Vec::new();
6075 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<UninterpretedOption>>(
6076 "uninterpreted_option",
6077 |m: &OneofOptions| { &m.uninterpreted_option },
6078 |m: &mut OneofOptions| { &mut m.uninterpreted_option },
6079 ));
6080 ::protobuf::reflect::MessageDescriptor::new::<OneofOptions>(
6081 "OneofOptions",
6082 fields,
6083 file_descriptor_proto()
6084 )
6085 })
6086 }
6087 }
6088
6089 fn default_instance() -> &'static OneofOptions {
6090 static mut instance: ::protobuf::lazy::Lazy<OneofOptions> = ::protobuf::lazy::Lazy {
6091 lock: ::protobuf::lazy::ONCE_INIT,
6092 ptr: 0 as *const OneofOptions,
6093 };
6094 unsafe {
6095 instance.get(OneofOptions::new)
6096 }
6097 }
6098}
6099
6100impl ::protobuf::Clear for OneofOptions {
6101 fn clear(&mut self) {
6102 self.uninterpreted_option.clear();
6103 self.unknown_fields.clear();
6104 }
6105}
6106
6107impl ::std::fmt::Debug for OneofOptions {
6108 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6109 ::protobuf::text_format::fmt(self, f)
6110 }
6111}
6112
6113impl ::protobuf::reflect::ProtobufValue for OneofOptions {
6114 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
6115 ::protobuf::reflect::ProtobufValueRef::Message(self)
6116 }
6117}
6118
6119#[derive(PartialEq,Clone,Default)]
6120#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
6121pub struct EnumOptions {
6122 allow_alias: ::std::option::Option<bool>,
6124 deprecated: ::std::option::Option<bool>,
6125 uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
6126 #[cfg_attr(feature = "with-serde", serde(skip))]
6128 pub unknown_fields: ::protobuf::UnknownFields,
6129 #[cfg_attr(feature = "with-serde", serde(skip))]
6130 pub cached_size: ::protobuf::CachedSize,
6131}
6132
6133impl<'a> ::std::default::Default for &'a EnumOptions {
6134 fn default() -> &'a EnumOptions {
6135 <EnumOptions as ::protobuf::Message>::default_instance()
6136 }
6137}
6138
6139impl EnumOptions {
6140 pub fn new() -> EnumOptions {
6141 ::std::default::Default::default()
6142 }
6143
6144 pub fn get_allow_alias(&self) -> bool {
6148 self.allow_alias.unwrap_or(false)
6149 }
6150 pub fn clear_allow_alias(&mut self) {
6151 self.allow_alias = ::std::option::Option::None;
6152 }
6153
6154 pub fn has_allow_alias(&self) -> bool {
6155 self.allow_alias.is_some()
6156 }
6157
6158 pub fn set_allow_alias(&mut self, v: bool) {
6160 self.allow_alias = ::std::option::Option::Some(v);
6161 }
6162
6163 pub fn get_deprecated(&self) -> bool {
6167 self.deprecated.unwrap_or(false)
6168 }
6169 pub fn clear_deprecated(&mut self) {
6170 self.deprecated = ::std::option::Option::None;
6171 }
6172
6173 pub fn has_deprecated(&self) -> bool {
6174 self.deprecated.is_some()
6175 }
6176
6177 pub fn set_deprecated(&mut self, v: bool) {
6179 self.deprecated = ::std::option::Option::Some(v);
6180 }
6181
6182 pub fn get_uninterpreted_option(&self) -> &[UninterpretedOption] {
6186 &self.uninterpreted_option
6187 }
6188 pub fn clear_uninterpreted_option(&mut self) {
6189 self.uninterpreted_option.clear();
6190 }
6191
6192 pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
6194 self.uninterpreted_option = v;
6195 }
6196
6197 pub fn mut_uninterpreted_option(&mut self) -> &mut ::protobuf::RepeatedField<UninterpretedOption> {
6199 &mut self.uninterpreted_option
6200 }
6201
6202 pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
6204 ::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
6205 }
6206}
6207
6208impl ::protobuf::Message for EnumOptions {
6209 fn is_initialized(&self) -> bool {
6210 for v in &self.uninterpreted_option {
6211 if !v.is_initialized() {
6212 return false;
6213 }
6214 };
6215 true
6216 }
6217
6218 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
6219 while !is.eof()? {
6220 let (field_number, wire_type) = is.read_tag_unpack()?;
6221 match field_number {
6222 2 => {
6223 if wire_type != ::protobuf::wire_format::WireTypeVarint {
6224 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
6225 }
6226 let tmp = is.read_bool()?;
6227 self.allow_alias = ::std::option::Option::Some(tmp);
6228 },
6229 3 => {
6230 if wire_type != ::protobuf::wire_format::WireTypeVarint {
6231 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
6232 }
6233 let tmp = is.read_bool()?;
6234 self.deprecated = ::std::option::Option::Some(tmp);
6235 },
6236 999 => {
6237 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option)?;
6238 },
6239 _ => {
6240 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
6241 },
6242 };
6243 }
6244 ::std::result::Result::Ok(())
6245 }
6246
6247 #[allow(unused_variables)]
6249 fn compute_size(&self) -> u32 {
6250 let mut my_size = 0;
6251 if let Some(v) = self.allow_alias {
6252 my_size += 2;
6253 }
6254 if let Some(v) = self.deprecated {
6255 my_size += 2;
6256 }
6257 for value in &self.uninterpreted_option {
6258 let len = value.compute_size();
6259 my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
6260 };
6261 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
6262 self.cached_size.set(my_size);
6263 my_size
6264 }
6265
6266 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
6267 if let Some(v) = self.allow_alias {
6268 os.write_bool(2, v)?;
6269 }
6270 if let Some(v) = self.deprecated {
6271 os.write_bool(3, v)?;
6272 }
6273 for v in &self.uninterpreted_option {
6274 os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited)?;
6275 os.write_raw_varint32(v.get_cached_size())?;
6276 v.write_to_with_cached_sizes(os)?;
6277 };
6278 os.write_unknown_fields(self.get_unknown_fields())?;
6279 ::std::result::Result::Ok(())
6280 }
6281
6282 fn get_cached_size(&self) -> u32 {
6283 self.cached_size.get()
6284 }
6285
6286 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
6287 &self.unknown_fields
6288 }
6289
6290 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
6291 &mut self.unknown_fields
6292 }
6293
6294 fn as_any(&self) -> &dyn (::std::any::Any) {
6295 self as &dyn (::std::any::Any)
6296 }
6297 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
6298 self as &mut dyn (::std::any::Any)
6299 }
6300 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
6301 self
6302 }
6303
6304 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
6305 Self::descriptor_static()
6306 }
6307
6308 fn new() -> EnumOptions {
6309 EnumOptions::new()
6310 }
6311
6312 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
6313 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
6314 lock: ::protobuf::lazy::ONCE_INIT,
6315 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
6316 };
6317 unsafe {
6318 descriptor.get(|| {
6319 let mut fields = ::std::vec::Vec::new();
6320 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
6321 "allow_alias",
6322 |m: &EnumOptions| { &m.allow_alias },
6323 |m: &mut EnumOptions| { &mut m.allow_alias },
6324 ));
6325 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
6326 "deprecated",
6327 |m: &EnumOptions| { &m.deprecated },
6328 |m: &mut EnumOptions| { &mut m.deprecated },
6329 ));
6330 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<UninterpretedOption>>(
6331 "uninterpreted_option",
6332 |m: &EnumOptions| { &m.uninterpreted_option },
6333 |m: &mut EnumOptions| { &mut m.uninterpreted_option },
6334 ));
6335 ::protobuf::reflect::MessageDescriptor::new::<EnumOptions>(
6336 "EnumOptions",
6337 fields,
6338 file_descriptor_proto()
6339 )
6340 })
6341 }
6342 }
6343
6344 fn default_instance() -> &'static EnumOptions {
6345 static mut instance: ::protobuf::lazy::Lazy<EnumOptions> = ::protobuf::lazy::Lazy {
6346 lock: ::protobuf::lazy::ONCE_INIT,
6347 ptr: 0 as *const EnumOptions,
6348 };
6349 unsafe {
6350 instance.get(EnumOptions::new)
6351 }
6352 }
6353}
6354
6355impl ::protobuf::Clear for EnumOptions {
6356 fn clear(&mut self) {
6357 self.allow_alias = ::std::option::Option::None;
6358 self.deprecated = ::std::option::Option::None;
6359 self.uninterpreted_option.clear();
6360 self.unknown_fields.clear();
6361 }
6362}
6363
6364impl ::std::fmt::Debug for EnumOptions {
6365 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6366 ::protobuf::text_format::fmt(self, f)
6367 }
6368}
6369
6370impl ::protobuf::reflect::ProtobufValue for EnumOptions {
6371 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
6372 ::protobuf::reflect::ProtobufValueRef::Message(self)
6373 }
6374}
6375
6376#[derive(PartialEq,Clone,Default)]
6377#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
6378pub struct EnumValueOptions {
6379 deprecated: ::std::option::Option<bool>,
6381 uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
6382 #[cfg_attr(feature = "with-serde", serde(skip))]
6384 pub unknown_fields: ::protobuf::UnknownFields,
6385 #[cfg_attr(feature = "with-serde", serde(skip))]
6386 pub cached_size: ::protobuf::CachedSize,
6387}
6388
6389impl<'a> ::std::default::Default for &'a EnumValueOptions {
6390 fn default() -> &'a EnumValueOptions {
6391 <EnumValueOptions as ::protobuf::Message>::default_instance()
6392 }
6393}
6394
6395impl EnumValueOptions {
6396 pub fn new() -> EnumValueOptions {
6397 ::std::default::Default::default()
6398 }
6399
6400 pub fn get_deprecated(&self) -> bool {
6404 self.deprecated.unwrap_or(false)
6405 }
6406 pub fn clear_deprecated(&mut self) {
6407 self.deprecated = ::std::option::Option::None;
6408 }
6409
6410 pub fn has_deprecated(&self) -> bool {
6411 self.deprecated.is_some()
6412 }
6413
6414 pub fn set_deprecated(&mut self, v: bool) {
6416 self.deprecated = ::std::option::Option::Some(v);
6417 }
6418
6419 pub fn get_uninterpreted_option(&self) -> &[UninterpretedOption] {
6423 &self.uninterpreted_option
6424 }
6425 pub fn clear_uninterpreted_option(&mut self) {
6426 self.uninterpreted_option.clear();
6427 }
6428
6429 pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
6431 self.uninterpreted_option = v;
6432 }
6433
6434 pub fn mut_uninterpreted_option(&mut self) -> &mut ::protobuf::RepeatedField<UninterpretedOption> {
6436 &mut self.uninterpreted_option
6437 }
6438
6439 pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
6441 ::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
6442 }
6443}
6444
6445impl ::protobuf::Message for EnumValueOptions {
6446 fn is_initialized(&self) -> bool {
6447 for v in &self.uninterpreted_option {
6448 if !v.is_initialized() {
6449 return false;
6450 }
6451 };
6452 true
6453 }
6454
6455 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
6456 while !is.eof()? {
6457 let (field_number, wire_type) = is.read_tag_unpack()?;
6458 match field_number {
6459 1 => {
6460 if wire_type != ::protobuf::wire_format::WireTypeVarint {
6461 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
6462 }
6463 let tmp = is.read_bool()?;
6464 self.deprecated = ::std::option::Option::Some(tmp);
6465 },
6466 999 => {
6467 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option)?;
6468 },
6469 _ => {
6470 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
6471 },
6472 };
6473 }
6474 ::std::result::Result::Ok(())
6475 }
6476
6477 #[allow(unused_variables)]
6479 fn compute_size(&self) -> u32 {
6480 let mut my_size = 0;
6481 if let Some(v) = self.deprecated {
6482 my_size += 2;
6483 }
6484 for value in &self.uninterpreted_option {
6485 let len = value.compute_size();
6486 my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
6487 };
6488 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
6489 self.cached_size.set(my_size);
6490 my_size
6491 }
6492
6493 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
6494 if let Some(v) = self.deprecated {
6495 os.write_bool(1, v)?;
6496 }
6497 for v in &self.uninterpreted_option {
6498 os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited)?;
6499 os.write_raw_varint32(v.get_cached_size())?;
6500 v.write_to_with_cached_sizes(os)?;
6501 };
6502 os.write_unknown_fields(self.get_unknown_fields())?;
6503 ::std::result::Result::Ok(())
6504 }
6505
6506 fn get_cached_size(&self) -> u32 {
6507 self.cached_size.get()
6508 }
6509
6510 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
6511 &self.unknown_fields
6512 }
6513
6514 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
6515 &mut self.unknown_fields
6516 }
6517
6518 fn as_any(&self) -> &dyn (::std::any::Any) {
6519 self as &dyn (::std::any::Any)
6520 }
6521 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
6522 self as &mut dyn (::std::any::Any)
6523 }
6524 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
6525 self
6526 }
6527
6528 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
6529 Self::descriptor_static()
6530 }
6531
6532 fn new() -> EnumValueOptions {
6533 EnumValueOptions::new()
6534 }
6535
6536 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
6537 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
6538 lock: ::protobuf::lazy::ONCE_INIT,
6539 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
6540 };
6541 unsafe {
6542 descriptor.get(|| {
6543 let mut fields = ::std::vec::Vec::new();
6544 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
6545 "deprecated",
6546 |m: &EnumValueOptions| { &m.deprecated },
6547 |m: &mut EnumValueOptions| { &mut m.deprecated },
6548 ));
6549 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<UninterpretedOption>>(
6550 "uninterpreted_option",
6551 |m: &EnumValueOptions| { &m.uninterpreted_option },
6552 |m: &mut EnumValueOptions| { &mut m.uninterpreted_option },
6553 ));
6554 ::protobuf::reflect::MessageDescriptor::new::<EnumValueOptions>(
6555 "EnumValueOptions",
6556 fields,
6557 file_descriptor_proto()
6558 )
6559 })
6560 }
6561 }
6562
6563 fn default_instance() -> &'static EnumValueOptions {
6564 static mut instance: ::protobuf::lazy::Lazy<EnumValueOptions> = ::protobuf::lazy::Lazy {
6565 lock: ::protobuf::lazy::ONCE_INIT,
6566 ptr: 0 as *const EnumValueOptions,
6567 };
6568 unsafe {
6569 instance.get(EnumValueOptions::new)
6570 }
6571 }
6572}
6573
6574impl ::protobuf::Clear for EnumValueOptions {
6575 fn clear(&mut self) {
6576 self.deprecated = ::std::option::Option::None;
6577 self.uninterpreted_option.clear();
6578 self.unknown_fields.clear();
6579 }
6580}
6581
6582impl ::std::fmt::Debug for EnumValueOptions {
6583 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6584 ::protobuf::text_format::fmt(self, f)
6585 }
6586}
6587
6588impl ::protobuf::reflect::ProtobufValue for EnumValueOptions {
6589 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
6590 ::protobuf::reflect::ProtobufValueRef::Message(self)
6591 }
6592}
6593
6594#[derive(PartialEq,Clone,Default)]
6595#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
6596pub struct ServiceOptions {
6597 deprecated: ::std::option::Option<bool>,
6599 uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
6600 #[cfg_attr(feature = "with-serde", serde(skip))]
6602 pub unknown_fields: ::protobuf::UnknownFields,
6603 #[cfg_attr(feature = "with-serde", serde(skip))]
6604 pub cached_size: ::protobuf::CachedSize,
6605}
6606
6607impl<'a> ::std::default::Default for &'a ServiceOptions {
6608 fn default() -> &'a ServiceOptions {
6609 <ServiceOptions as ::protobuf::Message>::default_instance()
6610 }
6611}
6612
6613impl ServiceOptions {
6614 pub fn new() -> ServiceOptions {
6615 ::std::default::Default::default()
6616 }
6617
6618 pub fn get_deprecated(&self) -> bool {
6622 self.deprecated.unwrap_or(false)
6623 }
6624 pub fn clear_deprecated(&mut self) {
6625 self.deprecated = ::std::option::Option::None;
6626 }
6627
6628 pub fn has_deprecated(&self) -> bool {
6629 self.deprecated.is_some()
6630 }
6631
6632 pub fn set_deprecated(&mut self, v: bool) {
6634 self.deprecated = ::std::option::Option::Some(v);
6635 }
6636
6637 pub fn get_uninterpreted_option(&self) -> &[UninterpretedOption] {
6641 &self.uninterpreted_option
6642 }
6643 pub fn clear_uninterpreted_option(&mut self) {
6644 self.uninterpreted_option.clear();
6645 }
6646
6647 pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
6649 self.uninterpreted_option = v;
6650 }
6651
6652 pub fn mut_uninterpreted_option(&mut self) -> &mut ::protobuf::RepeatedField<UninterpretedOption> {
6654 &mut self.uninterpreted_option
6655 }
6656
6657 pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
6659 ::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
6660 }
6661}
6662
6663impl ::protobuf::Message for ServiceOptions {
6664 fn is_initialized(&self) -> bool {
6665 for v in &self.uninterpreted_option {
6666 if !v.is_initialized() {
6667 return false;
6668 }
6669 };
6670 true
6671 }
6672
6673 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
6674 while !is.eof()? {
6675 let (field_number, wire_type) = is.read_tag_unpack()?;
6676 match field_number {
6677 33 => {
6678 if wire_type != ::protobuf::wire_format::WireTypeVarint {
6679 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
6680 }
6681 let tmp = is.read_bool()?;
6682 self.deprecated = ::std::option::Option::Some(tmp);
6683 },
6684 999 => {
6685 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option)?;
6686 },
6687 _ => {
6688 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
6689 },
6690 };
6691 }
6692 ::std::result::Result::Ok(())
6693 }
6694
6695 #[allow(unused_variables)]
6697 fn compute_size(&self) -> u32 {
6698 let mut my_size = 0;
6699 if let Some(v) = self.deprecated {
6700 my_size += 3;
6701 }
6702 for value in &self.uninterpreted_option {
6703 let len = value.compute_size();
6704 my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
6705 };
6706 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
6707 self.cached_size.set(my_size);
6708 my_size
6709 }
6710
6711 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
6712 if let Some(v) = self.deprecated {
6713 os.write_bool(33, v)?;
6714 }
6715 for v in &self.uninterpreted_option {
6716 os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited)?;
6717 os.write_raw_varint32(v.get_cached_size())?;
6718 v.write_to_with_cached_sizes(os)?;
6719 };
6720 os.write_unknown_fields(self.get_unknown_fields())?;
6721 ::std::result::Result::Ok(())
6722 }
6723
6724 fn get_cached_size(&self) -> u32 {
6725 self.cached_size.get()
6726 }
6727
6728 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
6729 &self.unknown_fields
6730 }
6731
6732 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
6733 &mut self.unknown_fields
6734 }
6735
6736 fn as_any(&self) -> &dyn (::std::any::Any) {
6737 self as &dyn (::std::any::Any)
6738 }
6739 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
6740 self as &mut dyn (::std::any::Any)
6741 }
6742 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
6743 self
6744 }
6745
6746 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
6747 Self::descriptor_static()
6748 }
6749
6750 fn new() -> ServiceOptions {
6751 ServiceOptions::new()
6752 }
6753
6754 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
6755 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
6756 lock: ::protobuf::lazy::ONCE_INIT,
6757 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
6758 };
6759 unsafe {
6760 descriptor.get(|| {
6761 let mut fields = ::std::vec::Vec::new();
6762 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
6763 "deprecated",
6764 |m: &ServiceOptions| { &m.deprecated },
6765 |m: &mut ServiceOptions| { &mut m.deprecated },
6766 ));
6767 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<UninterpretedOption>>(
6768 "uninterpreted_option",
6769 |m: &ServiceOptions| { &m.uninterpreted_option },
6770 |m: &mut ServiceOptions| { &mut m.uninterpreted_option },
6771 ));
6772 ::protobuf::reflect::MessageDescriptor::new::<ServiceOptions>(
6773 "ServiceOptions",
6774 fields,
6775 file_descriptor_proto()
6776 )
6777 })
6778 }
6779 }
6780
6781 fn default_instance() -> &'static ServiceOptions {
6782 static mut instance: ::protobuf::lazy::Lazy<ServiceOptions> = ::protobuf::lazy::Lazy {
6783 lock: ::protobuf::lazy::ONCE_INIT,
6784 ptr: 0 as *const ServiceOptions,
6785 };
6786 unsafe {
6787 instance.get(ServiceOptions::new)
6788 }
6789 }
6790}
6791
6792impl ::protobuf::Clear for ServiceOptions {
6793 fn clear(&mut self) {
6794 self.deprecated = ::std::option::Option::None;
6795 self.uninterpreted_option.clear();
6796 self.unknown_fields.clear();
6797 }
6798}
6799
6800impl ::std::fmt::Debug for ServiceOptions {
6801 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6802 ::protobuf::text_format::fmt(self, f)
6803 }
6804}
6805
6806impl ::protobuf::reflect::ProtobufValue for ServiceOptions {
6807 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
6808 ::protobuf::reflect::ProtobufValueRef::Message(self)
6809 }
6810}
6811
6812#[derive(PartialEq,Clone,Default)]
6813#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
6814pub struct MethodOptions {
6815 deprecated: ::std::option::Option<bool>,
6817 uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
6818 #[cfg_attr(feature = "with-serde", serde(skip))]
6820 pub unknown_fields: ::protobuf::UnknownFields,
6821 #[cfg_attr(feature = "with-serde", serde(skip))]
6822 pub cached_size: ::protobuf::CachedSize,
6823}
6824
6825impl<'a> ::std::default::Default for &'a MethodOptions {
6826 fn default() -> &'a MethodOptions {
6827 <MethodOptions as ::protobuf::Message>::default_instance()
6828 }
6829}
6830
6831impl MethodOptions {
6832 pub fn new() -> MethodOptions {
6833 ::std::default::Default::default()
6834 }
6835
6836 pub fn get_deprecated(&self) -> bool {
6840 self.deprecated.unwrap_or(false)
6841 }
6842 pub fn clear_deprecated(&mut self) {
6843 self.deprecated = ::std::option::Option::None;
6844 }
6845
6846 pub fn has_deprecated(&self) -> bool {
6847 self.deprecated.is_some()
6848 }
6849
6850 pub fn set_deprecated(&mut self, v: bool) {
6852 self.deprecated = ::std::option::Option::Some(v);
6853 }
6854
6855 pub fn get_uninterpreted_option(&self) -> &[UninterpretedOption] {
6859 &self.uninterpreted_option
6860 }
6861 pub fn clear_uninterpreted_option(&mut self) {
6862 self.uninterpreted_option.clear();
6863 }
6864
6865 pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
6867 self.uninterpreted_option = v;
6868 }
6869
6870 pub fn mut_uninterpreted_option(&mut self) -> &mut ::protobuf::RepeatedField<UninterpretedOption> {
6872 &mut self.uninterpreted_option
6873 }
6874
6875 pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
6877 ::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
6878 }
6879}
6880
6881impl ::protobuf::Message for MethodOptions {
6882 fn is_initialized(&self) -> bool {
6883 for v in &self.uninterpreted_option {
6884 if !v.is_initialized() {
6885 return false;
6886 }
6887 };
6888 true
6889 }
6890
6891 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
6892 while !is.eof()? {
6893 let (field_number, wire_type) = is.read_tag_unpack()?;
6894 match field_number {
6895 33 => {
6896 if wire_type != ::protobuf::wire_format::WireTypeVarint {
6897 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
6898 }
6899 let tmp = is.read_bool()?;
6900 self.deprecated = ::std::option::Option::Some(tmp);
6901 },
6902 999 => {
6903 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option)?;
6904 },
6905 _ => {
6906 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
6907 },
6908 };
6909 }
6910 ::std::result::Result::Ok(())
6911 }
6912
6913 #[allow(unused_variables)]
6915 fn compute_size(&self) -> u32 {
6916 let mut my_size = 0;
6917 if let Some(v) = self.deprecated {
6918 my_size += 3;
6919 }
6920 for value in &self.uninterpreted_option {
6921 let len = value.compute_size();
6922 my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
6923 };
6924 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
6925 self.cached_size.set(my_size);
6926 my_size
6927 }
6928
6929 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
6930 if let Some(v) = self.deprecated {
6931 os.write_bool(33, v)?;
6932 }
6933 for v in &self.uninterpreted_option {
6934 os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited)?;
6935 os.write_raw_varint32(v.get_cached_size())?;
6936 v.write_to_with_cached_sizes(os)?;
6937 };
6938 os.write_unknown_fields(self.get_unknown_fields())?;
6939 ::std::result::Result::Ok(())
6940 }
6941
6942 fn get_cached_size(&self) -> u32 {
6943 self.cached_size.get()
6944 }
6945
6946 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
6947 &self.unknown_fields
6948 }
6949
6950 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
6951 &mut self.unknown_fields
6952 }
6953
6954 fn as_any(&self) -> &dyn (::std::any::Any) {
6955 self as &dyn (::std::any::Any)
6956 }
6957 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
6958 self as &mut dyn (::std::any::Any)
6959 }
6960 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
6961 self
6962 }
6963
6964 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
6965 Self::descriptor_static()
6966 }
6967
6968 fn new() -> MethodOptions {
6969 MethodOptions::new()
6970 }
6971
6972 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
6973 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
6974 lock: ::protobuf::lazy::ONCE_INIT,
6975 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
6976 };
6977 unsafe {
6978 descriptor.get(|| {
6979 let mut fields = ::std::vec::Vec::new();
6980 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
6981 "deprecated",
6982 |m: &MethodOptions| { &m.deprecated },
6983 |m: &mut MethodOptions| { &mut m.deprecated },
6984 ));
6985 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<UninterpretedOption>>(
6986 "uninterpreted_option",
6987 |m: &MethodOptions| { &m.uninterpreted_option },
6988 |m: &mut MethodOptions| { &mut m.uninterpreted_option },
6989 ));
6990 ::protobuf::reflect::MessageDescriptor::new::<MethodOptions>(
6991 "MethodOptions",
6992 fields,
6993 file_descriptor_proto()
6994 )
6995 })
6996 }
6997 }
6998
6999 fn default_instance() -> &'static MethodOptions {
7000 static mut instance: ::protobuf::lazy::Lazy<MethodOptions> = ::protobuf::lazy::Lazy {
7001 lock: ::protobuf::lazy::ONCE_INIT,
7002 ptr: 0 as *const MethodOptions,
7003 };
7004 unsafe {
7005 instance.get(MethodOptions::new)
7006 }
7007 }
7008}
7009
7010impl ::protobuf::Clear for MethodOptions {
7011 fn clear(&mut self) {
7012 self.deprecated = ::std::option::Option::None;
7013 self.uninterpreted_option.clear();
7014 self.unknown_fields.clear();
7015 }
7016}
7017
7018impl ::std::fmt::Debug for MethodOptions {
7019 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7020 ::protobuf::text_format::fmt(self, f)
7021 }
7022}
7023
7024impl ::protobuf::reflect::ProtobufValue for MethodOptions {
7025 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
7026 ::protobuf::reflect::ProtobufValueRef::Message(self)
7027 }
7028}
7029
7030#[derive(PartialEq,Clone,Default)]
7031#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
7032pub struct UninterpretedOption {
7033 name: ::protobuf::RepeatedField<UninterpretedOption_NamePart>,
7035 identifier_value: ::protobuf::SingularField<::std::string::String>,
7036 positive_int_value: ::std::option::Option<u64>,
7037 negative_int_value: ::std::option::Option<i64>,
7038 double_value: ::std::option::Option<f64>,
7039 string_value: ::protobuf::SingularField<::std::vec::Vec<u8>>,
7040 aggregate_value: ::protobuf::SingularField<::std::string::String>,
7041 #[cfg_attr(feature = "with-serde", serde(skip))]
7043 pub unknown_fields: ::protobuf::UnknownFields,
7044 #[cfg_attr(feature = "with-serde", serde(skip))]
7045 pub cached_size: ::protobuf::CachedSize,
7046}
7047
7048impl<'a> ::std::default::Default for &'a UninterpretedOption {
7049 fn default() -> &'a UninterpretedOption {
7050 <UninterpretedOption as ::protobuf::Message>::default_instance()
7051 }
7052}
7053
7054impl UninterpretedOption {
7055 pub fn new() -> UninterpretedOption {
7056 ::std::default::Default::default()
7057 }
7058
7059 pub fn get_name(&self) -> &[UninterpretedOption_NamePart] {
7063 &self.name
7064 }
7065 pub fn clear_name(&mut self) {
7066 self.name.clear();
7067 }
7068
7069 pub fn set_name(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption_NamePart>) {
7071 self.name = v;
7072 }
7073
7074 pub fn mut_name(&mut self) -> &mut ::protobuf::RepeatedField<UninterpretedOption_NamePart> {
7076 &mut self.name
7077 }
7078
7079 pub fn take_name(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption_NamePart> {
7081 ::std::mem::replace(&mut self.name, ::protobuf::RepeatedField::new())
7082 }
7083
7084 pub fn get_identifier_value(&self) -> &str {
7088 match self.identifier_value.as_ref() {
7089 Some(v) => &v,
7090 None => "",
7091 }
7092 }
7093 pub fn clear_identifier_value(&mut self) {
7094 self.identifier_value.clear();
7095 }
7096
7097 pub fn has_identifier_value(&self) -> bool {
7098 self.identifier_value.is_some()
7099 }
7100
7101 pub fn set_identifier_value(&mut self, v: ::std::string::String) {
7103 self.identifier_value = ::protobuf::SingularField::some(v);
7104 }
7105
7106 pub fn mut_identifier_value(&mut self) -> &mut ::std::string::String {
7109 if self.identifier_value.is_none() {
7110 self.identifier_value.set_default();
7111 }
7112 self.identifier_value.as_mut().unwrap()
7113 }
7114
7115 pub fn take_identifier_value(&mut self) -> ::std::string::String {
7117 self.identifier_value.take().unwrap_or_else(|| ::std::string::String::new())
7118 }
7119
7120 pub fn get_positive_int_value(&self) -> u64 {
7124 self.positive_int_value.unwrap_or(0)
7125 }
7126 pub fn clear_positive_int_value(&mut self) {
7127 self.positive_int_value = ::std::option::Option::None;
7128 }
7129
7130 pub fn has_positive_int_value(&self) -> bool {
7131 self.positive_int_value.is_some()
7132 }
7133
7134 pub fn set_positive_int_value(&mut self, v: u64) {
7136 self.positive_int_value = ::std::option::Option::Some(v);
7137 }
7138
7139 pub fn get_negative_int_value(&self) -> i64 {
7143 self.negative_int_value.unwrap_or(0)
7144 }
7145 pub fn clear_negative_int_value(&mut self) {
7146 self.negative_int_value = ::std::option::Option::None;
7147 }
7148
7149 pub fn has_negative_int_value(&self) -> bool {
7150 self.negative_int_value.is_some()
7151 }
7152
7153 pub fn set_negative_int_value(&mut self, v: i64) {
7155 self.negative_int_value = ::std::option::Option::Some(v);
7156 }
7157
7158 pub fn get_double_value(&self) -> f64 {
7162 self.double_value.unwrap_or(0.)
7163 }
7164 pub fn clear_double_value(&mut self) {
7165 self.double_value = ::std::option::Option::None;
7166 }
7167
7168 pub fn has_double_value(&self) -> bool {
7169 self.double_value.is_some()
7170 }
7171
7172 pub fn set_double_value(&mut self, v: f64) {
7174 self.double_value = ::std::option::Option::Some(v);
7175 }
7176
7177 pub fn get_string_value(&self) -> &[u8] {
7181 match self.string_value.as_ref() {
7182 Some(v) => &v,
7183 None => &[],
7184 }
7185 }
7186 pub fn clear_string_value(&mut self) {
7187 self.string_value.clear();
7188 }
7189
7190 pub fn has_string_value(&self) -> bool {
7191 self.string_value.is_some()
7192 }
7193
7194 pub fn set_string_value(&mut self, v: ::std::vec::Vec<u8>) {
7196 self.string_value = ::protobuf::SingularField::some(v);
7197 }
7198
7199 pub fn mut_string_value(&mut self) -> &mut ::std::vec::Vec<u8> {
7202 if self.string_value.is_none() {
7203 self.string_value.set_default();
7204 }
7205 self.string_value.as_mut().unwrap()
7206 }
7207
7208 pub fn take_string_value(&mut self) -> ::std::vec::Vec<u8> {
7210 self.string_value.take().unwrap_or_else(|| ::std::vec::Vec::new())
7211 }
7212
7213 pub fn get_aggregate_value(&self) -> &str {
7217 match self.aggregate_value.as_ref() {
7218 Some(v) => &v,
7219 None => "",
7220 }
7221 }
7222 pub fn clear_aggregate_value(&mut self) {
7223 self.aggregate_value.clear();
7224 }
7225
7226 pub fn has_aggregate_value(&self) -> bool {
7227 self.aggregate_value.is_some()
7228 }
7229
7230 pub fn set_aggregate_value(&mut self, v: ::std::string::String) {
7232 self.aggregate_value = ::protobuf::SingularField::some(v);
7233 }
7234
7235 pub fn mut_aggregate_value(&mut self) -> &mut ::std::string::String {
7238 if self.aggregate_value.is_none() {
7239 self.aggregate_value.set_default();
7240 }
7241 self.aggregate_value.as_mut().unwrap()
7242 }
7243
7244 pub fn take_aggregate_value(&mut self) -> ::std::string::String {
7246 self.aggregate_value.take().unwrap_or_else(|| ::std::string::String::new())
7247 }
7248}
7249
7250impl ::protobuf::Message for UninterpretedOption {
7251 fn is_initialized(&self) -> bool {
7252 for v in &self.name {
7253 if !v.is_initialized() {
7254 return false;
7255 }
7256 };
7257 true
7258 }
7259
7260 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
7261 while !is.eof()? {
7262 let (field_number, wire_type) = is.read_tag_unpack()?;
7263 match field_number {
7264 2 => {
7265 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.name)?;
7266 },
7267 3 => {
7268 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.identifier_value)?;
7269 },
7270 4 => {
7271 if wire_type != ::protobuf::wire_format::WireTypeVarint {
7272 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
7273 }
7274 let tmp = is.read_uint64()?;
7275 self.positive_int_value = ::std::option::Option::Some(tmp);
7276 },
7277 5 => {
7278 if wire_type != ::protobuf::wire_format::WireTypeVarint {
7279 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
7280 }
7281 let tmp = is.read_int64()?;
7282 self.negative_int_value = ::std::option::Option::Some(tmp);
7283 },
7284 6 => {
7285 if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
7286 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
7287 }
7288 let tmp = is.read_double()?;
7289 self.double_value = ::std::option::Option::Some(tmp);
7290 },
7291 7 => {
7292 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.string_value)?;
7293 },
7294 8 => {
7295 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.aggregate_value)?;
7296 },
7297 _ => {
7298 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
7299 },
7300 };
7301 }
7302 ::std::result::Result::Ok(())
7303 }
7304
7305 #[allow(unused_variables)]
7307 fn compute_size(&self) -> u32 {
7308 let mut my_size = 0;
7309 for value in &self.name {
7310 let len = value.compute_size();
7311 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
7312 };
7313 if let Some(ref v) = self.identifier_value.as_ref() {
7314 my_size += ::protobuf::rt::string_size(3, &v);
7315 }
7316 if let Some(v) = self.positive_int_value {
7317 my_size += ::protobuf::rt::value_size(4, v, ::protobuf::wire_format::WireTypeVarint);
7318 }
7319 if let Some(v) = self.negative_int_value {
7320 my_size += ::protobuf::rt::value_size(5, v, ::protobuf::wire_format::WireTypeVarint);
7321 }
7322 if let Some(v) = self.double_value {
7323 my_size += 9;
7324 }
7325 if let Some(ref v) = self.string_value.as_ref() {
7326 my_size += ::protobuf::rt::bytes_size(7, &v);
7327 }
7328 if let Some(ref v) = self.aggregate_value.as_ref() {
7329 my_size += ::protobuf::rt::string_size(8, &v);
7330 }
7331 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
7332 self.cached_size.set(my_size);
7333 my_size
7334 }
7335
7336 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
7337 for v in &self.name {
7338 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
7339 os.write_raw_varint32(v.get_cached_size())?;
7340 v.write_to_with_cached_sizes(os)?;
7341 };
7342 if let Some(ref v) = self.identifier_value.as_ref() {
7343 os.write_string(3, &v)?;
7344 }
7345 if let Some(v) = self.positive_int_value {
7346 os.write_uint64(4, v)?;
7347 }
7348 if let Some(v) = self.negative_int_value {
7349 os.write_int64(5, v)?;
7350 }
7351 if let Some(v) = self.double_value {
7352 os.write_double(6, v)?;
7353 }
7354 if let Some(ref v) = self.string_value.as_ref() {
7355 os.write_bytes(7, &v)?;
7356 }
7357 if let Some(ref v) = self.aggregate_value.as_ref() {
7358 os.write_string(8, &v)?;
7359 }
7360 os.write_unknown_fields(self.get_unknown_fields())?;
7361 ::std::result::Result::Ok(())
7362 }
7363
7364 fn get_cached_size(&self) -> u32 {
7365 self.cached_size.get()
7366 }
7367
7368 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
7369 &self.unknown_fields
7370 }
7371
7372 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
7373 &mut self.unknown_fields
7374 }
7375
7376 fn as_any(&self) -> &dyn (::std::any::Any) {
7377 self as &dyn (::std::any::Any)
7378 }
7379 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
7380 self as &mut dyn (::std::any::Any)
7381 }
7382 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
7383 self
7384 }
7385
7386 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
7387 Self::descriptor_static()
7388 }
7389
7390 fn new() -> UninterpretedOption {
7391 UninterpretedOption::new()
7392 }
7393
7394 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
7395 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
7396 lock: ::protobuf::lazy::ONCE_INIT,
7397 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
7398 };
7399 unsafe {
7400 descriptor.get(|| {
7401 let mut fields = ::std::vec::Vec::new();
7402 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<UninterpretedOption_NamePart>>(
7403 "name",
7404 |m: &UninterpretedOption| { &m.name },
7405 |m: &mut UninterpretedOption| { &mut m.name },
7406 ));
7407 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
7408 "identifier_value",
7409 |m: &UninterpretedOption| { &m.identifier_value },
7410 |m: &mut UninterpretedOption| { &mut m.identifier_value },
7411 ));
7412 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint64>(
7413 "positive_int_value",
7414 |m: &UninterpretedOption| { &m.positive_int_value },
7415 |m: &mut UninterpretedOption| { &mut m.positive_int_value },
7416 ));
7417 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
7418 "negative_int_value",
7419 |m: &UninterpretedOption| { &m.negative_int_value },
7420 |m: &mut UninterpretedOption| { &mut m.negative_int_value },
7421 ));
7422 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
7423 "double_value",
7424 |m: &UninterpretedOption| { &m.double_value },
7425 |m: &mut UninterpretedOption| { &mut m.double_value },
7426 ));
7427 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
7428 "string_value",
7429 |m: &UninterpretedOption| { &m.string_value },
7430 |m: &mut UninterpretedOption| { &mut m.string_value },
7431 ));
7432 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
7433 "aggregate_value",
7434 |m: &UninterpretedOption| { &m.aggregate_value },
7435 |m: &mut UninterpretedOption| { &mut m.aggregate_value },
7436 ));
7437 ::protobuf::reflect::MessageDescriptor::new::<UninterpretedOption>(
7438 "UninterpretedOption",
7439 fields,
7440 file_descriptor_proto()
7441 )
7442 })
7443 }
7444 }
7445
7446 fn default_instance() -> &'static UninterpretedOption {
7447 static mut instance: ::protobuf::lazy::Lazy<UninterpretedOption> = ::protobuf::lazy::Lazy {
7448 lock: ::protobuf::lazy::ONCE_INIT,
7449 ptr: 0 as *const UninterpretedOption,
7450 };
7451 unsafe {
7452 instance.get(UninterpretedOption::new)
7453 }
7454 }
7455}
7456
7457impl ::protobuf::Clear for UninterpretedOption {
7458 fn clear(&mut self) {
7459 self.name.clear();
7460 self.identifier_value.clear();
7461 self.positive_int_value = ::std::option::Option::None;
7462 self.negative_int_value = ::std::option::Option::None;
7463 self.double_value = ::std::option::Option::None;
7464 self.string_value.clear();
7465 self.aggregate_value.clear();
7466 self.unknown_fields.clear();
7467 }
7468}
7469
7470impl ::std::fmt::Debug for UninterpretedOption {
7471 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7472 ::protobuf::text_format::fmt(self, f)
7473 }
7474}
7475
7476impl ::protobuf::reflect::ProtobufValue for UninterpretedOption {
7477 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
7478 ::protobuf::reflect::ProtobufValueRef::Message(self)
7479 }
7480}
7481
7482#[derive(PartialEq,Clone,Default)]
7483#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
7484pub struct UninterpretedOption_NamePart {
7485 name_part: ::protobuf::SingularField<::std::string::String>,
7487 is_extension: ::std::option::Option<bool>,
7488 #[cfg_attr(feature = "with-serde", serde(skip))]
7490 pub unknown_fields: ::protobuf::UnknownFields,
7491 #[cfg_attr(feature = "with-serde", serde(skip))]
7492 pub cached_size: ::protobuf::CachedSize,
7493}
7494
7495impl<'a> ::std::default::Default for &'a UninterpretedOption_NamePart {
7496 fn default() -> &'a UninterpretedOption_NamePart {
7497 <UninterpretedOption_NamePart as ::protobuf::Message>::default_instance()
7498 }
7499}
7500
7501impl UninterpretedOption_NamePart {
7502 pub fn new() -> UninterpretedOption_NamePart {
7503 ::std::default::Default::default()
7504 }
7505
7506 pub fn get_name_part(&self) -> &str {
7510 match self.name_part.as_ref() {
7511 Some(v) => &v,
7512 None => "",
7513 }
7514 }
7515 pub fn clear_name_part(&mut self) {
7516 self.name_part.clear();
7517 }
7518
7519 pub fn has_name_part(&self) -> bool {
7520 self.name_part.is_some()
7521 }
7522
7523 pub fn set_name_part(&mut self, v: ::std::string::String) {
7525 self.name_part = ::protobuf::SingularField::some(v);
7526 }
7527
7528 pub fn mut_name_part(&mut self) -> &mut ::std::string::String {
7531 if self.name_part.is_none() {
7532 self.name_part.set_default();
7533 }
7534 self.name_part.as_mut().unwrap()
7535 }
7536
7537 pub fn take_name_part(&mut self) -> ::std::string::String {
7539 self.name_part.take().unwrap_or_else(|| ::std::string::String::new())
7540 }
7541
7542 pub fn get_is_extension(&self) -> bool {
7546 self.is_extension.unwrap_or(false)
7547 }
7548 pub fn clear_is_extension(&mut self) {
7549 self.is_extension = ::std::option::Option::None;
7550 }
7551
7552 pub fn has_is_extension(&self) -> bool {
7553 self.is_extension.is_some()
7554 }
7555
7556 pub fn set_is_extension(&mut self, v: bool) {
7558 self.is_extension = ::std::option::Option::Some(v);
7559 }
7560}
7561
7562impl ::protobuf::Message for UninterpretedOption_NamePart {
7563 fn is_initialized(&self) -> bool {
7564 if self.name_part.is_none() {
7565 return false;
7566 }
7567 if self.is_extension.is_none() {
7568 return false;
7569 }
7570 true
7571 }
7572
7573 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
7574 while !is.eof()? {
7575 let (field_number, wire_type) = is.read_tag_unpack()?;
7576 match field_number {
7577 1 => {
7578 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.name_part)?;
7579 },
7580 2 => {
7581 if wire_type != ::protobuf::wire_format::WireTypeVarint {
7582 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
7583 }
7584 let tmp = is.read_bool()?;
7585 self.is_extension = ::std::option::Option::Some(tmp);
7586 },
7587 _ => {
7588 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
7589 },
7590 };
7591 }
7592 ::std::result::Result::Ok(())
7593 }
7594
7595 #[allow(unused_variables)]
7597 fn compute_size(&self) -> u32 {
7598 let mut my_size = 0;
7599 if let Some(ref v) = self.name_part.as_ref() {
7600 my_size += ::protobuf::rt::string_size(1, &v);
7601 }
7602 if let Some(v) = self.is_extension {
7603 my_size += 2;
7604 }
7605 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
7606 self.cached_size.set(my_size);
7607 my_size
7608 }
7609
7610 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
7611 if let Some(ref v) = self.name_part.as_ref() {
7612 os.write_string(1, &v)?;
7613 }
7614 if let Some(v) = self.is_extension {
7615 os.write_bool(2, v)?;
7616 }
7617 os.write_unknown_fields(self.get_unknown_fields())?;
7618 ::std::result::Result::Ok(())
7619 }
7620
7621 fn get_cached_size(&self) -> u32 {
7622 self.cached_size.get()
7623 }
7624
7625 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
7626 &self.unknown_fields
7627 }
7628
7629 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
7630 &mut self.unknown_fields
7631 }
7632
7633 fn as_any(&self) -> &dyn (::std::any::Any) {
7634 self as &dyn (::std::any::Any)
7635 }
7636 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
7637 self as &mut dyn (::std::any::Any)
7638 }
7639 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
7640 self
7641 }
7642
7643 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
7644 Self::descriptor_static()
7645 }
7646
7647 fn new() -> UninterpretedOption_NamePart {
7648 UninterpretedOption_NamePart::new()
7649 }
7650
7651 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
7652 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
7653 lock: ::protobuf::lazy::ONCE_INIT,
7654 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
7655 };
7656 unsafe {
7657 descriptor.get(|| {
7658 let mut fields = ::std::vec::Vec::new();
7659 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
7660 "name_part",
7661 |m: &UninterpretedOption_NamePart| { &m.name_part },
7662 |m: &mut UninterpretedOption_NamePart| { &mut m.name_part },
7663 ));
7664 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
7665 "is_extension",
7666 |m: &UninterpretedOption_NamePart| { &m.is_extension },
7667 |m: &mut UninterpretedOption_NamePart| { &mut m.is_extension },
7668 ));
7669 ::protobuf::reflect::MessageDescriptor::new::<UninterpretedOption_NamePart>(
7670 "UninterpretedOption_NamePart",
7671 fields,
7672 file_descriptor_proto()
7673 )
7674 })
7675 }
7676 }
7677
7678 fn default_instance() -> &'static UninterpretedOption_NamePart {
7679 static mut instance: ::protobuf::lazy::Lazy<UninterpretedOption_NamePart> = ::protobuf::lazy::Lazy {
7680 lock: ::protobuf::lazy::ONCE_INIT,
7681 ptr: 0 as *const UninterpretedOption_NamePart,
7682 };
7683 unsafe {
7684 instance.get(UninterpretedOption_NamePart::new)
7685 }
7686 }
7687}
7688
7689impl ::protobuf::Clear for UninterpretedOption_NamePart {
7690 fn clear(&mut self) {
7691 self.name_part.clear();
7692 self.is_extension = ::std::option::Option::None;
7693 self.unknown_fields.clear();
7694 }
7695}
7696
7697impl ::std::fmt::Debug for UninterpretedOption_NamePart {
7698 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7699 ::protobuf::text_format::fmt(self, f)
7700 }
7701}
7702
7703impl ::protobuf::reflect::ProtobufValue for UninterpretedOption_NamePart {
7704 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
7705 ::protobuf::reflect::ProtobufValueRef::Message(self)
7706 }
7707}
7708
7709#[derive(PartialEq,Clone,Default)]
7710#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
7711pub struct SourceCodeInfo {
7712 location: ::protobuf::RepeatedField<SourceCodeInfo_Location>,
7714 #[cfg_attr(feature = "with-serde", serde(skip))]
7716 pub unknown_fields: ::protobuf::UnknownFields,
7717 #[cfg_attr(feature = "with-serde", serde(skip))]
7718 pub cached_size: ::protobuf::CachedSize,
7719}
7720
7721impl<'a> ::std::default::Default for &'a SourceCodeInfo {
7722 fn default() -> &'a SourceCodeInfo {
7723 <SourceCodeInfo as ::protobuf::Message>::default_instance()
7724 }
7725}
7726
7727impl SourceCodeInfo {
7728 pub fn new() -> SourceCodeInfo {
7729 ::std::default::Default::default()
7730 }
7731
7732 pub fn get_location(&self) -> &[SourceCodeInfo_Location] {
7736 &self.location
7737 }
7738 pub fn clear_location(&mut self) {
7739 self.location.clear();
7740 }
7741
7742 pub fn set_location(&mut self, v: ::protobuf::RepeatedField<SourceCodeInfo_Location>) {
7744 self.location = v;
7745 }
7746
7747 pub fn mut_location(&mut self) -> &mut ::protobuf::RepeatedField<SourceCodeInfo_Location> {
7749 &mut self.location
7750 }
7751
7752 pub fn take_location(&mut self) -> ::protobuf::RepeatedField<SourceCodeInfo_Location> {
7754 ::std::mem::replace(&mut self.location, ::protobuf::RepeatedField::new())
7755 }
7756}
7757
7758impl ::protobuf::Message for SourceCodeInfo {
7759 fn is_initialized(&self) -> bool {
7760 for v in &self.location {
7761 if !v.is_initialized() {
7762 return false;
7763 }
7764 };
7765 true
7766 }
7767
7768 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
7769 while !is.eof()? {
7770 let (field_number, wire_type) = is.read_tag_unpack()?;
7771 match field_number {
7772 1 => {
7773 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.location)?;
7774 },
7775 _ => {
7776 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
7777 },
7778 };
7779 }
7780 ::std::result::Result::Ok(())
7781 }
7782
7783 #[allow(unused_variables)]
7785 fn compute_size(&self) -> u32 {
7786 let mut my_size = 0;
7787 for value in &self.location {
7788 let len = value.compute_size();
7789 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
7790 };
7791 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
7792 self.cached_size.set(my_size);
7793 my_size
7794 }
7795
7796 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
7797 for v in &self.location {
7798 os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
7799 os.write_raw_varint32(v.get_cached_size())?;
7800 v.write_to_with_cached_sizes(os)?;
7801 };
7802 os.write_unknown_fields(self.get_unknown_fields())?;
7803 ::std::result::Result::Ok(())
7804 }
7805
7806 fn get_cached_size(&self) -> u32 {
7807 self.cached_size.get()
7808 }
7809
7810 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
7811 &self.unknown_fields
7812 }
7813
7814 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
7815 &mut self.unknown_fields
7816 }
7817
7818 fn as_any(&self) -> &dyn (::std::any::Any) {
7819 self as &dyn (::std::any::Any)
7820 }
7821 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
7822 self as &mut dyn (::std::any::Any)
7823 }
7824 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
7825 self
7826 }
7827
7828 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
7829 Self::descriptor_static()
7830 }
7831
7832 fn new() -> SourceCodeInfo {
7833 SourceCodeInfo::new()
7834 }
7835
7836 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
7837 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
7838 lock: ::protobuf::lazy::ONCE_INIT,
7839 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
7840 };
7841 unsafe {
7842 descriptor.get(|| {
7843 let mut fields = ::std::vec::Vec::new();
7844 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<SourceCodeInfo_Location>>(
7845 "location",
7846 |m: &SourceCodeInfo| { &m.location },
7847 |m: &mut SourceCodeInfo| { &mut m.location },
7848 ));
7849 ::protobuf::reflect::MessageDescriptor::new::<SourceCodeInfo>(
7850 "SourceCodeInfo",
7851 fields,
7852 file_descriptor_proto()
7853 )
7854 })
7855 }
7856 }
7857
7858 fn default_instance() -> &'static SourceCodeInfo {
7859 static mut instance: ::protobuf::lazy::Lazy<SourceCodeInfo> = ::protobuf::lazy::Lazy {
7860 lock: ::protobuf::lazy::ONCE_INIT,
7861 ptr: 0 as *const SourceCodeInfo,
7862 };
7863 unsafe {
7864 instance.get(SourceCodeInfo::new)
7865 }
7866 }
7867}
7868
7869impl ::protobuf::Clear for SourceCodeInfo {
7870 fn clear(&mut self) {
7871 self.location.clear();
7872 self.unknown_fields.clear();
7873 }
7874}
7875
7876impl ::std::fmt::Debug for SourceCodeInfo {
7877 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7878 ::protobuf::text_format::fmt(self, f)
7879 }
7880}
7881
7882impl ::protobuf::reflect::ProtobufValue for SourceCodeInfo {
7883 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
7884 ::protobuf::reflect::ProtobufValueRef::Message(self)
7885 }
7886}
7887
7888#[derive(PartialEq,Clone,Default)]
7889#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
7890pub struct SourceCodeInfo_Location {
7891 path: ::std::vec::Vec<i32>,
7893 span: ::std::vec::Vec<i32>,
7894 leading_comments: ::protobuf::SingularField<::std::string::String>,
7895 trailing_comments: ::protobuf::SingularField<::std::string::String>,
7896 leading_detached_comments: ::protobuf::RepeatedField<::std::string::String>,
7897 #[cfg_attr(feature = "with-serde", serde(skip))]
7899 pub unknown_fields: ::protobuf::UnknownFields,
7900 #[cfg_attr(feature = "with-serde", serde(skip))]
7901 pub cached_size: ::protobuf::CachedSize,
7902}
7903
7904impl<'a> ::std::default::Default for &'a SourceCodeInfo_Location {
7905 fn default() -> &'a SourceCodeInfo_Location {
7906 <SourceCodeInfo_Location as ::protobuf::Message>::default_instance()
7907 }
7908}
7909
7910impl SourceCodeInfo_Location {
7911 pub fn new() -> SourceCodeInfo_Location {
7912 ::std::default::Default::default()
7913 }
7914
7915 pub fn get_path(&self) -> &[i32] {
7919 &self.path
7920 }
7921 pub fn clear_path(&mut self) {
7922 self.path.clear();
7923 }
7924
7925 pub fn set_path(&mut self, v: ::std::vec::Vec<i32>) {
7927 self.path = v;
7928 }
7929
7930 pub fn mut_path(&mut self) -> &mut ::std::vec::Vec<i32> {
7932 &mut self.path
7933 }
7934
7935 pub fn take_path(&mut self) -> ::std::vec::Vec<i32> {
7937 ::std::mem::replace(&mut self.path, ::std::vec::Vec::new())
7938 }
7939
7940 pub fn get_span(&self) -> &[i32] {
7944 &self.span
7945 }
7946 pub fn clear_span(&mut self) {
7947 self.span.clear();
7948 }
7949
7950 pub fn set_span(&mut self, v: ::std::vec::Vec<i32>) {
7952 self.span = v;
7953 }
7954
7955 pub fn mut_span(&mut self) -> &mut ::std::vec::Vec<i32> {
7957 &mut self.span
7958 }
7959
7960 pub fn take_span(&mut self) -> ::std::vec::Vec<i32> {
7962 ::std::mem::replace(&mut self.span, ::std::vec::Vec::new())
7963 }
7964
7965 pub fn get_leading_comments(&self) -> &str {
7969 match self.leading_comments.as_ref() {
7970 Some(v) => &v,
7971 None => "",
7972 }
7973 }
7974 pub fn clear_leading_comments(&mut self) {
7975 self.leading_comments.clear();
7976 }
7977
7978 pub fn has_leading_comments(&self) -> bool {
7979 self.leading_comments.is_some()
7980 }
7981
7982 pub fn set_leading_comments(&mut self, v: ::std::string::String) {
7984 self.leading_comments = ::protobuf::SingularField::some(v);
7985 }
7986
7987 pub fn mut_leading_comments(&mut self) -> &mut ::std::string::String {
7990 if self.leading_comments.is_none() {
7991 self.leading_comments.set_default();
7992 }
7993 self.leading_comments.as_mut().unwrap()
7994 }
7995
7996 pub fn take_leading_comments(&mut self) -> ::std::string::String {
7998 self.leading_comments.take().unwrap_or_else(|| ::std::string::String::new())
7999 }
8000
8001 pub fn get_trailing_comments(&self) -> &str {
8005 match self.trailing_comments.as_ref() {
8006 Some(v) => &v,
8007 None => "",
8008 }
8009 }
8010 pub fn clear_trailing_comments(&mut self) {
8011 self.trailing_comments.clear();
8012 }
8013
8014 pub fn has_trailing_comments(&self) -> bool {
8015 self.trailing_comments.is_some()
8016 }
8017
8018 pub fn set_trailing_comments(&mut self, v: ::std::string::String) {
8020 self.trailing_comments = ::protobuf::SingularField::some(v);
8021 }
8022
8023 pub fn mut_trailing_comments(&mut self) -> &mut ::std::string::String {
8026 if self.trailing_comments.is_none() {
8027 self.trailing_comments.set_default();
8028 }
8029 self.trailing_comments.as_mut().unwrap()
8030 }
8031
8032 pub fn take_trailing_comments(&mut self) -> ::std::string::String {
8034 self.trailing_comments.take().unwrap_or_else(|| ::std::string::String::new())
8035 }
8036
8037 pub fn get_leading_detached_comments(&self) -> &[::std::string::String] {
8041 &self.leading_detached_comments
8042 }
8043 pub fn clear_leading_detached_comments(&mut self) {
8044 self.leading_detached_comments.clear();
8045 }
8046
8047 pub fn set_leading_detached_comments(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
8049 self.leading_detached_comments = v;
8050 }
8051
8052 pub fn mut_leading_detached_comments(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
8054 &mut self.leading_detached_comments
8055 }
8056
8057 pub fn take_leading_detached_comments(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
8059 ::std::mem::replace(&mut self.leading_detached_comments, ::protobuf::RepeatedField::new())
8060 }
8061}
8062
8063impl ::protobuf::Message for SourceCodeInfo_Location {
8064 fn is_initialized(&self) -> bool {
8065 true
8066 }
8067
8068 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
8069 while !is.eof()? {
8070 let (field_number, wire_type) = is.read_tag_unpack()?;
8071 match field_number {
8072 1 => {
8073 ::protobuf::rt::read_repeated_int32_into(wire_type, is, &mut self.path)?;
8074 },
8075 2 => {
8076 ::protobuf::rt::read_repeated_int32_into(wire_type, is, &mut self.span)?;
8077 },
8078 3 => {
8079 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.leading_comments)?;
8080 },
8081 4 => {
8082 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.trailing_comments)?;
8083 },
8084 6 => {
8085 ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.leading_detached_comments)?;
8086 },
8087 _ => {
8088 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
8089 },
8090 };
8091 }
8092 ::std::result::Result::Ok(())
8093 }
8094
8095 #[allow(unused_variables)]
8097 fn compute_size(&self) -> u32 {
8098 let mut my_size = 0;
8099 if !self.path.is_empty() {
8100 my_size += ::protobuf::rt::vec_packed_varint_size(1, &self.path);
8101 }
8102 if !self.span.is_empty() {
8103 my_size += ::protobuf::rt::vec_packed_varint_size(2, &self.span);
8104 }
8105 if let Some(ref v) = self.leading_comments.as_ref() {
8106 my_size += ::protobuf::rt::string_size(3, &v);
8107 }
8108 if let Some(ref v) = self.trailing_comments.as_ref() {
8109 my_size += ::protobuf::rt::string_size(4, &v);
8110 }
8111 for value in &self.leading_detached_comments {
8112 my_size += ::protobuf::rt::string_size(6, &value);
8113 };
8114 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
8115 self.cached_size.set(my_size);
8116 my_size
8117 }
8118
8119 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
8120 if !self.path.is_empty() {
8121 os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
8122 os.write_raw_varint32(::protobuf::rt::vec_packed_varint_data_size(&self.path))?;
8124 for v in &self.path {
8125 os.write_int32_no_tag(*v)?;
8126 };
8127 }
8128 if !self.span.is_empty() {
8129 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
8130 os.write_raw_varint32(::protobuf::rt::vec_packed_varint_data_size(&self.span))?;
8132 for v in &self.span {
8133 os.write_int32_no_tag(*v)?;
8134 };
8135 }
8136 if let Some(ref v) = self.leading_comments.as_ref() {
8137 os.write_string(3, &v)?;
8138 }
8139 if let Some(ref v) = self.trailing_comments.as_ref() {
8140 os.write_string(4, &v)?;
8141 }
8142 for v in &self.leading_detached_comments {
8143 os.write_string(6, &v)?;
8144 };
8145 os.write_unknown_fields(self.get_unknown_fields())?;
8146 ::std::result::Result::Ok(())
8147 }
8148
8149 fn get_cached_size(&self) -> u32 {
8150 self.cached_size.get()
8151 }
8152
8153 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
8154 &self.unknown_fields
8155 }
8156
8157 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
8158 &mut self.unknown_fields
8159 }
8160
8161 fn as_any(&self) -> &dyn (::std::any::Any) {
8162 self as &dyn (::std::any::Any)
8163 }
8164 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
8165 self as &mut dyn (::std::any::Any)
8166 }
8167 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
8168 self
8169 }
8170
8171 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
8172 Self::descriptor_static()
8173 }
8174
8175 fn new() -> SourceCodeInfo_Location {
8176 SourceCodeInfo_Location::new()
8177 }
8178
8179 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
8180 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
8181 lock: ::protobuf::lazy::ONCE_INIT,
8182 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
8183 };
8184 unsafe {
8185 descriptor.get(|| {
8186 let mut fields = ::std::vec::Vec::new();
8187 fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
8188 "path",
8189 |m: &SourceCodeInfo_Location| { &m.path },
8190 |m: &mut SourceCodeInfo_Location| { &mut m.path },
8191 ));
8192 fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
8193 "span",
8194 |m: &SourceCodeInfo_Location| { &m.span },
8195 |m: &mut SourceCodeInfo_Location| { &mut m.span },
8196 ));
8197 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
8198 "leading_comments",
8199 |m: &SourceCodeInfo_Location| { &m.leading_comments },
8200 |m: &mut SourceCodeInfo_Location| { &mut m.leading_comments },
8201 ));
8202 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
8203 "trailing_comments",
8204 |m: &SourceCodeInfo_Location| { &m.trailing_comments },
8205 |m: &mut SourceCodeInfo_Location| { &mut m.trailing_comments },
8206 ));
8207 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
8208 "leading_detached_comments",
8209 |m: &SourceCodeInfo_Location| { &m.leading_detached_comments },
8210 |m: &mut SourceCodeInfo_Location| { &mut m.leading_detached_comments },
8211 ));
8212 ::protobuf::reflect::MessageDescriptor::new::<SourceCodeInfo_Location>(
8213 "SourceCodeInfo_Location",
8214 fields,
8215 file_descriptor_proto()
8216 )
8217 })
8218 }
8219 }
8220
8221 fn default_instance() -> &'static SourceCodeInfo_Location {
8222 static mut instance: ::protobuf::lazy::Lazy<SourceCodeInfo_Location> = ::protobuf::lazy::Lazy {
8223 lock: ::protobuf::lazy::ONCE_INIT,
8224 ptr: 0 as *const SourceCodeInfo_Location,
8225 };
8226 unsafe {
8227 instance.get(SourceCodeInfo_Location::new)
8228 }
8229 }
8230}
8231
8232impl ::protobuf::Clear for SourceCodeInfo_Location {
8233 fn clear(&mut self) {
8234 self.path.clear();
8235 self.span.clear();
8236 self.leading_comments.clear();
8237 self.trailing_comments.clear();
8238 self.leading_detached_comments.clear();
8239 self.unknown_fields.clear();
8240 }
8241}
8242
8243impl ::std::fmt::Debug for SourceCodeInfo_Location {
8244 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8245 ::protobuf::text_format::fmt(self, f)
8246 }
8247}
8248
8249impl ::protobuf::reflect::ProtobufValue for SourceCodeInfo_Location {
8250 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
8251 ::protobuf::reflect::ProtobufValueRef::Message(self)
8252 }
8253}
8254
8255#[derive(PartialEq,Clone,Default)]
8256#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
8257pub struct GeneratedCodeInfo {
8258 annotation: ::protobuf::RepeatedField<GeneratedCodeInfo_Annotation>,
8260 #[cfg_attr(feature = "with-serde", serde(skip))]
8262 pub unknown_fields: ::protobuf::UnknownFields,
8263 #[cfg_attr(feature = "with-serde", serde(skip))]
8264 pub cached_size: ::protobuf::CachedSize,
8265}
8266
8267impl<'a> ::std::default::Default for &'a GeneratedCodeInfo {
8268 fn default() -> &'a GeneratedCodeInfo {
8269 <GeneratedCodeInfo as ::protobuf::Message>::default_instance()
8270 }
8271}
8272
8273impl GeneratedCodeInfo {
8274 pub fn new() -> GeneratedCodeInfo {
8275 ::std::default::Default::default()
8276 }
8277
8278 pub fn get_annotation(&self) -> &[GeneratedCodeInfo_Annotation] {
8282 &self.annotation
8283 }
8284 pub fn clear_annotation(&mut self) {
8285 self.annotation.clear();
8286 }
8287
8288 pub fn set_annotation(&mut self, v: ::protobuf::RepeatedField<GeneratedCodeInfo_Annotation>) {
8290 self.annotation = v;
8291 }
8292
8293 pub fn mut_annotation(&mut self) -> &mut ::protobuf::RepeatedField<GeneratedCodeInfo_Annotation> {
8295 &mut self.annotation
8296 }
8297
8298 pub fn take_annotation(&mut self) -> ::protobuf::RepeatedField<GeneratedCodeInfo_Annotation> {
8300 ::std::mem::replace(&mut self.annotation, ::protobuf::RepeatedField::new())
8301 }
8302}
8303
8304impl ::protobuf::Message for GeneratedCodeInfo {
8305 fn is_initialized(&self) -> bool {
8306 for v in &self.annotation {
8307 if !v.is_initialized() {
8308 return false;
8309 }
8310 };
8311 true
8312 }
8313
8314 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
8315 while !is.eof()? {
8316 let (field_number, wire_type) = is.read_tag_unpack()?;
8317 match field_number {
8318 1 => {
8319 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.annotation)?;
8320 },
8321 _ => {
8322 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
8323 },
8324 };
8325 }
8326 ::std::result::Result::Ok(())
8327 }
8328
8329 #[allow(unused_variables)]
8331 fn compute_size(&self) -> u32 {
8332 let mut my_size = 0;
8333 for value in &self.annotation {
8334 let len = value.compute_size();
8335 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
8336 };
8337 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
8338 self.cached_size.set(my_size);
8339 my_size
8340 }
8341
8342 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
8343 for v in &self.annotation {
8344 os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
8345 os.write_raw_varint32(v.get_cached_size())?;
8346 v.write_to_with_cached_sizes(os)?;
8347 };
8348 os.write_unknown_fields(self.get_unknown_fields())?;
8349 ::std::result::Result::Ok(())
8350 }
8351
8352 fn get_cached_size(&self) -> u32 {
8353 self.cached_size.get()
8354 }
8355
8356 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
8357 &self.unknown_fields
8358 }
8359
8360 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
8361 &mut self.unknown_fields
8362 }
8363
8364 fn as_any(&self) -> &dyn (::std::any::Any) {
8365 self as &dyn (::std::any::Any)
8366 }
8367 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
8368 self as &mut dyn (::std::any::Any)
8369 }
8370 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
8371 self
8372 }
8373
8374 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
8375 Self::descriptor_static()
8376 }
8377
8378 fn new() -> GeneratedCodeInfo {
8379 GeneratedCodeInfo::new()
8380 }
8381
8382 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
8383 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
8384 lock: ::protobuf::lazy::ONCE_INIT,
8385 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
8386 };
8387 unsafe {
8388 descriptor.get(|| {
8389 let mut fields = ::std::vec::Vec::new();
8390 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<GeneratedCodeInfo_Annotation>>(
8391 "annotation",
8392 |m: &GeneratedCodeInfo| { &m.annotation },
8393 |m: &mut GeneratedCodeInfo| { &mut m.annotation },
8394 ));
8395 ::protobuf::reflect::MessageDescriptor::new::<GeneratedCodeInfo>(
8396 "GeneratedCodeInfo",
8397 fields,
8398 file_descriptor_proto()
8399 )
8400 })
8401 }
8402 }
8403
8404 fn default_instance() -> &'static GeneratedCodeInfo {
8405 static mut instance: ::protobuf::lazy::Lazy<GeneratedCodeInfo> = ::protobuf::lazy::Lazy {
8406 lock: ::protobuf::lazy::ONCE_INIT,
8407 ptr: 0 as *const GeneratedCodeInfo,
8408 };
8409 unsafe {
8410 instance.get(GeneratedCodeInfo::new)
8411 }
8412 }
8413}
8414
8415impl ::protobuf::Clear for GeneratedCodeInfo {
8416 fn clear(&mut self) {
8417 self.annotation.clear();
8418 self.unknown_fields.clear();
8419 }
8420}
8421
8422impl ::std::fmt::Debug for GeneratedCodeInfo {
8423 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8424 ::protobuf::text_format::fmt(self, f)
8425 }
8426}
8427
8428impl ::protobuf::reflect::ProtobufValue for GeneratedCodeInfo {
8429 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
8430 ::protobuf::reflect::ProtobufValueRef::Message(self)
8431 }
8432}
8433
8434#[derive(PartialEq,Clone,Default)]
8435#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
8436pub struct GeneratedCodeInfo_Annotation {
8437 path: ::std::vec::Vec<i32>,
8439 source_file: ::protobuf::SingularField<::std::string::String>,
8440 begin: ::std::option::Option<i32>,
8441 end: ::std::option::Option<i32>,
8442 #[cfg_attr(feature = "with-serde", serde(skip))]
8444 pub unknown_fields: ::protobuf::UnknownFields,
8445 #[cfg_attr(feature = "with-serde", serde(skip))]
8446 pub cached_size: ::protobuf::CachedSize,
8447}
8448
8449impl<'a> ::std::default::Default for &'a GeneratedCodeInfo_Annotation {
8450 fn default() -> &'a GeneratedCodeInfo_Annotation {
8451 <GeneratedCodeInfo_Annotation as ::protobuf::Message>::default_instance()
8452 }
8453}
8454
8455impl GeneratedCodeInfo_Annotation {
8456 pub fn new() -> GeneratedCodeInfo_Annotation {
8457 ::std::default::Default::default()
8458 }
8459
8460 pub fn get_path(&self) -> &[i32] {
8464 &self.path
8465 }
8466 pub fn clear_path(&mut self) {
8467 self.path.clear();
8468 }
8469
8470 pub fn set_path(&mut self, v: ::std::vec::Vec<i32>) {
8472 self.path = v;
8473 }
8474
8475 pub fn mut_path(&mut self) -> &mut ::std::vec::Vec<i32> {
8477 &mut self.path
8478 }
8479
8480 pub fn take_path(&mut self) -> ::std::vec::Vec<i32> {
8482 ::std::mem::replace(&mut self.path, ::std::vec::Vec::new())
8483 }
8484
8485 pub fn get_source_file(&self) -> &str {
8489 match self.source_file.as_ref() {
8490 Some(v) => &v,
8491 None => "",
8492 }
8493 }
8494 pub fn clear_source_file(&mut self) {
8495 self.source_file.clear();
8496 }
8497
8498 pub fn has_source_file(&self) -> bool {
8499 self.source_file.is_some()
8500 }
8501
8502 pub fn set_source_file(&mut self, v: ::std::string::String) {
8504 self.source_file = ::protobuf::SingularField::some(v);
8505 }
8506
8507 pub fn mut_source_file(&mut self) -> &mut ::std::string::String {
8510 if self.source_file.is_none() {
8511 self.source_file.set_default();
8512 }
8513 self.source_file.as_mut().unwrap()
8514 }
8515
8516 pub fn take_source_file(&mut self) -> ::std::string::String {
8518 self.source_file.take().unwrap_or_else(|| ::std::string::String::new())
8519 }
8520
8521 pub fn get_begin(&self) -> i32 {
8525 self.begin.unwrap_or(0)
8526 }
8527 pub fn clear_begin(&mut self) {
8528 self.begin = ::std::option::Option::None;
8529 }
8530
8531 pub fn has_begin(&self) -> bool {
8532 self.begin.is_some()
8533 }
8534
8535 pub fn set_begin(&mut self, v: i32) {
8537 self.begin = ::std::option::Option::Some(v);
8538 }
8539
8540 pub fn get_end(&self) -> i32 {
8544 self.end.unwrap_or(0)
8545 }
8546 pub fn clear_end(&mut self) {
8547 self.end = ::std::option::Option::None;
8548 }
8549
8550 pub fn has_end(&self) -> bool {
8551 self.end.is_some()
8552 }
8553
8554 pub fn set_end(&mut self, v: i32) {
8556 self.end = ::std::option::Option::Some(v);
8557 }
8558}
8559
8560impl ::protobuf::Message for GeneratedCodeInfo_Annotation {
8561 fn is_initialized(&self) -> bool {
8562 true
8563 }
8564
8565 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
8566 while !is.eof()? {
8567 let (field_number, wire_type) = is.read_tag_unpack()?;
8568 match field_number {
8569 1 => {
8570 ::protobuf::rt::read_repeated_int32_into(wire_type, is, &mut self.path)?;
8571 },
8572 2 => {
8573 ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.source_file)?;
8574 },
8575 3 => {
8576 if wire_type != ::protobuf::wire_format::WireTypeVarint {
8577 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
8578 }
8579 let tmp = is.read_int32()?;
8580 self.begin = ::std::option::Option::Some(tmp);
8581 },
8582 4 => {
8583 if wire_type != ::protobuf::wire_format::WireTypeVarint {
8584 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
8585 }
8586 let tmp = is.read_int32()?;
8587 self.end = ::std::option::Option::Some(tmp);
8588 },
8589 _ => {
8590 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
8591 },
8592 };
8593 }
8594 ::std::result::Result::Ok(())
8595 }
8596
8597 #[allow(unused_variables)]
8599 fn compute_size(&self) -> u32 {
8600 let mut my_size = 0;
8601 if !self.path.is_empty() {
8602 my_size += ::protobuf::rt::vec_packed_varint_size(1, &self.path);
8603 }
8604 if let Some(ref v) = self.source_file.as_ref() {
8605 my_size += ::protobuf::rt::string_size(2, &v);
8606 }
8607 if let Some(v) = self.begin {
8608 my_size += ::protobuf::rt::value_size(3, v, ::protobuf::wire_format::WireTypeVarint);
8609 }
8610 if let Some(v) = self.end {
8611 my_size += ::protobuf::rt::value_size(4, v, ::protobuf::wire_format::WireTypeVarint);
8612 }
8613 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
8614 self.cached_size.set(my_size);
8615 my_size
8616 }
8617
8618 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
8619 if !self.path.is_empty() {
8620 os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
8621 os.write_raw_varint32(::protobuf::rt::vec_packed_varint_data_size(&self.path))?;
8623 for v in &self.path {
8624 os.write_int32_no_tag(*v)?;
8625 };
8626 }
8627 if let Some(ref v) = self.source_file.as_ref() {
8628 os.write_string(2, &v)?;
8629 }
8630 if let Some(v) = self.begin {
8631 os.write_int32(3, v)?;
8632 }
8633 if let Some(v) = self.end {
8634 os.write_int32(4, v)?;
8635 }
8636 os.write_unknown_fields(self.get_unknown_fields())?;
8637 ::std::result::Result::Ok(())
8638 }
8639
8640 fn get_cached_size(&self) -> u32 {
8641 self.cached_size.get()
8642 }
8643
8644 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
8645 &self.unknown_fields
8646 }
8647
8648 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
8649 &mut self.unknown_fields
8650 }
8651
8652 fn as_any(&self) -> &dyn (::std::any::Any) {
8653 self as &dyn (::std::any::Any)
8654 }
8655 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
8656 self as &mut dyn (::std::any::Any)
8657 }
8658 fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
8659 self
8660 }
8661
8662 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
8663 Self::descriptor_static()
8664 }
8665
8666 fn new() -> GeneratedCodeInfo_Annotation {
8667 GeneratedCodeInfo_Annotation::new()
8668 }
8669
8670 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
8671 static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
8672 lock: ::protobuf::lazy::ONCE_INIT,
8673 ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
8674 };
8675 unsafe {
8676 descriptor.get(|| {
8677 let mut fields = ::std::vec::Vec::new();
8678 fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
8679 "path",
8680 |m: &GeneratedCodeInfo_Annotation| { &m.path },
8681 |m: &mut GeneratedCodeInfo_Annotation| { &mut m.path },
8682 ));
8683 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
8684 "source_file",
8685 |m: &GeneratedCodeInfo_Annotation| { &m.source_file },
8686 |m: &mut GeneratedCodeInfo_Annotation| { &mut m.source_file },
8687 ));
8688 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
8689 "begin",
8690 |m: &GeneratedCodeInfo_Annotation| { &m.begin },
8691 |m: &mut GeneratedCodeInfo_Annotation| { &mut m.begin },
8692 ));
8693 fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
8694 "end",
8695 |m: &GeneratedCodeInfo_Annotation| { &m.end },
8696 |m: &mut GeneratedCodeInfo_Annotation| { &mut m.end },
8697 ));
8698 ::protobuf::reflect::MessageDescriptor::new::<GeneratedCodeInfo_Annotation>(
8699 "GeneratedCodeInfo_Annotation",
8700 fields,
8701 file_descriptor_proto()
8702 )
8703 })
8704 }
8705 }
8706
8707 fn default_instance() -> &'static GeneratedCodeInfo_Annotation {
8708 static mut instance: ::protobuf::lazy::Lazy<GeneratedCodeInfo_Annotation> = ::protobuf::lazy::Lazy {
8709 lock: ::protobuf::lazy::ONCE_INIT,
8710 ptr: 0 as *const GeneratedCodeInfo_Annotation,
8711 };
8712 unsafe {
8713 instance.get(GeneratedCodeInfo_Annotation::new)
8714 }
8715 }
8716}
8717
8718impl ::protobuf::Clear for GeneratedCodeInfo_Annotation {
8719 fn clear(&mut self) {
8720 self.path.clear();
8721 self.source_file.clear();
8722 self.begin = ::std::option::Option::None;
8723 self.end = ::std::option::Option::None;
8724 self.unknown_fields.clear();
8725 }
8726}
8727
8728impl ::std::fmt::Debug for GeneratedCodeInfo_Annotation {
8729 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8730 ::protobuf::text_format::fmt(self, f)
8731 }
8732}
8733
8734impl ::protobuf::reflect::ProtobufValue for GeneratedCodeInfo_Annotation {
8735 fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
8736 ::protobuf::reflect::ProtobufValueRef::Message(self)
8737 }
8738}
8739
8740static file_descriptor_proto_data: &'static [u8] = b"\
8741 \n\x20google/protobuf/descriptor.proto\x12\x0fgoogle.protobuf\"M\n\x11Fi\
8742 leDescriptorSet\x128\n\x04file\x18\x01\x20\x03(\x0b2$.google.protobuf.Fi\
8743 leDescriptorProtoR\x04file\"\xe4\x04\n\x13FileDescriptorProto\x12\x12\n\
8744 \x04name\x18\x01\x20\x01(\tR\x04name\x12\x18\n\x07package\x18\x02\x20\
8745 \x01(\tR\x07package\x12\x1e\n\ndependency\x18\x03\x20\x03(\tR\ndependenc\
8746 y\x12+\n\x11public_dependency\x18\n\x20\x03(\x05R\x10publicDependency\
8747 \x12'\n\x0fweak_dependency\x18\x0b\x20\x03(\x05R\x0eweakDependency\x12C\
8748 \n\x0cmessage_type\x18\x04\x20\x03(\x0b2\x20.google.protobuf.DescriptorP\
8749 rotoR\x0bmessageType\x12A\n\tenum_type\x18\x05\x20\x03(\x0b2$.google.pro\
8750 tobuf.EnumDescriptorProtoR\x08enumType\x12A\n\x07service\x18\x06\x20\x03\
8751 (\x0b2'.google.protobuf.ServiceDescriptorProtoR\x07service\x12C\n\texten\
8752 sion\x18\x07\x20\x03(\x0b2%.google.protobuf.FieldDescriptorProtoR\texten\
8753 sion\x126\n\x07options\x18\x08\x20\x01(\x0b2\x1c.google.protobuf.FileOpt\
8754 ionsR\x07options\x12I\n\x10source_code_info\x18\t\x20\x01(\x0b2\x1f.goog\
8755 le.protobuf.SourceCodeInfoR\x0esourceCodeInfo\x12\x16\n\x06syntax\x18\
8756 \x0c\x20\x01(\tR\x06syntax\"\xf7\x05\n\x0fDescriptorProto\x12\x12\n\x04n\
8757 ame\x18\x01\x20\x01(\tR\x04name\x12;\n\x05field\x18\x02\x20\x03(\x0b2%.g\
8758 oogle.protobuf.FieldDescriptorProtoR\x05field\x12C\n\textension\x18\x06\
8759 \x20\x03(\x0b2%.google.protobuf.FieldDescriptorProtoR\textension\x12A\n\
8760 \x0bnested_type\x18\x03\x20\x03(\x0b2\x20.google.protobuf.DescriptorProt\
8761 oR\nnestedType\x12A\n\tenum_type\x18\x04\x20\x03(\x0b2$.google.protobuf.\
8762 EnumDescriptorProtoR\x08enumType\x12X\n\x0fextension_range\x18\x05\x20\
8763 \x03(\x0b2/.google.protobuf.DescriptorProto.ExtensionRangeR\x0eextension\
8764 Range\x12D\n\noneof_decl\x18\x08\x20\x03(\x0b2%.google.protobuf.OneofDes\
8765 criptorProtoR\toneofDecl\x129\n\x07options\x18\x07\x20\x01(\x0b2\x1f.goo\
8766 gle.protobuf.MessageOptionsR\x07options\x12U\n\x0ereserved_range\x18\t\
8767 \x20\x03(\x0b2..google.protobuf.DescriptorProto.ReservedRangeR\rreserved\
8768 Range\x12#\n\rreserved_name\x18\n\x20\x03(\tR\x0creservedName\x1a8\n\x0e\
8769 ExtensionRange\x12\x14\n\x05start\x18\x01\x20\x01(\x05R\x05start\x12\x10\
8770 \n\x03end\x18\x02\x20\x01(\x05R\x03end\x1a7\n\rReservedRange\x12\x14\n\
8771 \x05start\x18\x01\x20\x01(\x05R\x05start\x12\x10\n\x03end\x18\x02\x20\
8772 \x01(\x05R\x03end\"\x98\x06\n\x14FieldDescriptorProto\x12\x12\n\x04name\
8773 \x18\x01\x20\x01(\tR\x04name\x12\x16\n\x06number\x18\x03\x20\x01(\x05R\
8774 \x06number\x12A\n\x05label\x18\x04\x20\x01(\x0e2+.google.protobuf.FieldD\
8775 escriptorProto.LabelR\x05label\x12>\n\x04type\x18\x05\x20\x01(\x0e2*.goo\
8776 gle.protobuf.FieldDescriptorProto.TypeR\x04type\x12\x1b\n\ttype_name\x18\
8777 \x06\x20\x01(\tR\x08typeName\x12\x1a\n\x08extendee\x18\x02\x20\x01(\tR\
8778 \x08extendee\x12#\n\rdefault_value\x18\x07\x20\x01(\tR\x0cdefaultValue\
8779 \x12\x1f\n\x0boneof_index\x18\t\x20\x01(\x05R\noneofIndex\x12\x1b\n\tjso\
8780 n_name\x18\n\x20\x01(\tR\x08jsonName\x127\n\x07options\x18\x08\x20\x01(\
8781 \x0b2\x1d.google.protobuf.FieldOptionsR\x07options\"\xb6\x02\n\x04Type\
8782 \x12\x0f\n\x0bTYPE_DOUBLE\x10\x01\x12\x0e\n\nTYPE_FLOAT\x10\x02\x12\x0e\
8783 \n\nTYPE_INT64\x10\x03\x12\x0f\n\x0bTYPE_UINT64\x10\x04\x12\x0e\n\nTYPE_\
8784 INT32\x10\x05\x12\x10\n\x0cTYPE_FIXED64\x10\x06\x12\x10\n\x0cTYPE_FIXED3\
8785 2\x10\x07\x12\r\n\tTYPE_BOOL\x10\x08\x12\x0f\n\x0bTYPE_STRING\x10\t\x12\
8786 \x0e\n\nTYPE_GROUP\x10\n\x12\x10\n\x0cTYPE_MESSAGE\x10\x0b\x12\x0e\n\nTY\
8787 PE_BYTES\x10\x0c\x12\x0f\n\x0bTYPE_UINT32\x10\r\x12\r\n\tTYPE_ENUM\x10\
8788 \x0e\x12\x11\n\rTYPE_SFIXED32\x10\x0f\x12\x11\n\rTYPE_SFIXED64\x10\x10\
8789 \x12\x0f\n\x0bTYPE_SINT32\x10\x11\x12\x0f\n\x0bTYPE_SINT64\x10\x12\"C\n\
8790 \x05Label\x12\x12\n\x0eLABEL_OPTIONAL\x10\x01\x12\x12\n\x0eLABEL_REQUIRE\
8791 D\x10\x02\x12\x12\n\x0eLABEL_REPEATED\x10\x03\"c\n\x14OneofDescriptorPro\
8792 to\x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\x127\n\x07options\x18\
8793 \x02\x20\x01(\x0b2\x1d.google.protobuf.OneofOptionsR\x07options\"\xa2\
8794 \x01\n\x13EnumDescriptorProto\x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04n\
8795 ame\x12?\n\x05value\x18\x02\x20\x03(\x0b2).google.protobuf.EnumValueDesc\
8796 riptorProtoR\x05value\x126\n\x07options\x18\x03\x20\x01(\x0b2\x1c.google\
8797 .protobuf.EnumOptionsR\x07options\"\x83\x01\n\x18EnumValueDescriptorProt\
8798 o\x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\x12\x16\n\x06number\x18\
8799 \x02\x20\x01(\x05R\x06number\x12;\n\x07options\x18\x03\x20\x01(\x0b2!.go\
8800 ogle.protobuf.EnumValueOptionsR\x07options\"\xa7\x01\n\x16ServiceDescrip\
8801 torProto\x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\x12>\n\x06method\
8802 \x18\x02\x20\x03(\x0b2&.google.protobuf.MethodDescriptorProtoR\x06method\
8803 \x129\n\x07options\x18\x03\x20\x01(\x0b2\x1f.google.protobuf.ServiceOpti\
8804 onsR\x07options\"\x89\x02\n\x15MethodDescriptorProto\x12\x12\n\x04name\
8805 \x18\x01\x20\x01(\tR\x04name\x12\x1d\n\ninput_type\x18\x02\x20\x01(\tR\t\
8806 inputType\x12\x1f\n\x0boutput_type\x18\x03\x20\x01(\tR\noutputType\x128\
8807 \n\x07options\x18\x04\x20\x01(\x0b2\x1e.google.protobuf.MethodOptionsR\
8808 \x07options\x120\n\x10client_streaming\x18\x05\x20\x01(\x08:\x05falseR\
8809 \x0fclientStreaming\x120\n\x10server_streaming\x18\x06\x20\x01(\x08:\x05\
8810 falseR\x0fserverStreaming\"\x88\x07\n\x0bFileOptions\x12!\n\x0cjava_pack\
8811 age\x18\x01\x20\x01(\tR\x0bjavaPackage\x120\n\x14java_outer_classname\
8812 \x18\x08\x20\x01(\tR\x12javaOuterClassname\x125\n\x13java_multiple_files\
8813 \x18\n\x20\x01(\x08:\x05falseR\x11javaMultipleFiles\x12D\n\x1djava_gener\
8814 ate_equals_and_hash\x18\x14\x20\x01(\x08R\x19javaGenerateEqualsAndHashB\
8815 \x02\x18\x01\x12:\n\x16java_string_check_utf8\x18\x1b\x20\x01(\x08:\x05f\
8816 alseR\x13javaStringCheckUtf8\x12S\n\x0coptimize_for\x18\t\x20\x01(\x0e2)\
8817 .google.protobuf.FileOptions.OptimizeMode:\x05SPEEDR\x0boptimizeFor\x12\
8818 \x1d\n\ngo_package\x18\x0b\x20\x01(\tR\tgoPackage\x125\n\x13cc_generic_s\
8819 ervices\x18\x10\x20\x01(\x08:\x05falseR\x11ccGenericServices\x129\n\x15j\
8820 ava_generic_services\x18\x11\x20\x01(\x08:\x05falseR\x13javaGenericServi\
8821 ces\x125\n\x13py_generic_services\x18\x12\x20\x01(\x08:\x05falseR\x11pyG\
8822 enericServices\x12%\n\ndeprecated\x18\x17\x20\x01(\x08:\x05falseR\ndepre\
8823 cated\x12/\n\x10cc_enable_arenas\x18\x1f\x20\x01(\x08:\x05falseR\x0eccEn\
8824 ableArenas\x12*\n\x11objc_class_prefix\x18$\x20\x01(\tR\x0fobjcClassPref\
8825 ix\x12)\n\x10csharp_namespace\x18%\x20\x01(\tR\x0fcsharpNamespace\x12X\n\
8826 \x14uninterpreted_option\x18\xe7\x07\x20\x03(\x0b2$.google.protobuf.Unin\
8827 terpretedOptionR\x13uninterpretedOption\":\n\x0cOptimizeMode\x12\t\n\x05\
8828 SPEED\x10\x01\x12\r\n\tCODE_SIZE\x10\x02\x12\x10\n\x0cLITE_RUNTIME\x10\
8829 \x03*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xc5\x02\n\x0eMessageOption\
8830 s\x12<\n\x17message_set_wire_format\x18\x01\x20\x01(\x08:\x05falseR\x14m\
8831 essageSetWireFormat\x12L\n\x1fno_standard_descriptor_accessor\x18\x02\
8832 \x20\x01(\x08:\x05falseR\x1cnoStandardDescriptorAccessor\x12%\n\ndepreca\
8833 ted\x18\x03\x20\x01(\x08:\x05falseR\ndeprecated\x12\x1b\n\tmap_entry\x18\
8834 \x07\x20\x01(\x08R\x08mapEntry\x12X\n\x14uninterpreted_option\x18\xe7\
8835 \x07\x20\x03(\x0b2$.google.protobuf.UninterpretedOptionR\x13uninterprete\
8836 dOption*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xdc\x03\n\x0cFieldOptio\
8837 ns\x12A\n\x05ctype\x18\x01\x20\x01(\x0e2#.google.protobuf.FieldOptions.C\
8838 Type:\x06STRINGR\x05ctype\x12\x16\n\x06packed\x18\x02\x20\x01(\x08R\x06p\
8839 acked\x12G\n\x06jstype\x18\x06\x20\x01(\x0e2$.google.protobuf.FieldOptio\
8840 ns.JSType:\tJS_NORMALR\x06jstype\x12\x19\n\x04lazy\x18\x05\x20\x01(\x08:\
8841 \x05falseR\x04lazy\x12%\n\ndeprecated\x18\x03\x20\x01(\x08:\x05falseR\nd\
8842 eprecated\x12\x19\n\x04weak\x18\n\x20\x01(\x08:\x05falseR\x04weak\x12X\n\
8843 \x14uninterpreted_option\x18\xe7\x07\x20\x03(\x0b2$.google.protobuf.Unin\
8844 terpretedOptionR\x13uninterpretedOption\"/\n\x05CType\x12\n\n\x06STRING\
8845 \x10\0\x12\x08\n\x04CORD\x10\x01\x12\x10\n\x0cSTRING_PIECE\x10\x02\"5\n\
8846 \x06JSType\x12\r\n\tJS_NORMAL\x10\0\x12\r\n\tJS_STRING\x10\x01\x12\r\n\t\
8847 JS_NUMBER\x10\x02*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"s\n\x0cOneofOp\
8848 tions\x12X\n\x14uninterpreted_option\x18\xe7\x07\x20\x03(\x0b2$.google.p\
8849 rotobuf.UninterpretedOptionR\x13uninterpretedOption*\t\x08\xe8\x07\x10\
8850 \x80\x80\x80\x80\x02\"\xba\x01\n\x0bEnumOptions\x12\x1f\n\x0ballow_alias\
8851 \x18\x02\x20\x01(\x08R\nallowAlias\x12%\n\ndeprecated\x18\x03\x20\x01(\
8852 \x08:\x05falseR\ndeprecated\x12X\n\x14uninterpreted_option\x18\xe7\x07\
8853 \x20\x03(\x0b2$.google.protobuf.UninterpretedOptionR\x13uninterpretedOpt\
8854 ion*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\x9e\x01\n\x10EnumValueOptio\
8855 ns\x12%\n\ndeprecated\x18\x01\x20\x01(\x08:\x05falseR\ndeprecated\x12X\n\
8856 \x14uninterpreted_option\x18\xe7\x07\x20\x03(\x0b2$.google.protobuf.Unin\
8857 terpretedOptionR\x13uninterpretedOption*\t\x08\xe8\x07\x10\x80\x80\x80\
8858 \x80\x02\"\x9c\x01\n\x0eServiceOptions\x12%\n\ndeprecated\x18!\x20\x01(\
8859 \x08:\x05falseR\ndeprecated\x12X\n\x14uninterpreted_option\x18\xe7\x07\
8860 \x20\x03(\x0b2$.google.protobuf.UninterpretedOptionR\x13uninterpretedOpt\
8861 ion*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\x9b\x01\n\rMethodOptions\
8862 \x12%\n\ndeprecated\x18!\x20\x01(\x08:\x05falseR\ndeprecated\x12X\n\x14u\
8863 ninterpreted_option\x18\xe7\x07\x20\x03(\x0b2$.google.protobuf.Uninterpr\
8864 etedOptionR\x13uninterpretedOption*\t\x08\xe8\x07\x10\x80\x80\x80\x80\
8865 \x02\"\x9a\x03\n\x13UninterpretedOption\x12A\n\x04name\x18\x02\x20\x03(\
8866 \x0b2-.google.protobuf.UninterpretedOption.NamePartR\x04name\x12)\n\x10i\
8867 dentifier_value\x18\x03\x20\x01(\tR\x0fidentifierValue\x12,\n\x12positiv\
8868 e_int_value\x18\x04\x20\x01(\x04R\x10positiveIntValue\x12,\n\x12negative\
8869 _int_value\x18\x05\x20\x01(\x03R\x10negativeIntValue\x12!\n\x0cdouble_va\
8870 lue\x18\x06\x20\x01(\x01R\x0bdoubleValue\x12!\n\x0cstring_value\x18\x07\
8871 \x20\x01(\x0cR\x0bstringValue\x12'\n\x0faggregate_value\x18\x08\x20\x01(\
8872 \tR\x0eaggregateValue\x1aJ\n\x08NamePart\x12\x1b\n\tname_part\x18\x01\
8873 \x20\x02(\tR\x08namePart\x12!\n\x0cis_extension\x18\x02\x20\x02(\x08R\
8874 \x0bisExtension\"\xa7\x02\n\x0eSourceCodeInfo\x12D\n\x08location\x18\x01\
8875 \x20\x03(\x0b2(.google.protobuf.SourceCodeInfo.LocationR\x08location\x1a\
8876 \xce\x01\n\x08Location\x12\x16\n\x04path\x18\x01\x20\x03(\x05R\x04pathB\
8877 \x02\x10\x01\x12\x16\n\x04span\x18\x02\x20\x03(\x05R\x04spanB\x02\x10\
8878 \x01\x12)\n\x10leading_comments\x18\x03\x20\x01(\tR\x0fleadingComments\
8879 \x12+\n\x11trailing_comments\x18\x04\x20\x01(\tR\x10trailingComments\x12\
8880 :\n\x19leading_detached_comments\x18\x06\x20\x03(\tR\x17leadingDetachedC\
8881 omments\"\xd1\x01\n\x11GeneratedCodeInfo\x12M\n\nannotation\x18\x01\x20\
8882 \x03(\x0b2-.google.protobuf.GeneratedCodeInfo.AnnotationR\nannotation\
8883 \x1am\n\nAnnotation\x12\x16\n\x04path\x18\x01\x20\x03(\x05R\x04pathB\x02\
8884 \x10\x01\x12\x1f\n\x0bsource_file\x18\x02\x20\x01(\tR\nsourceFile\x12\
8885 \x14\n\x05begin\x18\x03\x20\x01(\x05R\x05begin\x12\x10\n\x03end\x18\x04\
8886 \x20\x01(\x05R\x03endBX\n\x13com.google.protobufB\x10DescriptorProtosH\
8887 \x01Z\ndescriptor\xa2\x02\x03GPB\xaa\x02\x1aGoogle.Protobuf.ReflectionJ\
8888 \xb3\x9f\x02\n\x07\x12\x05'\0\xa3\x06\x01\n\xaa\x0f\n\x01\x0c\x12\x03'\0\
8889 \x122\xc1\x0c\x20Protocol\x20Buffers\x20-\x20Google's\x20data\x20interch\
8890 ange\x20format\n\x20Copyright\x202008\x20Google\x20Inc.\x20\x20All\x20ri\
8891 ghts\x20reserved.\n\x20https://developers.google.com/protocol-buffers/\n\
8892 \n\x20Redistribution\x20and\x20use\x20in\x20source\x20and\x20binary\x20f\
8893 orms,\x20with\x20or\x20without\n\x20modification,\x20are\x20permitted\
8894 \x20provided\x20that\x20the\x20following\x20conditions\x20are\n\x20met:\
8895 \n\n\x20\x20\x20\x20\x20*\x20Redistributions\x20of\x20source\x20code\x20\
8896 must\x20retain\x20the\x20above\x20copyright\n\x20notice,\x20this\x20list\
8897 \x20of\x20conditions\x20and\x20the\x20following\x20disclaimer.\n\x20\x20\
8898 \x20\x20\x20*\x20Redistributions\x20in\x20binary\x20form\x20must\x20repr\
8899 oduce\x20the\x20above\n\x20copyright\x20notice,\x20this\x20list\x20of\
8900 \x20conditions\x20and\x20the\x20following\x20disclaimer\n\x20in\x20the\
8901 \x20documentation\x20and/or\x20other\x20materials\x20provided\x20with\
8902 \x20the\n\x20distribution.\n\x20\x20\x20\x20\x20*\x20Neither\x20the\x20n\
8903 ame\x20of\x20Google\x20Inc.\x20nor\x20the\x20names\x20of\x20its\n\x20con\
8904 tributors\x20may\x20be\x20used\x20to\x20endorse\x20or\x20promote\x20prod\
8905 ucts\x20derived\x20from\n\x20this\x20software\x20without\x20specific\x20\
8906 prior\x20written\x20permission.\n\n\x20THIS\x20SOFTWARE\x20IS\x20PROVIDE\
8907 D\x20BY\x20THE\x20COPYRIGHT\x20HOLDERS\x20AND\x20CONTRIBUTORS\n\x20\"AS\
8908 \x20IS\"\x20AND\x20ANY\x20EXPRESS\x20OR\x20IMPLIED\x20WARRANTIES,\x20INC\
8909 LUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\x20THE\x20IMPLIED\x20WARRANTIE\
8910 S\x20OF\x20MERCHANTABILITY\x20AND\x20FITNESS\x20FOR\n\x20A\x20PARTICULAR\
8911 \x20PURPOSE\x20ARE\x20DISCLAIMED.\x20IN\x20NO\x20EVENT\x20SHALL\x20THE\
8912 \x20COPYRIGHT\n\x20OWNER\x20OR\x20CONTRIBUTORS\x20BE\x20LIABLE\x20FOR\
8913 \x20ANY\x20DIRECT,\x20INDIRECT,\x20INCIDENTAL,\n\x20SPECIAL,\x20EXEMPLAR\
8914 Y,\x20OR\x20CONSEQUENTIAL\x20DAMAGES\x20(INCLUDING,\x20BUT\x20NOT\n\x20L\
8915 IMITED\x20TO,\x20PROCUREMENT\x20OF\x20SUBSTITUTE\x20GOODS\x20OR\x20SERVI\
8916 CES;\x20LOSS\x20OF\x20USE,\n\x20DATA,\x20OR\x20PROFITS;\x20OR\x20BUSINES\
8917 S\x20INTERRUPTION)\x20HOWEVER\x20CAUSED\x20AND\x20ON\x20ANY\n\x20THEORY\
8918 \x20OF\x20LIABILITY,\x20WHETHER\x20IN\x20CONTRACT,\x20STRICT\x20LIABILIT\
8919 Y,\x20OR\x20TORT\n\x20(INCLUDING\x20NEGLIGENCE\x20OR\x20OTHERWISE)\x20AR\
8920 ISING\x20IN\x20ANY\x20WAY\x20OUT\x20OF\x20THE\x20USE\n\x20OF\x20THIS\x20\
8921 SOFTWARE,\x20EVEN\x20IF\x20ADVISED\x20OF\x20THE\x20POSSIBILITY\x20OF\x20\
8922 SUCH\x20DAMAGE.\n2\xdb\x02\x20Author:\x20kenton@google.com\x20(Kenton\
8923 \x20Varda)\n\x20\x20Based\x20on\x20original\x20Protocol\x20Buffers\x20de\
8924 sign\x20by\n\x20\x20Sanjay\x20Ghemawat,\x20Jeff\x20Dean,\x20and\x20other\
8925 s.\n\n\x20The\x20messages\x20in\x20this\x20file\x20describe\x20the\x20de\
8926 finitions\x20found\x20in\x20.proto\x20files.\n\x20A\x20valid\x20.proto\
8927 \x20file\x20can\x20be\x20translated\x20directly\x20to\x20a\x20FileDescri\
8928 ptorProto\n\x20without\x20any\x20other\x20information\x20(e.g.\x20withou\
8929 t\x20reading\x20its\x20imports).\n\n\x08\n\x01\x02\x12\x03)\x08\x17\n\
8930 \x08\n\x01\x08\x12\x03*\0!\n\t\n\x02\x08\x0b\x12\x03*\0!\n\x08\n\x01\x08\
8931 \x12\x03+\0,\n\t\n\x02\x08\x01\x12\x03+\0,\n\x08\n\x01\x08\x12\x03,\01\n\
8932 \t\n\x02\x08\x08\x12\x03,\01\n\x08\n\x01\x08\x12\x03-\07\n\t\n\x02\x08%\
8933 \x12\x03-\07\n\x08\n\x01\x08\x12\x03.\0!\n\t\n\x02\x08$\x12\x03.\0!\n\
8934 \x08\n\x01\x08\x12\x032\0\x1c\n\x7f\n\x02\x08\t\x12\x032\0\x1c\x1at\x20d\
8935 escriptor.proto\x20must\x20be\x20optimized\x20for\x20speed\x20because\
8936 \x20reflection-based\n\x20algorithms\x20don't\x20work\x20during\x20boots\
8937 trapping.\n\nj\n\x02\x04\0\x12\x046\08\x01\x1a^\x20The\x20protocol\x20co\
8938 mpiler\x20can\x20output\x20a\x20FileDescriptorSet\x20containing\x20the\
8939 \x20.proto\n\x20files\x20it\x20parses.\n\n\n\n\x03\x04\0\x01\x12\x036\
8940 \x08\x19\n\x0b\n\x04\x04\0\x02\0\x12\x037\x02(\n\x0c\n\x05\x04\0\x02\0\
8941 \x04\x12\x037\x02\n\n\x0c\n\x05\x04\0\x02\0\x06\x12\x037\x0b\x1e\n\x0c\n\
8942 \x05\x04\0\x02\0\x01\x12\x037\x1f#\n\x0c\n\x05\x04\0\x02\0\x03\x12\x037&\
8943 '\n/\n\x02\x04\x01\x12\x04;\0X\x01\x1a#\x20Describes\x20a\x20complete\
8944 \x20.proto\x20file.\n\n\n\n\x03\x04\x01\x01\x12\x03;\x08\x1b\n9\n\x04\
8945 \x04\x01\x02\0\x12\x03<\x02\x1b\",\x20file\x20name,\x20relative\x20to\
8946 \x20root\x20of\x20source\x20tree\n\n\x0c\n\x05\x04\x01\x02\0\x04\x12\x03\
8947 <\x02\n\n\x0c\n\x05\x04\x01\x02\0\x05\x12\x03<\x0b\x11\n\x0c\n\x05\x04\
8948 \x01\x02\0\x01\x12\x03<\x12\x16\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03<\
8949 \x19\x1a\n*\n\x04\x04\x01\x02\x01\x12\x03=\x02\x1e\"\x1d\x20e.g.\x20\"fo\
8950 o\",\x20\"foo.bar\",\x20etc.\n\n\x0c\n\x05\x04\x01\x02\x01\x04\x12\x03=\
8951 \x02\n\n\x0c\n\x05\x04\x01\x02\x01\x05\x12\x03=\x0b\x11\n\x0c\n\x05\x04\
8952 \x01\x02\x01\x01\x12\x03=\x12\x19\n\x0c\n\x05\x04\x01\x02\x01\x03\x12\
8953 \x03=\x1c\x1d\n4\n\x04\x04\x01\x02\x02\x12\x03@\x02!\x1a'\x20Names\x20of\
8954 \x20files\x20imported\x20by\x20this\x20file.\n\n\x0c\n\x05\x04\x01\x02\
8955 \x02\x04\x12\x03@\x02\n\n\x0c\n\x05\x04\x01\x02\x02\x05\x12\x03@\x0b\x11\
8956 \n\x0c\n\x05\x04\x01\x02\x02\x01\x12\x03@\x12\x1c\n\x0c\n\x05\x04\x01\
8957 \x02\x02\x03\x12\x03@\x1f\x20\nQ\n\x04\x04\x01\x02\x03\x12\x03B\x02(\x1a\
8958 D\x20Indexes\x20of\x20the\x20public\x20imported\x20files\x20in\x20the\
8959 \x20dependency\x20list\x20above.\n\n\x0c\n\x05\x04\x01\x02\x03\x04\x12\
8960 \x03B\x02\n\n\x0c\n\x05\x04\x01\x02\x03\x05\x12\x03B\x0b\x10\n\x0c\n\x05\
8961 \x04\x01\x02\x03\x01\x12\x03B\x11\"\n\x0c\n\x05\x04\x01\x02\x03\x03\x12\
8962 \x03B%'\nz\n\x04\x04\x01\x02\x04\x12\x03E\x02&\x1am\x20Indexes\x20of\x20\
8963 the\x20weak\x20imported\x20files\x20in\x20the\x20dependency\x20list.\n\
8964 \x20For\x20Google-internal\x20migration\x20only.\x20Do\x20not\x20use.\n\
8965 \n\x0c\n\x05\x04\x01\x02\x04\x04\x12\x03E\x02\n\n\x0c\n\x05\x04\x01\x02\
8966 \x04\x05\x12\x03E\x0b\x10\n\x0c\n\x05\x04\x01\x02\x04\x01\x12\x03E\x11\
8967 \x20\n\x0c\n\x05\x04\x01\x02\x04\x03\x12\x03E#%\n6\n\x04\x04\x01\x02\x05\
8968 \x12\x03H\x02,\x1a)\x20All\x20top-level\x20definitions\x20in\x20this\x20\
8969 file.\n\n\x0c\n\x05\x04\x01\x02\x05\x04\x12\x03H\x02\n\n\x0c\n\x05\x04\
8970 \x01\x02\x05\x06\x12\x03H\x0b\x1a\n\x0c\n\x05\x04\x01\x02\x05\x01\x12\
8971 \x03H\x1b'\n\x0c\n\x05\x04\x01\x02\x05\x03\x12\x03H*+\n\x0b\n\x04\x04\
8972 \x01\x02\x06\x12\x03I\x02-\n\x0c\n\x05\x04\x01\x02\x06\x04\x12\x03I\x02\
8973 \n\n\x0c\n\x05\x04\x01\x02\x06\x06\x12\x03I\x0b\x1e\n\x0c\n\x05\x04\x01\
8974 \x02\x06\x01\x12\x03I\x1f(\n\x0c\n\x05\x04\x01\x02\x06\x03\x12\x03I+,\n\
8975 \x0b\n\x04\x04\x01\x02\x07\x12\x03J\x02.\n\x0c\n\x05\x04\x01\x02\x07\x04\
8976 \x12\x03J\x02\n\n\x0c\n\x05\x04\x01\x02\x07\x06\x12\x03J\x0b!\n\x0c\n\
8977 \x05\x04\x01\x02\x07\x01\x12\x03J\")\n\x0c\n\x05\x04\x01\x02\x07\x03\x12\
8978 \x03J,-\n\x0b\n\x04\x04\x01\x02\x08\x12\x03K\x02.\n\x0c\n\x05\x04\x01\
8979 \x02\x08\x04\x12\x03K\x02\n\n\x0c\n\x05\x04\x01\x02\x08\x06\x12\x03K\x0b\
8980 \x1f\n\x0c\n\x05\x04\x01\x02\x08\x01\x12\x03K\x20)\n\x0c\n\x05\x04\x01\
8981 \x02\x08\x03\x12\x03K,-\n\x0b\n\x04\x04\x01\x02\t\x12\x03M\x02#\n\x0c\n\
8982 \x05\x04\x01\x02\t\x04\x12\x03M\x02\n\n\x0c\n\x05\x04\x01\x02\t\x06\x12\
8983 \x03M\x0b\x16\n\x0c\n\x05\x04\x01\x02\t\x01\x12\x03M\x17\x1e\n\x0c\n\x05\
8984 \x04\x01\x02\t\x03\x12\x03M!\"\n\xf4\x01\n\x04\x04\x01\x02\n\x12\x03S\
8985 \x02/\x1a\xe6\x01\x20This\x20field\x20contains\x20optional\x20informatio\
8986 n\x20about\x20the\x20original\x20source\x20code.\n\x20You\x20may\x20safe\
8987 ly\x20remove\x20this\x20entire\x20field\x20without\x20harming\x20runtime\
8988 \n\x20functionality\x20of\x20the\x20descriptors\x20--\x20the\x20informat\
8989 ion\x20is\x20needed\x20only\x20by\n\x20development\x20tools.\n\n\x0c\n\
8990 \x05\x04\x01\x02\n\x04\x12\x03S\x02\n\n\x0c\n\x05\x04\x01\x02\n\x06\x12\
8991 \x03S\x0b\x19\n\x0c\n\x05\x04\x01\x02\n\x01\x12\x03S\x1a*\n\x0c\n\x05\
8992 \x04\x01\x02\n\x03\x12\x03S-.\n]\n\x04\x04\x01\x02\x0b\x12\x03W\x02\x1e\
8993 \x1aP\x20The\x20syntax\x20of\x20the\x20proto\x20file.\n\x20The\x20suppor\
8994 ted\x20values\x20are\x20\"proto2\"\x20and\x20\"proto3\".\n\n\x0c\n\x05\
8995 \x04\x01\x02\x0b\x04\x12\x03W\x02\n\n\x0c\n\x05\x04\x01\x02\x0b\x05\x12\
8996 \x03W\x0b\x11\n\x0c\n\x05\x04\x01\x02\x0b\x01\x12\x03W\x12\x18\n\x0c\n\
8997 \x05\x04\x01\x02\x0b\x03\x12\x03W\x1b\x1d\n'\n\x02\x04\x02\x12\x04[\0y\
8998 \x01\x1a\x1b\x20Describes\x20a\x20message\x20type.\n\n\n\n\x03\x04\x02\
8999 \x01\x12\x03[\x08\x17\n\x0b\n\x04\x04\x02\x02\0\x12\x03\\\x02\x1b\n\x0c\
9000 \n\x05\x04\x02\x02\0\x04\x12\x03\\\x02\n\n\x0c\n\x05\x04\x02\x02\0\x05\
9001 \x12\x03\\\x0b\x11\n\x0c\n\x05\x04\x02\x02\0\x01\x12\x03\\\x12\x16\n\x0c\
9002 \n\x05\x04\x02\x02\0\x03\x12\x03\\\x19\x1a\n\x0b\n\x04\x04\x02\x02\x01\
9003 \x12\x03^\x02*\n\x0c\n\x05\x04\x02\x02\x01\x04\x12\x03^\x02\n\n\x0c\n\
9004 \x05\x04\x02\x02\x01\x06\x12\x03^\x0b\x1f\n\x0c\n\x05\x04\x02\x02\x01\
9005 \x01\x12\x03^\x20%\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x03^()\n\x0b\n\
9006 \x04\x04\x02\x02\x02\x12\x03_\x02.\n\x0c\n\x05\x04\x02\x02\x02\x04\x12\
9007 \x03_\x02\n\n\x0c\n\x05\x04\x02\x02\x02\x06\x12\x03_\x0b\x1f\n\x0c\n\x05\
9008 \x04\x02\x02\x02\x01\x12\x03_\x20)\n\x0c\n\x05\x04\x02\x02\x02\x03\x12\
9009 \x03_,-\n\x0b\n\x04\x04\x02\x02\x03\x12\x03a\x02+\n\x0c\n\x05\x04\x02\
9010 \x02\x03\x04\x12\x03a\x02\n\n\x0c\n\x05\x04\x02\x02\x03\x06\x12\x03a\x0b\
9011 \x1a\n\x0c\n\x05\x04\x02\x02\x03\x01\x12\x03a\x1b&\n\x0c\n\x05\x04\x02\
9012 \x02\x03\x03\x12\x03a)*\n\x0b\n\x04\x04\x02\x02\x04\x12\x03b\x02-\n\x0c\
9013 \n\x05\x04\x02\x02\x04\x04\x12\x03b\x02\n\n\x0c\n\x05\x04\x02\x02\x04\
9014 \x06\x12\x03b\x0b\x1e\n\x0c\n\x05\x04\x02\x02\x04\x01\x12\x03b\x1f(\n\
9015 \x0c\n\x05\x04\x02\x02\x04\x03\x12\x03b+,\n\x0c\n\x04\x04\x02\x03\0\x12\
9016 \x04d\x02g\x03\n\x0c\n\x05\x04\x02\x03\0\x01\x12\x03d\n\x18\n\r\n\x06\
9017 \x04\x02\x03\0\x02\0\x12\x03e\x04\x1d\n\x0e\n\x07\x04\x02\x03\0\x02\0\
9018 \x04\x12\x03e\x04\x0c\n\x0e\n\x07\x04\x02\x03\0\x02\0\x05\x12\x03e\r\x12\
9019 \n\x0e\n\x07\x04\x02\x03\0\x02\0\x01\x12\x03e\x13\x18\n\x0e\n\x07\x04\
9020 \x02\x03\0\x02\0\x03\x12\x03e\x1b\x1c\n\r\n\x06\x04\x02\x03\0\x02\x01\
9021 \x12\x03f\x04\x1b\n\x0e\n\x07\x04\x02\x03\0\x02\x01\x04\x12\x03f\x04\x0c\
9022 \n\x0e\n\x07\x04\x02\x03\0\x02\x01\x05\x12\x03f\r\x12\n\x0e\n\x07\x04\
9023 \x02\x03\0\x02\x01\x01\x12\x03f\x13\x16\n\x0e\n\x07\x04\x02\x03\0\x02\
9024 \x01\x03\x12\x03f\x19\x1a\n\x0b\n\x04\x04\x02\x02\x05\x12\x03h\x02.\n\
9025 \x0c\n\x05\x04\x02\x02\x05\x04\x12\x03h\x02\n\n\x0c\n\x05\x04\x02\x02\
9026 \x05\x06\x12\x03h\x0b\x19\n\x0c\n\x05\x04\x02\x02\x05\x01\x12\x03h\x1a)\
9027 \n\x0c\n\x05\x04\x02\x02\x05\x03\x12\x03h,-\n\x0b\n\x04\x04\x02\x02\x06\
9028 \x12\x03j\x02/\n\x0c\n\x05\x04\x02\x02\x06\x04\x12\x03j\x02\n\n\x0c\n\
9029 \x05\x04\x02\x02\x06\x06\x12\x03j\x0b\x1f\n\x0c\n\x05\x04\x02\x02\x06\
9030 \x01\x12\x03j\x20*\n\x0c\n\x05\x04\x02\x02\x06\x03\x12\x03j-.\n\x0b\n\
9031 \x04\x04\x02\x02\x07\x12\x03l\x02&\n\x0c\n\x05\x04\x02\x02\x07\x04\x12\
9032 \x03l\x02\n\n\x0c\n\x05\x04\x02\x02\x07\x06\x12\x03l\x0b\x19\n\x0c\n\x05\
9033 \x04\x02\x02\x07\x01\x12\x03l\x1a!\n\x0c\n\x05\x04\x02\x02\x07\x03\x12\
9034 \x03l$%\n\xaa\x01\n\x04\x04\x02\x03\x01\x12\x04q\x02t\x03\x1a\x9b\x01\
9035 \x20Range\x20of\x20reserved\x20tag\x20numbers.\x20Reserved\x20tag\x20num\
9036 bers\x20may\x20not\x20be\x20used\x20by\n\x20fields\x20or\x20extension\
9037 \x20ranges\x20in\x20the\x20same\x20message.\x20Reserved\x20ranges\x20may\
9038 \n\x20not\x20overlap.\n\n\x0c\n\x05\x04\x02\x03\x01\x01\x12\x03q\n\x17\n\
9039 \x1b\n\x06\x04\x02\x03\x01\x02\0\x12\x03r\x04\x1d\"\x0c\x20Inclusive.\n\
9040 \n\x0e\n\x07\x04\x02\x03\x01\x02\0\x04\x12\x03r\x04\x0c\n\x0e\n\x07\x04\
9041 \x02\x03\x01\x02\0\x05\x12\x03r\r\x12\n\x0e\n\x07\x04\x02\x03\x01\x02\0\
9042 \x01\x12\x03r\x13\x18\n\x0e\n\x07\x04\x02\x03\x01\x02\0\x03\x12\x03r\x1b\
9043 \x1c\n\x1b\n\x06\x04\x02\x03\x01\x02\x01\x12\x03s\x04\x1b\"\x0c\x20Exclu\
9044 sive.\n\n\x0e\n\x07\x04\x02\x03\x01\x02\x01\x04\x12\x03s\x04\x0c\n\x0e\n\
9045 \x07\x04\x02\x03\x01\x02\x01\x05\x12\x03s\r\x12\n\x0e\n\x07\x04\x02\x03\
9046 \x01\x02\x01\x01\x12\x03s\x13\x16\n\x0e\n\x07\x04\x02\x03\x01\x02\x01\
9047 \x03\x12\x03s\x19\x1a\n\x0b\n\x04\x04\x02\x02\x08\x12\x03u\x02,\n\x0c\n\
9048 \x05\x04\x02\x02\x08\x04\x12\x03u\x02\n\n\x0c\n\x05\x04\x02\x02\x08\x06\
9049 \x12\x03u\x0b\x18\n\x0c\n\x05\x04\x02\x02\x08\x01\x12\x03u\x19'\n\x0c\n\
9050 \x05\x04\x02\x02\x08\x03\x12\x03u*+\n\x82\x01\n\x04\x04\x02\x02\t\x12\
9051 \x03x\x02%\x1au\x20Reserved\x20field\x20names,\x20which\x20may\x20not\
9052 \x20be\x20used\x20by\x20fields\x20in\x20the\x20same\x20message.\n\x20A\
9053 \x20given\x20name\x20may\x20only\x20be\x20reserved\x20once.\n\n\x0c\n\
9054 \x05\x04\x02\x02\t\x04\x12\x03x\x02\n\n\x0c\n\x05\x04\x02\x02\t\x05\x12\
9055 \x03x\x0b\x11\n\x0c\n\x05\x04\x02\x02\t\x01\x12\x03x\x12\x1f\n\x0c\n\x05\
9056 \x04\x02\x02\t\x03\x12\x03x\"$\n2\n\x02\x04\x03\x12\x05|\0\xc7\x01\x01\
9057 \x1a%\x20Describes\x20a\x20field\x20within\x20a\x20message.\n\n\n\n\x03\
9058 \x04\x03\x01\x12\x03|\x08\x1c\n\r\n\x04\x04\x03\x04\0\x12\x05}\x02\x98\
9059 \x01\x03\n\x0c\n\x05\x04\x03\x04\0\x01\x12\x03}\x07\x0b\nS\n\x06\x04\x03\
9060 \x04\0\x02\0\x12\x04\x80\x01\x04\x1c\x1aC\x200\x20is\x20reserved\x20for\
9061 \x20errors.\n\x20Order\x20is\x20weird\x20for\x20historical\x20reasons.\n\
9062 \n\x0f\n\x07\x04\x03\x04\0\x02\0\x01\x12\x04\x80\x01\x04\x0f\n\x0f\n\x07\
9063 \x04\x03\x04\0\x02\0\x02\x12\x04\x80\x01\x1a\x1b\n\x0e\n\x06\x04\x03\x04\
9064 \0\x02\x01\x12\x04\x81\x01\x04\x1c\n\x0f\n\x07\x04\x03\x04\0\x02\x01\x01\
9065 \x12\x04\x81\x01\x04\x0e\n\x0f\n\x07\x04\x03\x04\0\x02\x01\x02\x12\x04\
9066 \x81\x01\x1a\x1b\nw\n\x06\x04\x03\x04\0\x02\x02\x12\x04\x84\x01\x04\x1c\
9067 \x1ag\x20Not\x20ZigZag\x20encoded.\x20\x20Negative\x20numbers\x20take\
9068 \x2010\x20bytes.\x20\x20Use\x20TYPE_SINT64\x20if\n\x20negative\x20values\
9069 \x20are\x20likely.\n\n\x0f\n\x07\x04\x03\x04\0\x02\x02\x01\x12\x04\x84\
9070 \x01\x04\x0e\n\x0f\n\x07\x04\x03\x04\0\x02\x02\x02\x12\x04\x84\x01\x1a\
9071 \x1b\n\x0e\n\x06\x04\x03\x04\0\x02\x03\x12\x04\x85\x01\x04\x1c\n\x0f\n\
9072 \x07\x04\x03\x04\0\x02\x03\x01\x12\x04\x85\x01\x04\x0f\n\x0f\n\x07\x04\
9073 \x03\x04\0\x02\x03\x02\x12\x04\x85\x01\x1a\x1b\nw\n\x06\x04\x03\x04\0\
9074 \x02\x04\x12\x04\x88\x01\x04\x1c\x1ag\x20Not\x20ZigZag\x20encoded.\x20\
9075 \x20Negative\x20numbers\x20take\x2010\x20bytes.\x20\x20Use\x20TYPE_SINT3\
9076 2\x20if\n\x20negative\x20values\x20are\x20likely.\n\n\x0f\n\x07\x04\x03\
9077 \x04\0\x02\x04\x01\x12\x04\x88\x01\x04\x0e\n\x0f\n\x07\x04\x03\x04\0\x02\
9078 \x04\x02\x12\x04\x88\x01\x1a\x1b\n\x0e\n\x06\x04\x03\x04\0\x02\x05\x12\
9079 \x04\x89\x01\x04\x1c\n\x0f\n\x07\x04\x03\x04\0\x02\x05\x01\x12\x04\x89\
9080 \x01\x04\x10\n\x0f\n\x07\x04\x03\x04\0\x02\x05\x02\x12\x04\x89\x01\x1a\
9081 \x1b\n\x0e\n\x06\x04\x03\x04\0\x02\x06\x12\x04\x8a\x01\x04\x1c\n\x0f\n\
9082 \x07\x04\x03\x04\0\x02\x06\x01\x12\x04\x8a\x01\x04\x10\n\x0f\n\x07\x04\
9083 \x03\x04\0\x02\x06\x02\x12\x04\x8a\x01\x1a\x1b\n\x0e\n\x06\x04\x03\x04\0\
9084 \x02\x07\x12\x04\x8b\x01\x04\x1c\n\x0f\n\x07\x04\x03\x04\0\x02\x07\x01\
9085 \x12\x04\x8b\x01\x04\r\n\x0f\n\x07\x04\x03\x04\0\x02\x07\x02\x12\x04\x8b\
9086 \x01\x1a\x1b\n\x0e\n\x06\x04\x03\x04\0\x02\x08\x12\x04\x8c\x01\x04\x1c\n\
9087 \x0f\n\x07\x04\x03\x04\0\x02\x08\x01\x12\x04\x8c\x01\x04\x0f\n\x0f\n\x07\
9088 \x04\x03\x04\0\x02\x08\x02\x12\x04\x8c\x01\x1a\x1b\n*\n\x06\x04\x03\x04\
9089 \0\x02\t\x12\x04\x8d\x01\x04\x1d\"\x1a\x20Tag-delimited\x20aggregate.\n\
9090 \n\x0f\n\x07\x04\x03\x04\0\x02\t\x01\x12\x04\x8d\x01\x04\x0e\n\x0f\n\x07\
9091 \x04\x03\x04\0\x02\t\x02\x12\x04\x8d\x01\x1a\x1c\n-\n\x06\x04\x03\x04\0\
9092 \x02\n\x12\x04\x8e\x01\x04\x1d\"\x1d\x20Length-delimited\x20aggregate.\n\
9093 \n\x0f\n\x07\x04\x03\x04\0\x02\n\x01\x12\x04\x8e\x01\x04\x10\n\x0f\n\x07\
9094 \x04\x03\x04\0\x02\n\x02\x12\x04\x8e\x01\x1a\x1c\n#\n\x06\x04\x03\x04\0\
9095 \x02\x0b\x12\x04\x91\x01\x04\x1d\x1a\x13\x20New\x20in\x20version\x202.\n\
9096 \n\x0f\n\x07\x04\x03\x04\0\x02\x0b\x01\x12\x04\x91\x01\x04\x0e\n\x0f\n\
9097 \x07\x04\x03\x04\0\x02\x0b\x02\x12\x04\x91\x01\x1a\x1c\n\x0e\n\x06\x04\
9098 \x03\x04\0\x02\x0c\x12\x04\x92\x01\x04\x1d\n\x0f\n\x07\x04\x03\x04\0\x02\
9099 \x0c\x01\x12\x04\x92\x01\x04\x0f\n\x0f\n\x07\x04\x03\x04\0\x02\x0c\x02\
9100 \x12\x04\x92\x01\x1a\x1c\n\x0e\n\x06\x04\x03\x04\0\x02\r\x12\x04\x93\x01\
9101 \x04\x1d\n\x0f\n\x07\x04\x03\x04\0\x02\r\x01\x12\x04\x93\x01\x04\r\n\x0f\
9102 \n\x07\x04\x03\x04\0\x02\r\x02\x12\x04\x93\x01\x1a\x1c\n\x0e\n\x06\x04\
9103 \x03\x04\0\x02\x0e\x12\x04\x94\x01\x04\x1d\n\x0f\n\x07\x04\x03\x04\0\x02\
9104 \x0e\x01\x12\x04\x94\x01\x04\x11\n\x0f\n\x07\x04\x03\x04\0\x02\x0e\x02\
9105 \x12\x04\x94\x01\x1a\x1c\n\x0e\n\x06\x04\x03\x04\0\x02\x0f\x12\x04\x95\
9106 \x01\x04\x1d\n\x0f\n\x07\x04\x03\x04\0\x02\x0f\x01\x12\x04\x95\x01\x04\
9107 \x11\n\x0f\n\x07\x04\x03\x04\0\x02\x0f\x02\x12\x04\x95\x01\x1a\x1c\n'\n\
9108 \x06\x04\x03\x04\0\x02\x10\x12\x04\x96\x01\x04\x1d\"\x17\x20Uses\x20ZigZ\
9109 ag\x20encoding.\n\n\x0f\n\x07\x04\x03\x04\0\x02\x10\x01\x12\x04\x96\x01\
9110 \x04\x0f\n\x0f\n\x07\x04\x03\x04\0\x02\x10\x02\x12\x04\x96\x01\x1a\x1c\n\
9111 '\n\x06\x04\x03\x04\0\x02\x11\x12\x04\x97\x01\x04\x1d\"\x17\x20Uses\x20Z\
9112 igZag\x20encoding.\n\n\x0f\n\x07\x04\x03\x04\0\x02\x11\x01\x12\x04\x97\
9113 \x01\x04\x0f\n\x0f\n\x07\x04\x03\x04\0\x02\x11\x02\x12\x04\x97\x01\x1a\
9114 \x1c\n\x0e\n\x04\x04\x03\x04\x01\x12\x06\x9a\x01\x02\xa0\x01\x03\n\r\n\
9115 \x05\x04\x03\x04\x01\x01\x12\x04\x9a\x01\x07\x0c\n*\n\x06\x04\x03\x04\
9116 \x01\x02\0\x12\x04\x9c\x01\x04\x1c\x1a\x1a\x200\x20is\x20reserved\x20for\
9117 \x20errors\n\n\x0f\n\x07\x04\x03\x04\x01\x02\0\x01\x12\x04\x9c\x01\x04\
9118 \x12\n\x0f\n\x07\x04\x03\x04\x01\x02\0\x02\x12\x04\x9c\x01\x1a\x1b\n\x0e\
9119 \n\x06\x04\x03\x04\x01\x02\x01\x12\x04\x9d\x01\x04\x1c\n\x0f\n\x07\x04\
9120 \x03\x04\x01\x02\x01\x01\x12\x04\x9d\x01\x04\x12\n\x0f\n\x07\x04\x03\x04\
9121 \x01\x02\x01\x02\x12\x04\x9d\x01\x1a\x1b\n8\n\x06\x04\x03\x04\x01\x02\
9122 \x02\x12\x04\x9e\x01\x04\x1c\"(\x20TODO(sanjay):\x20Should\x20we\x20add\
9123 \x20LABEL_MAP?\n\n\x0f\n\x07\x04\x03\x04\x01\x02\x02\x01\x12\x04\x9e\x01\
9124 \x04\x12\n\x0f\n\x07\x04\x03\x04\x01\x02\x02\x02\x12\x04\x9e\x01\x1a\x1b\
9125 \n\x0c\n\x04\x04\x03\x02\0\x12\x04\xa2\x01\x02\x1b\n\r\n\x05\x04\x03\x02\
9126 \0\x04\x12\x04\xa2\x01\x02\n\n\r\n\x05\x04\x03\x02\0\x05\x12\x04\xa2\x01\
9127 \x0b\x11\n\r\n\x05\x04\x03\x02\0\x01\x12\x04\xa2\x01\x12\x16\n\r\n\x05\
9128 \x04\x03\x02\0\x03\x12\x04\xa2\x01\x19\x1a\n\x0c\n\x04\x04\x03\x02\x01\
9129 \x12\x04\xa3\x01\x02\x1c\n\r\n\x05\x04\x03\x02\x01\x04\x12\x04\xa3\x01\
9130 \x02\n\n\r\n\x05\x04\x03\x02\x01\x05\x12\x04\xa3\x01\x0b\x10\n\r\n\x05\
9131 \x04\x03\x02\x01\x01\x12\x04\xa3\x01\x11\x17\n\r\n\x05\x04\x03\x02\x01\
9132 \x03\x12\x04\xa3\x01\x1a\x1b\n\x0c\n\x04\x04\x03\x02\x02\x12\x04\xa4\x01\
9133 \x02\x1b\n\r\n\x05\x04\x03\x02\x02\x04\x12\x04\xa4\x01\x02\n\n\r\n\x05\
9134 \x04\x03\x02\x02\x06\x12\x04\xa4\x01\x0b\x10\n\r\n\x05\x04\x03\x02\x02\
9135 \x01\x12\x04\xa4\x01\x11\x16\n\r\n\x05\x04\x03\x02\x02\x03\x12\x04\xa4\
9136 \x01\x19\x1a\n\x9c\x01\n\x04\x04\x03\x02\x03\x12\x04\xa8\x01\x02\x19\x1a\
9137 \x8d\x01\x20If\x20type_name\x20is\x20set,\x20this\x20need\x20not\x20be\
9138 \x20set.\x20\x20If\x20both\x20this\x20and\x20type_name\n\x20are\x20set,\
9139 \x20this\x20must\x20be\x20one\x20of\x20TYPE_ENUM,\x20TYPE_MESSAGE\x20or\
9140 \x20TYPE_GROUP.\n\n\r\n\x05\x04\x03\x02\x03\x04\x12\x04\xa8\x01\x02\n\n\
9141 \r\n\x05\x04\x03\x02\x03\x06\x12\x04\xa8\x01\x0b\x0f\n\r\n\x05\x04\x03\
9142 \x02\x03\x01\x12\x04\xa8\x01\x10\x14\n\r\n\x05\x04\x03\x02\x03\x03\x12\
9143 \x04\xa8\x01\x17\x18\n\xb7\x02\n\x04\x04\x03\x02\x04\x12\x04\xaf\x01\x02\
9144 \x20\x1a\xa8\x02\x20For\x20message\x20and\x20enum\x20types,\x20this\x20i\
9145 s\x20the\x20name\x20of\x20the\x20type.\x20\x20If\x20the\x20name\n\x20sta\
9146 rts\x20with\x20a\x20'.',\x20it\x20is\x20fully-qualified.\x20\x20Otherwis\
9147 e,\x20C++-like\x20scoping\n\x20rules\x20are\x20used\x20to\x20find\x20the\
9148 \x20type\x20(i.e.\x20first\x20the\x20nested\x20types\x20within\x20this\n\
9149 \x20message\x20are\x20searched,\x20then\x20within\x20the\x20parent,\x20o\
9150 n\x20up\x20to\x20the\x20root\n\x20namespace).\n\n\r\n\x05\x04\x03\x02\
9151 \x04\x04\x12\x04\xaf\x01\x02\n\n\r\n\x05\x04\x03\x02\x04\x05\x12\x04\xaf\
9152 \x01\x0b\x11\n\r\n\x05\x04\x03\x02\x04\x01\x12\x04\xaf\x01\x12\x1b\n\r\n\
9153 \x05\x04\x03\x02\x04\x03\x12\x04\xaf\x01\x1e\x1f\n~\n\x04\x04\x03\x02\
9154 \x05\x12\x04\xb3\x01\x02\x1f\x1ap\x20For\x20extensions,\x20this\x20is\
9155 \x20the\x20name\x20of\x20the\x20type\x20being\x20extended.\x20\x20It\x20\
9156 is\n\x20resolved\x20in\x20the\x20same\x20manner\x20as\x20type_name.\n\n\
9157 \r\n\x05\x04\x03\x02\x05\x04\x12\x04\xb3\x01\x02\n\n\r\n\x05\x04\x03\x02\
9158 \x05\x05\x12\x04\xb3\x01\x0b\x11\n\r\n\x05\x04\x03\x02\x05\x01\x12\x04\
9159 \xb3\x01\x12\x1a\n\r\n\x05\x04\x03\x02\x05\x03\x12\x04\xb3\x01\x1d\x1e\n\
9160 \xb1\x02\n\x04\x04\x03\x02\x06\x12\x04\xba\x01\x02$\x1a\xa2\x02\x20For\
9161 \x20numeric\x20types,\x20contains\x20the\x20original\x20text\x20represen\
9162 tation\x20of\x20the\x20value.\n\x20For\x20booleans,\x20\"true\"\x20or\
9163 \x20\"false\".\n\x20For\x20strings,\x20contains\x20the\x20default\x20tex\
9164 t\x20contents\x20(not\x20escaped\x20in\x20any\x20way).\n\x20For\x20bytes\
9165 ,\x20contains\x20the\x20C\x20escaped\x20value.\x20\x20All\x20bytes\x20>=\
9166 \x20128\x20are\x20escaped.\n\x20TODO(kenton):\x20\x20Base-64\x20encode?\
9167 \n\n\r\n\x05\x04\x03\x02\x06\x04\x12\x04\xba\x01\x02\n\n\r\n\x05\x04\x03\
9168 \x02\x06\x05\x12\x04\xba\x01\x0b\x11\n\r\n\x05\x04\x03\x02\x06\x01\x12\
9169 \x04\xba\x01\x12\x1f\n\r\n\x05\x04\x03\x02\x06\x03\x12\x04\xba\x01\"#\n\
9170 \x84\x01\n\x04\x04\x03\x02\x07\x12\x04\xbe\x01\x02!\x1av\x20If\x20set,\
9171 \x20gives\x20the\x20index\x20of\x20a\x20oneof\x20in\x20the\x20containing\
9172 \x20type's\x20oneof_decl\n\x20list.\x20\x20This\x20field\x20is\x20a\x20m\
9173 ember\x20of\x20that\x20oneof.\n\n\r\n\x05\x04\x03\x02\x07\x04\x12\x04\
9174 \xbe\x01\x02\n\n\r\n\x05\x04\x03\x02\x07\x05\x12\x04\xbe\x01\x0b\x10\n\r\
9175 \n\x05\x04\x03\x02\x07\x01\x12\x04\xbe\x01\x11\x1c\n\r\n\x05\x04\x03\x02\
9176 \x07\x03\x12\x04\xbe\x01\x1f\x20\n\xfa\x01\n\x04\x04\x03\x02\x08\x12\x04\
9177 \xc4\x01\x02!\x1a\xeb\x01\x20JSON\x20name\x20of\x20this\x20field.\x20The\
9178 \x20value\x20is\x20set\x20by\x20protocol\x20compiler.\x20If\x20the\n\x20\
9179 user\x20has\x20set\x20a\x20\"json_name\"\x20option\x20on\x20this\x20fiel\
9180 d,\x20that\x20option's\x20value\n\x20will\x20be\x20used.\x20Otherwise,\
9181 \x20it's\x20deduced\x20from\x20the\x20field's\x20name\x20by\x20convertin\
9182 g\n\x20it\x20to\x20camelCase.\n\n\r\n\x05\x04\x03\x02\x08\x04\x12\x04\
9183 \xc4\x01\x02\n\n\r\n\x05\x04\x03\x02\x08\x05\x12\x04\xc4\x01\x0b\x11\n\r\
9184 \n\x05\x04\x03\x02\x08\x01\x12\x04\xc4\x01\x12\x1b\n\r\n\x05\x04\x03\x02\
9185 \x08\x03\x12\x04\xc4\x01\x1e\x20\n\x0c\n\x04\x04\x03\x02\t\x12\x04\xc6\
9186 \x01\x02$\n\r\n\x05\x04\x03\x02\t\x04\x12\x04\xc6\x01\x02\n\n\r\n\x05\
9187 \x04\x03\x02\t\x06\x12\x04\xc6\x01\x0b\x17\n\r\n\x05\x04\x03\x02\t\x01\
9188 \x12\x04\xc6\x01\x18\x1f\n\r\n\x05\x04\x03\x02\t\x03\x12\x04\xc6\x01\"#\
9189 \n\"\n\x02\x04\x04\x12\x06\xca\x01\0\xcd\x01\x01\x1a\x14\x20Describes\
9190 \x20a\x20oneof.\n\n\x0b\n\x03\x04\x04\x01\x12\x04\xca\x01\x08\x1c\n\x0c\
9191 \n\x04\x04\x04\x02\0\x12\x04\xcb\x01\x02\x1b\n\r\n\x05\x04\x04\x02\0\x04\
9192 \x12\x04\xcb\x01\x02\n\n\r\n\x05\x04\x04\x02\0\x05\x12\x04\xcb\x01\x0b\
9193 \x11\n\r\n\x05\x04\x04\x02\0\x01\x12\x04\xcb\x01\x12\x16\n\r\n\x05\x04\
9194 \x04\x02\0\x03\x12\x04\xcb\x01\x19\x1a\n\x0c\n\x04\x04\x04\x02\x01\x12\
9195 \x04\xcc\x01\x02$\n\r\n\x05\x04\x04\x02\x01\x04\x12\x04\xcc\x01\x02\n\n\
9196 \r\n\x05\x04\x04\x02\x01\x06\x12\x04\xcc\x01\x0b\x17\n\r\n\x05\x04\x04\
9197 \x02\x01\x01\x12\x04\xcc\x01\x18\x1f\n\r\n\x05\x04\x04\x02\x01\x03\x12\
9198 \x04\xcc\x01\"#\n'\n\x02\x04\x05\x12\x06\xd0\x01\0\xd6\x01\x01\x1a\x19\
9199 \x20Describes\x20an\x20enum\x20type.\n\n\x0b\n\x03\x04\x05\x01\x12\x04\
9200 \xd0\x01\x08\x1b\n\x0c\n\x04\x04\x05\x02\0\x12\x04\xd1\x01\x02\x1b\n\r\n\
9201 \x05\x04\x05\x02\0\x04\x12\x04\xd1\x01\x02\n\n\r\n\x05\x04\x05\x02\0\x05\
9202 \x12\x04\xd1\x01\x0b\x11\n\r\n\x05\x04\x05\x02\0\x01\x12\x04\xd1\x01\x12\
9203 \x16\n\r\n\x05\x04\x05\x02\0\x03\x12\x04\xd1\x01\x19\x1a\n\x0c\n\x04\x04\
9204 \x05\x02\x01\x12\x04\xd3\x01\x02.\n\r\n\x05\x04\x05\x02\x01\x04\x12\x04\
9205 \xd3\x01\x02\n\n\r\n\x05\x04\x05\x02\x01\x06\x12\x04\xd3\x01\x0b#\n\r\n\
9206 \x05\x04\x05\x02\x01\x01\x12\x04\xd3\x01$)\n\r\n\x05\x04\x05\x02\x01\x03\
9207 \x12\x04\xd3\x01,-\n\x0c\n\x04\x04\x05\x02\x02\x12\x04\xd5\x01\x02#\n\r\
9208 \n\x05\x04\x05\x02\x02\x04\x12\x04\xd5\x01\x02\n\n\r\n\x05\x04\x05\x02\
9209 \x02\x06\x12\x04\xd5\x01\x0b\x16\n\r\n\x05\x04\x05\x02\x02\x01\x12\x04\
9210 \xd5\x01\x17\x1e\n\r\n\x05\x04\x05\x02\x02\x03\x12\x04\xd5\x01!\"\n1\n\
9211 \x02\x04\x06\x12\x06\xd9\x01\0\xde\x01\x01\x1a#\x20Describes\x20a\x20val\
9212 ue\x20within\x20an\x20enum.\n\n\x0b\n\x03\x04\x06\x01\x12\x04\xd9\x01\
9213 \x08\x20\n\x0c\n\x04\x04\x06\x02\0\x12\x04\xda\x01\x02\x1b\n\r\n\x05\x04\
9214 \x06\x02\0\x04\x12\x04\xda\x01\x02\n\n\r\n\x05\x04\x06\x02\0\x05\x12\x04\
9215 \xda\x01\x0b\x11\n\r\n\x05\x04\x06\x02\0\x01\x12\x04\xda\x01\x12\x16\n\r\
9216 \n\x05\x04\x06\x02\0\x03\x12\x04\xda\x01\x19\x1a\n\x0c\n\x04\x04\x06\x02\
9217 \x01\x12\x04\xdb\x01\x02\x1c\n\r\n\x05\x04\x06\x02\x01\x04\x12\x04\xdb\
9218 \x01\x02\n\n\r\n\x05\x04\x06\x02\x01\x05\x12\x04\xdb\x01\x0b\x10\n\r\n\
9219 \x05\x04\x06\x02\x01\x01\x12\x04\xdb\x01\x11\x17\n\r\n\x05\x04\x06\x02\
9220 \x01\x03\x12\x04\xdb\x01\x1a\x1b\n\x0c\n\x04\x04\x06\x02\x02\x12\x04\xdd\
9221 \x01\x02(\n\r\n\x05\x04\x06\x02\x02\x04\x12\x04\xdd\x01\x02\n\n\r\n\x05\
9222 \x04\x06\x02\x02\x06\x12\x04\xdd\x01\x0b\x1b\n\r\n\x05\x04\x06\x02\x02\
9223 \x01\x12\x04\xdd\x01\x1c#\n\r\n\x05\x04\x06\x02\x02\x03\x12\x04\xdd\x01&\
9224 '\n$\n\x02\x04\x07\x12\x06\xe1\x01\0\xe6\x01\x01\x1a\x16\x20Describes\
9225 \x20a\x20service.\n\n\x0b\n\x03\x04\x07\x01\x12\x04\xe1\x01\x08\x1e\n\
9226 \x0c\n\x04\x04\x07\x02\0\x12\x04\xe2\x01\x02\x1b\n\r\n\x05\x04\x07\x02\0\
9227 \x04\x12\x04\xe2\x01\x02\n\n\r\n\x05\x04\x07\x02\0\x05\x12\x04\xe2\x01\
9228 \x0b\x11\n\r\n\x05\x04\x07\x02\0\x01\x12\x04\xe2\x01\x12\x16\n\r\n\x05\
9229 \x04\x07\x02\0\x03\x12\x04\xe2\x01\x19\x1a\n\x0c\n\x04\x04\x07\x02\x01\
9230 \x12\x04\xe3\x01\x02,\n\r\n\x05\x04\x07\x02\x01\x04\x12\x04\xe3\x01\x02\
9231 \n\n\r\n\x05\x04\x07\x02\x01\x06\x12\x04\xe3\x01\x0b\x20\n\r\n\x05\x04\
9232 \x07\x02\x01\x01\x12\x04\xe3\x01!'\n\r\n\x05\x04\x07\x02\x01\x03\x12\x04\
9233 \xe3\x01*+\n\x0c\n\x04\x04\x07\x02\x02\x12\x04\xe5\x01\x02&\n\r\n\x05\
9234 \x04\x07\x02\x02\x04\x12\x04\xe5\x01\x02\n\n\r\n\x05\x04\x07\x02\x02\x06\
9235 \x12\x04\xe5\x01\x0b\x19\n\r\n\x05\x04\x07\x02\x02\x01\x12\x04\xe5\x01\
9236 \x1a!\n\r\n\x05\x04\x07\x02\x02\x03\x12\x04\xe5\x01$%\n0\n\x02\x04\x08\
9237 \x12\x06\xe9\x01\0\xf7\x01\x01\x1a\"\x20Describes\x20a\x20method\x20of\
9238 \x20a\x20service.\n\n\x0b\n\x03\x04\x08\x01\x12\x04\xe9\x01\x08\x1d\n\
9239 \x0c\n\x04\x04\x08\x02\0\x12\x04\xea\x01\x02\x1b\n\r\n\x05\x04\x08\x02\0\
9240 \x04\x12\x04\xea\x01\x02\n\n\r\n\x05\x04\x08\x02\0\x05\x12\x04\xea\x01\
9241 \x0b\x11\n\r\n\x05\x04\x08\x02\0\x01\x12\x04\xea\x01\x12\x16\n\r\n\x05\
9242 \x04\x08\x02\0\x03\x12\x04\xea\x01\x19\x1a\n\x97\x01\n\x04\x04\x08\x02\
9243 \x01\x12\x04\xee\x01\x02!\x1a\x88\x01\x20Input\x20and\x20output\x20type\
9244 \x20names.\x20\x20These\x20are\x20resolved\x20in\x20the\x20same\x20way\
9245 \x20as\n\x20FieldDescriptorProto.type_name,\x20but\x20must\x20refer\x20t\
9246 o\x20a\x20message\x20type.\n\n\r\n\x05\x04\x08\x02\x01\x04\x12\x04\xee\
9247 \x01\x02\n\n\r\n\x05\x04\x08\x02\x01\x05\x12\x04\xee\x01\x0b\x11\n\r\n\
9248 \x05\x04\x08\x02\x01\x01\x12\x04\xee\x01\x12\x1c\n\r\n\x05\x04\x08\x02\
9249 \x01\x03\x12\x04\xee\x01\x1f\x20\n\x0c\n\x04\x04\x08\x02\x02\x12\x04\xef\
9250 \x01\x02\"\n\r\n\x05\x04\x08\x02\x02\x04\x12\x04\xef\x01\x02\n\n\r\n\x05\
9251 \x04\x08\x02\x02\x05\x12\x04\xef\x01\x0b\x11\n\r\n\x05\x04\x08\x02\x02\
9252 \x01\x12\x04\xef\x01\x12\x1d\n\r\n\x05\x04\x08\x02\x02\x03\x12\x04\xef\
9253 \x01\x20!\n\x0c\n\x04\x04\x08\x02\x03\x12\x04\xf1\x01\x02%\n\r\n\x05\x04\
9254 \x08\x02\x03\x04\x12\x04\xf1\x01\x02\n\n\r\n\x05\x04\x08\x02\x03\x06\x12\
9255 \x04\xf1\x01\x0b\x18\n\r\n\x05\x04\x08\x02\x03\x01\x12\x04\xf1\x01\x19\
9256 \x20\n\r\n\x05\x04\x08\x02\x03\x03\x12\x04\xf1\x01#$\nE\n\x04\x04\x08\
9257 \x02\x04\x12\x04\xf4\x01\x025\x1a7\x20Identifies\x20if\x20client\x20stre\
9258 ams\x20multiple\x20client\x20messages\n\n\r\n\x05\x04\x08\x02\x04\x04\
9259 \x12\x04\xf4\x01\x02\n\n\r\n\x05\x04\x08\x02\x04\x05\x12\x04\xf4\x01\x0b\
9260 \x0f\n\r\n\x05\x04\x08\x02\x04\x01\x12\x04\xf4\x01\x10\x20\n\r\n\x05\x04\
9261 \x08\x02\x04\x03\x12\x04\xf4\x01#$\n\r\n\x05\x04\x08\x02\x04\x08\x12\x04\
9262 \xf4\x01%4\n\r\n\x05\x04\x08\x02\x04\x07\x12\x04\xf4\x01.3\nE\n\x04\x04\
9263 \x08\x02\x05\x12\x04\xf6\x01\x025\x1a7\x20Identifies\x20if\x20server\x20\
9264 streams\x20multiple\x20server\x20messages\n\n\r\n\x05\x04\x08\x02\x05\
9265 \x04\x12\x04\xf6\x01\x02\n\n\r\n\x05\x04\x08\x02\x05\x05\x12\x04\xf6\x01\
9266 \x0b\x0f\n\r\n\x05\x04\x08\x02\x05\x01\x12\x04\xf6\x01\x10\x20\n\r\n\x05\
9267 \x04\x08\x02\x05\x03\x12\x04\xf6\x01#$\n\r\n\x05\x04\x08\x02\x05\x08\x12\
9268 \x04\xf6\x01%4\n\r\n\x05\x04\x08\x02\x05\x07\x12\x04\xf6\x01.3\n\xaf\x0e\
9269 \n\x02\x04\t\x12\x06\x9b\x02\0\xf8\x02\x012N\x20========================\
9270 ===========================================\n\x20Options\n2\xd0\r\x20Eac\
9271 h\x20of\x20the\x20definitions\x20above\x20may\x20have\x20\"options\"\x20\
9272 attached.\x20\x20These\x20are\n\x20just\x20annotations\x20which\x20may\
9273 \x20cause\x20code\x20to\x20be\x20generated\x20slightly\x20differently\n\
9274 \x20or\x20may\x20contain\x20hints\x20for\x20code\x20that\x20manipulates\
9275 \x20protocol\x20messages.\n\n\x20Clients\x20may\x20define\x20custom\x20o\
9276 ptions\x20as\x20extensions\x20of\x20the\x20*Options\x20messages.\n\x20Th\
9277 ese\x20extensions\x20may\x20not\x20yet\x20be\x20known\x20at\x20parsing\
9278 \x20time,\x20so\x20the\x20parser\x20cannot\n\x20store\x20the\x20values\
9279 \x20in\x20them.\x20\x20Instead\x20it\x20stores\x20them\x20in\x20a\x20fie\
9280 ld\x20in\x20the\x20*Options\n\x20message\x20called\x20uninterpreted_opti\
9281 on.\x20This\x20field\x20must\x20have\x20the\x20same\x20name\n\x20across\
9282 \x20all\x20*Options\x20messages.\x20We\x20then\x20use\x20this\x20field\
9283 \x20to\x20populate\x20the\n\x20extensions\x20when\x20we\x20build\x20a\
9284 \x20descriptor,\x20at\x20which\x20point\x20all\x20protos\x20have\x20been\
9285 \n\x20parsed\x20and\x20so\x20all\x20extensions\x20are\x20known.\n\n\x20E\
9286 xtension\x20numbers\x20for\x20custom\x20options\x20may\x20be\x20chosen\
9287 \x20as\x20follows:\n\x20*\x20For\x20options\x20which\x20will\x20only\x20\
9288 be\x20used\x20within\x20a\x20single\x20application\x20or\n\x20\x20\x20or\
9289 ganization,\x20or\x20for\x20experimental\x20options,\x20use\x20field\x20\
9290 numbers\x2050000\n\x20\x20\x20through\x2099999.\x20\x20It\x20is\x20up\
9291 \x20to\x20you\x20to\x20ensure\x20that\x20you\x20do\x20not\x20use\x20the\
9292 \n\x20\x20\x20same\x20number\x20for\x20multiple\x20options.\n\x20*\x20Fo\
9293 r\x20options\x20which\x20will\x20be\x20published\x20and\x20used\x20publi\
9294 cly\x20by\x20multiple\n\x20\x20\x20independent\x20entities,\x20e-mail\
9295 \x20protobuf-global-extension-registry@google.com\n\x20\x20\x20to\x20res\
9296 erve\x20extension\x20numbers.\x20Simply\x20provide\x20your\x20project\
9297 \x20name\x20(e.g.\n\x20\x20\x20Objective-C\x20plugin)\x20and\x20your\x20\
9298 project\x20website\x20(if\x20available)\x20--\x20there's\x20no\n\x20\x20\
9299 \x20need\x20to\x20explain\x20how\x20you\x20intend\x20to\x20use\x20them.\
9300 \x20Usually\x20you\x20only\x20need\x20one\n\x20\x20\x20extension\x20numb\
9301 er.\x20You\x20can\x20declare\x20multiple\x20options\x20with\x20only\x20o\
9302 ne\x20extension\n\x20\x20\x20number\x20by\x20putting\x20them\x20in\x20a\
9303 \x20sub-message.\x20See\x20the\x20Custom\x20Options\x20section\x20of\n\
9304 \x20\x20\x20the\x20docs\x20for\x20examples:\n\x20\x20\x20https://develop\
9305 ers.google.com/protocol-buffers/docs/proto#options\n\x20\x20\x20If\x20th\
9306 is\x20turns\x20out\x20to\x20be\x20popular,\x20a\x20web\x20service\x20wil\
9307 l\x20be\x20set\x20up\n\x20\x20\x20to\x20automatically\x20assign\x20optio\
9308 n\x20numbers.\n\n\x0b\n\x03\x04\t\x01\x12\x04\x9b\x02\x08\x13\n\xf4\x01\
9309 \n\x04\x04\t\x02\0\x12\x04\xa1\x02\x02#\x1a\xe5\x01\x20Sets\x20the\x20Ja\
9310 va\x20package\x20where\x20classes\x20generated\x20from\x20this\x20.proto\
9311 \x20will\x20be\n\x20placed.\x20\x20By\x20default,\x20the\x20proto\x20pac\
9312 kage\x20is\x20used,\x20but\x20this\x20is\x20often\n\x20inappropriate\x20\
9313 because\x20proto\x20packages\x20do\x20not\x20normally\x20start\x20with\
9314 \x20backwards\n\x20domain\x20names.\n\n\r\n\x05\x04\t\x02\0\x04\x12\x04\
9315 \xa1\x02\x02\n\n\r\n\x05\x04\t\x02\0\x05\x12\x04\xa1\x02\x0b\x11\n\r\n\
9316 \x05\x04\t\x02\0\x01\x12\x04\xa1\x02\x12\x1e\n\r\n\x05\x04\t\x02\0\x03\
9317 \x12\x04\xa1\x02!\"\n\xbf\x02\n\x04\x04\t\x02\x01\x12\x04\xa9\x02\x02+\
9318 \x1a\xb0\x02\x20If\x20set,\x20all\x20the\x20classes\x20from\x20the\x20.p\
9319 roto\x20file\x20are\x20wrapped\x20in\x20a\x20single\n\x20outer\x20class\
9320 \x20with\x20the\x20given\x20name.\x20\x20This\x20applies\x20to\x20both\
9321 \x20Proto1\n\x20(equivalent\x20to\x20the\x20old\x20\"--one_java_file\"\
9322 \x20option)\x20and\x20Proto2\x20(where\n\x20a\x20.proto\x20always\x20tra\
9323 nslates\x20to\x20a\x20single\x20class,\x20but\x20you\x20may\x20want\x20t\
9324 o\n\x20explicitly\x20choose\x20the\x20class\x20name).\n\n\r\n\x05\x04\t\
9325 \x02\x01\x04\x12\x04\xa9\x02\x02\n\n\r\n\x05\x04\t\x02\x01\x05\x12\x04\
9326 \xa9\x02\x0b\x11\n\r\n\x05\x04\t\x02\x01\x01\x12\x04\xa9\x02\x12&\n\r\n\
9327 \x05\x04\t\x02\x01\x03\x12\x04\xa9\x02)*\n\xa3\x03\n\x04\x04\t\x02\x02\
9328 \x12\x04\xb1\x02\x029\x1a\x94\x03\x20If\x20set\x20true,\x20then\x20the\
9329 \x20Java\x20code\x20generator\x20will\x20generate\x20a\x20separate\x20.j\
9330 ava\n\x20file\x20for\x20each\x20top-level\x20message,\x20enum,\x20and\
9331 \x20service\x20defined\x20in\x20the\x20.proto\n\x20file.\x20\x20Thus,\
9332 \x20these\x20types\x20will\x20*not*\x20be\x20nested\x20inside\x20the\x20\
9333 outer\x20class\n\x20named\x20by\x20java_outer_classname.\x20\x20However,\
9334 \x20the\x20outer\x20class\x20will\x20still\x20be\n\x20generated\x20to\
9335 \x20contain\x20the\x20file's\x20getDescriptor()\x20method\x20as\x20well\
9336 \x20as\x20any\n\x20top-level\x20extensions\x20defined\x20in\x20the\x20fi\
9337 le.\n\n\r\n\x05\x04\t\x02\x02\x04\x12\x04\xb1\x02\x02\n\n\r\n\x05\x04\t\
9338 \x02\x02\x05\x12\x04\xb1\x02\x0b\x0f\n\r\n\x05\x04\t\x02\x02\x01\x12\x04\
9339 \xb1\x02\x10#\n\r\n\x05\x04\t\x02\x02\x03\x12\x04\xb1\x02&(\n\r\n\x05\
9340 \x04\t\x02\x02\x08\x12\x04\xb1\x02)8\n\r\n\x05\x04\t\x02\x02\x07\x12\x04\
9341 \xb1\x0227\n)\n\x04\x04\t\x02\x03\x12\x04\xb4\x02\x02E\x1a\x1b\x20This\
9342 \x20option\x20does\x20nothing.\n\n\r\n\x05\x04\t\x02\x03\x04\x12\x04\xb4\
9343 \x02\x02\n\n\r\n\x05\x04\t\x02\x03\x05\x12\x04\xb4\x02\x0b\x0f\n\r\n\x05\
9344 \x04\t\x02\x03\x01\x12\x04\xb4\x02\x10-\n\r\n\x05\x04\t\x02\x03\x03\x12\
9345 \x04\xb4\x0202\n\r\n\x05\x04\t\x02\x03\x08\x12\x04\xb4\x023D\n\x0e\n\x06\
9346 \x04\t\x02\x03\x08\x03\x12\x04\xb4\x024C\n\xe6\x02\n\x04\x04\t\x02\x04\
9347 \x12\x04\xbc\x02\x02<\x1a\xd7\x02\x20If\x20set\x20true,\x20then\x20the\
9348 \x20Java2\x20code\x20generator\x20will\x20generate\x20code\x20that\n\x20\
9349 throws\x20an\x20exception\x20whenever\x20an\x20attempt\x20is\x20made\x20\
9350 to\x20assign\x20a\x20non-UTF-8\n\x20byte\x20sequence\x20to\x20a\x20strin\
9351 g\x20field.\n\x20Message\x20reflection\x20will\x20do\x20the\x20same.\n\
9352 \x20However,\x20an\x20extension\x20field\x20still\x20accepts\x20non-UTF-\
9353 8\x20byte\x20sequences.\n\x20This\x20option\x20has\x20no\x20effect\x20on\
9354 \x20when\x20used\x20with\x20the\x20lite\x20runtime.\n\n\r\n\x05\x04\t\
9355 \x02\x04\x04\x12\x04\xbc\x02\x02\n\n\r\n\x05\x04\t\x02\x04\x05\x12\x04\
9356 \xbc\x02\x0b\x0f\n\r\n\x05\x04\t\x02\x04\x01\x12\x04\xbc\x02\x10&\n\r\n\
9357 \x05\x04\t\x02\x04\x03\x12\x04\xbc\x02)+\n\r\n\x05\x04\t\x02\x04\x08\x12\
9358 \x04\xbc\x02,;\n\r\n\x05\x04\t\x02\x04\x07\x12\x04\xbc\x025:\nL\n\x04\
9359 \x04\t\x04\0\x12\x06\xc0\x02\x02\xc5\x02\x03\x1a<\x20Generated\x20classe\
9360 s\x20can\x20be\x20optimized\x20for\x20speed\x20or\x20code\x20size.\n\n\r\
9361 \n\x05\x04\t\x04\0\x01\x12\x04\xc0\x02\x07\x13\nD\n\x06\x04\t\x04\0\x02\
9362 \0\x12\x04\xc1\x02\x04\x0e\"4\x20Generate\x20complete\x20code\x20for\x20\
9363 parsing,\x20serialization,\n\n\x0f\n\x07\x04\t\x04\0\x02\0\x01\x12\x04\
9364 \xc1\x02\x04\t\n\x0f\n\x07\x04\t\x04\0\x02\0\x02\x12\x04\xc1\x02\x0c\r\n\
9365 G\n\x06\x04\t\x04\0\x02\x01\x12\x04\xc3\x02\x04\x12\x1a\x06\x20etc.\n\"/\
9366 \x20Use\x20ReflectionOps\x20to\x20implement\x20these\x20methods.\n\n\x0f\
9367 \n\x07\x04\t\x04\0\x02\x01\x01\x12\x04\xc3\x02\x04\r\n\x0f\n\x07\x04\t\
9368 \x04\0\x02\x01\x02\x12\x04\xc3\x02\x10\x11\nG\n\x06\x04\t\x04\0\x02\x02\
9369 \x12\x04\xc4\x02\x04\x15\"7\x20Generate\x20code\x20using\x20MessageLite\
9370 \x20and\x20the\x20lite\x20runtime.\n\n\x0f\n\x07\x04\t\x04\0\x02\x02\x01\
9371 \x12\x04\xc4\x02\x04\x10\n\x0f\n\x07\x04\t\x04\0\x02\x02\x02\x12\x04\xc4\
9372 \x02\x13\x14\n\x0c\n\x04\x04\t\x02\x05\x12\x04\xc6\x02\x029\n\r\n\x05\
9373 \x04\t\x02\x05\x04\x12\x04\xc6\x02\x02\n\n\r\n\x05\x04\t\x02\x05\x06\x12\
9374 \x04\xc6\x02\x0b\x17\n\r\n\x05\x04\t\x02\x05\x01\x12\x04\xc6\x02\x18$\n\
9375 \r\n\x05\x04\t\x02\x05\x03\x12\x04\xc6\x02'(\n\r\n\x05\x04\t\x02\x05\x08\
9376 \x12\x04\xc6\x02)8\n\r\n\x05\x04\t\x02\x05\x07\x12\x04\xc6\x0227\n\xe2\
9377 \x02\n\x04\x04\t\x02\x06\x12\x04\xcd\x02\x02\"\x1a\xd3\x02\x20Sets\x20th\
9378 e\x20Go\x20package\x20where\x20structs\x20generated\x20from\x20this\x20.\
9379 proto\x20will\x20be\n\x20placed.\x20If\x20omitted,\x20the\x20Go\x20packa\
9380 ge\x20will\x20be\x20derived\x20from\x20the\x20following:\n\x20\x20\x20-\
9381 \x20The\x20basename\x20of\x20the\x20package\x20import\x20path,\x20if\x20\
9382 provided.\n\x20\x20\x20-\x20Otherwise,\x20the\x20package\x20statement\
9383 \x20in\x20the\x20.proto\x20file,\x20if\x20present.\n\x20\x20\x20-\x20Oth\
9384 erwise,\x20the\x20basename\x20of\x20the\x20.proto\x20file,\x20without\
9385 \x20extension.\n\n\r\n\x05\x04\t\x02\x06\x04\x12\x04\xcd\x02\x02\n\n\r\n\
9386 \x05\x04\t\x02\x06\x05\x12\x04\xcd\x02\x0b\x11\n\r\n\x05\x04\t\x02\x06\
9387 \x01\x12\x04\xcd\x02\x12\x1c\n\r\n\x05\x04\t\x02\x06\x03\x12\x04\xcd\x02\
9388 \x1f!\n\xd4\x04\n\x04\x04\t\x02\x07\x12\x04\xdb\x02\x029\x1a\xc5\x04\x20\
9389 Should\x20generic\x20services\x20be\x20generated\x20in\x20each\x20langua\
9390 ge?\x20\x20\"Generic\"\x20services\n\x20are\x20not\x20specific\x20to\x20\
9391 any\x20particular\x20RPC\x20system.\x20\x20They\x20are\x20generated\x20b\
9392 y\x20the\n\x20main\x20code\x20generators\x20in\x20each\x20language\x20(w\
9393 ithout\x20additional\x20plugins).\n\x20Generic\x20services\x20were\x20th\
9394 e\x20only\x20kind\x20of\x20service\x20generation\x20supported\x20by\n\
9395 \x20early\x20versions\x20of\x20google.protobuf.\n\n\x20Generic\x20servic\
9396 es\x20are\x20now\x20considered\x20deprecated\x20in\x20favor\x20of\x20usi\
9397 ng\x20plugins\n\x20that\x20generate\x20code\x20specific\x20to\x20your\
9398 \x20particular\x20RPC\x20system.\x20\x20Therefore,\n\x20these\x20default\
9399 \x20to\x20false.\x20\x20Old\x20code\x20which\x20depends\x20on\x20generic\
9400 \x20services\x20should\n\x20explicitly\x20set\x20them\x20to\x20true.\n\n\
9401 \r\n\x05\x04\t\x02\x07\x04\x12\x04\xdb\x02\x02\n\n\r\n\x05\x04\t\x02\x07\
9402 \x05\x12\x04\xdb\x02\x0b\x0f\n\r\n\x05\x04\t\x02\x07\x01\x12\x04\xdb\x02\
9403 \x10#\n\r\n\x05\x04\t\x02\x07\x03\x12\x04\xdb\x02&(\n\r\n\x05\x04\t\x02\
9404 \x07\x08\x12\x04\xdb\x02)8\n\r\n\x05\x04\t\x02\x07\x07\x12\x04\xdb\x0227\
9405 \n\x0c\n\x04\x04\t\x02\x08\x12\x04\xdc\x02\x02;\n\r\n\x05\x04\t\x02\x08\
9406 \x04\x12\x04\xdc\x02\x02\n\n\r\n\x05\x04\t\x02\x08\x05\x12\x04\xdc\x02\
9407 \x0b\x0f\n\r\n\x05\x04\t\x02\x08\x01\x12\x04\xdc\x02\x10%\n\r\n\x05\x04\
9408 \t\x02\x08\x03\x12\x04\xdc\x02(*\n\r\n\x05\x04\t\x02\x08\x08\x12\x04\xdc\
9409 \x02+:\n\r\n\x05\x04\t\x02\x08\x07\x12\x04\xdc\x0249\n\x0c\n\x04\x04\t\
9410 \x02\t\x12\x04\xdd\x02\x029\n\r\n\x05\x04\t\x02\t\x04\x12\x04\xdd\x02\
9411 \x02\n\n\r\n\x05\x04\t\x02\t\x05\x12\x04\xdd\x02\x0b\x0f\n\r\n\x05\x04\t\
9412 \x02\t\x01\x12\x04\xdd\x02\x10#\n\r\n\x05\x04\t\x02\t\x03\x12\x04\xdd\
9413 \x02&(\n\r\n\x05\x04\t\x02\t\x08\x12\x04\xdd\x02)8\n\r\n\x05\x04\t\x02\t\
9414 \x07\x12\x04\xdd\x0227\n\xf3\x01\n\x04\x04\t\x02\n\x12\x04\xe3\x02\x020\
9415 \x1a\xe4\x01\x20Is\x20this\x20file\x20deprecated?\n\x20Depending\x20on\
9416 \x20the\x20target\x20platform,\x20this\x20can\x20emit\x20Deprecated\x20a\
9417 nnotations\n\x20for\x20everything\x20in\x20the\x20file,\x20or\x20it\x20w\
9418 ill\x20be\x20completely\x20ignored;\x20in\x20the\x20very\n\x20least,\x20\
9419 this\x20is\x20a\x20formalization\x20for\x20deprecating\x20files.\n\n\r\n\
9420 \x05\x04\t\x02\n\x04\x12\x04\xe3\x02\x02\n\n\r\n\x05\x04\t\x02\n\x05\x12\
9421 \x04\xe3\x02\x0b\x0f\n\r\n\x05\x04\t\x02\n\x01\x12\x04\xe3\x02\x10\x1a\n\
9422 \r\n\x05\x04\t\x02\n\x03\x12\x04\xe3\x02\x1d\x1f\n\r\n\x05\x04\t\x02\n\
9423 \x08\x12\x04\xe3\x02\x20/\n\r\n\x05\x04\t\x02\n\x07\x12\x04\xe3\x02).\n\
9424 \x7f\n\x04\x04\t\x02\x0b\x12\x04\xe7\x02\x026\x1aq\x20Enables\x20the\x20\
9425 use\x20of\x20arenas\x20for\x20the\x20proto\x20messages\x20in\x20this\x20\
9426 file.\x20This\x20applies\n\x20only\x20to\x20generated\x20classes\x20for\
9427 \x20C++.\n\n\r\n\x05\x04\t\x02\x0b\x04\x12\x04\xe7\x02\x02\n\n\r\n\x05\
9428 \x04\t\x02\x0b\x05\x12\x04\xe7\x02\x0b\x0f\n\r\n\x05\x04\t\x02\x0b\x01\
9429 \x12\x04\xe7\x02\x10\x20\n\r\n\x05\x04\t\x02\x0b\x03\x12\x04\xe7\x02#%\n\
9430 \r\n\x05\x04\t\x02\x0b\x08\x12\x04\xe7\x02&5\n\r\n\x05\x04\t\x02\x0b\x07\
9431 \x12\x04\xe7\x02/4\n\x92\x01\n\x04\x04\t\x02\x0c\x12\x04\xec\x02\x02)\
9432 \x1a\x83\x01\x20Sets\x20the\x20objective\x20c\x20class\x20prefix\x20whic\
9433 h\x20is\x20prepended\x20to\x20all\x20objective\x20c\n\x20generated\x20cl\
9434 asses\x20from\x20this\x20.proto.\x20There\x20is\x20no\x20default.\n\n\r\
9435 \n\x05\x04\t\x02\x0c\x04\x12\x04\xec\x02\x02\n\n\r\n\x05\x04\t\x02\x0c\
9436 \x05\x12\x04\xec\x02\x0b\x11\n\r\n\x05\x04\t\x02\x0c\x01\x12\x04\xec\x02\
9437 \x12#\n\r\n\x05\x04\t\x02\x0c\x03\x12\x04\xec\x02&(\nI\n\x04\x04\t\x02\r\
9438 \x12\x04\xef\x02\x02(\x1a;\x20Namespace\x20for\x20generated\x20classes;\
9439 \x20defaults\x20to\x20the\x20package.\n\n\r\n\x05\x04\t\x02\r\x04\x12\
9440 \x04\xef\x02\x02\n\n\r\n\x05\x04\t\x02\r\x05\x12\x04\xef\x02\x0b\x11\n\r\
9441 \n\x05\x04\t\x02\r\x01\x12\x04\xef\x02\x12\"\n\r\n\x05\x04\t\x02\r\x03\
9442 \x12\x04\xef\x02%'\nO\n\x04\x04\t\x02\x0e\x12\x04\xf2\x02\x02:\x1aA\x20T\
9443 he\x20parser\x20stores\x20options\x20it\x20doesn't\x20recognize\x20here.\
9444 \x20See\x20above.\n\n\r\n\x05\x04\t\x02\x0e\x04\x12\x04\xf2\x02\x02\n\n\
9445 \r\n\x05\x04\t\x02\x0e\x06\x12\x04\xf2\x02\x0b\x1e\n\r\n\x05\x04\t\x02\
9446 \x0e\x01\x12\x04\xf2\x02\x1f3\n\r\n\x05\x04\t\x02\x0e\x03\x12\x04\xf2\
9447 \x0269\nZ\n\x03\x04\t\x05\x12\x04\xf5\x02\x02\x19\x1aM\x20Clients\x20can\
9448 \x20define\x20custom\x20options\x20in\x20extensions\x20of\x20this\x20mes\
9449 sage.\x20See\x20above.\n\n\x0c\n\x04\x04\t\x05\0\x12\x04\xf5\x02\r\x18\n\
9450 \r\n\x05\x04\t\x05\0\x01\x12\x04\xf5\x02\r\x11\n\r\n\x05\x04\t\x05\0\x02\
9451 \x12\x04\xf5\x02\x15\x18\n\x0c\n\x02\x04\n\x12\x06\xfa\x02\0\xb8\x03\x01\
9452 \n\x0b\n\x03\x04\n\x01\x12\x04\xfa\x02\x08\x16\n\xd8\x05\n\x04\x04\n\x02\
9453 \0\x12\x04\x8d\x03\x02<\x1a\xc9\x05\x20Set\x20true\x20to\x20use\x20the\
9454 \x20old\x20proto1\x20MessageSet\x20wire\x20format\x20for\x20extensions.\
9455 \n\x20This\x20is\x20provided\x20for\x20backwards-compatibility\x20with\
9456 \x20the\x20MessageSet\x20wire\n\x20format.\x20\x20You\x20should\x20not\
9457 \x20use\x20this\x20for\x20any\x20other\x20reason:\x20\x20It's\x20less\n\
9458 \x20efficient,\x20has\x20fewer\x20features,\x20and\x20is\x20more\x20comp\
9459 licated.\n\n\x20The\x20message\x20must\x20be\x20defined\x20exactly\x20as\
9460 \x20follows:\n\x20\x20\x20message\x20Foo\x20{\n\x20\x20\x20\x20\x20optio\
9461 n\x20message_set_wire_format\x20=\x20true;\n\x20\x20\x20\x20\x20extensio\
9462 ns\x204\x20to\x20max;\n\x20\x20\x20}\n\x20Note\x20that\x20the\x20message\
9463 \x20cannot\x20have\x20any\x20defined\x20fields;\x20MessageSets\x20only\n\
9464 \x20have\x20extensions.\n\n\x20All\x20extensions\x20of\x20your\x20type\
9465 \x20must\x20be\x20singular\x20messages;\x20e.g.\x20they\x20cannot\n\x20b\
9466 e\x20int32s,\x20enums,\x20or\x20repeated\x20messages.\n\n\x20Because\x20\
9467 this\x20is\x20an\x20option,\x20the\x20above\x20two\x20restrictions\x20ar\
9468 e\x20not\x20enforced\x20by\n\x20the\x20protocol\x20compiler.\n\n\r\n\x05\
9469 \x04\n\x02\0\x04\x12\x04\x8d\x03\x02\n\n\r\n\x05\x04\n\x02\0\x05\x12\x04\
9470 \x8d\x03\x0b\x0f\n\r\n\x05\x04\n\x02\0\x01\x12\x04\x8d\x03\x10'\n\r\n\
9471 \x05\x04\n\x02\0\x03\x12\x04\x8d\x03*+\n\r\n\x05\x04\n\x02\0\x08\x12\x04\
9472 \x8d\x03,;\n\r\n\x05\x04\n\x02\0\x07\x12\x04\x8d\x035:\n\xeb\x01\n\x04\
9473 \x04\n\x02\x01\x12\x04\x92\x03\x02D\x1a\xdc\x01\x20Disables\x20the\x20ge\
9474 neration\x20of\x20the\x20standard\x20\"descriptor()\"\x20accessor,\x20wh\
9475 ich\x20can\n\x20conflict\x20with\x20a\x20field\x20of\x20the\x20same\x20n\
9476 ame.\x20\x20This\x20is\x20meant\x20to\x20make\x20migration\n\x20from\x20\
9477 proto1\x20easier;\x20new\x20code\x20should\x20avoid\x20fields\x20named\
9478 \x20\"descriptor\".\n\n\r\n\x05\x04\n\x02\x01\x04\x12\x04\x92\x03\x02\n\
9479 \n\r\n\x05\x04\n\x02\x01\x05\x12\x04\x92\x03\x0b\x0f\n\r\n\x05\x04\n\x02\
9480 \x01\x01\x12\x04\x92\x03\x10/\n\r\n\x05\x04\n\x02\x01\x03\x12\x04\x92\
9481 \x0323\n\r\n\x05\x04\n\x02\x01\x08\x12\x04\x92\x034C\n\r\n\x05\x04\n\x02\
9482 \x01\x07\x12\x04\x92\x03=B\n\xee\x01\n\x04\x04\n\x02\x02\x12\x04\x98\x03\
9483 \x02/\x1a\xdf\x01\x20Is\x20this\x20message\x20deprecated?\n\x20Depending\
9484 \x20on\x20the\x20target\x20platform,\x20this\x20can\x20emit\x20Deprecate\
9485 d\x20annotations\n\x20for\x20the\x20message,\x20or\x20it\x20will\x20be\
9486 \x20completely\x20ignored;\x20in\x20the\x20very\x20least,\n\x20this\x20i\
9487 s\x20a\x20formalization\x20for\x20deprecating\x20messages.\n\n\r\n\x05\
9488 \x04\n\x02\x02\x04\x12\x04\x98\x03\x02\n\n\r\n\x05\x04\n\x02\x02\x05\x12\
9489 \x04\x98\x03\x0b\x0f\n\r\n\x05\x04\n\x02\x02\x01\x12\x04\x98\x03\x10\x1a\
9490 \n\r\n\x05\x04\n\x02\x02\x03\x12\x04\x98\x03\x1d\x1e\n\r\n\x05\x04\n\x02\
9491 \x02\x08\x12\x04\x98\x03\x1f.\n\r\n\x05\x04\n\x02\x02\x07\x12\x04\x98\
9492 \x03(-\n\x9e\x06\n\x04\x04\n\x02\x03\x12\x04\xaf\x03\x02\x1e\x1a\x8f\x06\
9493 \x20Whether\x20the\x20message\x20is\x20an\x20automatically\x20generated\
9494 \x20map\x20entry\x20type\x20for\x20the\n\x20maps\x20field.\n\n\x20For\
9495 \x20maps\x20fields:\n\x20\x20\x20\x20\x20map<KeyType,\x20ValueType>\x20m\
9496 ap_field\x20=\x201;\n\x20The\x20parsed\x20descriptor\x20looks\x20like:\n\
9497 \x20\x20\x20\x20\x20message\x20MapFieldEntry\x20{\n\x20\x20\x20\x20\x20\
9498 \x20\x20\x20\x20option\x20map_entry\x20=\x20true;\n\x20\x20\x20\x20\x20\
9499 \x20\x20\x20\x20optional\x20KeyType\x20key\x20=\x201;\n\x20\x20\x20\x20\
9500 \x20\x20\x20\x20\x20optional\x20ValueType\x20value\x20=\x202;\n\x20\x20\
9501 \x20\x20\x20}\n\x20\x20\x20\x20\x20repeated\x20MapFieldEntry\x20map_fiel\
9502 d\x20=\x201;\n\n\x20Implementations\x20may\x20choose\x20not\x20to\x20gen\
9503 erate\x20the\x20map_entry=true\x20message,\x20but\n\x20use\x20a\x20nativ\
9504 e\x20map\x20in\x20the\x20target\x20language\x20to\x20hold\x20the\x20keys\
9505 \x20and\x20values.\n\x20The\x20reflection\x20APIs\x20in\x20such\x20imple\
9506 mentions\x20still\x20need\x20to\x20work\x20as\n\x20if\x20the\x20field\
9507 \x20is\x20a\x20repeated\x20message\x20field.\n\n\x20NOTE:\x20Do\x20not\
9508 \x20set\x20the\x20option\x20in\x20.proto\x20files.\x20Always\x20use\x20t\
9509 he\x20maps\x20syntax\n\x20instead.\x20The\x20option\x20should\x20only\
9510 \x20be\x20implicitly\x20set\x20by\x20the\x20proto\x20compiler\n\x20parse\
9511 r.\n\n\r\n\x05\x04\n\x02\x03\x04\x12\x04\xaf\x03\x02\n\n\r\n\x05\x04\n\
9512 \x02\x03\x05\x12\x04\xaf\x03\x0b\x0f\n\r\n\x05\x04\n\x02\x03\x01\x12\x04\
9513 \xaf\x03\x10\x19\n\r\n\x05\x04\n\x02\x03\x03\x12\x04\xaf\x03\x1c\x1d\nO\
9514 \n\x04\x04\n\x02\x04\x12\x04\xb2\x03\x02:\x1aA\x20The\x20parser\x20store\
9515 s\x20options\x20it\x20doesn't\x20recognize\x20here.\x20See\x20above.\n\n\
9516 \r\n\x05\x04\n\x02\x04\x04\x12\x04\xb2\x03\x02\n\n\r\n\x05\x04\n\x02\x04\
9517 \x06\x12\x04\xb2\x03\x0b\x1e\n\r\n\x05\x04\n\x02\x04\x01\x12\x04\xb2\x03\
9518 \x1f3\n\r\n\x05\x04\n\x02\x04\x03\x12\x04\xb2\x0369\nZ\n\x03\x04\n\x05\
9519 \x12\x04\xb5\x03\x02\x19\x1aM\x20Clients\x20can\x20define\x20custom\x20o\
9520 ptions\x20in\x20extensions\x20of\x20this\x20message.\x20See\x20above.\n\
9521 \n\x0c\n\x04\x04\n\x05\0\x12\x04\xb5\x03\r\x18\n\r\n\x05\x04\n\x05\0\x01\
9522 \x12\x04\xb5\x03\r\x11\n\r\n\x05\x04\n\x05\0\x02\x12\x04\xb5\x03\x15\x18\
9523 \n\x0c\n\x02\x04\x0b\x12\x06\xba\x03\0\x93\x04\x01\n\x0b\n\x03\x04\x0b\
9524 \x01\x12\x04\xba\x03\x08\x14\n\xa3\x02\n\x04\x04\x0b\x02\0\x12\x04\xbf\
9525 \x03\x02.\x1a\x94\x02\x20The\x20ctype\x20option\x20instructs\x20the\x20C\
9526 ++\x20code\x20generator\x20to\x20use\x20a\x20different\n\x20representati\
9527 on\x20of\x20the\x20field\x20than\x20it\x20normally\x20would.\x20\x20See\
9528 \x20the\x20specific\n\x20options\x20below.\x20\x20This\x20option\x20is\
9529 \x20not\x20yet\x20implemented\x20in\x20the\x20open\x20source\n\x20releas\
9530 e\x20--\x20sorry,\x20we'll\x20try\x20to\x20include\x20it\x20in\x20a\x20f\
9531 uture\x20version!\n\n\r\n\x05\x04\x0b\x02\0\x04\x12\x04\xbf\x03\x02\n\n\
9532 \r\n\x05\x04\x0b\x02\0\x06\x12\x04\xbf\x03\x0b\x10\n\r\n\x05\x04\x0b\x02\
9533 \0\x01\x12\x04\xbf\x03\x11\x16\n\r\n\x05\x04\x0b\x02\0\x03\x12\x04\xbf\
9534 \x03\x19\x1a\n\r\n\x05\x04\x0b\x02\0\x08\x12\x04\xbf\x03\x1b-\n\r\n\x05\
9535 \x04\x0b\x02\0\x07\x12\x04\xbf\x03&,\n\x0e\n\x04\x04\x0b\x04\0\x12\x06\
9536 \xc0\x03\x02\xc7\x03\x03\n\r\n\x05\x04\x0b\x04\0\x01\x12\x04\xc0\x03\x07\
9537 \x0c\n\x1f\n\x06\x04\x0b\x04\0\x02\0\x12\x04\xc2\x03\x04\x0f\x1a\x0f\x20\
9538 Default\x20mode.\n\n\x0f\n\x07\x04\x0b\x04\0\x02\0\x01\x12\x04\xc2\x03\
9539 \x04\n\n\x0f\n\x07\x04\x0b\x04\0\x02\0\x02\x12\x04\xc2\x03\r\x0e\n\x0e\n\
9540 \x06\x04\x0b\x04\0\x02\x01\x12\x04\xc4\x03\x04\r\n\x0f\n\x07\x04\x0b\x04\
9541 \0\x02\x01\x01\x12\x04\xc4\x03\x04\x08\n\x0f\n\x07\x04\x0b\x04\0\x02\x01\
9542 \x02\x12\x04\xc4\x03\x0b\x0c\n\x0e\n\x06\x04\x0b\x04\0\x02\x02\x12\x04\
9543 \xc6\x03\x04\x15\n\x0f\n\x07\x04\x0b\x04\0\x02\x02\x01\x12\x04\xc6\x03\
9544 \x04\x10\n\x0f\n\x07\x04\x0b\x04\0\x02\x02\x02\x12\x04\xc6\x03\x13\x14\n\
9545 \xda\x02\n\x04\x04\x0b\x02\x01\x12\x04\xcd\x03\x02\x1b\x1a\xcb\x02\x20Th\
9546 e\x20packed\x20option\x20can\x20be\x20enabled\x20for\x20repeated\x20prim\
9547 itive\x20fields\x20to\x20enable\n\x20a\x20more\x20efficient\x20represent\
9548 ation\x20on\x20the\x20wire.\x20Rather\x20than\x20repeatedly\n\x20writing\
9549 \x20the\x20tag\x20and\x20type\x20for\x20each\x20element,\x20the\x20entir\
9550 e\x20array\x20is\x20encoded\x20as\n\x20a\x20single\x20length-delimited\
9551 \x20blob.\x20In\x20proto3,\x20only\x20explicit\x20setting\x20it\x20to\n\
9552 \x20false\x20will\x20avoid\x20using\x20packed\x20encoding.\n\n\r\n\x05\
9553 \x04\x0b\x02\x01\x04\x12\x04\xcd\x03\x02\n\n\r\n\x05\x04\x0b\x02\x01\x05\
9554 \x12\x04\xcd\x03\x0b\x0f\n\r\n\x05\x04\x0b\x02\x01\x01\x12\x04\xcd\x03\
9555 \x10\x16\n\r\n\x05\x04\x0b\x02\x01\x03\x12\x04\xcd\x03\x19\x1a\n\xe4\x04\
9556 \n\x04\x04\x0b\x02\x02\x12\x04\xd8\x03\x023\x1a\xd5\x04\x20The\x20jstype\
9557 \x20option\x20determines\x20the\x20JavaScript\x20type\x20used\x20for\x20\
9558 values\x20of\x20the\n\x20field.\x20\x20The\x20option\x20is\x20permitted\
9559 \x20only\x20for\x2064\x20bit\x20integral\x20and\x20fixed\x20types\n\x20(\
9560 int64,\x20uint64,\x20sint64,\x20fixed64,\x20sfixed64).\x20\x20By\x20defa\
9561 ult\x20these\x20types\x20are\n\x20represented\x20as\x20JavaScript\x20str\
9562 ings.\x20\x20This\x20avoids\x20loss\x20of\x20precision\x20that\x20can\n\
9563 \x20happen\x20when\x20a\x20large\x20value\x20is\x20converted\x20to\x20a\
9564 \x20floating\x20point\x20JavaScript\n\x20numbers.\x20\x20Specifying\x20J\
9565 S_NUMBER\x20for\x20the\x20jstype\x20causes\x20the\x20generated\n\x20Java\
9566 Script\x20code\x20to\x20use\x20the\x20JavaScript\x20\"number\"\x20type\
9567 \x20instead\x20of\x20strings.\n\x20This\x20option\x20is\x20an\x20enum\
9568 \x20to\x20permit\x20additional\x20types\x20to\x20be\x20added,\n\x20e.g.\
9569 \x20goog.math.Integer.\n\n\r\n\x05\x04\x0b\x02\x02\x04\x12\x04\xd8\x03\
9570 \x02\n\n\r\n\x05\x04\x0b\x02\x02\x06\x12\x04\xd8\x03\x0b\x11\n\r\n\x05\
9571 \x04\x0b\x02\x02\x01\x12\x04\xd8\x03\x12\x18\n\r\n\x05\x04\x0b\x02\x02\
9572 \x03\x12\x04\xd8\x03\x1b\x1c\n\r\n\x05\x04\x0b\x02\x02\x08\x12\x04\xd8\
9573 \x03\x1d2\n\r\n\x05\x04\x0b\x02\x02\x07\x12\x04\xd8\x03(1\n\x0e\n\x04\
9574 \x04\x0b\x04\x01\x12\x06\xd9\x03\x02\xe2\x03\x03\n\r\n\x05\x04\x0b\x04\
9575 \x01\x01\x12\x04\xd9\x03\x07\r\n'\n\x06\x04\x0b\x04\x01\x02\0\x12\x04\
9576 \xdb\x03\x04\x12\x1a\x17\x20Use\x20the\x20default\x20type.\n\n\x0f\n\x07\
9577 \x04\x0b\x04\x01\x02\0\x01\x12\x04\xdb\x03\x04\r\n\x0f\n\x07\x04\x0b\x04\
9578 \x01\x02\0\x02\x12\x04\xdb\x03\x10\x11\n)\n\x06\x04\x0b\x04\x01\x02\x01\
9579 \x12\x04\xde\x03\x04\x12\x1a\x19\x20Use\x20JavaScript\x20strings.\n\n\
9580 \x0f\n\x07\x04\x0b\x04\x01\x02\x01\x01\x12\x04\xde\x03\x04\r\n\x0f\n\x07\
9581 \x04\x0b\x04\x01\x02\x01\x02\x12\x04\xde\x03\x10\x11\n)\n\x06\x04\x0b\
9582 \x04\x01\x02\x02\x12\x04\xe1\x03\x04\x12\x1a\x19\x20Use\x20JavaScript\
9583 \x20numbers.\n\n\x0f\n\x07\x04\x0b\x04\x01\x02\x02\x01\x12\x04\xe1\x03\
9584 \x04\r\n\x0f\n\x07\x04\x0b\x04\x01\x02\x02\x02\x12\x04\xe1\x03\x10\x11\n\
9585 \xef\x0c\n\x04\x04\x0b\x02\x03\x12\x04\x80\x04\x02)\x1a\xe0\x0c\x20Shoul\
9586 d\x20this\x20field\x20be\x20parsed\x20lazily?\x20\x20Lazy\x20applies\x20\
9587 only\x20to\x20message-type\n\x20fields.\x20\x20It\x20means\x20that\x20wh\
9588 en\x20the\x20outer\x20message\x20is\x20initially\x20parsed,\x20the\n\x20\
9589 inner\x20message's\x20contents\x20will\x20not\x20be\x20parsed\x20but\x20\
9590 instead\x20stored\x20in\x20encoded\n\x20form.\x20\x20The\x20inner\x20mes\
9591 sage\x20will\x20actually\x20be\x20parsed\x20when\x20it\x20is\x20first\
9592 \x20accessed.\n\n\x20This\x20is\x20only\x20a\x20hint.\x20\x20Implementat\
9593 ions\x20are\x20free\x20to\x20choose\x20whether\x20to\x20use\n\x20eager\
9594 \x20or\x20lazy\x20parsing\x20regardless\x20of\x20the\x20value\x20of\x20t\
9595 his\x20option.\x20\x20However,\n\x20setting\x20this\x20option\x20true\
9596 \x20suggests\x20that\x20the\x20protocol\x20author\x20believes\x20that\n\
9597 \x20using\x20lazy\x20parsing\x20on\x20this\x20field\x20is\x20worth\x20th\
9598 e\x20additional\x20bookkeeping\n\x20overhead\x20typically\x20needed\x20t\
9599 o\x20implement\x20it.\n\n\x20This\x20option\x20does\x20not\x20affect\x20\
9600 the\x20public\x20interface\x20of\x20any\x20generated\x20code;\n\x20all\
9601 \x20method\x20signatures\x20remain\x20the\x20same.\x20\x20Furthermore,\
9602 \x20thread-safety\x20of\x20the\n\x20interface\x20is\x20not\x20affected\
9603 \x20by\x20this\x20option;\x20const\x20methods\x20remain\x20safe\x20to\n\
9604 \x20call\x20from\x20multiple\x20threads\x20concurrently,\x20while\x20non\
9605 -const\x20methods\x20continue\n\x20to\x20require\x20exclusive\x20access.\
9606 \n\n\n\x20Note\x20that\x20implementations\x20may\x20choose\x20not\x20to\
9607 \x20check\x20required\x20fields\x20within\n\x20a\x20lazy\x20sub-message.\
9608 \x20\x20That\x20is,\x20calling\x20IsInitialized()\x20on\x20the\x20outer\
9609 \x20message\n\x20may\x20return\x20true\x20even\x20if\x20the\x20inner\x20\
9610 message\x20has\x20missing\x20required\x20fields.\n\x20This\x20is\x20nece\
9611 ssary\x20because\x20otherwise\x20the\x20inner\x20message\x20would\x20hav\
9612 e\x20to\x20be\n\x20parsed\x20in\x20order\x20to\x20perform\x20the\x20chec\
9613 k,\x20defeating\x20the\x20purpose\x20of\x20lazy\n\x20parsing.\x20\x20An\
9614 \x20implementation\x20which\x20chooses\x20not\x20to\x20check\x20required\
9615 \x20fields\n\x20must\x20be\x20consistent\x20about\x20it.\x20\x20That\x20\
9616 is,\x20for\x20any\x20particular\x20sub-message,\x20the\n\x20implementati\
9617 on\x20must\x20either\x20*always*\x20check\x20its\x20required\x20fields,\
9618 \x20or\x20*never*\n\x20check\x20its\x20required\x20fields,\x20regardless\
9619 \x20of\x20whether\x20or\x20not\x20the\x20message\x20has\n\x20been\x20par\
9620 sed.\n\n\r\n\x05\x04\x0b\x02\x03\x04\x12\x04\x80\x04\x02\n\n\r\n\x05\x04\
9621 \x0b\x02\x03\x05\x12\x04\x80\x04\x0b\x0f\n\r\n\x05\x04\x0b\x02\x03\x01\
9622 \x12\x04\x80\x04\x10\x14\n\r\n\x05\x04\x0b\x02\x03\x03\x12\x04\x80\x04\
9623 \x17\x18\n\r\n\x05\x04\x0b\x02\x03\x08\x12\x04\x80\x04\x19(\n\r\n\x05\
9624 \x04\x0b\x02\x03\x07\x12\x04\x80\x04\"'\n\xe8\x01\n\x04\x04\x0b\x02\x04\
9625 \x12\x04\x86\x04\x02/\x1a\xd9\x01\x20Is\x20this\x20field\x20deprecated?\
9626 \n\x20Depending\x20on\x20the\x20target\x20platform,\x20this\x20can\x20em\
9627 it\x20Deprecated\x20annotations\n\x20for\x20accessors,\x20or\x20it\x20wi\
9628 ll\x20be\x20completely\x20ignored;\x20in\x20the\x20very\x20least,\x20thi\
9629 s\n\x20is\x20a\x20formalization\x20for\x20deprecating\x20fields.\n\n\r\n\
9630 \x05\x04\x0b\x02\x04\x04\x12\x04\x86\x04\x02\n\n\r\n\x05\x04\x0b\x02\x04\
9631 \x05\x12\x04\x86\x04\x0b\x0f\n\r\n\x05\x04\x0b\x02\x04\x01\x12\x04\x86\
9632 \x04\x10\x1a\n\r\n\x05\x04\x0b\x02\x04\x03\x12\x04\x86\x04\x1d\x1e\n\r\n\
9633 \x05\x04\x0b\x02\x04\x08\x12\x04\x86\x04\x1f.\n\r\n\x05\x04\x0b\x02\x04\
9634 \x07\x12\x04\x86\x04(-\n?\n\x04\x04\x0b\x02\x05\x12\x04\x89\x04\x02*\x1a\
9635 1\x20For\x20Google-internal\x20migration\x20only.\x20Do\x20not\x20use.\n\
9636 \n\r\n\x05\x04\x0b\x02\x05\x04\x12\x04\x89\x04\x02\n\n\r\n\x05\x04\x0b\
9637 \x02\x05\x05\x12\x04\x89\x04\x0b\x0f\n\r\n\x05\x04\x0b\x02\x05\x01\x12\
9638 \x04\x89\x04\x10\x14\n\r\n\x05\x04\x0b\x02\x05\x03\x12\x04\x89\x04\x17\
9639 \x19\n\r\n\x05\x04\x0b\x02\x05\x08\x12\x04\x89\x04\x1a)\n\r\n\x05\x04\
9640 \x0b\x02\x05\x07\x12\x04\x89\x04#(\nO\n\x04\x04\x0b\x02\x06\x12\x04\x8d\
9641 \x04\x02:\x1aA\x20The\x20parser\x20stores\x20options\x20it\x20doesn't\
9642 \x20recognize\x20here.\x20See\x20above.\n\n\r\n\x05\x04\x0b\x02\x06\x04\
9643 \x12\x04\x8d\x04\x02\n\n\r\n\x05\x04\x0b\x02\x06\x06\x12\x04\x8d\x04\x0b\
9644 \x1e\n\r\n\x05\x04\x0b\x02\x06\x01\x12\x04\x8d\x04\x1f3\n\r\n\x05\x04\
9645 \x0b\x02\x06\x03\x12\x04\x8d\x0469\nZ\n\x03\x04\x0b\x05\x12\x04\x90\x04\
9646 \x02\x19\x1aM\x20Clients\x20can\x20define\x20custom\x20options\x20in\x20\
9647 extensions\x20of\x20this\x20message.\x20See\x20above.\n\n\x0c\n\x04\x04\
9648 \x0b\x05\0\x12\x04\x90\x04\r\x18\n\r\n\x05\x04\x0b\x05\0\x01\x12\x04\x90\
9649 \x04\r\x11\n\r\n\x05\x04\x0b\x05\0\x02\x12\x04\x90\x04\x15\x18\n\x0c\n\
9650 \x02\x04\x0c\x12\x06\x95\x04\0\x9b\x04\x01\n\x0b\n\x03\x04\x0c\x01\x12\
9651 \x04\x95\x04\x08\x14\nO\n\x04\x04\x0c\x02\0\x12\x04\x97\x04\x02:\x1aA\
9652 \x20The\x20parser\x20stores\x20options\x20it\x20doesn't\x20recognize\x20\
9653 here.\x20See\x20above.\n\n\r\n\x05\x04\x0c\x02\0\x04\x12\x04\x97\x04\x02\
9654 \n\n\r\n\x05\x04\x0c\x02\0\x06\x12\x04\x97\x04\x0b\x1e\n\r\n\x05\x04\x0c\
9655 \x02\0\x01\x12\x04\x97\x04\x1f3\n\r\n\x05\x04\x0c\x02\0\x03\x12\x04\x97\
9656 \x0469\nZ\n\x03\x04\x0c\x05\x12\x04\x9a\x04\x02\x19\x1aM\x20Clients\x20c\
9657 an\x20define\x20custom\x20options\x20in\x20extensions\x20of\x20this\x20m\
9658 essage.\x20See\x20above.\n\n\x0c\n\x04\x04\x0c\x05\0\x12\x04\x9a\x04\r\
9659 \x18\n\r\n\x05\x04\x0c\x05\0\x01\x12\x04\x9a\x04\r\x11\n\r\n\x05\x04\x0c\
9660 \x05\0\x02\x12\x04\x9a\x04\x15\x18\n\x0c\n\x02\x04\r\x12\x06\x9d\x04\0\
9661 \xae\x04\x01\n\x0b\n\x03\x04\r\x01\x12\x04\x9d\x04\x08\x13\n`\n\x04\x04\
9662 \r\x02\0\x12\x04\xa1\x04\x02\x20\x1aR\x20Set\x20this\x20option\x20to\x20\
9663 true\x20to\x20allow\x20mapping\x20different\x20tag\x20names\x20to\x20the\
9664 \x20same\n\x20value.\n\n\r\n\x05\x04\r\x02\0\x04\x12\x04\xa1\x04\x02\n\n\
9665 \r\n\x05\x04\r\x02\0\x05\x12\x04\xa1\x04\x0b\x0f\n\r\n\x05\x04\r\x02\0\
9666 \x01\x12\x04\xa1\x04\x10\x1b\n\r\n\x05\x04\r\x02\0\x03\x12\x04\xa1\x04\
9667 \x1e\x1f\n\xe5\x01\n\x04\x04\r\x02\x01\x12\x04\xa7\x04\x02/\x1a\xd6\x01\
9668 \x20Is\x20this\x20enum\x20deprecated?\n\x20Depending\x20on\x20the\x20tar\
9669 get\x20platform,\x20this\x20can\x20emit\x20Deprecated\x20annotations\n\
9670 \x20for\x20the\x20enum,\x20or\x20it\x20will\x20be\x20completely\x20ignor\
9671 ed;\x20in\x20the\x20very\x20least,\x20this\n\x20is\x20a\x20formalization\
9672 \x20for\x20deprecating\x20enums.\n\n\r\n\x05\x04\r\x02\x01\x04\x12\x04\
9673 \xa7\x04\x02\n\n\r\n\x05\x04\r\x02\x01\x05\x12\x04\xa7\x04\x0b\x0f\n\r\n\
9674 \x05\x04\r\x02\x01\x01\x12\x04\xa7\x04\x10\x1a\n\r\n\x05\x04\r\x02\x01\
9675 \x03\x12\x04\xa7\x04\x1d\x1e\n\r\n\x05\x04\r\x02\x01\x08\x12\x04\xa7\x04\
9676 \x1f.\n\r\n\x05\x04\r\x02\x01\x07\x12\x04\xa7\x04(-\nO\n\x04\x04\r\x02\
9677 \x02\x12\x04\xaa\x04\x02:\x1aA\x20The\x20parser\x20stores\x20options\x20\
9678 it\x20doesn't\x20recognize\x20here.\x20See\x20above.\n\n\r\n\x05\x04\r\
9679 \x02\x02\x04\x12\x04\xaa\x04\x02\n\n\r\n\x05\x04\r\x02\x02\x06\x12\x04\
9680 \xaa\x04\x0b\x1e\n\r\n\x05\x04\r\x02\x02\x01\x12\x04\xaa\x04\x1f3\n\r\n\
9681 \x05\x04\r\x02\x02\x03\x12\x04\xaa\x0469\nZ\n\x03\x04\r\x05\x12\x04\xad\
9682 \x04\x02\x19\x1aM\x20Clients\x20can\x20define\x20custom\x20options\x20in\
9683 \x20extensions\x20of\x20this\x20message.\x20See\x20above.\n\n\x0c\n\x04\
9684 \x04\r\x05\0\x12\x04\xad\x04\r\x18\n\r\n\x05\x04\r\x05\0\x01\x12\x04\xad\
9685 \x04\r\x11\n\r\n\x05\x04\r\x05\0\x02\x12\x04\xad\x04\x15\x18\n\x0c\n\x02\
9686 \x04\x0e\x12\x06\xb0\x04\0\xbc\x04\x01\n\x0b\n\x03\x04\x0e\x01\x12\x04\
9687 \xb0\x04\x08\x18\n\xf7\x01\n\x04\x04\x0e\x02\0\x12\x04\xb5\x04\x02/\x1a\
9688 \xe8\x01\x20Is\x20this\x20enum\x20value\x20deprecated?\n\x20Depending\
9689 \x20on\x20the\x20target\x20platform,\x20this\x20can\x20emit\x20Deprecate\
9690 d\x20annotations\n\x20for\x20the\x20enum\x20value,\x20or\x20it\x20will\
9691 \x20be\x20completely\x20ignored;\x20in\x20the\x20very\x20least,\n\x20thi\
9692 s\x20is\x20a\x20formalization\x20for\x20deprecating\x20enum\x20values.\n\
9693 \n\r\n\x05\x04\x0e\x02\0\x04\x12\x04\xb5\x04\x02\n\n\r\n\x05\x04\x0e\x02\
9694 \0\x05\x12\x04\xb5\x04\x0b\x0f\n\r\n\x05\x04\x0e\x02\0\x01\x12\x04\xb5\
9695 \x04\x10\x1a\n\r\n\x05\x04\x0e\x02\0\x03\x12\x04\xb5\x04\x1d\x1e\n\r\n\
9696 \x05\x04\x0e\x02\0\x08\x12\x04\xb5\x04\x1f.\n\r\n\x05\x04\x0e\x02\0\x07\
9697 \x12\x04\xb5\x04(-\nO\n\x04\x04\x0e\x02\x01\x12\x04\xb8\x04\x02:\x1aA\
9698 \x20The\x20parser\x20stores\x20options\x20it\x20doesn't\x20recognize\x20\
9699 here.\x20See\x20above.\n\n\r\n\x05\x04\x0e\x02\x01\x04\x12\x04\xb8\x04\
9700 \x02\n\n\r\n\x05\x04\x0e\x02\x01\x06\x12\x04\xb8\x04\x0b\x1e\n\r\n\x05\
9701 \x04\x0e\x02\x01\x01\x12\x04\xb8\x04\x1f3\n\r\n\x05\x04\x0e\x02\x01\x03\
9702 \x12\x04\xb8\x0469\nZ\n\x03\x04\x0e\x05\x12\x04\xbb\x04\x02\x19\x1aM\x20\
9703 Clients\x20can\x20define\x20custom\x20options\x20in\x20extensions\x20of\
9704 \x20this\x20message.\x20See\x20above.\n\n\x0c\n\x04\x04\x0e\x05\0\x12\
9705 \x04\xbb\x04\r\x18\n\r\n\x05\x04\x0e\x05\0\x01\x12\x04\xbb\x04\r\x11\n\r\
9706 \n\x05\x04\x0e\x05\0\x02\x12\x04\xbb\x04\x15\x18\n\x0c\n\x02\x04\x0f\x12\
9707 \x06\xbe\x04\0\xd0\x04\x01\n\x0b\n\x03\x04\x0f\x01\x12\x04\xbe\x04\x08\
9708 \x16\n\xd9\x03\n\x04\x04\x0f\x02\0\x12\x04\xc9\x04\x020\x1a\xdf\x01\x20I\
9709 s\x20this\x20service\x20deprecated?\n\x20Depending\x20on\x20the\x20targe\
9710 t\x20platform,\x20this\x20can\x20emit\x20Deprecated\x20annotations\n\x20\
9711 for\x20the\x20service,\x20or\x20it\x20will\x20be\x20completely\x20ignore\
9712 d;\x20in\x20the\x20very\x20least,\n\x20this\x20is\x20a\x20formalization\
9713 \x20for\x20deprecating\x20services.\n2\xe8\x01\x20Note:\x20\x20Field\x20\
9714 numbers\x201\x20through\x2032\x20are\x20reserved\x20for\x20Google's\x20i\
9715 nternal\x20RPC\n\x20\x20\x20framework.\x20\x20We\x20apologize\x20for\x20\
9716 hoarding\x20these\x20numbers\x20to\x20ourselves,\x20but\n\x20\x20\x20we\
9717 \x20were\x20already\x20using\x20them\x20long\x20before\x20we\x20decided\
9718 \x20to\x20release\x20Protocol\n\x20\x20\x20Buffers.\n\n\r\n\x05\x04\x0f\
9719 \x02\0\x04\x12\x04\xc9\x04\x02\n\n\r\n\x05\x04\x0f\x02\0\x05\x12\x04\xc9\
9720 \x04\x0b\x0f\n\r\n\x05\x04\x0f\x02\0\x01\x12\x04\xc9\x04\x10\x1a\n\r\n\
9721 \x05\x04\x0f\x02\0\x03\x12\x04\xc9\x04\x1d\x1f\n\r\n\x05\x04\x0f\x02\0\
9722 \x08\x12\x04\xc9\x04\x20/\n\r\n\x05\x04\x0f\x02\0\x07\x12\x04\xc9\x04).\
9723 \nO\n\x04\x04\x0f\x02\x01\x12\x04\xcc\x04\x02:\x1aA\x20The\x20parser\x20\
9724 stores\x20options\x20it\x20doesn't\x20recognize\x20here.\x20See\x20above\
9725 .\n\n\r\n\x05\x04\x0f\x02\x01\x04\x12\x04\xcc\x04\x02\n\n\r\n\x05\x04\
9726 \x0f\x02\x01\x06\x12\x04\xcc\x04\x0b\x1e\n\r\n\x05\x04\x0f\x02\x01\x01\
9727 \x12\x04\xcc\x04\x1f3\n\r\n\x05\x04\x0f\x02\x01\x03\x12\x04\xcc\x0469\nZ\
9728 \n\x03\x04\x0f\x05\x12\x04\xcf\x04\x02\x19\x1aM\x20Clients\x20can\x20def\
9729 ine\x20custom\x20options\x20in\x20extensions\x20of\x20this\x20message.\
9730 \x20See\x20above.\n\n\x0c\n\x04\x04\x0f\x05\0\x12\x04\xcf\x04\r\x18\n\r\
9731 \n\x05\x04\x0f\x05\0\x01\x12\x04\xcf\x04\r\x11\n\r\n\x05\x04\x0f\x05\0\
9732 \x02\x12\x04\xcf\x04\x15\x18\n\x0c\n\x02\x04\x10\x12\x06\xd2\x04\0\xe4\
9733 \x04\x01\n\x0b\n\x03\x04\x10\x01\x12\x04\xd2\x04\x08\x15\n\xd6\x03\n\x04\
9734 \x04\x10\x02\0\x12\x04\xdd\x04\x020\x1a\xdc\x01\x20Is\x20this\x20method\
9735 \x20deprecated?\n\x20Depending\x20on\x20the\x20target\x20platform,\x20th\
9736 is\x20can\x20emit\x20Deprecated\x20annotations\n\x20for\x20the\x20method\
9737 ,\x20or\x20it\x20will\x20be\x20completely\x20ignored;\x20in\x20the\x20ve\
9738 ry\x20least,\n\x20this\x20is\x20a\x20formalization\x20for\x20deprecating\
9739 \x20methods.\n2\xe8\x01\x20Note:\x20\x20Field\x20numbers\x201\x20through\
9740 \x2032\x20are\x20reserved\x20for\x20Google's\x20internal\x20RPC\n\x20\
9741 \x20\x20framework.\x20\x20We\x20apologize\x20for\x20hoarding\x20these\
9742 \x20numbers\x20to\x20ourselves,\x20but\n\x20\x20\x20we\x20were\x20alread\
9743 y\x20using\x20them\x20long\x20before\x20we\x20decided\x20to\x20release\
9744 \x20Protocol\n\x20\x20\x20Buffers.\n\n\r\n\x05\x04\x10\x02\0\x04\x12\x04\
9745 \xdd\x04\x02\n\n\r\n\x05\x04\x10\x02\0\x05\x12\x04\xdd\x04\x0b\x0f\n\r\n\
9746 \x05\x04\x10\x02\0\x01\x12\x04\xdd\x04\x10\x1a\n\r\n\x05\x04\x10\x02\0\
9747 \x03\x12\x04\xdd\x04\x1d\x1f\n\r\n\x05\x04\x10\x02\0\x08\x12\x04\xdd\x04\
9748 \x20/\n\r\n\x05\x04\x10\x02\0\x07\x12\x04\xdd\x04).\nO\n\x04\x04\x10\x02\
9749 \x01\x12\x04\xe0\x04\x02:\x1aA\x20The\x20parser\x20stores\x20options\x20\
9750 it\x20doesn't\x20recognize\x20here.\x20See\x20above.\n\n\r\n\x05\x04\x10\
9751 \x02\x01\x04\x12\x04\xe0\x04\x02\n\n\r\n\x05\x04\x10\x02\x01\x06\x12\x04\
9752 \xe0\x04\x0b\x1e\n\r\n\x05\x04\x10\x02\x01\x01\x12\x04\xe0\x04\x1f3\n\r\
9753 \n\x05\x04\x10\x02\x01\x03\x12\x04\xe0\x0469\nZ\n\x03\x04\x10\x05\x12\
9754 \x04\xe3\x04\x02\x19\x1aM\x20Clients\x20can\x20define\x20custom\x20optio\
9755 ns\x20in\x20extensions\x20of\x20this\x20message.\x20See\x20above.\n\n\
9756 \x0c\n\x04\x04\x10\x05\0\x12\x04\xe3\x04\r\x18\n\r\n\x05\x04\x10\x05\0\
9757 \x01\x12\x04\xe3\x04\r\x11\n\r\n\x05\x04\x10\x05\0\x02\x12\x04\xe3\x04\
9758 \x15\x18\n\x8b\x03\n\x02\x04\x11\x12\x06\xed\x04\0\x81\x05\x01\x1a\xfc\
9759 \x02\x20A\x20message\x20representing\x20a\x20option\x20the\x20parser\x20\
9760 does\x20not\x20recognize.\x20This\x20only\n\x20appears\x20in\x20options\
9761 \x20protos\x20created\x20by\x20the\x20compiler::Parser\x20class.\n\x20De\
9762 scriptorPool\x20resolves\x20these\x20when\x20building\x20Descriptor\x20o\
9763 bjects.\x20Therefore,\n\x20options\x20protos\x20in\x20descriptor\x20obje\
9764 cts\x20(e.g.\x20returned\x20by\x20Descriptor::options(),\n\x20or\x20prod\
9765 uced\x20by\x20Descriptor::CopyTo())\x20will\x20never\x20have\x20Uninterp\
9766 retedOptions\n\x20in\x20them.\n\n\x0b\n\x03\x04\x11\x01\x12\x04\xed\x04\
9767 \x08\x1b\n\xcb\x02\n\x04\x04\x11\x03\0\x12\x06\xf3\x04\x02\xf6\x04\x03\
9768 \x1a\xba\x02\x20The\x20name\x20of\x20the\x20uninterpreted\x20option.\x20\
9769 \x20Each\x20string\x20represents\x20a\x20segment\x20in\n\x20a\x20dot-sep\
9770 arated\x20name.\x20\x20is_extension\x20is\x20true\x20iff\x20a\x20segment\
9771 \x20represents\x20an\n\x20extension\x20(denoted\x20with\x20parentheses\
9772 \x20in\x20options\x20specs\x20in\x20.proto\x20files).\n\x20E.g.,{\x20[\"\
9773 foo\",\x20false],\x20[\"bar.baz\",\x20true],\x20[\"qux\",\x20false]\x20}\
9774 \x20represents\n\x20\"foo.(bar.baz).qux\".\n\n\r\n\x05\x04\x11\x03\0\x01\
9775 \x12\x04\xf3\x04\n\x12\n\x0e\n\x06\x04\x11\x03\0\x02\0\x12\x04\xf4\x04\
9776 \x04\"\n\x0f\n\x07\x04\x11\x03\0\x02\0\x04\x12\x04\xf4\x04\x04\x0c\n\x0f\
9777 \n\x07\x04\x11\x03\0\x02\0\x05\x12\x04\xf4\x04\r\x13\n\x0f\n\x07\x04\x11\
9778 \x03\0\x02\0\x01\x12\x04\xf4\x04\x14\x1d\n\x0f\n\x07\x04\x11\x03\0\x02\0\
9779 \x03\x12\x04\xf4\x04\x20!\n\x0e\n\x06\x04\x11\x03\0\x02\x01\x12\x04\xf5\
9780 \x04\x04#\n\x0f\n\x07\x04\x11\x03\0\x02\x01\x04\x12\x04\xf5\x04\x04\x0c\
9781 \n\x0f\n\x07\x04\x11\x03\0\x02\x01\x05\x12\x04\xf5\x04\r\x11\n\x0f\n\x07\
9782 \x04\x11\x03\0\x02\x01\x01\x12\x04\xf5\x04\x12\x1e\n\x0f\n\x07\x04\x11\
9783 \x03\0\x02\x01\x03\x12\x04\xf5\x04!\"\n\x0c\n\x04\x04\x11\x02\0\x12\x04\
9784 \xf7\x04\x02\x1d\n\r\n\x05\x04\x11\x02\0\x04\x12\x04\xf7\x04\x02\n\n\r\n\
9785 \x05\x04\x11\x02\0\x06\x12\x04\xf7\x04\x0b\x13\n\r\n\x05\x04\x11\x02\0\
9786 \x01\x12\x04\xf7\x04\x14\x18\n\r\n\x05\x04\x11\x02\0\x03\x12\x04\xf7\x04\
9787 \x1b\x1c\n\x9c\x01\n\x04\x04\x11\x02\x01\x12\x04\xfb\x04\x02'\x1a\x8d\
9788 \x01\x20The\x20value\x20of\x20the\x20uninterpreted\x20option,\x20in\x20w\
9789 hatever\x20type\x20the\x20tokenizer\n\x20identified\x20it\x20as\x20durin\
9790 g\x20parsing.\x20Exactly\x20one\x20of\x20these\x20should\x20be\x20set.\n\
9791 \n\r\n\x05\x04\x11\x02\x01\x04\x12\x04\xfb\x04\x02\n\n\r\n\x05\x04\x11\
9792 \x02\x01\x05\x12\x04\xfb\x04\x0b\x11\n\r\n\x05\x04\x11\x02\x01\x01\x12\
9793 \x04\xfb\x04\x12\"\n\r\n\x05\x04\x11\x02\x01\x03\x12\x04\xfb\x04%&\n\x0c\
9794 \n\x04\x04\x11\x02\x02\x12\x04\xfc\x04\x02)\n\r\n\x05\x04\x11\x02\x02\
9795 \x04\x12\x04\xfc\x04\x02\n\n\r\n\x05\x04\x11\x02\x02\x05\x12\x04\xfc\x04\
9796 \x0b\x11\n\r\n\x05\x04\x11\x02\x02\x01\x12\x04\xfc\x04\x12$\n\r\n\x05\
9797 \x04\x11\x02\x02\x03\x12\x04\xfc\x04'(\n\x0c\n\x04\x04\x11\x02\x03\x12\
9798 \x04\xfd\x04\x02(\n\r\n\x05\x04\x11\x02\x03\x04\x12\x04\xfd\x04\x02\n\n\
9799 \r\n\x05\x04\x11\x02\x03\x05\x12\x04\xfd\x04\x0b\x10\n\r\n\x05\x04\x11\
9800 \x02\x03\x01\x12\x04\xfd\x04\x11#\n\r\n\x05\x04\x11\x02\x03\x03\x12\x04\
9801 \xfd\x04&'\n\x0c\n\x04\x04\x11\x02\x04\x12\x04\xfe\x04\x02#\n\r\n\x05\
9802 \x04\x11\x02\x04\x04\x12\x04\xfe\x04\x02\n\n\r\n\x05\x04\x11\x02\x04\x05\
9803 \x12\x04\xfe\x04\x0b\x11\n\r\n\x05\x04\x11\x02\x04\x01\x12\x04\xfe\x04\
9804 \x12\x1e\n\r\n\x05\x04\x11\x02\x04\x03\x12\x04\xfe\x04!\"\n\x0c\n\x04\
9805 \x04\x11\x02\x05\x12\x04\xff\x04\x02\"\n\r\n\x05\x04\x11\x02\x05\x04\x12\
9806 \x04\xff\x04\x02\n\n\r\n\x05\x04\x11\x02\x05\x05\x12\x04\xff\x04\x0b\x10\
9807 \n\r\n\x05\x04\x11\x02\x05\x01\x12\x04\xff\x04\x11\x1d\n\r\n\x05\x04\x11\
9808 \x02\x05\x03\x12\x04\xff\x04\x20!\n\x0c\n\x04\x04\x11\x02\x06\x12\x04\
9809 \x80\x05\x02&\n\r\n\x05\x04\x11\x02\x06\x04\x12\x04\x80\x05\x02\n\n\r\n\
9810 \x05\x04\x11\x02\x06\x05\x12\x04\x80\x05\x0b\x11\n\r\n\x05\x04\x11\x02\
9811 \x06\x01\x12\x04\x80\x05\x12!\n\r\n\x05\x04\x11\x02\x06\x03\x12\x04\x80\
9812 \x05$%\n\xda\x01\n\x02\x04\x12\x12\x06\x88\x05\0\x89\x06\x01\x1aj\x20Enc\
9813 apsulates\x20information\x20about\x20the\x20original\x20source\x20file\
9814 \x20from\x20which\x20a\n\x20FileDescriptorProto\x20was\x20generated.\n2`\
9815 \x20===================================================================\
9816 \n\x20Optional\x20source\x20code\x20info\n\n\x0b\n\x03\x04\x12\x01\x12\
9817 \x04\x88\x05\x08\x16\n\x82\x11\n\x04\x04\x12\x02\0\x12\x04\xb4\x05\x02!\
9818 \x1a\xf3\x10\x20A\x20Location\x20identifies\x20a\x20piece\x20of\x20sourc\
9819 e\x20code\x20in\x20a\x20.proto\x20file\x20which\n\x20corresponds\x20to\
9820 \x20a\x20particular\x20definition.\x20\x20This\x20information\x20is\x20i\
9821 ntended\n\x20to\x20be\x20useful\x20to\x20IDEs,\x20code\x20indexers,\x20d\
9822 ocumentation\x20generators,\x20and\x20similar\n\x20tools.\n\n\x20For\x20\
9823 example,\x20say\x20we\x20have\x20a\x20file\x20like:\n\x20\x20\x20message\
9824 \x20Foo\x20{\n\x20\x20\x20\x20\x20optional\x20string\x20foo\x20=\x201;\n\
9825 \x20\x20\x20}\n\x20Let's\x20look\x20at\x20just\x20the\x20field\x20defini\
9826 tion:\n\x20\x20\x20optional\x20string\x20foo\x20=\x201;\n\x20\x20\x20^\
9827 \x20\x20\x20\x20\x20\x20\x20^^\x20\x20\x20\x20\x20^^\x20\x20^\x20\x20^^^\
9828 \n\x20\x20\x20a\x20\x20\x20\x20\x20\x20\x20bc\x20\x20\x20\x20\x20de\x20\
9829 \x20f\x20\x20ghi\n\x20We\x20have\x20the\x20following\x20locations:\n\x20\
9830 \x20\x20span\x20\x20\x20path\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\
9831 \x20\x20\x20\x20represents\n\x20\x20\x20[a,i)\x20\x20[\x204,\x200,\x202,\
9832 \x200\x20]\x20\x20\x20\x20\x20The\x20whole\x20field\x20definition.\n\x20\
9833 \x20\x20[a,b)\x20\x20[\x204,\x200,\x202,\x200,\x204\x20]\x20\x20The\x20l\
9834 abel\x20(optional).\n\x20\x20\x20[c,d)\x20\x20[\x204,\x200,\x202,\x200,\
9835 \x205\x20]\x20\x20The\x20type\x20(string).\n\x20\x20\x20[e,f)\x20\x20[\
9836 \x204,\x200,\x202,\x200,\x201\x20]\x20\x20The\x20name\x20(foo).\n\x20\
9837 \x20\x20[g,h)\x20\x20[\x204,\x200,\x202,\x200,\x203\x20]\x20\x20The\x20n\
9838 umber\x20(1).\n\n\x20Notes:\n\x20-\x20A\x20location\x20may\x20refer\x20t\
9839 o\x20a\x20repeated\x20field\x20itself\x20(i.e.\x20not\x20to\x20any\n\x20\
9840 \x20\x20particular\x20index\x20within\x20it).\x20\x20This\x20is\x20used\
9841 \x20whenever\x20a\x20set\x20of\x20elements\x20are\n\x20\x20\x20logically\
9842 \x20enclosed\x20in\x20a\x20single\x20code\x20segment.\x20\x20For\x20exam\
9843 ple,\x20an\x20entire\n\x20\x20\x20extend\x20block\x20(possibly\x20contai\
9844 ning\x20multiple\x20extension\x20definitions)\x20will\n\x20\x20\x20have\
9845 \x20an\x20outer\x20location\x20whose\x20path\x20refers\x20to\x20the\x20\
9846 \"extensions\"\x20repeated\n\x20\x20\x20field\x20without\x20an\x20index.\
9847 \n\x20-\x20Multiple\x20locations\x20may\x20have\x20the\x20same\x20path.\
9848 \x20\x20This\x20happens\x20when\x20a\x20single\n\x20\x20\x20logical\x20d\
9849 eclaration\x20is\x20spread\x20out\x20across\x20multiple\x20places.\x20\
9850 \x20The\x20most\n\x20\x20\x20obvious\x20example\x20is\x20the\x20\"extend\
9851 \"\x20block\x20again\x20--\x20there\x20may\x20be\x20multiple\n\x20\x20\
9852 \x20extend\x20blocks\x20in\x20the\x20same\x20scope,\x20each\x20of\x20whi\
9853 ch\x20will\x20have\x20the\x20same\x20path.\n\x20-\x20A\x20location's\x20\
9854 span\x20is\x20not\x20always\x20a\x20subset\x20of\x20its\x20parent's\x20s\
9855 pan.\x20\x20For\n\x20\x20\x20example,\x20the\x20\"extendee\"\x20of\x20an\
9856 \x20extension\x20declaration\x20appears\x20at\x20the\n\x20\x20\x20beginn\
9857 ing\x20of\x20the\x20\"extend\"\x20block\x20and\x20is\x20shared\x20by\x20\
9858 all\x20extensions\x20within\n\x20\x20\x20the\x20block.\n\x20-\x20Just\
9859 \x20because\x20a\x20location's\x20span\x20is\x20a\x20subset\x20of\x20som\
9860 e\x20other\x20location's\x20span\n\x20\x20\x20does\x20not\x20mean\x20tha\
9861 t\x20it\x20is\x20a\x20descendent.\x20\x20For\x20example,\x20a\x20\"group\
9862 \"\x20defines\n\x20\x20\x20both\x20a\x20type\x20and\x20a\x20field\x20in\
9863 \x20a\x20single\x20declaration.\x20\x20Thus,\x20the\x20locations\n\x20\
9864 \x20\x20corresponding\x20to\x20the\x20type\x20and\x20field\x20and\x20the\
9865 ir\x20components\x20will\x20overlap.\n\x20-\x20Code\x20which\x20tries\
9866 \x20to\x20interpret\x20locations\x20should\x20probably\x20be\x20designed\
9867 \x20to\n\x20\x20\x20ignore\x20those\x20that\x20it\x20doesn't\x20understa\
9868 nd,\x20as\x20more\x20types\x20of\x20locations\x20could\n\x20\x20\x20be\
9869 \x20recorded\x20in\x20the\x20future.\n\n\r\n\x05\x04\x12\x02\0\x04\x12\
9870 \x04\xb4\x05\x02\n\n\r\n\x05\x04\x12\x02\0\x06\x12\x04\xb4\x05\x0b\x13\n\
9871 \r\n\x05\x04\x12\x02\0\x01\x12\x04\xb4\x05\x14\x1c\n\r\n\x05\x04\x12\x02\
9872 \0\x03\x12\x04\xb4\x05\x1f\x20\n\x0e\n\x04\x04\x12\x03\0\x12\x06\xb5\x05\
9873 \x02\x88\x06\x03\n\r\n\x05\x04\x12\x03\0\x01\x12\x04\xb5\x05\n\x12\n\x83\
9874 \x07\n\x06\x04\x12\x03\0\x02\0\x12\x04\xcd\x05\x04*\x1a\xf2\x06\x20Ident\
9875 ifies\x20which\x20part\x20of\x20the\x20FileDescriptorProto\x20was\x20def\
9876 ined\x20at\x20this\n\x20location.\n\n\x20Each\x20element\x20is\x20a\x20f\
9877 ield\x20number\x20or\x20an\x20index.\x20\x20They\x20form\x20a\x20path\
9878 \x20from\n\x20the\x20root\x20FileDescriptorProto\x20to\x20the\x20place\
9879 \x20where\x20the\x20definition.\x20\x20For\n\x20example,\x20this\x20path\
9880 :\n\x20\x20\x20[\x204,\x203,\x202,\x207,\x201\x20]\n\x20refers\x20to:\n\
9881 \x20\x20\x20file.message_type(3)\x20\x20//\x204,\x203\n\x20\x20\x20\x20\
9882 \x20\x20\x20.field(7)\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x202,\x207\n\
9883 \x20\x20\x20\x20\x20\x20\x20.name()\x20\x20\x20\x20\x20\x20\x20\x20\x20\
9884 \x20\x20//\x201\n\x20This\x20is\x20because\x20FileDescriptorProto.messag\
9885 e_type\x20has\x20field\x20number\x204:\n\x20\x20\x20repeated\x20Descript\
9886 orProto\x20message_type\x20=\x204;\n\x20and\x20DescriptorProto.field\x20\
9887 has\x20field\x20number\x202:\n\x20\x20\x20repeated\x20FieldDescriptorPro\
9888 to\x20field\x20=\x202;\n\x20and\x20FieldDescriptorProto.name\x20has\x20f\
9889 ield\x20number\x201:\n\x20\x20\x20optional\x20string\x20name\x20=\x201;\
9890 \n\n\x20Thus,\x20the\x20above\x20path\x20gives\x20the\x20location\x20of\
9891 \x20a\x20field\x20name.\x20\x20If\x20we\x20removed\n\x20the\x20last\x20e\
9892 lement:\n\x20\x20\x20[\x204,\x203,\x202,\x207\x20]\n\x20this\x20path\x20\
9893 refers\x20to\x20the\x20whole\x20field\x20declaration\x20(from\x20the\x20\
9894 beginning\n\x20of\x20the\x20label\x20to\x20the\x20terminating\x20semicol\
9895 on).\n\n\x0f\n\x07\x04\x12\x03\0\x02\0\x04\x12\x04\xcd\x05\x04\x0c\n\x0f\
9896 \n\x07\x04\x12\x03\0\x02\0\x05\x12\x04\xcd\x05\r\x12\n\x0f\n\x07\x04\x12\
9897 \x03\0\x02\0\x01\x12\x04\xcd\x05\x13\x17\n\x0f\n\x07\x04\x12\x03\0\x02\0\
9898 \x03\x12\x04\xcd\x05\x1a\x1b\n\x0f\n\x07\x04\x12\x03\0\x02\0\x08\x12\x04\
9899 \xcd\x05\x1c)\n\x10\n\x08\x04\x12\x03\0\x02\0\x08\x02\x12\x04\xcd\x05\
9900 \x1d(\n\xd2\x02\n\x06\x04\x12\x03\0\x02\x01\x12\x04\xd4\x05\x04*\x1a\xc1\
9901 \x02\x20Always\x20has\x20exactly\x20three\x20or\x20four\x20elements:\x20\
9902 start\x20line,\x20start\x20column,\n\x20end\x20line\x20(optional,\x20oth\
9903 erwise\x20assumed\x20same\x20as\x20start\x20line),\x20end\x20column.\n\
9904 \x20These\x20are\x20packed\x20into\x20a\x20single\x20field\x20for\x20eff\
9905 iciency.\x20\x20Note\x20that\x20line\n\x20and\x20column\x20numbers\x20ar\
9906 e\x20zero-based\x20--\x20typically\x20you\x20will\x20want\x20to\x20add\n\
9907 \x201\x20to\x20each\x20before\x20displaying\x20to\x20a\x20user.\n\n\x0f\
9908 \n\x07\x04\x12\x03\0\x02\x01\x04\x12\x04\xd4\x05\x04\x0c\n\x0f\n\x07\x04\
9909 \x12\x03\0\x02\x01\x05\x12\x04\xd4\x05\r\x12\n\x0f\n\x07\x04\x12\x03\0\
9910 \x02\x01\x01\x12\x04\xd4\x05\x13\x17\n\x0f\n\x07\x04\x12\x03\0\x02\x01\
9911 \x03\x12\x04\xd4\x05\x1a\x1b\n\x0f\n\x07\x04\x12\x03\0\x02\x01\x08\x12\
9912 \x04\xd4\x05\x1c)\n\x10\n\x08\x04\x12\x03\0\x02\x01\x08\x02\x12\x04\xd4\
9913 \x05\x1d(\n\xa5\x0c\n\x06\x04\x12\x03\0\x02\x02\x12\x04\x85\x06\x04)\x1a\
9914 \x94\x0c\x20If\x20this\x20SourceCodeInfo\x20represents\x20a\x20complete\
9915 \x20declaration,\x20these\x20are\x20any\n\x20comments\x20appearing\x20be\
9916 fore\x20and\x20after\x20the\x20declaration\x20which\x20appear\x20to\x20b\
9917 e\n\x20attached\x20to\x20the\x20declaration.\n\n\x20A\x20series\x20of\
9918 \x20line\x20comments\x20appearing\x20on\x20consecutive\x20lines,\x20with\
9919 \x20no\x20other\n\x20tokens\x20appearing\x20on\x20those\x20lines,\x20wil\
9920 l\x20be\x20treated\x20as\x20a\x20single\x20comment.\n\n\x20leading_detac\
9921 hed_comments\x20will\x20keep\x20paragraphs\x20of\x20comments\x20that\x20\
9922 appear\n\x20before\x20(but\x20not\x20connected\x20to)\x20the\x20current\
9923 \x20element.\x20Each\x20paragraph,\n\x20separated\x20by\x20empty\x20line\
9924 s,\x20will\x20be\x20one\x20comment\x20element\x20in\x20the\x20repeated\n\
9925 \x20field.\n\n\x20Only\x20the\x20comment\x20content\x20is\x20provided;\
9926 \x20comment\x20markers\x20(e.g.\x20//)\x20are\n\x20stripped\x20out.\x20\
9927 \x20For\x20block\x20comments,\x20leading\x20whitespace\x20and\x20an\x20a\
9928 sterisk\n\x20will\x20be\x20stripped\x20from\x20the\x20beginning\x20of\
9929 \x20each\x20line\x20other\x20than\x20the\x20first.\n\x20Newlines\x20are\
9930 \x20included\x20in\x20the\x20output.\n\n\x20Examples:\n\n\x20\x20\x20opt\
9931 ional\x20int32\x20foo\x20=\x201;\x20\x20//\x20Comment\x20attached\x20to\
9932 \x20foo.\n\x20\x20\x20//\x20Comment\x20attached\x20to\x20bar.\n\x20\x20\
9933 \x20optional\x20int32\x20bar\x20=\x202;\n\n\x20\x20\x20optional\x20strin\
9934 g\x20baz\x20=\x203;\n\x20\x20\x20//\x20Comment\x20attached\x20to\x20baz.\
9935 \n\x20\x20\x20//\x20Another\x20line\x20attached\x20to\x20baz.\n\n\x20\
9936 \x20\x20//\x20Comment\x20attached\x20to\x20qux.\n\x20\x20\x20//\n\x20\
9937 \x20\x20//\x20Another\x20line\x20attached\x20to\x20qux.\n\x20\x20\x20opt\
9938 ional\x20double\x20qux\x20=\x204;\n\n\x20\x20\x20//\x20Detached\x20comme\
9939 nt\x20for\x20corge.\x20This\x20is\x20not\x20leading\x20or\x20trailing\
9940 \x20comments\n\x20\x20\x20//\x20to\x20qux\x20or\x20corge\x20because\x20t\
9941 here\x20are\x20blank\x20lines\x20separating\x20it\x20from\n\x20\x20\x20/\
9942 /\x20both.\n\n\x20\x20\x20//\x20Detached\x20comment\x20for\x20corge\x20p\
9943 aragraph\x202.\n\n\x20\x20\x20optional\x20string\x20corge\x20=\x205;\n\
9944 \x20\x20\x20/*\x20Block\x20comment\x20attached\n\x20\x20\x20\x20*\x20to\
9945 \x20corge.\x20\x20Leading\x20asterisks\n\x20\x20\x20\x20*\x20will\x20be\
9946 \x20removed.\x20*/\n\x20\x20\x20/*\x20Block\x20comment\x20attached\x20to\
9947 \n\x20\x20\x20\x20*\x20grault.\x20*/\n\x20\x20\x20optional\x20int32\x20g\
9948 rault\x20=\x206;\n\n\x20\x20\x20//\x20ignored\x20detached\x20comments.\n\
9949 \n\x0f\n\x07\x04\x12\x03\0\x02\x02\x04\x12\x04\x85\x06\x04\x0c\n\x0f\n\
9950 \x07\x04\x12\x03\0\x02\x02\x05\x12\x04\x85\x06\r\x13\n\x0f\n\x07\x04\x12\
9951 \x03\0\x02\x02\x01\x12\x04\x85\x06\x14$\n\x0f\n\x07\x04\x12\x03\0\x02\
9952 \x02\x03\x12\x04\x85\x06'(\n\x0e\n\x06\x04\x12\x03\0\x02\x03\x12\x04\x86\
9953 \x06\x04*\n\x0f\n\x07\x04\x12\x03\0\x02\x03\x04\x12\x04\x86\x06\x04\x0c\
9954 \n\x0f\n\x07\x04\x12\x03\0\x02\x03\x05\x12\x04\x86\x06\r\x13\n\x0f\n\x07\
9955 \x04\x12\x03\0\x02\x03\x01\x12\x04\x86\x06\x14%\n\x0f\n\x07\x04\x12\x03\
9956 \0\x02\x03\x03\x12\x04\x86\x06()\n\x0e\n\x06\x04\x12\x03\0\x02\x04\x12\
9957 \x04\x87\x06\x042\n\x0f\n\x07\x04\x12\x03\0\x02\x04\x04\x12\x04\x87\x06\
9958 \x04\x0c\n\x0f\n\x07\x04\x12\x03\0\x02\x04\x05\x12\x04\x87\x06\r\x13\n\
9959 \x0f\n\x07\x04\x12\x03\0\x02\x04\x01\x12\x04\x87\x06\x14-\n\x0f\n\x07\
9960 \x04\x12\x03\0\x02\x04\x03\x12\x04\x87\x0601\n\xee\x01\n\x02\x04\x13\x12\
9961 \x06\x8e\x06\0\xa3\x06\x01\x1a\xdf\x01\x20Describes\x20the\x20relationsh\
9962 ip\x20between\x20generated\x20code\x20and\x20its\x20original\x20source\n\
9963 \x20file.\x20A\x20GeneratedCodeInfo\x20message\x20is\x20associated\x20wi\
9964 th\x20only\x20one\x20generated\n\x20source\x20file,\x20but\x20may\x20con\
9965 tain\x20references\x20to\x20different\x20source\x20.proto\x20files.\n\n\
9966 \x0b\n\x03\x04\x13\x01\x12\x04\x8e\x06\x08\x19\nx\n\x04\x04\x13\x02\0\
9967 \x12\x04\x91\x06\x02%\x1aj\x20An\x20Annotation\x20connects\x20some\x20sp\
9968 an\x20of\x20text\x20in\x20generated\x20code\x20to\x20an\x20element\n\x20\
9969 of\x20its\x20generating\x20.proto\x20file.\n\n\r\n\x05\x04\x13\x02\0\x04\
9970 \x12\x04\x91\x06\x02\n\n\r\n\x05\x04\x13\x02\0\x06\x12\x04\x91\x06\x0b\
9971 \x15\n\r\n\x05\x04\x13\x02\0\x01\x12\x04\x91\x06\x16\x20\n\r\n\x05\x04\
9972 \x13\x02\0\x03\x12\x04\x91\x06#$\n\x0e\n\x04\x04\x13\x03\0\x12\x06\x92\
9973 \x06\x02\xa2\x06\x03\n\r\n\x05\x04\x13\x03\0\x01\x12\x04\x92\x06\n\x14\n\
9974 \x8f\x01\n\x06\x04\x13\x03\0\x02\0\x12\x04\x95\x06\x04*\x1a\x7f\x20Ident\
9975 ifies\x20the\x20element\x20in\x20the\x20original\x20source\x20.proto\x20\
9976 file.\x20This\x20field\n\x20is\x20formatted\x20the\x20same\x20as\x20Sour\
9977 ceCodeInfo.Location.path.\n\n\x0f\n\x07\x04\x13\x03\0\x02\0\x04\x12\x04\
9978 \x95\x06\x04\x0c\n\x0f\n\x07\x04\x13\x03\0\x02\0\x05\x12\x04\x95\x06\r\
9979 \x12\n\x0f\n\x07\x04\x13\x03\0\x02\0\x01\x12\x04\x95\x06\x13\x17\n\x0f\n\
9980 \x07\x04\x13\x03\0\x02\0\x03\x12\x04\x95\x06\x1a\x1b\n\x0f\n\x07\x04\x13\
9981 \x03\0\x02\0\x08\x12\x04\x95\x06\x1c)\n\x10\n\x08\x04\x13\x03\0\x02\0\
9982 \x08\x02\x12\x04\x95\x06\x1d(\nO\n\x06\x04\x13\x03\0\x02\x01\x12\x04\x98\
9983 \x06\x04$\x1a?\x20Identifies\x20the\x20filesystem\x20path\x20to\x20the\
9984 \x20original\x20source\x20.proto.\n\n\x0f\n\x07\x04\x13\x03\0\x02\x01\
9985 \x04\x12\x04\x98\x06\x04\x0c\n\x0f\n\x07\x04\x13\x03\0\x02\x01\x05\x12\
9986 \x04\x98\x06\r\x13\n\x0f\n\x07\x04\x13\x03\0\x02\x01\x01\x12\x04\x98\x06\
9987 \x14\x1f\n\x0f\n\x07\x04\x13\x03\0\x02\x01\x03\x12\x04\x98\x06\"#\nw\n\
9988 \x06\x04\x13\x03\0\x02\x02\x12\x04\x9c\x06\x04\x1d\x1ag\x20Identifies\
9989 \x20the\x20starting\x20offset\x20in\x20bytes\x20in\x20the\x20generated\
9990 \x20code\n\x20that\x20relates\x20to\x20the\x20identified\x20object.\n\n\
9991 \x0f\n\x07\x04\x13\x03\0\x02\x02\x04\x12\x04\x9c\x06\x04\x0c\n\x0f\n\x07\
9992 \x04\x13\x03\0\x02\x02\x05\x12\x04\x9c\x06\r\x12\n\x0f\n\x07\x04\x13\x03\
9993 \0\x02\x02\x01\x12\x04\x9c\x06\x13\x18\n\x0f\n\x07\x04\x13\x03\0\x02\x02\
9994 \x03\x12\x04\x9c\x06\x1b\x1c\n\xdb\x01\n\x06\x04\x13\x03\0\x02\x03\x12\
9995 \x04\xa1\x06\x04\x1b\x1a\xca\x01\x20Identifies\x20the\x20ending\x20offse\
9996 t\x20in\x20bytes\x20in\x20the\x20generated\x20code\x20that\n\x20relates\
9997 \x20to\x20the\x20identified\x20offset.\x20The\x20end\x20offset\x20should\
9998 \x20be\x20one\x20past\n\x20the\x20last\x20relevant\x20byte\x20(so\x20the\
9999 \x20length\x20of\x20the\x20text\x20=\x20end\x20-\x20begin).\n\n\x0f\n\
10000 \x07\x04\x13\x03\0\x02\x03\x04\x12\x04\xa1\x06\x04\x0c\n\x0f\n\x07\x04\
10001 \x13\x03\0\x02\x03\x05\x12\x04\xa1\x06\r\x12\n\x0f\n\x07\x04\x13\x03\0\
10002 \x02\x03\x01\x12\x04\xa1\x06\x13\x16\n\x0f\n\x07\x04\x13\x03\0\x02\x03\
10003 \x03\x12\x04\xa1\x06\x19\x1a\
10004";
10005
10006static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy {
10007 lock: ::protobuf::lazy::ONCE_INIT,
10008 ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto,
10009};
10010
10011fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
10012 ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap()
10013}
10014
10015pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
10016 unsafe {
10017 file_descriptor_proto_lazy.get(|| {
10018 parse_descriptor_proto()
10019 })
10020 }
10021}