diff options
author | Chih-Hung Hsieh <chh@google.com> | 2020-06-10 20:13:05 -0700 |
---|---|---|
committer | Chih-Hung Hsieh <chh@google.com> | 2020-06-10 20:13:05 -0700 |
commit | cfc3a2393e88971337346fd696518e9ea60aa2b8 (patch) | |
tree | 27da848698dcf5cab8eabb82e02b880eb1e100c4 /src/well_known_types | |
parent | e97eb59d5ef6d56df05edde7356c6310d9a2cbe3 (diff) | |
download | protobuf-cfc3a2393e88971337346fd696518e9ea60aa2b8.tar.gz |
Import protobuf-2.14.0
* Add OWNERS and Android.bp
* add generated version.rs into out
Bug: 143953733
Test: make
Change-Id: Ib53a973b74679c4dd78e2de2fa54141e55048c17
Diffstat (limited to 'src/well_known_types')
-rw-r--r-- | src/well_known_types/any.rs | 368 | ||||
-rw-r--r-- | src/well_known_types/api.rs | 1296 | ||||
-rw-r--r-- | src/well_known_types/duration.rs | 332 | ||||
-rw-r--r-- | src/well_known_types/empty.rs | 217 | ||||
-rw-r--r-- | src/well_known_types/field_mask.rs | 388 | ||||
-rw-r--r-- | src/well_known_types/mod.rs | 26 | ||||
-rw-r--r-- | src/well_known_types/source_context.rs | 258 | ||||
-rw-r--r-- | src/well_known_types/struct_pb.rs | 1028 | ||||
-rw-r--r-- | src/well_known_types/timestamp.rs | 335 | ||||
-rw-r--r-- | src/well_known_types/type_pb.rs | 2254 | ||||
-rw-r--r-- | src/well_known_types/wrappers.rs | 1597 |
11 files changed, 8099 insertions, 0 deletions
diff --git a/src/well_known_types/any.rs b/src/well_known_types/any.rs new file mode 100644 index 0000000..25166a0 --- /dev/null +++ b/src/well_known_types/any.rs @@ -0,0 +1,368 @@ +// This file is generated by rust-protobuf 2.14.0-pre. Do not edit +// @generated + +// https://github.com/rust-lang/rust-clippy/issues/702 +#![allow(unknown_lints)] +#![allow(clippy::all)] + +#![cfg_attr(rustfmt, rustfmt_skip)] + +#![allow(box_pointers)] +#![allow(dead_code)] +#![allow(missing_docs)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(non_upper_case_globals)] +#![allow(trivial_casts)] +#![allow(unsafe_code)] +#![allow(unused_imports)] +#![allow(unused_results)] +//! Generated file from `google/protobuf/any.proto` + +use protobuf::Message as Message_imported_for_functions; +use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Any { + // message fields + pub type_url: ::std::string::String, + pub value: ::std::vec::Vec<u8>, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Any { + fn default() -> &'a Any { + <Any as ::protobuf::Message>::default_instance() + } +} + +impl Any { + pub fn new() -> Any { + ::std::default::Default::default() + } + + // string type_url = 1; + + + pub fn get_type_url(&self) -> &str { + &self.type_url + } + pub fn clear_type_url(&mut self) { + self.type_url.clear(); + } + + // Param is passed by value, moved + pub fn set_type_url(&mut self, v: ::std::string::String) { + self.type_url = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_type_url(&mut self) -> &mut ::std::string::String { + &mut self.type_url + } + + // Take field + pub fn take_type_url(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.type_url, ::std::string::String::new()) + } + + // bytes value = 2; + + + pub fn get_value(&self) -> &[u8] { + &self.value + } + pub fn clear_value(&mut self) { + self.value.clear(); + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: ::std::vec::Vec<u8>) { + self.value = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_value(&mut self) -> &mut ::std::vec::Vec<u8> { + &mut self.value + } + + // Take field + pub fn take_value(&mut self) -> ::std::vec::Vec<u8> { + ::std::mem::replace(&mut self.value, ::std::vec::Vec::new()) + } +} + +impl ::protobuf::Message for Any { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.type_url)?; + }, + 2 => { + ::protobuf::rt::read_singular_proto3_bytes_into(wire_type, is, &mut self.value)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.type_url.is_empty() { + my_size += ::protobuf::rt::string_size(1, &self.type_url); + } + if !self.value.is_empty() { + my_size += ::protobuf::rt::bytes_size(2, &self.value); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.type_url.is_empty() { + os.write_string(1, &self.type_url)?; + } + if !self.value.is_empty() { + os.write_bytes(2, &self.value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Any { + Any::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "type_url", + |m: &Any| { &m.type_url }, + |m: &mut Any| { &mut m.type_url }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "value", + |m: &Any| { &m.value }, + |m: &mut Any| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Any>( + "Any", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Any { + static mut instance: ::protobuf::lazy::Lazy<Any> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Any::new) + } + } +} + +impl ::protobuf::Clear for Any { + fn clear(&mut self) { + self.type_url.clear(); + self.value.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Any { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Any { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x19google/protobuf/any.proto\x12\x0fgoogle.protobuf\"6\n\x03Any\x12\ + \x19\n\x08type_url\x18\x01\x20\x01(\tR\x07typeUrl\x12\x14\n\x05value\x18\ + \x02\x20\x01(\x0cR\x05valueBo\n\x13com.google.protobufB\x08AnyProtoP\x01\ + Z%github.com/golang/protobuf/ptypes/any\xa2\x02\x03GPB\xaa\x02\x1eGoogle\ + .Protobuf.WellKnownTypesJ\x8a&\n\x07\x12\x05\x1e\0\x8a\x01\x01\n\xcc\x0c\ + \n\x01\x0c\x12\x03\x1e\0\x122\xc1\x0c\x20Protocol\x20Buffers\x20-\x20Goo\ + gle's\x20data\x20interchange\x20format\n\x20Copyright\x202008\x20Google\ + \x20Inc.\x20\x20All\x20rights\x20reserved.\n\x20https://developers.googl\ + e.com/protocol-buffers/\n\n\x20Redistribution\x20and\x20use\x20in\x20sou\ + rce\x20and\x20binary\x20forms,\x20with\x20or\x20without\n\x20modificatio\ + n,\x20are\x20permitted\x20provided\x20that\x20the\x20following\x20condit\ + ions\x20are\n\x20met:\n\n\x20\x20\x20\x20\x20*\x20Redistributions\x20of\ + \x20source\x20code\x20must\x20retain\x20the\x20above\x20copyright\n\x20n\ + otice,\x20this\x20list\x20of\x20conditions\x20and\x20the\x20following\ + \x20disclaimer.\n\x20\x20\x20\x20\x20*\x20Redistributions\x20in\x20binar\ + y\x20form\x20must\x20reproduce\x20the\x20above\n\x20copyright\x20notice,\ + \x20this\x20list\x20of\x20conditions\x20and\x20the\x20following\x20discl\ + aimer\n\x20in\x20the\x20documentation\x20and/or\x20other\x20materials\ + \x20provided\x20with\x20the\n\x20distribution.\n\x20\x20\x20\x20\x20*\ + \x20Neither\x20the\x20name\x20of\x20Google\x20Inc.\x20nor\x20the\x20name\ + s\x20of\x20its\n\x20contributors\x20may\x20be\x20used\x20to\x20endorse\ + \x20or\x20promote\x20products\x20derived\x20from\n\x20this\x20software\ + \x20without\x20specific\x20prior\x20written\x20permission.\n\n\x20THIS\ + \x20SOFTWARE\x20IS\x20PROVIDED\x20BY\x20THE\x20COPYRIGHT\x20HOLDERS\x20A\ + ND\x20CONTRIBUTORS\n\x20\"AS\x20IS\"\x20AND\x20ANY\x20EXPRESS\x20OR\x20I\ + MPLIED\x20WARRANTIES,\x20INCLUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\ + \x20THE\x20IMPLIED\x20WARRANTIES\x20OF\x20MERCHANTABILITY\x20AND\x20FITN\ + ESS\x20FOR\n\x20A\x20PARTICULAR\x20PURPOSE\x20ARE\x20DISCLAIMED.\x20IN\ + \x20NO\x20EVENT\x20SHALL\x20THE\x20COPYRIGHT\n\x20OWNER\x20OR\x20CONTRIB\ + UTORS\x20BE\x20LIABLE\x20FOR\x20ANY\x20DIRECT,\x20INDIRECT,\x20INCIDENTA\ + L,\n\x20SPECIAL,\x20EXEMPLARY,\x20OR\x20CONSEQUENTIAL\x20DAMAGES\x20(INC\ + LUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\x20PROCUREMENT\x20OF\x20SUBSTI\ + TUTE\x20GOODS\x20OR\x20SERVICES;\x20LOSS\x20OF\x20USE,\n\x20DATA,\x20OR\ + \x20PROFITS;\x20OR\x20BUSINESS\x20INTERRUPTION)\x20HOWEVER\x20CAUSED\x20\ + AND\x20ON\x20ANY\n\x20THEORY\x20OF\x20LIABILITY,\x20WHETHER\x20IN\x20CON\ + TRACT,\x20STRICT\x20LIABILITY,\x20OR\x20TORT\n\x20(INCLUDING\x20NEGLIGEN\ + CE\x20OR\x20OTHERWISE)\x20ARISING\x20IN\x20ANY\x20WAY\x20OUT\x20OF\x20TH\ + E\x20USE\n\x20OF\x20THIS\x20SOFTWARE,\x20EVEN\x20IF\x20ADVISED\x20OF\x20\ + THE\x20POSSIBILITY\x20OF\x20SUCH\x20DAMAGE.\n\n\x08\n\x01\x02\x12\x03\ + \x20\0\x18\n\x08\n\x01\x08\x12\x03\"\0;\n\t\n\x02\x08%\x12\x03\"\0;\n\ + \x08\n\x01\x08\x12\x03#\0<\n\t\n\x02\x08\x0b\x12\x03#\0<\n\x08\n\x01\x08\ + \x12\x03$\0,\n\t\n\x02\x08\x01\x12\x03$\0,\n\x08\n\x01\x08\x12\x03%\0)\n\ + \t\n\x02\x08\x08\x12\x03%\0)\n\x08\n\x01\x08\x12\x03&\0\"\n\t\n\x02\x08\ + \n\x12\x03&\0\"\n\x08\n\x01\x08\x12\x03'\0!\n\t\n\x02\x08$\x12\x03'\0!\n\ + \x81\x0f\n\x02\x04\0\x12\x05o\0\x8a\x01\x01\x1a\xf3\x0e\x20`Any`\x20cont\ + ains\x20an\x20arbitrary\x20serialized\x20protocol\x20buffer\x20message\ + \x20along\x20with\x20a\n\x20URL\x20that\x20describes\x20the\x20type\x20o\ + f\x20the\x20serialized\x20message.\n\n\x20Protobuf\x20library\x20provide\ + s\x20support\x20to\x20pack/unpack\x20Any\x20values\x20in\x20the\x20form\ + \n\x20of\x20utility\x20functions\x20or\x20additional\x20generated\x20met\ + hods\x20of\x20the\x20Any\x20type.\n\n\x20Example\x201:\x20Pack\x20and\ + \x20unpack\x20a\x20message\x20in\x20C++.\n\n\x20\x20\x20\x20\x20Foo\x20f\ + oo\x20=\x20...;\n\x20\x20\x20\x20\x20Any\x20any;\n\x20\x20\x20\x20\x20an\ + y.PackFrom(foo);\n\x20\x20\x20\x20\x20...\n\x20\x20\x20\x20\x20if\x20(an\ + y.UnpackTo(&foo))\x20{\n\x20\x20\x20\x20\x20\x20\x20...\n\x20\x20\x20\ + \x20\x20}\n\n\x20Example\x202:\x20Pack\x20and\x20unpack\x20a\x20message\ + \x20in\x20Java.\n\n\x20\x20\x20\x20\x20Foo\x20foo\x20=\x20...;\n\x20\x20\ + \x20\x20\x20Any\x20any\x20=\x20Any.pack(foo);\n\x20\x20\x20\x20\x20...\n\ + \x20\x20\x20\x20\x20if\x20(any.is(Foo.class))\x20{\n\x20\x20\x20\x20\x20\ + \x20\x20foo\x20=\x20any.unpack(Foo.class);\n\x20\x20\x20\x20\x20}\n\n\ + \x20\x20Example\x203:\x20Pack\x20and\x20unpack\x20a\x20message\x20in\x20\ + Python.\n\n\x20\x20\x20\x20\x20foo\x20=\x20Foo(...)\n\x20\x20\x20\x20\ + \x20any\x20=\x20Any()\n\x20\x20\x20\x20\x20any.Pack(foo)\n\x20\x20\x20\ + \x20\x20...\n\x20\x20\x20\x20\x20if\x20any.Is(Foo.DESCRIPTOR):\n\x20\x20\ + \x20\x20\x20\x20\x20any.Unpack(foo)\n\x20\x20\x20\x20\x20\x20\x20...\n\n\ + \x20The\x20pack\x20methods\x20provided\x20by\x20protobuf\x20library\x20w\ + ill\x20by\x20default\x20use\n\x20'type.googleapis.com/full.type.name'\ + \x20as\x20the\x20type\x20URL\x20and\x20the\x20unpack\n\x20methods\x20onl\ + y\x20use\x20the\x20fully\x20qualified\x20type\x20name\x20after\x20the\ + \x20last\x20'/'\n\x20in\x20the\x20type\x20URL,\x20for\x20example\x20\"fo\ + o.bar.com/x/y.z\"\x20will\x20yield\x20type\n\x20name\x20\"y.z\".\n\n\n\ + \x20JSON\n\x20====\n\x20The\x20JSON\x20representation\x20of\x20an\x20`An\ + y`\x20value\x20uses\x20the\x20regular\n\x20representation\x20of\x20the\ + \x20deserialized,\x20embedded\x20message,\x20with\x20an\n\x20additional\ + \x20field\x20`@type`\x20which\x20contains\x20the\x20type\x20URL.\x20Exam\ + ple:\n\n\x20\x20\x20\x20\x20package\x20google.profile;\n\x20\x20\x20\x20\ + \x20message\x20Person\x20{\n\x20\x20\x20\x20\x20\x20\x20string\x20first_\ + name\x20=\x201;\n\x20\x20\x20\x20\x20\x20\x20string\x20last_name\x20=\ + \x202;\n\x20\x20\x20\x20\x20}\n\n\x20\x20\x20\x20\x20{\n\x20\x20\x20\x20\ + \x20\x20\x20\"@type\":\x20\"type.googleapis.com/google.profile.Person\",\ + \n\x20\x20\x20\x20\x20\x20\x20\"firstName\":\x20<string>,\n\x20\x20\x20\ + \x20\x20\x20\x20\"lastName\":\x20<string>\n\x20\x20\x20\x20\x20}\n\n\x20\ + If\x20the\x20embedded\x20message\x20type\x20is\x20well-known\x20and\x20h\ + as\x20a\x20custom\x20JSON\n\x20representation,\x20that\x20representation\ + \x20will\x20be\x20embedded\x20adding\x20a\x20field\n\x20`value`\x20which\ + \x20holds\x20the\x20custom\x20JSON\x20in\x20addition\x20to\x20the\x20`@t\ + ype`\n\x20field.\x20Example\x20(for\x20message\x20[google.protobuf.Durat\ + ion][]):\n\n\x20\x20\x20\x20\x20{\n\x20\x20\x20\x20\x20\x20\x20\"@type\"\ + :\x20\"type.googleapis.com/google.protobuf.Duration\",\n\x20\x20\x20\x20\ + \x20\x20\x20\"value\":\x20\"1.212s\"\n\x20\x20\x20\x20\x20}\n\n\n\n\n\ + \x03\x04\0\x01\x12\x03o\x08\x0b\n\xe4\x07\n\x04\x04\0\x02\0\x12\x04\x86\ + \x01\x02\x16\x1a\xd5\x07\x20A\x20URL/resource\x20name\x20whose\x20conten\ + t\x20describes\x20the\x20type\x20of\x20the\n\x20serialized\x20protocol\ + \x20buffer\x20message.\n\n\x20For\x20URLs\x20which\x20use\x20the\x20sche\ + me\x20`http`,\x20`https`,\x20or\x20no\x20scheme,\x20the\n\x20following\ + \x20restrictions\x20and\x20interpretations\x20apply:\n\n\x20*\x20If\x20n\ + o\x20scheme\x20is\x20provided,\x20`https`\x20is\x20assumed.\n\x20*\x20Th\ + e\x20last\x20segment\x20of\x20the\x20URL's\x20path\x20must\x20represent\ + \x20the\x20fully\n\x20\x20\x20qualified\x20name\x20of\x20the\x20type\x20\ + (as\x20in\x20`path/google.protobuf.Duration`).\n\x20\x20\x20The\x20name\ + \x20should\x20be\x20in\x20a\x20canonical\x20form\x20(e.g.,\x20leading\ + \x20\".\"\x20is\n\x20\x20\x20not\x20accepted).\n\x20*\x20An\x20HTTP\x20G\ + ET\x20on\x20the\x20URL\x20must\x20yield\x20a\x20[google.protobuf.Type][]\ + \n\x20\x20\x20value\x20in\x20binary\x20format,\x20or\x20produce\x20an\ + \x20error.\n\x20*\x20Applications\x20are\x20allowed\x20to\x20cache\x20lo\ + okup\x20results\x20based\x20on\x20the\n\x20\x20\x20URL,\x20or\x20have\ + \x20them\x20precompiled\x20into\x20a\x20binary\x20to\x20avoid\x20any\n\ + \x20\x20\x20lookup.\x20Therefore,\x20binary\x20compatibility\x20needs\ + \x20to\x20be\x20preserved\n\x20\x20\x20on\x20changes\x20to\x20types.\x20\ + (Use\x20versioned\x20type\x20names\x20to\x20manage\n\x20\x20\x20breaking\ + \x20changes.)\n\n\x20Schemes\x20other\x20than\x20`http`,\x20`https`\x20(\ + or\x20the\x20empty\x20scheme)\x20might\x20be\n\x20used\x20with\x20implem\ + entation\x20specific\x20semantics.\n\n\n\r\n\x05\x04\0\x02\0\x05\x12\x04\ + \x86\x01\x02\x08\n\r\n\x05\x04\0\x02\0\x01\x12\x04\x86\x01\t\x11\n\r\n\ + \x05\x04\0\x02\0\x03\x12\x04\x86\x01\x14\x15\nW\n\x04\x04\0\x02\x01\x12\ + \x04\x89\x01\x02\x12\x1aI\x20Must\x20be\x20a\x20valid\x20serialized\x20p\ + rotocol\x20buffer\x20of\x20the\x20above\x20specified\x20type.\n\n\r\n\ + \x05\x04\0\x02\x01\x05\x12\x04\x89\x01\x02\x07\n\r\n\x05\x04\0\x02\x01\ + \x01\x12\x04\x89\x01\x08\r\n\r\n\x05\x04\0\x02\x01\x03\x12\x04\x89\x01\ + \x10\x11b\x06proto3\ +"; + +static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT; + +fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { + ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() +} + +pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { + unsafe { + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) + } +} diff --git a/src/well_known_types/api.rs b/src/well_known_types/api.rs new file mode 100644 index 0000000..c4848f2 --- /dev/null +++ b/src/well_known_types/api.rs @@ -0,0 +1,1296 @@ +// This file is generated by rust-protobuf 2.14.0-pre. Do not edit +// @generated + +// https://github.com/rust-lang/rust-clippy/issues/702 +#![allow(unknown_lints)] +#![allow(clippy::all)] + +#![cfg_attr(rustfmt, rustfmt_skip)] + +#![allow(box_pointers)] +#![allow(dead_code)] +#![allow(missing_docs)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(non_upper_case_globals)] +#![allow(trivial_casts)] +#![allow(unsafe_code)] +#![allow(unused_imports)] +#![allow(unused_results)] +//! Generated file from `google/protobuf/api.proto` + +use protobuf::Message as Message_imported_for_functions; +use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Api { + // message fields + pub name: ::std::string::String, + pub methods: ::protobuf::RepeatedField<Method>, + pub options: ::protobuf::RepeatedField<::protobuf::well_known_types::Option>, + pub version: ::std::string::String, + pub source_context: ::protobuf::SingularPtrField<::protobuf::well_known_types::SourceContext>, + pub mixins: ::protobuf::RepeatedField<Mixin>, + pub syntax: ::protobuf::well_known_types::Syntax, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Api { + fn default() -> &'a Api { + <Api as ::protobuf::Message>::default_instance() + } +} + +impl Api { + pub fn new() -> Api { + ::std::default::Default::default() + } + + // string name = 1; + + + pub fn get_name(&self) -> &str { + &self.name + } + pub fn clear_name(&mut self) { + self.name.clear(); + } + + // Param is passed by value, moved + pub fn set_name(&mut self, v: ::std::string::String) { + self.name = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_name(&mut self) -> &mut ::std::string::String { + &mut self.name + } + + // Take field + pub fn take_name(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.name, ::std::string::String::new()) + } + + // repeated .google.protobuf.Method methods = 2; + + + pub fn get_methods(&self) -> &[Method] { + &self.methods + } + pub fn clear_methods(&mut self) { + self.methods.clear(); + } + + // Param is passed by value, moved + pub fn set_methods(&mut self, v: ::protobuf::RepeatedField<Method>) { + self.methods = v; + } + + // Mutable pointer to the field. + pub fn mut_methods(&mut self) -> &mut ::protobuf::RepeatedField<Method> { + &mut self.methods + } + + // Take field + pub fn take_methods(&mut self) -> ::protobuf::RepeatedField<Method> { + ::std::mem::replace(&mut self.methods, ::protobuf::RepeatedField::new()) + } + + // repeated .google.protobuf.Option options = 3; + + + pub fn get_options(&self) -> &[::protobuf::well_known_types::Option] { + &self.options + } + pub fn clear_options(&mut self) { + self.options.clear(); + } + + // Param is passed by value, moved + pub fn set_options(&mut self, v: ::protobuf::RepeatedField<::protobuf::well_known_types::Option>) { + self.options = v; + } + + // Mutable pointer to the field. + pub fn mut_options(&mut self) -> &mut ::protobuf::RepeatedField<::protobuf::well_known_types::Option> { + &mut self.options + } + + // Take field + pub fn take_options(&mut self) -> ::protobuf::RepeatedField<::protobuf::well_known_types::Option> { + ::std::mem::replace(&mut self.options, ::protobuf::RepeatedField::new()) + } + + // string version = 4; + + + pub fn get_version(&self) -> &str { + &self.version + } + pub fn clear_version(&mut self) { + self.version.clear(); + } + + // Param is passed by value, moved + pub fn set_version(&mut self, v: ::std::string::String) { + self.version = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_version(&mut self) -> &mut ::std::string::String { + &mut self.version + } + + // Take field + pub fn take_version(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.version, ::std::string::String::new()) + } + + // .google.protobuf.SourceContext source_context = 5; + + + pub fn get_source_context(&self) -> &::protobuf::well_known_types::SourceContext { + self.source_context.as_ref().unwrap_or_else(|| ::protobuf::well_known_types::SourceContext::default_instance()) + } + pub fn clear_source_context(&mut self) { + self.source_context.clear(); + } + + pub fn has_source_context(&self) -> bool { + self.source_context.is_some() + } + + // Param is passed by value, moved + pub fn set_source_context(&mut self, v: ::protobuf::well_known_types::SourceContext) { + self.source_context = ::protobuf::SingularPtrField::some(v); + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_source_context(&mut self) -> &mut ::protobuf::well_known_types::SourceContext { + if self.source_context.is_none() { + self.source_context.set_default(); + } + self.source_context.as_mut().unwrap() + } + + // Take field + pub fn take_source_context(&mut self) -> ::protobuf::well_known_types::SourceContext { + self.source_context.take().unwrap_or_else(|| ::protobuf::well_known_types::SourceContext::new()) + } + + // repeated .google.protobuf.Mixin mixins = 6; + + + pub fn get_mixins(&self) -> &[Mixin] { + &self.mixins + } + pub fn clear_mixins(&mut self) { + self.mixins.clear(); + } + + // Param is passed by value, moved + pub fn set_mixins(&mut self, v: ::protobuf::RepeatedField<Mixin>) { + self.mixins = v; + } + + // Mutable pointer to the field. + pub fn mut_mixins(&mut self) -> &mut ::protobuf::RepeatedField<Mixin> { + &mut self.mixins + } + + // Take field + pub fn take_mixins(&mut self) -> ::protobuf::RepeatedField<Mixin> { + ::std::mem::replace(&mut self.mixins, ::protobuf::RepeatedField::new()) + } + + // .google.protobuf.Syntax syntax = 7; + + + pub fn get_syntax(&self) -> ::protobuf::well_known_types::Syntax { + self.syntax + } + pub fn clear_syntax(&mut self) { + self.syntax = ::protobuf::well_known_types::Syntax::SYNTAX_PROTO2; + } + + // Param is passed by value, moved + pub fn set_syntax(&mut self, v: ::protobuf::well_known_types::Syntax) { + self.syntax = v; + } +} + +impl ::protobuf::Message for Api { + fn is_initialized(&self) -> bool { + for v in &self.methods { + if !v.is_initialized() { + return false; + } + }; + for v in &self.options { + if !v.is_initialized() { + return false; + } + }; + for v in &self.source_context { + if !v.is_initialized() { + return false; + } + }; + for v in &self.mixins { + if !v.is_initialized() { + return false; + } + }; + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?; + }, + 2 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.methods)?; + }, + 3 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.options)?; + }, + 4 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.version)?; + }, + 5 => { + ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.source_context)?; + }, + 6 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.mixins)?; + }, + 7 => { + ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.syntax, 7, &mut self.unknown_fields)? + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.name.is_empty() { + my_size += ::protobuf::rt::string_size(1, &self.name); + } + for value in &self.methods { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + for value in &self.options { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + if !self.version.is_empty() { + my_size += ::protobuf::rt::string_size(4, &self.version); + } + if let Some(ref v) = self.source_context.as_ref() { + let len = v.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + } + for value in &self.mixins { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + if self.syntax != ::protobuf::well_known_types::Syntax::SYNTAX_PROTO2 { + my_size += ::protobuf::rt::enum_size(7, self.syntax); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.name.is_empty() { + os.write_string(1, &self.name)?; + } + for v in &self.methods { + os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + for v in &self.options { + os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + if !self.version.is_empty() { + os.write_string(4, &self.version)?; + } + if let Some(ref v) = self.source_context.as_ref() { + os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + } + for v in &self.mixins { + os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + if self.syntax != ::protobuf::well_known_types::Syntax::SYNTAX_PROTO2 { + os.write_enum(7, self.syntax.value())?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Api { + Api::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &Api| { &m.name }, + |m: &mut Api| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Method>>( + "methods", + |m: &Api| { &m.methods }, + |m: &mut Api| { &mut m.methods }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Option>>( + "options", + |m: &Api| { &m.options }, + |m: &mut Api| { &mut m.options }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "version", + |m: &Api| { &m.version }, + |m: &mut Api| { &mut m.version }, + )); + fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::SourceContext>>( + "source_context", + |m: &Api| { &m.source_context }, + |m: &mut Api| { &mut m.source_context }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Mixin>>( + "mixins", + |m: &Api| { &m.mixins }, + |m: &mut Api| { &mut m.mixins }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<::protobuf::well_known_types::Syntax>>( + "syntax", + |m: &Api| { &m.syntax }, + |m: &mut Api| { &mut m.syntax }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Api>( + "Api", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Api { + static mut instance: ::protobuf::lazy::Lazy<Api> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Api::new) + } + } +} + +impl ::protobuf::Clear for Api { + fn clear(&mut self) { + self.name.clear(); + self.methods.clear(); + self.options.clear(); + self.version.clear(); + self.source_context.clear(); + self.mixins.clear(); + self.syntax = ::protobuf::well_known_types::Syntax::SYNTAX_PROTO2; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Api { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Api { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Method { + // message fields + pub name: ::std::string::String, + pub request_type_url: ::std::string::String, + pub request_streaming: bool, + pub response_type_url: ::std::string::String, + pub response_streaming: bool, + pub options: ::protobuf::RepeatedField<::protobuf::well_known_types::Option>, + pub syntax: ::protobuf::well_known_types::Syntax, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Method { + fn default() -> &'a Method { + <Method as ::protobuf::Message>::default_instance() + } +} + +impl Method { + pub fn new() -> Method { + ::std::default::Default::default() + } + + // string name = 1; + + + pub fn get_name(&self) -> &str { + &self.name + } + pub fn clear_name(&mut self) { + self.name.clear(); + } + + // Param is passed by value, moved + pub fn set_name(&mut self, v: ::std::string::String) { + self.name = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_name(&mut self) -> &mut ::std::string::String { + &mut self.name + } + + // Take field + pub fn take_name(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.name, ::std::string::String::new()) + } + + // string request_type_url = 2; + + + pub fn get_request_type_url(&self) -> &str { + &self.request_type_url + } + pub fn clear_request_type_url(&mut self) { + self.request_type_url.clear(); + } + + // Param is passed by value, moved + pub fn set_request_type_url(&mut self, v: ::std::string::String) { + self.request_type_url = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_request_type_url(&mut self) -> &mut ::std::string::String { + &mut self.request_type_url + } + + // Take field + pub fn take_request_type_url(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.request_type_url, ::std::string::String::new()) + } + + // bool request_streaming = 3; + + + pub fn get_request_streaming(&self) -> bool { + self.request_streaming + } + pub fn clear_request_streaming(&mut self) { + self.request_streaming = false; + } + + // Param is passed by value, moved + pub fn set_request_streaming(&mut self, v: bool) { + self.request_streaming = v; + } + + // string response_type_url = 4; + + + pub fn get_response_type_url(&self) -> &str { + &self.response_type_url + } + pub fn clear_response_type_url(&mut self) { + self.response_type_url.clear(); + } + + // Param is passed by value, moved + pub fn set_response_type_url(&mut self, v: ::std::string::String) { + self.response_type_url = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_response_type_url(&mut self) -> &mut ::std::string::String { + &mut self.response_type_url + } + + // Take field + pub fn take_response_type_url(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.response_type_url, ::std::string::String::new()) + } + + // bool response_streaming = 5; + + + pub fn get_response_streaming(&self) -> bool { + self.response_streaming + } + pub fn clear_response_streaming(&mut self) { + self.response_streaming = false; + } + + // Param is passed by value, moved + pub fn set_response_streaming(&mut self, v: bool) { + self.response_streaming = v; + } + + // repeated .google.protobuf.Option options = 6; + + + pub fn get_options(&self) -> &[::protobuf::well_known_types::Option] { + &self.options + } + pub fn clear_options(&mut self) { + self.options.clear(); + } + + // Param is passed by value, moved + pub fn set_options(&mut self, v: ::protobuf::RepeatedField<::protobuf::well_known_types::Option>) { + self.options = v; + } + + // Mutable pointer to the field. + pub fn mut_options(&mut self) -> &mut ::protobuf::RepeatedField<::protobuf::well_known_types::Option> { + &mut self.options + } + + // Take field + pub fn take_options(&mut self) -> ::protobuf::RepeatedField<::protobuf::well_known_types::Option> { + ::std::mem::replace(&mut self.options, ::protobuf::RepeatedField::new()) + } + + // .google.protobuf.Syntax syntax = 7; + + + pub fn get_syntax(&self) -> ::protobuf::well_known_types::Syntax { + self.syntax + } + pub fn clear_syntax(&mut self) { + self.syntax = ::protobuf::well_known_types::Syntax::SYNTAX_PROTO2; + } + + // Param is passed by value, moved + pub fn set_syntax(&mut self, v: ::protobuf::well_known_types::Syntax) { + self.syntax = v; + } +} + +impl ::protobuf::Message for Method { + fn is_initialized(&self) -> bool { + for v in &self.options { + if !v.is_initialized() { + return false; + } + }; + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?; + }, + 2 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.request_type_url)?; + }, + 3 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.request_streaming = tmp; + }, + 4 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.response_type_url)?; + }, + 5 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.response_streaming = tmp; + }, + 6 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.options)?; + }, + 7 => { + ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.syntax, 7, &mut self.unknown_fields)? + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.name.is_empty() { + my_size += ::protobuf::rt::string_size(1, &self.name); + } + if !self.request_type_url.is_empty() { + my_size += ::protobuf::rt::string_size(2, &self.request_type_url); + } + if self.request_streaming != false { + my_size += 2; + } + if !self.response_type_url.is_empty() { + my_size += ::protobuf::rt::string_size(4, &self.response_type_url); + } + if self.response_streaming != false { + my_size += 2; + } + for value in &self.options { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + if self.syntax != ::protobuf::well_known_types::Syntax::SYNTAX_PROTO2 { + my_size += ::protobuf::rt::enum_size(7, self.syntax); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.name.is_empty() { + os.write_string(1, &self.name)?; + } + if !self.request_type_url.is_empty() { + os.write_string(2, &self.request_type_url)?; + } + if self.request_streaming != false { + os.write_bool(3, self.request_streaming)?; + } + if !self.response_type_url.is_empty() { + os.write_string(4, &self.response_type_url)?; + } + if self.response_streaming != false { + os.write_bool(5, self.response_streaming)?; + } + for v in &self.options { + os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + if self.syntax != ::protobuf::well_known_types::Syntax::SYNTAX_PROTO2 { + os.write_enum(7, self.syntax.value())?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Method { + Method::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &Method| { &m.name }, + |m: &mut Method| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "request_type_url", + |m: &Method| { &m.request_type_url }, + |m: &mut Method| { &mut m.request_type_url }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "request_streaming", + |m: &Method| { &m.request_streaming }, + |m: &mut Method| { &mut m.request_streaming }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "response_type_url", + |m: &Method| { &m.response_type_url }, + |m: &mut Method| { &mut m.response_type_url }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "response_streaming", + |m: &Method| { &m.response_streaming }, + |m: &mut Method| { &mut m.response_streaming }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Option>>( + "options", + |m: &Method| { &m.options }, + |m: &mut Method| { &mut m.options }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<::protobuf::well_known_types::Syntax>>( + "syntax", + |m: &Method| { &m.syntax }, + |m: &mut Method| { &mut m.syntax }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Method>( + "Method", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Method { + static mut instance: ::protobuf::lazy::Lazy<Method> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Method::new) + } + } +} + +impl ::protobuf::Clear for Method { + fn clear(&mut self) { + self.name.clear(); + self.request_type_url.clear(); + self.request_streaming = false; + self.response_type_url.clear(); + self.response_streaming = false; + self.options.clear(); + self.syntax = ::protobuf::well_known_types::Syntax::SYNTAX_PROTO2; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Method { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Method { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Mixin { + // message fields + pub name: ::std::string::String, + pub root: ::std::string::String, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Mixin { + fn default() -> &'a Mixin { + <Mixin as ::protobuf::Message>::default_instance() + } +} + +impl Mixin { + pub fn new() -> Mixin { + ::std::default::Default::default() + } + + // string name = 1; + + + pub fn get_name(&self) -> &str { + &self.name + } + pub fn clear_name(&mut self) { + self.name.clear(); + } + + // Param is passed by value, moved + pub fn set_name(&mut self, v: ::std::string::String) { + self.name = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_name(&mut self) -> &mut ::std::string::String { + &mut self.name + } + + // Take field + pub fn take_name(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.name, ::std::string::String::new()) + } + + // string root = 2; + + + pub fn get_root(&self) -> &str { + &self.root + } + pub fn clear_root(&mut self) { + self.root.clear(); + } + + // Param is passed by value, moved + pub fn set_root(&mut self, v: ::std::string::String) { + self.root = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_root(&mut self) -> &mut ::std::string::String { + &mut self.root + } + + // Take field + pub fn take_root(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.root, ::std::string::String::new()) + } +} + +impl ::protobuf::Message for Mixin { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?; + }, + 2 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.root)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.name.is_empty() { + my_size += ::protobuf::rt::string_size(1, &self.name); + } + if !self.root.is_empty() { + my_size += ::protobuf::rt::string_size(2, &self.root); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.name.is_empty() { + os.write_string(1, &self.name)?; + } + if !self.root.is_empty() { + os.write_string(2, &self.root)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Mixin { + Mixin::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &Mixin| { &m.name }, + |m: &mut Mixin| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "root", + |m: &Mixin| { &m.root }, + |m: &mut Mixin| { &mut m.root }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Mixin>( + "Mixin", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Mixin { + static mut instance: ::protobuf::lazy::Lazy<Mixin> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Mixin::new) + } + } +} + +impl ::protobuf::Clear for Mixin { + fn clear(&mut self) { + self.name.clear(); + self.root.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Mixin { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Mixin { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x19google/protobuf/api.proto\x12\x0fgoogle.protobuf\x1a$google/protob\ + uf/source_context.proto\x1a\x1agoogle/protobuf/type.proto\"\xc1\x02\n\ + \x03Api\x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\x121\n\x07methods\ + \x18\x02\x20\x03(\x0b2\x17.google.protobuf.MethodR\x07methods\x121\n\x07\ + options\x18\x03\x20\x03(\x0b2\x17.google.protobuf.OptionR\x07options\x12\ + \x18\n\x07version\x18\x04\x20\x01(\tR\x07version\x12E\n\x0esource_contex\ + t\x18\x05\x20\x01(\x0b2\x1e.google.protobuf.SourceContextR\rsourceContex\ + t\x12.\n\x06mixins\x18\x06\x20\x03(\x0b2\x16.google.protobuf.MixinR\x06m\ + ixins\x12/\n\x06syntax\x18\x07\x20\x01(\x0e2\x17.google.protobuf.SyntaxR\ + \x06syntax\"\xb2\x02\n\x06Method\x12\x12\n\x04name\x18\x01\x20\x01(\tR\ + \x04name\x12(\n\x10request_type_url\x18\x02\x20\x01(\tR\x0erequestTypeUr\ + l\x12+\n\x11request_streaming\x18\x03\x20\x01(\x08R\x10requestStreaming\ + \x12*\n\x11response_type_url\x18\x04\x20\x01(\tR\x0fresponseTypeUrl\x12-\ + \n\x12response_streaming\x18\x05\x20\x01(\x08R\x11responseStreaming\x121\ + \n\x07options\x18\x06\x20\x03(\x0b2\x17.google.protobuf.OptionR\x07optio\ + ns\x12/\n\x06syntax\x18\x07\x20\x01(\x0e2\x17.google.protobuf.SyntaxR\ + \x06syntax\"/\n\x05Mixin\x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\ + \x12\x12\n\x04root\x18\x02\x20\x01(\tR\x04rootBH\n\x13com.google.protobu\ + fB\x08ApiProtoP\x01\xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.WellKnownT\ + ypesJ\xa97\n\x07\x12\x05\x1e\0\xc8\x01\x01\n\xcc\x0c\n\x01\x0c\x12\x03\ + \x1e\0\x122\xc1\x0c\x20Protocol\x20Buffers\x20-\x20Google's\x20data\x20i\ + nterchange\x20format\n\x20Copyright\x202008\x20Google\x20Inc.\x20\x20All\ + \x20rights\x20reserved.\n\x20https://developers.google.com/protocol-buff\ + ers/\n\n\x20Redistribution\x20and\x20use\x20in\x20source\x20and\x20binar\ + y\x20forms,\x20with\x20or\x20without\n\x20modification,\x20are\x20permit\ + ted\x20provided\x20that\x20the\x20following\x20conditions\x20are\n\x20me\ + t:\n\n\x20\x20\x20\x20\x20*\x20Redistributions\x20of\x20source\x20code\ + \x20must\x20retain\x20the\x20above\x20copyright\n\x20notice,\x20this\x20\ + list\x20of\x20conditions\x20and\x20the\x20following\x20disclaimer.\n\x20\ + \x20\x20\x20\x20*\x20Redistributions\x20in\x20binary\x20form\x20must\x20\ + reproduce\x20the\x20above\n\x20copyright\x20notice,\x20this\x20list\x20o\ + f\x20conditions\x20and\x20the\x20following\x20disclaimer\n\x20in\x20the\ + \x20documentation\x20and/or\x20other\x20materials\x20provided\x20with\ + \x20the\n\x20distribution.\n\x20\x20\x20\x20\x20*\x20Neither\x20the\x20n\ + ame\x20of\x20Google\x20Inc.\x20nor\x20the\x20names\x20of\x20its\n\x20con\ + tributors\x20may\x20be\x20used\x20to\x20endorse\x20or\x20promote\x20prod\ + ucts\x20derived\x20from\n\x20this\x20software\x20without\x20specific\x20\ + prior\x20written\x20permission.\n\n\x20THIS\x20SOFTWARE\x20IS\x20PROVIDE\ + D\x20BY\x20THE\x20COPYRIGHT\x20HOLDERS\x20AND\x20CONTRIBUTORS\n\x20\"AS\ + \x20IS\"\x20AND\x20ANY\x20EXPRESS\x20OR\x20IMPLIED\x20WARRANTIES,\x20INC\ + LUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\x20THE\x20IMPLIED\x20WARRANTIE\ + S\x20OF\x20MERCHANTABILITY\x20AND\x20FITNESS\x20FOR\n\x20A\x20PARTICULAR\ + \x20PURPOSE\x20ARE\x20DISCLAIMED.\x20IN\x20NO\x20EVENT\x20SHALL\x20THE\ + \x20COPYRIGHT\n\x20OWNER\x20OR\x20CONTRIBUTORS\x20BE\x20LIABLE\x20FOR\ + \x20ANY\x20DIRECT,\x20INDIRECT,\x20INCIDENTAL,\n\x20SPECIAL,\x20EXEMPLAR\ + Y,\x20OR\x20CONSEQUENTIAL\x20DAMAGES\x20(INCLUDING,\x20BUT\x20NOT\n\x20L\ + IMITED\x20TO,\x20PROCUREMENT\x20OF\x20SUBSTITUTE\x20GOODS\x20OR\x20SERVI\ + CES;\x20LOSS\x20OF\x20USE,\n\x20DATA,\x20OR\x20PROFITS;\x20OR\x20BUSINES\ + S\x20INTERRUPTION)\x20HOWEVER\x20CAUSED\x20AND\x20ON\x20ANY\n\x20THEORY\ + \x20OF\x20LIABILITY,\x20WHETHER\x20IN\x20CONTRACT,\x20STRICT\x20LIABILIT\ + Y,\x20OR\x20TORT\n\x20(INCLUDING\x20NEGLIGENCE\x20OR\x20OTHERWISE)\x20AR\ + ISING\x20IN\x20ANY\x20WAY\x20OUT\x20OF\x20THE\x20USE\n\x20OF\x20THIS\x20\ + SOFTWARE,\x20EVEN\x20IF\x20ADVISED\x20OF\x20THE\x20POSSIBILITY\x20OF\x20\ + SUCH\x20DAMAGE.\n\n\x08\n\x01\x02\x12\x03\x20\0\x18\n\t\n\x02\x03\0\x12\ + \x03\"\0.\n\t\n\x02\x03\x01\x12\x03#\0$\n\x08\n\x01\x08\x12\x03%\0;\n\t\ + \n\x02\x08%\x12\x03%\0;\n\x08\n\x01\x08\x12\x03&\0,\n\t\n\x02\x08\x01\ + \x12\x03&\0,\n\x08\n\x01\x08\x12\x03'\0)\n\t\n\x02\x08\x08\x12\x03'\0)\n\ + \x08\n\x01\x08\x12\x03(\0\"\n\t\n\x02\x08\n\x12\x03(\0\"\n\x08\n\x01\x08\ + \x12\x03)\0!\n\t\n\x02\x08$\x12\x03)\0!\nM\n\x02\x04\0\x12\x04,\0Y\x01\ + \x1aA\x20Api\x20is\x20a\x20light-weight\x20descriptor\x20for\x20a\x20pro\ + tocol\x20buffer\x20service.\n\n\n\n\x03\x04\0\x01\x12\x03,\x08\x0b\no\n\ + \x04\x04\0\x02\0\x12\x030\x02\x12\x1ab\x20The\x20fully\x20qualified\x20n\ + ame\x20of\x20this\x20api,\x20including\x20package\x20name\n\x20followed\ + \x20by\x20the\x20api's\x20simple\x20name.\n\n\x0c\n\x05\x04\0\x02\0\x05\ + \x12\x030\x02\x08\n\x0c\n\x05\x04\0\x02\0\x01\x12\x030\t\r\n\x0c\n\x05\ + \x04\0\x02\0\x03\x12\x030\x10\x11\n=\n\x04\x04\0\x02\x01\x12\x033\x02\ + \x1e\x1a0\x20The\x20methods\x20of\x20this\x20api,\x20in\x20unspecified\ + \x20order.\n\n\x0c\n\x05\x04\0\x02\x01\x04\x12\x033\x02\n\n\x0c\n\x05\ + \x04\0\x02\x01\x06\x12\x033\x0b\x11\n\x0c\n\x05\x04\0\x02\x01\x01\x12\ + \x033\x12\x19\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x033\x1c\x1d\n0\n\x04\ + \x04\0\x02\x02\x12\x036\x02\x1e\x1a#\x20Any\x20metadata\x20attached\x20t\ + o\x20the\x20API.\n\n\x0c\n\x05\x04\0\x02\x02\x04\x12\x036\x02\n\n\x0c\n\ + \x05\x04\0\x02\x02\x06\x12\x036\x0b\x11\n\x0c\n\x05\x04\0\x02\x02\x01\ + \x12\x036\x12\x19\n\x0c\n\x05\x04\0\x02\x02\x03\x12\x036\x1c\x1d\n\xf2\ + \x07\n\x04\x04\0\x02\x03\x12\x03N\x02\x15\x1a\xe4\x07\x20A\x20version\ + \x20string\x20for\x20this\x20api.\x20If\x20specified,\x20must\x20have\ + \x20the\x20form\n\x20`major-version.minor-version`,\x20as\x20in\x20`1.10\ + `.\x20If\x20the\x20minor\x20version\n\x20is\x20omitted,\x20it\x20default\ + s\x20to\x20zero.\x20If\x20the\x20entire\x20version\x20field\x20is\n\x20e\ + mpty,\x20the\x20major\x20version\x20is\x20derived\x20from\x20the\x20pack\ + age\x20name,\x20as\n\x20outlined\x20below.\x20If\x20the\x20field\x20is\ + \x20not\x20empty,\x20the\x20version\x20in\x20the\n\x20package\x20name\ + \x20will\x20be\x20verified\x20to\x20be\x20consistent\x20with\x20what\x20\ + is\n\x20provided\x20here.\n\n\x20The\x20versioning\x20schema\x20uses\x20\ + [semantic\n\x20versioning](http://semver.org)\x20where\x20the\x20major\ + \x20version\x20number\n\x20indicates\x20a\x20breaking\x20change\x20and\ + \x20the\x20minor\x20version\x20an\x20additive,\n\x20non-breaking\x20chan\ + ge.\x20Both\x20version\x20numbers\x20are\x20signals\x20to\x20users\n\x20\ + what\x20to\x20expect\x20from\x20different\x20versions,\x20and\x20should\ + \x20be\x20carefully\n\x20chosen\x20based\x20on\x20the\x20product\x20plan\ + .\n\n\x20The\x20major\x20version\x20is\x20also\x20reflected\x20in\x20the\ + \x20package\x20name\x20of\x20the\n\x20API,\x20which\x20must\x20end\x20in\ + \x20`v<major-version>`,\x20as\x20in\n\x20`google.feature.v1`.\x20For\x20\ + major\x20versions\x200\x20and\x201,\x20the\x20suffix\x20can\n\x20be\x20o\ + mitted.\x20Zero\x20major\x20versions\x20must\x20only\x20be\x20used\x20fo\ + r\n\x20experimental,\x20none-GA\x20apis.\n\n\n\n\x0c\n\x05\x04\0\x02\x03\ + \x05\x12\x03N\x02\x08\n\x0c\n\x05\x04\0\x02\x03\x01\x12\x03N\t\x10\n\x0c\ + \n\x05\x04\0\x02\x03\x03\x12\x03N\x13\x14\n[\n\x04\x04\0\x02\x04\x12\x03\ + R\x02#\x1aN\x20Source\x20context\x20for\x20the\x20protocol\x20buffer\x20\ + service\x20represented\x20by\x20this\n\x20message.\n\n\x0c\n\x05\x04\0\ + \x02\x04\x06\x12\x03R\x02\x0f\n\x0c\n\x05\x04\0\x02\x04\x01\x12\x03R\x10\ + \x1e\n\x0c\n\x05\x04\0\x02\x04\x03\x12\x03R!\"\n,\n\x04\x04\0\x02\x05\ + \x12\x03U\x02\x1c\x1a\x1f\x20Included\x20APIs.\x20See\x20[Mixin][].\n\n\ + \x0c\n\x05\x04\0\x02\x05\x04\x12\x03U\x02\n\n\x0c\n\x05\x04\0\x02\x05\ + \x06\x12\x03U\x0b\x10\n\x0c\n\x05\x04\0\x02\x05\x01\x12\x03U\x11\x17\n\ + \x0c\n\x05\x04\0\x02\x05\x03\x12\x03U\x1a\x1b\n0\n\x04\x04\0\x02\x06\x12\ + \x03X\x02\x14\x1a#\x20The\x20source\x20syntax\x20of\x20the\x20service.\n\ + \n\x0c\n\x05\x04\0\x02\x06\x06\x12\x03X\x02\x08\n\x0c\n\x05\x04\0\x02\ + \x06\x01\x12\x03X\t\x0f\n\x0c\n\x05\x04\0\x02\x06\x03\x12\x03X\x12\x13\n\ + 3\n\x02\x04\x01\x12\x04\\\0r\x01\x1a'\x20Method\x20represents\x20a\x20me\ + thod\x20of\x20an\x20api.\n\n\n\n\x03\x04\x01\x01\x12\x03\\\x08\x0e\n.\n\ + \x04\x04\x01\x02\0\x12\x03_\x02\x12\x1a!\x20The\x20simple\x20name\x20of\ + \x20this\x20method.\n\n\x0c\n\x05\x04\x01\x02\0\x05\x12\x03_\x02\x08\n\ + \x0c\n\x05\x04\x01\x02\0\x01\x12\x03_\t\r\n\x0c\n\x05\x04\x01\x02\0\x03\ + \x12\x03_\x10\x11\n/\n\x04\x04\x01\x02\x01\x12\x03b\x02\x1e\x1a\"\x20A\ + \x20URL\x20of\x20the\x20input\x20message\x20type.\n\n\x0c\n\x05\x04\x01\ + \x02\x01\x05\x12\x03b\x02\x08\n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x03b\t\ + \x19\n\x0c\n\x05\x04\x01\x02\x01\x03\x12\x03b\x1c\x1d\n0\n\x04\x04\x01\ + \x02\x02\x12\x03e\x02\x1d\x1a#\x20If\x20true,\x20the\x20request\x20is\ + \x20streamed.\n\n\x0c\n\x05\x04\x01\x02\x02\x05\x12\x03e\x02\x06\n\x0c\n\ + \x05\x04\x01\x02\x02\x01\x12\x03e\x07\x18\n\x0c\n\x05\x04\x01\x02\x02\ + \x03\x12\x03e\x1b\x1c\n2\n\x04\x04\x01\x02\x03\x12\x03h\x02\x1f\x1a%\x20\ + The\x20URL\x20of\x20the\x20output\x20message\x20type.\n\n\x0c\n\x05\x04\ + \x01\x02\x03\x05\x12\x03h\x02\x08\n\x0c\n\x05\x04\x01\x02\x03\x01\x12\ + \x03h\t\x1a\n\x0c\n\x05\x04\x01\x02\x03\x03\x12\x03h\x1d\x1e\n1\n\x04\ + \x04\x01\x02\x04\x12\x03k\x02\x1e\x1a$\x20If\x20true,\x20the\x20response\ + \x20is\x20streamed.\n\n\x0c\n\x05\x04\x01\x02\x04\x05\x12\x03k\x02\x06\n\ + \x0c\n\x05\x04\x01\x02\x04\x01\x12\x03k\x07\x19\n\x0c\n\x05\x04\x01\x02\ + \x04\x03\x12\x03k\x1c\x1d\n3\n\x04\x04\x01\x02\x05\x12\x03n\x02\x1e\x1a&\ + \x20Any\x20metadata\x20attached\x20to\x20the\x20method.\n\n\x0c\n\x05\ + \x04\x01\x02\x05\x04\x12\x03n\x02\n\n\x0c\n\x05\x04\x01\x02\x05\x06\x12\ + \x03n\x0b\x11\n\x0c\n\x05\x04\x01\x02\x05\x01\x12\x03n\x12\x19\n\x0c\n\ + \x05\x04\x01\x02\x05\x03\x12\x03n\x1c\x1d\n0\n\x04\x04\x01\x02\x06\x12\ + \x03q\x02\x14\x1a#\x20The\x20source\x20syntax\x20of\x20this\x20method.\n\ + \n\x0c\n\x05\x04\x01\x02\x06\x06\x12\x03q\x02\x08\n\x0c\n\x05\x04\x01\ + \x02\x06\x01\x12\x03q\t\x0f\n\x0c\n\x05\x04\x01\x02\x06\x03\x12\x03q\x12\ + \x13\n\xa4\x13\n\x02\x04\x02\x12\x06\xc1\x01\0\xc8\x01\x01\x1a\x95\x13\ + \x20Declares\x20an\x20API\x20to\x20be\x20included\x20in\x20this\x20API.\ + \x20The\x20including\x20API\x20must\n\x20redeclare\x20all\x20the\x20meth\ + ods\x20from\x20the\x20included\x20API,\x20but\x20documentation\n\x20and\ + \x20options\x20are\x20inherited\x20as\x20follows:\n\n\x20-\x20If\x20afte\ + r\x20comment\x20and\x20whitespace\x20stripping,\x20the\x20documentation\ + \n\x20\x20\x20string\x20of\x20the\x20redeclared\x20method\x20is\x20empty\ + ,\x20it\x20will\x20be\x20inherited\n\x20\x20\x20from\x20the\x20original\ + \x20method.\n\n\x20-\x20Each\x20annotation\x20belonging\x20to\x20the\x20\ + service\x20config\x20(http,\n\x20\x20\x20visibility)\x20which\x20is\x20n\ + ot\x20set\x20in\x20the\x20redeclared\x20method\x20will\x20be\n\x20\x20\ + \x20inherited.\n\n\x20-\x20If\x20an\x20http\x20annotation\x20is\x20inher\ + ited,\x20the\x20path\x20pattern\x20will\x20be\n\x20\x20\x20modified\x20a\ + s\x20follows.\x20Any\x20version\x20prefix\x20will\x20be\x20replaced\x20b\ + y\x20the\n\x20\x20\x20version\x20of\x20the\x20including\x20API\x20plus\ + \x20the\x20[root][]\x20path\x20if\x20specified.\n\n\x20Example\x20of\x20\ + a\x20simple\x20mixin:\n\n\x20\x20\x20\x20\x20package\x20google.acl.v1;\n\ + \x20\x20\x20\x20\x20service\x20AccessControl\x20{\n\x20\x20\x20\x20\x20\ + \x20\x20//\x20Get\x20the\x20underlying\x20ACL\x20object.\n\x20\x20\x20\ + \x20\x20\x20\x20rpc\x20GetAcl(GetAclRequest)\x20returns\x20(Acl)\x20{\n\ + \x20\x20\x20\x20\x20\x20\x20\x20\x20option\x20(google.api.http).get\x20=\ + \x20\"/v1/{resource=**}:getAcl\";\n\x20\x20\x20\x20\x20\x20\x20}\n\x20\ + \x20\x20\x20\x20}\n\n\x20\x20\x20\x20\x20package\x20google.storage.v2;\n\ + \x20\x20\x20\x20\x20service\x20Storage\x20{\n\x20\x20\x20\x20\x20\x20\ + \x20rpc\x20GetAcl(GetAclRequest)\x20returns\x20(Acl);\n\n\x20\x20\x20\ + \x20\x20\x20\x20//\x20Get\x20a\x20data\x20record.\n\x20\x20\x20\x20\x20\ + \x20\x20rpc\x20GetData(GetDataRequest)\x20returns\x20(Data)\x20{\n\x20\ + \x20\x20\x20\x20\x20\x20\x20\x20option\x20(google.api.http).get\x20=\x20\ + \"/v2/{resource=**}\";\n\x20\x20\x20\x20\x20\x20\x20}\n\x20\x20\x20\x20\ + \x20}\n\n\x20Example\x20of\x20a\x20mixin\x20configuration:\n\n\x20\x20\ + \x20\x20\x20apis:\n\x20\x20\x20\x20\x20-\x20name:\x20google.storage.v2.S\ + torage\n\x20\x20\x20\x20\x20\x20\x20mixins:\n\x20\x20\x20\x20\x20\x20\ + \x20-\x20name:\x20google.acl.v1.AccessControl\n\n\x20The\x20mixin\x20con\ + struct\x20implies\x20that\x20all\x20methods\x20in\x20`AccessControl`\x20\ + are\n\x20also\x20declared\x20with\x20same\x20name\x20and\x20request/resp\ + onse\x20types\x20in\n\x20`Storage`.\x20A\x20documentation\x20generator\ + \x20or\x20annotation\x20processor\x20will\n\x20see\x20the\x20effective\ + \x20`Storage.GetAcl`\x20method\x20after\x20inherting\n\x20documentation\ + \x20and\x20annotations\x20as\x20follows:\n\n\x20\x20\x20\x20\x20service\ + \x20Storage\x20{\n\x20\x20\x20\x20\x20\x20\x20//\x20Get\x20the\x20underl\ + ying\x20ACL\x20object.\n\x20\x20\x20\x20\x20\x20\x20rpc\x20GetAcl(GetAcl\ + Request)\x20returns\x20(Acl)\x20{\n\x20\x20\x20\x20\x20\x20\x20\x20\x20o\ + ption\x20(google.api.http).get\x20=\x20\"/v2/{resource=**}:getAcl\";\n\ + \x20\x20\x20\x20\x20\x20\x20}\n\x20\x20\x20\x20\x20\x20\x20...\n\x20\x20\ + \x20\x20\x20}\n\n\x20Note\x20how\x20the\x20version\x20in\x20the\x20path\ + \x20pattern\x20changed\x20from\x20`v1`\x20to\x20`v2`.\n\n\x20If\x20the\ + \x20`root`\x20field\x20in\x20the\x20mixin\x20is\x20specified,\x20it\x20s\ + hould\x20be\x20a\n\x20relative\x20path\x20under\x20which\x20inherited\ + \x20HTTP\x20paths\x20are\x20placed.\x20Example:\n\n\x20\x20\x20\x20\x20a\ + pis:\n\x20\x20\x20\x20\x20-\x20name:\x20google.storage.v2.Storage\n\x20\ + \x20\x20\x20\x20\x20\x20mixins:\n\x20\x20\x20\x20\x20\x20\x20-\x20name:\ + \x20google.acl.v1.AccessControl\n\x20\x20\x20\x20\x20\x20\x20\x20\x20roo\ + t:\x20acls\n\n\x20This\x20implies\x20the\x20following\x20inherited\x20HT\ + TP\x20annotation:\n\n\x20\x20\x20\x20\x20service\x20Storage\x20{\n\x20\ + \x20\x20\x20\x20\x20\x20//\x20Get\x20the\x20underlying\x20ACL\x20object.\ + \n\x20\x20\x20\x20\x20\x20\x20rpc\x20GetAcl(GetAclRequest)\x20returns\ + \x20(Acl)\x20{\n\x20\x20\x20\x20\x20\x20\x20\x20\x20option\x20(google.ap\ + i.http).get\x20=\x20\"/v2/acls/{resource=**}:getAcl\";\n\x20\x20\x20\x20\ + \x20\x20\x20}\n\x20\x20\x20\x20\x20\x20\x20...\n\x20\x20\x20\x20\x20}\n\ + \n\x0b\n\x03\x04\x02\x01\x12\x04\xc1\x01\x08\r\nF\n\x04\x04\x02\x02\0\ + \x12\x04\xc3\x01\x02\x12\x1a8\x20The\x20fully\x20qualified\x20name\x20of\ + \x20the\x20API\x20which\x20is\x20included.\n\n\r\n\x05\x04\x02\x02\0\x05\ + \x12\x04\xc3\x01\x02\x08\n\r\n\x05\x04\x02\x02\0\x01\x12\x04\xc3\x01\t\r\ + \n\r\n\x05\x04\x02\x02\0\x03\x12\x04\xc3\x01\x10\x11\n[\n\x04\x04\x02\ + \x02\x01\x12\x04\xc7\x01\x02\x12\x1aM\x20If\x20non-empty\x20specifies\ + \x20a\x20path\x20under\x20which\x20inherited\x20HTTP\x20paths\n\x20are\ + \x20rooted.\n\n\r\n\x05\x04\x02\x02\x01\x05\x12\x04\xc7\x01\x02\x08\n\r\ + \n\x05\x04\x02\x02\x01\x01\x12\x04\xc7\x01\t\r\n\r\n\x05\x04\x02\x02\x01\ + \x03\x12\x04\xc7\x01\x10\x11b\x06proto3\ +"; + +static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT; + +fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { + ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() +} + +pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { + unsafe { + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) + } +} diff --git a/src/well_known_types/duration.rs b/src/well_known_types/duration.rs new file mode 100644 index 0000000..303173d --- /dev/null +++ b/src/well_known_types/duration.rs @@ -0,0 +1,332 @@ +// This file is generated by rust-protobuf 2.14.0-pre. Do not edit +// @generated + +// https://github.com/rust-lang/rust-clippy/issues/702 +#![allow(unknown_lints)] +#![allow(clippy::all)] + +#![cfg_attr(rustfmt, rustfmt_skip)] + +#![allow(box_pointers)] +#![allow(dead_code)] +#![allow(missing_docs)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(non_upper_case_globals)] +#![allow(trivial_casts)] +#![allow(unsafe_code)] +#![allow(unused_imports)] +#![allow(unused_results)] +//! Generated file from `google/protobuf/duration.proto` + +use protobuf::Message as Message_imported_for_functions; +use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Duration { + // message fields + pub seconds: i64, + pub nanos: i32, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Duration { + fn default() -> &'a Duration { + <Duration as ::protobuf::Message>::default_instance() + } +} + +impl Duration { + pub fn new() -> Duration { + ::std::default::Default::default() + } + + // int64 seconds = 1; + + + pub fn get_seconds(&self) -> i64 { + self.seconds + } + pub fn clear_seconds(&mut self) { + self.seconds = 0; + } + + // Param is passed by value, moved + pub fn set_seconds(&mut self, v: i64) { + self.seconds = v; + } + + // int32 nanos = 2; + + + pub fn get_nanos(&self) -> i32 { + self.nanos + } + pub fn clear_nanos(&mut self) { + self.nanos = 0; + } + + // Param is passed by value, moved + pub fn set_nanos(&mut self, v: i32) { + self.nanos = v; + } +} + +impl ::protobuf::Message for Duration { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_int64()?; + self.seconds = tmp; + }, + 2 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_int32()?; + self.nanos = tmp; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.seconds != 0 { + my_size += ::protobuf::rt::value_size(1, self.seconds, ::protobuf::wire_format::WireTypeVarint); + } + if self.nanos != 0 { + my_size += ::protobuf::rt::value_size(2, self.nanos, ::protobuf::wire_format::WireTypeVarint); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.seconds != 0 { + os.write_int64(1, self.seconds)?; + } + if self.nanos != 0 { + os.write_int32(2, self.nanos)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Duration { + Duration::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "seconds", + |m: &Duration| { &m.seconds }, + |m: &mut Duration| { &mut m.seconds }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "nanos", + |m: &Duration| { &m.nanos }, + |m: &mut Duration| { &mut m.nanos }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Duration>( + "Duration", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Duration { + static mut instance: ::protobuf::lazy::Lazy<Duration> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Duration::new) + } + } +} + +impl ::protobuf::Clear for Duration { + fn clear(&mut self) { + self.seconds = 0; + self.nanos = 0; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Duration { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Duration { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x1egoogle/protobuf/duration.proto\x12\x0fgoogle.protobuf\":\n\x08Dura\ + tion\x12\x18\n\x07seconds\x18\x01\x20\x01(\x03R\x07seconds\x12\x14\n\x05\ + nanos\x18\x02\x20\x01(\x05R\x05nanosB|\n\x13com.google.protobufB\rDurati\ + onProtoP\x01Z*github.com/golang/protobuf/ptypes/duration\xf8\x01\x01\xa2\ + \x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.WellKnownTypesJ\xe1\x1e\n\x06\x12\ + \x04\x1e\0g\x01\n\xcc\x0c\n\x01\x0c\x12\x03\x1e\0\x122\xc1\x0c\x20Protoc\ + ol\x20Buffers\x20-\x20Google's\x20data\x20interchange\x20format\n\x20Cop\ + yright\x202008\x20Google\x20Inc.\x20\x20All\x20rights\x20reserved.\n\x20\ + https://developers.google.com/protocol-buffers/\n\n\x20Redistribution\ + \x20and\x20use\x20in\x20source\x20and\x20binary\x20forms,\x20with\x20or\ + \x20without\n\x20modification,\x20are\x20permitted\x20provided\x20that\ + \x20the\x20following\x20conditions\x20are\n\x20met:\n\n\x20\x20\x20\x20\ + \x20*\x20Redistributions\x20of\x20source\x20code\x20must\x20retain\x20th\ + e\x20above\x20copyright\n\x20notice,\x20this\x20list\x20of\x20conditions\ + \x20and\x20the\x20following\x20disclaimer.\n\x20\x20\x20\x20\x20*\x20Red\ + istributions\x20in\x20binary\x20form\x20must\x20reproduce\x20the\x20abov\ + e\n\x20copyright\x20notice,\x20this\x20list\x20of\x20conditions\x20and\ + \x20the\x20following\x20disclaimer\n\x20in\x20the\x20documentation\x20an\ + d/or\x20other\x20materials\x20provided\x20with\x20the\n\x20distribution.\ + \n\x20\x20\x20\x20\x20*\x20Neither\x20the\x20name\x20of\x20Google\x20Inc\ + .\x20nor\x20the\x20names\x20of\x20its\n\x20contributors\x20may\x20be\x20\ + used\x20to\x20endorse\x20or\x20promote\x20products\x20derived\x20from\n\ + \x20this\x20software\x20without\x20specific\x20prior\x20written\x20permi\ + ssion.\n\n\x20THIS\x20SOFTWARE\x20IS\x20PROVIDED\x20BY\x20THE\x20COPYRIG\ + HT\x20HOLDERS\x20AND\x20CONTRIBUTORS\n\x20\"AS\x20IS\"\x20AND\x20ANY\x20\ + EXPRESS\x20OR\x20IMPLIED\x20WARRANTIES,\x20INCLUDING,\x20BUT\x20NOT\n\ + \x20LIMITED\x20TO,\x20THE\x20IMPLIED\x20WARRANTIES\x20OF\x20MERCHANTABIL\ + ITY\x20AND\x20FITNESS\x20FOR\n\x20A\x20PARTICULAR\x20PURPOSE\x20ARE\x20D\ + ISCLAIMED.\x20IN\x20NO\x20EVENT\x20SHALL\x20THE\x20COPYRIGHT\n\x20OWNER\ + \x20OR\x20CONTRIBUTORS\x20BE\x20LIABLE\x20FOR\x20ANY\x20DIRECT,\x20INDIR\ + ECT,\x20INCIDENTAL,\n\x20SPECIAL,\x20EXEMPLARY,\x20OR\x20CONSEQUENTIAL\ + \x20DAMAGES\x20(INCLUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\x20PROCUREM\ + ENT\x20OF\x20SUBSTITUTE\x20GOODS\x20OR\x20SERVICES;\x20LOSS\x20OF\x20USE\ + ,\n\x20DATA,\x20OR\x20PROFITS;\x20OR\x20BUSINESS\x20INTERRUPTION)\x20HOW\ + EVER\x20CAUSED\x20AND\x20ON\x20ANY\n\x20THEORY\x20OF\x20LIABILITY,\x20WH\ + ETHER\x20IN\x20CONTRACT,\x20STRICT\x20LIABILITY,\x20OR\x20TORT\n\x20(INC\ + LUDING\x20NEGLIGENCE\x20OR\x20OTHERWISE)\x20ARISING\x20IN\x20ANY\x20WAY\ + \x20OUT\x20OF\x20THE\x20USE\n\x20OF\x20THIS\x20SOFTWARE,\x20EVEN\x20IF\ + \x20ADVISED\x20OF\x20THE\x20POSSIBILITY\x20OF\x20SUCH\x20DAMAGE.\n\n\x08\ + \n\x01\x02\x12\x03\x20\0\x18\n\x08\n\x01\x08\x12\x03\"\0;\n\t\n\x02\x08%\ + \x12\x03\"\0;\n\x08\n\x01\x08\x12\x03#\0\x1f\n\t\n\x02\x08\x1f\x12\x03#\ + \0\x1f\n\x08\n\x01\x08\x12\x03$\0A\n\t\n\x02\x08\x0b\x12\x03$\0A\n\x08\n\ + \x01\x08\x12\x03%\0,\n\t\n\x02\x08\x01\x12\x03%\0,\n\x08\n\x01\x08\x12\ + \x03&\0.\n\t\n\x02\x08\x08\x12\x03&\0.\n\x08\n\x01\x08\x12\x03'\0\"\n\t\ + \n\x02\x08\n\x12\x03'\0\"\n\x08\n\x01\x08\x12\x03(\0!\n\t\n\x02\x08$\x12\ + \x03(\0!\n\x92\x0c\n\x02\x04\0\x12\x04Z\0g\x01\x1a\x85\x0c\x20A\x20Durat\ + ion\x20represents\x20a\x20signed,\x20fixed-length\x20span\x20of\x20time\ + \x20represented\n\x20as\x20a\x20count\x20of\x20seconds\x20and\x20fractio\ + ns\x20of\x20seconds\x20at\x20nanosecond\n\x20resolution.\x20It\x20is\x20\ + independent\x20of\x20any\x20calendar\x20and\x20concepts\x20like\x20\"day\ + \"\n\x20or\x20\"month\".\x20It\x20is\x20related\x20to\x20Timestamp\x20in\ + \x20that\x20the\x20difference\x20between\n\x20two\x20Timestamp\x20values\ + \x20is\x20a\x20Duration\x20and\x20it\x20can\x20be\x20added\x20or\x20subt\ + racted\n\x20from\x20a\x20Timestamp.\x20Range\x20is\x20approximately\x20+\ + -10,000\x20years.\n\n\x20Example\x201:\x20Compute\x20Duration\x20from\ + \x20two\x20Timestamps\x20in\x20pseudo\x20code.\n\n\x20\x20\x20\x20\x20Ti\ + mestamp\x20start\x20=\x20...;\n\x20\x20\x20\x20\x20Timestamp\x20end\x20=\ + \x20...;\n\x20\x20\x20\x20\x20Duration\x20duration\x20=\x20...;\n\n\x20\ + \x20\x20\x20\x20duration.seconds\x20=\x20end.seconds\x20-\x20start.secon\ + ds;\n\x20\x20\x20\x20\x20duration.nanos\x20=\x20end.nanos\x20-\x20start.\ + nanos;\n\n\x20\x20\x20\x20\x20if\x20(duration.seconds\x20<\x200\x20&&\ + \x20duration.nanos\x20>\x200)\x20{\n\x20\x20\x20\x20\x20\x20\x20duration\ + .seconds\x20+=\x201;\n\x20\x20\x20\x20\x20\x20\x20duration.nanos\x20-=\ + \x201000000000;\n\x20\x20\x20\x20\x20}\x20else\x20if\x20(durations.secon\ + ds\x20>\x200\x20&&\x20duration.nanos\x20<\x200)\x20{\n\x20\x20\x20\x20\ + \x20\x20\x20duration.seconds\x20-=\x201;\n\x20\x20\x20\x20\x20\x20\x20du\ + ration.nanos\x20+=\x201000000000;\n\x20\x20\x20\x20\x20}\n\n\x20Example\ + \x202:\x20Compute\x20Timestamp\x20from\x20Timestamp\x20+\x20Duration\x20\ + in\x20pseudo\x20code.\n\n\x20\x20\x20\x20\x20Timestamp\x20start\x20=\x20\ + ...;\n\x20\x20\x20\x20\x20Duration\x20duration\x20=\x20...;\n\x20\x20\ + \x20\x20\x20Timestamp\x20end\x20=\x20...;\n\n\x20\x20\x20\x20\x20end.sec\ + onds\x20=\x20start.seconds\x20+\x20duration.seconds;\n\x20\x20\x20\x20\ + \x20end.nanos\x20=\x20start.nanos\x20+\x20duration.nanos;\n\n\x20\x20\ + \x20\x20\x20if\x20(end.nanos\x20<\x200)\x20{\n\x20\x20\x20\x20\x20\x20\ + \x20end.seconds\x20-=\x201;\n\x20\x20\x20\x20\x20\x20\x20end.nanos\x20+=\ + \x201000000000;\n\x20\x20\x20\x20\x20}\x20else\x20if\x20(end.nanos\x20>=\ + \x201000000000)\x20{\n\x20\x20\x20\x20\x20\x20\x20end.seconds\x20+=\x201\ + ;\n\x20\x20\x20\x20\x20\x20\x20end.nanos\x20-=\x201000000000;\n\x20\x20\ + \x20\x20\x20}\n\n\x20Example\x203:\x20Compute\x20Duration\x20from\x20dat\ + etime.timedelta\x20in\x20Python.\n\n\x20\x20\x20\x20\x20td\x20=\x20datet\ + ime.timedelta(days=3,\x20minutes=10)\n\x20\x20\x20\x20\x20duration\x20=\ + \x20Duration()\n\x20\x20\x20\x20\x20duration.FromTimedelta(td)\n\n\n\n\n\ + \n\x03\x04\0\x01\x12\x03Z\x08\x10\np\n\x04\x04\0\x02\0\x12\x03^\x02\x14\ + \x1ac\x20Signed\x20seconds\x20of\x20the\x20span\x20of\x20time.\x20Must\ + \x20be\x20from\x20-315,576,000,000\n\x20to\x20+315,576,000,000\x20inclus\ + ive.\n\n\x0c\n\x05\x04\0\x02\0\x05\x12\x03^\x02\x07\n\x0c\n\x05\x04\0\ + \x02\0\x01\x12\x03^\x08\x0f\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03^\x12\x13\ + \n\x83\x03\n\x04\x04\0\x02\x01\x12\x03f\x02\x12\x1a\xf5\x02\x20Signed\ + \x20fractions\x20of\x20a\x20second\x20at\x20nanosecond\x20resolution\x20\ + of\x20the\x20span\n\x20of\x20time.\x20Durations\x20less\x20than\x20one\ + \x20second\x20are\x20represented\x20with\x20a\x200\n\x20`seconds`\x20fie\ + ld\x20and\x20a\x20positive\x20or\x20negative\x20`nanos`\x20field.\x20For\ + \x20durations\n\x20of\x20one\x20second\x20or\x20more,\x20a\x20non-zero\ + \x20value\x20for\x20the\x20`nanos`\x20field\x20must\x20be\n\x20of\x20the\ + \x20same\x20sign\x20as\x20the\x20`seconds`\x20field.\x20Must\x20be\x20fr\ + om\x20-999,999,999\n\x20to\x20+999,999,999\x20inclusive.\n\n\x0c\n\x05\ + \x04\0\x02\x01\x05\x12\x03f\x02\x07\n\x0c\n\x05\x04\0\x02\x01\x01\x12\ + \x03f\x08\r\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03f\x10\x11b\x06proto3\ +"; + +static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT; + +fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { + ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() +} + +pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { + unsafe { + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) + } +} diff --git a/src/well_known_types/empty.rs b/src/well_known_types/empty.rs new file mode 100644 index 0000000..df64a48 --- /dev/null +++ b/src/well_known_types/empty.rs @@ -0,0 +1,217 @@ +// This file is generated by rust-protobuf 2.14.0-pre. Do not edit +// @generated + +// https://github.com/rust-lang/rust-clippy/issues/702 +#![allow(unknown_lints)] +#![allow(clippy::all)] + +#![cfg_attr(rustfmt, rustfmt_skip)] + +#![allow(box_pointers)] +#![allow(dead_code)] +#![allow(missing_docs)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(non_upper_case_globals)] +#![allow(trivial_casts)] +#![allow(unsafe_code)] +#![allow(unused_imports)] +#![allow(unused_results)] +//! Generated file from `google/protobuf/empty.proto` + +use protobuf::Message as Message_imported_for_functions; +use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Empty { + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Empty { + fn default() -> &'a Empty { + <Empty as ::protobuf::Message>::default_instance() + } +} + +impl Empty { + pub fn new() -> Empty { + ::std::default::Default::default() + } +} + +impl ::protobuf::Message for Empty { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Empty { + Empty::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let fields = ::std::vec::Vec::new(); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Empty>( + "Empty", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Empty { + static mut instance: ::protobuf::lazy::Lazy<Empty> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Empty::new) + } + } +} + +impl ::protobuf::Clear for Empty { + fn clear(&mut self) { + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Empty { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Empty { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x1bgoogle/protobuf/empty.proto\x12\x0fgoogle.protobuf\"\x07\n\x05Empt\ + yBv\n\x13com.google.protobufB\nEmptyProtoP\x01Z'github.com/golang/protob\ + uf/ptypes/empty\xf8\x01\x01\xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.We\ + llKnownTypesJ\xfe\x10\n\x06\x12\x04\x1e\03\x10\n\xcc\x0c\n\x01\x0c\x12\ + \x03\x1e\0\x122\xc1\x0c\x20Protocol\x20Buffers\x20-\x20Google's\x20data\ + \x20interchange\x20format\n\x20Copyright\x202008\x20Google\x20Inc.\x20\ + \x20All\x20rights\x20reserved.\n\x20https://developers.google.com/protoc\ + ol-buffers/\n\n\x20Redistribution\x20and\x20use\x20in\x20source\x20and\ + \x20binary\x20forms,\x20with\x20or\x20without\n\x20modification,\x20are\ + \x20permitted\x20provided\x20that\x20the\x20following\x20conditions\x20a\ + re\n\x20met:\n\n\x20\x20\x20\x20\x20*\x20Redistributions\x20of\x20source\ + \x20code\x20must\x20retain\x20the\x20above\x20copyright\n\x20notice,\x20\ + this\x20list\x20of\x20conditions\x20and\x20the\x20following\x20disclaime\ + r.\n\x20\x20\x20\x20\x20*\x20Redistributions\x20in\x20binary\x20form\x20\ + must\x20reproduce\x20the\x20above\n\x20copyright\x20notice,\x20this\x20l\ + ist\x20of\x20conditions\x20and\x20the\x20following\x20disclaimer\n\x20in\ + \x20the\x20documentation\x20and/or\x20other\x20materials\x20provided\x20\ + with\x20the\n\x20distribution.\n\x20\x20\x20\x20\x20*\x20Neither\x20the\ + \x20name\x20of\x20Google\x20Inc.\x20nor\x20the\x20names\x20of\x20its\n\ + \x20contributors\x20may\x20be\x20used\x20to\x20endorse\x20or\x20promote\ + \x20products\x20derived\x20from\n\x20this\x20software\x20without\x20spec\ + ific\x20prior\x20written\x20permission.\n\n\x20THIS\x20SOFTWARE\x20IS\ + \x20PROVIDED\x20BY\x20THE\x20COPYRIGHT\x20HOLDERS\x20AND\x20CONTRIBUTORS\ + \n\x20\"AS\x20IS\"\x20AND\x20ANY\x20EXPRESS\x20OR\x20IMPLIED\x20WARRANTI\ + ES,\x20INCLUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\x20THE\x20IMPLIED\ + \x20WARRANTIES\x20OF\x20MERCHANTABILITY\x20AND\x20FITNESS\x20FOR\n\x20A\ + \x20PARTICULAR\x20PURPOSE\x20ARE\x20DISCLAIMED.\x20IN\x20NO\x20EVENT\x20\ + SHALL\x20THE\x20COPYRIGHT\n\x20OWNER\x20OR\x20CONTRIBUTORS\x20BE\x20LIAB\ + LE\x20FOR\x20ANY\x20DIRECT,\x20INDIRECT,\x20INCIDENTAL,\n\x20SPECIAL,\ + \x20EXEMPLARY,\x20OR\x20CONSEQUENTIAL\x20DAMAGES\x20(INCLUDING,\x20BUT\ + \x20NOT\n\x20LIMITED\x20TO,\x20PROCUREMENT\x20OF\x20SUBSTITUTE\x20GOODS\ + \x20OR\x20SERVICES;\x20LOSS\x20OF\x20USE,\n\x20DATA,\x20OR\x20PROFITS;\ + \x20OR\x20BUSINESS\x20INTERRUPTION)\x20HOWEVER\x20CAUSED\x20AND\x20ON\ + \x20ANY\n\x20THEORY\x20OF\x20LIABILITY,\x20WHETHER\x20IN\x20CONTRACT,\ + \x20STRICT\x20LIABILITY,\x20OR\x20TORT\n\x20(INCLUDING\x20NEGLIGENCE\x20\ + OR\x20OTHERWISE)\x20ARISING\x20IN\x20ANY\x20WAY\x20OUT\x20OF\x20THE\x20U\ + SE\n\x20OF\x20THIS\x20SOFTWARE,\x20EVEN\x20IF\x20ADVISED\x20OF\x20THE\ + \x20POSSIBILITY\x20OF\x20SUCH\x20DAMAGE.\n\n\x08\n\x01\x02\x12\x03\x20\0\ + \x18\n\x08\n\x01\x08\x12\x03\"\0;\n\t\n\x02\x08%\x12\x03\"\0;\n\x08\n\ + \x01\x08\x12\x03#\0>\n\t\n\x02\x08\x0b\x12\x03#\0>\n\x08\n\x01\x08\x12\ + \x03$\0,\n\t\n\x02\x08\x01\x12\x03$\0,\n\x08\n\x01\x08\x12\x03%\0+\n\t\n\ + \x02\x08\x08\x12\x03%\0+\n\x08\n\x01\x08\x12\x03&\0\"\n\t\n\x02\x08\n\ + \x12\x03&\0\"\n\x08\n\x01\x08\x12\x03'\0!\n\t\n\x02\x08$\x12\x03'\0!\n\ + \x08\n\x01\x08\x12\x03(\0\x1f\n\t\n\x02\x08\x1f\x12\x03(\0\x1f\n\xfb\x02\ + \n\x02\x04\0\x12\x033\0\x10\x1a\xef\x02\x20A\x20generic\x20empty\x20mess\ + age\x20that\x20you\x20can\x20re-use\x20to\x20avoid\x20defining\x20duplic\ + ated\n\x20empty\x20messages\x20in\x20your\x20APIs.\x20A\x20typical\x20ex\ + ample\x20is\x20to\x20use\x20it\x20as\x20the\x20request\n\x20or\x20the\ + \x20response\x20type\x20of\x20an\x20API\x20method.\x20For\x20instance:\n\ + \n\x20\x20\x20\x20\x20service\x20Foo\x20{\n\x20\x20\x20\x20\x20\x20\x20r\ + pc\x20Bar(google.protobuf.Empty)\x20returns\x20(google.protobuf.Empty);\ + \n\x20\x20\x20\x20\x20}\n\n\x20The\x20JSON\x20representation\x20for\x20`\ + Empty`\x20is\x20empty\x20JSON\x20object\x20`{}`.\n\n\n\n\x03\x04\0\x01\ + \x12\x033\x08\rb\x06proto3\ +"; + +static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT; + +fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { + ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() +} + +pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { + unsafe { + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) + } +} diff --git a/src/well_known_types/field_mask.rs b/src/well_known_types/field_mask.rs new file mode 100644 index 0000000..421d15c --- /dev/null +++ b/src/well_known_types/field_mask.rs @@ -0,0 +1,388 @@ +// This file is generated by rust-protobuf 2.14.0-pre. Do not edit +// @generated + +// https://github.com/rust-lang/rust-clippy/issues/702 +#![allow(unknown_lints)] +#![allow(clippy::all)] + +#![cfg_attr(rustfmt, rustfmt_skip)] + +#![allow(box_pointers)] +#![allow(dead_code)] +#![allow(missing_docs)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(non_upper_case_globals)] +#![allow(trivial_casts)] +#![allow(unsafe_code)] +#![allow(unused_imports)] +#![allow(unused_results)] +//! Generated file from `google/protobuf/field_mask.proto` + +use protobuf::Message as Message_imported_for_functions; +use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct FieldMask { + // message fields + pub paths: ::protobuf::RepeatedField<::std::string::String>, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a FieldMask { + fn default() -> &'a FieldMask { + <FieldMask as ::protobuf::Message>::default_instance() + } +} + +impl FieldMask { + pub fn new() -> FieldMask { + ::std::default::Default::default() + } + + // repeated string paths = 1; + + + pub fn get_paths(&self) -> &[::std::string::String] { + &self.paths + } + pub fn clear_paths(&mut self) { + self.paths.clear(); + } + + // Param is passed by value, moved + pub fn set_paths(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) { + self.paths = v; + } + + // Mutable pointer to the field. + pub fn mut_paths(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> { + &mut self.paths + } + + // Take field + pub fn take_paths(&mut self) -> ::protobuf::RepeatedField<::std::string::String> { + ::std::mem::replace(&mut self.paths, ::protobuf::RepeatedField::new()) + } +} + +impl ::protobuf::Message for FieldMask { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.paths)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + for value in &self.paths { + my_size += ::protobuf::rt::string_size(1, &value); + }; + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + for v in &self.paths { + os.write_string(1, &v)?; + }; + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> FieldMask { + FieldMask::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "paths", + |m: &FieldMask| { &m.paths }, + |m: &mut FieldMask| { &mut m.paths }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<FieldMask>( + "FieldMask", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static FieldMask { + static mut instance: ::protobuf::lazy::Lazy<FieldMask> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(FieldMask::new) + } + } +} + +impl ::protobuf::Clear for FieldMask { + fn clear(&mut self) { + self.paths.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for FieldMask { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for FieldMask { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x20google/protobuf/field_mask.proto\x12\x0fgoogle.protobuf\"!\n\tFiel\ + dMask\x12\x14\n\x05paths\x18\x01\x20\x03(\tR\x05pathsBN\n\x13com.google.\ + protobufB\x0eFieldMaskProtoP\x01\xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protob\ + uf.WellKnownTypesJ\x929\n\x07\x12\x05\x1e\0\xf4\x01\x01\n\xcc\x0c\n\x01\ + \x0c\x12\x03\x1e\0\x122\xc1\x0c\x20Protocol\x20Buffers\x20-\x20Google's\ + \x20data\x20interchange\x20format\n\x20Copyright\x202008\x20Google\x20In\ + c.\x20\x20All\x20rights\x20reserved.\n\x20https://developers.google.com/\ + protocol-buffers/\n\n\x20Redistribution\x20and\x20use\x20in\x20source\ + \x20and\x20binary\x20forms,\x20with\x20or\x20without\n\x20modification,\ + \x20are\x20permitted\x20provided\x20that\x20the\x20following\x20conditio\ + ns\x20are\n\x20met:\n\n\x20\x20\x20\x20\x20*\x20Redistributions\x20of\ + \x20source\x20code\x20must\x20retain\x20the\x20above\x20copyright\n\x20n\ + otice,\x20this\x20list\x20of\x20conditions\x20and\x20the\x20following\ + \x20disclaimer.\n\x20\x20\x20\x20\x20*\x20Redistributions\x20in\x20binar\ + y\x20form\x20must\x20reproduce\x20the\x20above\n\x20copyright\x20notice,\ + \x20this\x20list\x20of\x20conditions\x20and\x20the\x20following\x20discl\ + aimer\n\x20in\x20the\x20documentation\x20and/or\x20other\x20materials\ + \x20provided\x20with\x20the\n\x20distribution.\n\x20\x20\x20\x20\x20*\ + \x20Neither\x20the\x20name\x20of\x20Google\x20Inc.\x20nor\x20the\x20name\ + s\x20of\x20its\n\x20contributors\x20may\x20be\x20used\x20to\x20endorse\ + \x20or\x20promote\x20products\x20derived\x20from\n\x20this\x20software\ + \x20without\x20specific\x20prior\x20written\x20permission.\n\n\x20THIS\ + \x20SOFTWARE\x20IS\x20PROVIDED\x20BY\x20THE\x20COPYRIGHT\x20HOLDERS\x20A\ + ND\x20CONTRIBUTORS\n\x20\"AS\x20IS\"\x20AND\x20ANY\x20EXPRESS\x20OR\x20I\ + MPLIED\x20WARRANTIES,\x20INCLUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\ + \x20THE\x20IMPLIED\x20WARRANTIES\x20OF\x20MERCHANTABILITY\x20AND\x20FITN\ + ESS\x20FOR\n\x20A\x20PARTICULAR\x20PURPOSE\x20ARE\x20DISCLAIMED.\x20IN\ + \x20NO\x20EVENT\x20SHALL\x20THE\x20COPYRIGHT\n\x20OWNER\x20OR\x20CONTRIB\ + UTORS\x20BE\x20LIABLE\x20FOR\x20ANY\x20DIRECT,\x20INDIRECT,\x20INCIDENTA\ + L,\n\x20SPECIAL,\x20EXEMPLARY,\x20OR\x20CONSEQUENTIAL\x20DAMAGES\x20(INC\ + LUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\x20PROCUREMENT\x20OF\x20SUBSTI\ + TUTE\x20GOODS\x20OR\x20SERVICES;\x20LOSS\x20OF\x20USE,\n\x20DATA,\x20OR\ + \x20PROFITS;\x20OR\x20BUSINESS\x20INTERRUPTION)\x20HOWEVER\x20CAUSED\x20\ + AND\x20ON\x20ANY\n\x20THEORY\x20OF\x20LIABILITY,\x20WHETHER\x20IN\x20CON\ + TRACT,\x20STRICT\x20LIABILITY,\x20OR\x20TORT\n\x20(INCLUDING\x20NEGLIGEN\ + CE\x20OR\x20OTHERWISE)\x20ARISING\x20IN\x20ANY\x20WAY\x20OUT\x20OF\x20TH\ + E\x20USE\n\x20OF\x20THIS\x20SOFTWARE,\x20EVEN\x20IF\x20ADVISED\x20OF\x20\ + THE\x20POSSIBILITY\x20OF\x20SUCH\x20DAMAGE.\n\n\x08\n\x01\x02\x12\x03\ + \x20\0\x18\n\x08\n\x01\x08\x12\x03\"\0;\n\t\n\x02\x08%\x12\x03\"\0;\n\ + \x08\n\x01\x08\x12\x03#\0,\n\t\n\x02\x08\x01\x12\x03#\0,\n\x08\n\x01\x08\ + \x12\x03$\0/\n\t\n\x02\x08\x08\x12\x03$\0/\n\x08\n\x01\x08\x12\x03%\0\"\ + \n\t\n\x02\x08\n\x12\x03%\0\"\n\x08\n\x01\x08\x12\x03&\0!\n\t\n\x02\x08$\ + \x12\x03&\0!\n\xcd*\n\x02\x04\0\x12\x06\xf1\x01\0\xf4\x01\x01\x1a\xbe*\ + \x20`FieldMask`\x20represents\x20a\x20set\x20of\x20symbolic\x20field\x20\ + paths,\x20for\x20example:\n\n\x20\x20\x20\x20\x20paths:\x20\"f.a\"\n\x20\ + \x20\x20\x20\x20paths:\x20\"f.b.d\"\n\n\x20Here\x20`f`\x20represents\x20\ + a\x20field\x20in\x20some\x20root\x20message,\x20`a`\x20and\x20`b`\n\x20f\ + ields\x20in\x20the\x20message\x20found\x20in\x20`f`,\x20and\x20`d`\x20a\ + \x20field\x20found\x20in\x20the\n\x20message\x20in\x20`f.b`.\n\n\x20Fiel\ + d\x20masks\x20are\x20used\x20to\x20specify\x20a\x20subset\x20of\x20field\ + s\x20that\x20should\x20be\n\x20returned\x20by\x20a\x20get\x20operation\ + \x20or\x20modified\x20by\x20an\x20update\x20operation.\n\x20Field\x20mas\ + ks\x20also\x20have\x20a\x20custom\x20JSON\x20encoding\x20(see\x20below).\ + \n\n\x20#\x20Field\x20Masks\x20in\x20Projections\n\n\x20When\x20used\x20\ + in\x20the\x20context\x20of\x20a\x20projection,\x20a\x20response\x20messa\ + ge\x20or\n\x20sub-message\x20is\x20filtered\x20by\x20the\x20API\x20to\ + \x20only\x20contain\x20those\x20fields\x20as\n\x20specified\x20in\x20the\ + \x20mask.\x20For\x20example,\x20if\x20the\x20mask\x20in\x20the\x20previo\ + us\n\x20example\x20is\x20applied\x20to\x20a\x20response\x20message\x20as\ + \x20follows:\n\n\x20\x20\x20\x20\x20f\x20{\n\x20\x20\x20\x20\x20\x20\x20\ + a\x20:\x2022\n\x20\x20\x20\x20\x20\x20\x20b\x20{\n\x20\x20\x20\x20\x20\ + \x20\x20\x20\x20d\x20:\x201\n\x20\x20\x20\x20\x20\x20\x20\x20\x20x\x20:\ + \x202\n\x20\x20\x20\x20\x20\x20\x20}\n\x20\x20\x20\x20\x20\x20\x20y\x20:\ + \x2013\n\x20\x20\x20\x20\x20}\n\x20\x20\x20\x20\x20z:\x208\n\n\x20The\ + \x20result\x20will\x20not\x20contain\x20specific\x20values\x20for\x20fie\ + lds\x20x,y\x20and\x20z\n\x20(their\x20value\x20will\x20be\x20set\x20to\ + \x20the\x20default,\x20and\x20omitted\x20in\x20proto\x20text\n\x20output\ + ):\n\n\n\x20\x20\x20\x20\x20f\x20{\n\x20\x20\x20\x20\x20\x20\x20a\x20:\ + \x2022\n\x20\x20\x20\x20\x20\x20\x20b\x20{\n\x20\x20\x20\x20\x20\x20\x20\ + \x20\x20d\x20:\x201\n\x20\x20\x20\x20\x20\x20\x20}\n\x20\x20\x20\x20\x20\ + }\n\n\x20A\x20repeated\x20field\x20is\x20not\x20allowed\x20except\x20at\ + \x20the\x20last\x20position\x20of\x20a\n\x20paths\x20string.\n\n\x20If\ + \x20a\x20FieldMask\x20object\x20is\x20not\x20present\x20in\x20a\x20get\ + \x20operation,\x20the\n\x20operation\x20applies\x20to\x20all\x20fields\ + \x20(as\x20if\x20a\x20FieldMask\x20of\x20all\x20fields\n\x20had\x20been\ + \x20specified).\n\n\x20Note\x20that\x20a\x20field\x20mask\x20does\x20not\ + \x20necessarily\x20apply\x20to\x20the\n\x20top-level\x20response\x20mess\ + age.\x20In\x20case\x20of\x20a\x20REST\x20get\x20operation,\x20the\n\x20f\ + ield\x20mask\x20applies\x20directly\x20to\x20the\x20response,\x20but\x20\ + in\x20case\x20of\x20a\x20REST\n\x20list\x20operation,\x20the\x20mask\x20\ + instead\x20applies\x20to\x20each\x20individual\x20message\n\x20in\x20the\ + \x20returned\x20resource\x20list.\x20In\x20case\x20of\x20a\x20REST\x20cu\ + stom\x20method,\n\x20other\x20definitions\x20may\x20be\x20used.\x20Where\ + \x20the\x20mask\x20applies\x20will\x20be\n\x20clearly\x20documented\x20t\ + ogether\x20with\x20its\x20declaration\x20in\x20the\x20API.\x20\x20In\n\ + \x20any\x20case,\x20the\x20effect\x20on\x20the\x20returned\x20resource/r\ + esources\x20is\x20required\n\x20behavior\x20for\x20APIs.\n\n\x20#\x20Fie\ + ld\x20Masks\x20in\x20Update\x20Operations\n\n\x20A\x20field\x20mask\x20i\ + n\x20update\x20operations\x20specifies\x20which\x20fields\x20of\x20the\n\ + \x20targeted\x20resource\x20are\x20going\x20to\x20be\x20updated.\x20The\ + \x20API\x20is\x20required\n\x20to\x20only\x20change\x20the\x20values\x20\ + of\x20the\x20fields\x20as\x20specified\x20in\x20the\x20mask\n\x20and\x20\ + leave\x20the\x20others\x20untouched.\x20If\x20a\x20resource\x20is\x20pas\ + sed\x20in\x20to\n\x20describe\x20the\x20updated\x20values,\x20the\x20API\ + \x20ignores\x20the\x20values\x20of\x20all\n\x20fields\x20not\x20covered\ + \x20by\x20the\x20mask.\n\n\x20If\x20a\x20repeated\x20field\x20is\x20spec\ + ified\x20for\x20an\x20update\x20operation,\x20the\x20existing\n\x20repea\ + ted\x20values\x20in\x20the\x20target\x20resource\x20will\x20be\x20overwr\ + itten\x20by\x20the\x20new\x20values.\n\x20Note\x20that\x20a\x20repeated\ + \x20field\x20is\x20only\x20allowed\x20in\x20the\x20last\x20position\x20o\ + f\x20a\x20`paths`\n\x20string.\n\n\x20If\x20a\x20sub-message\x20is\x20sp\ + ecified\x20in\x20the\x20last\x20position\x20of\x20the\x20field\x20mask\ + \x20for\x20an\n\x20update\x20operation,\x20then\x20the\x20existing\x20su\ + b-message\x20in\x20the\x20target\x20resource\x20is\n\x20overwritten.\x20\ + Given\x20the\x20target\x20message:\n\n\x20\x20\x20\x20\x20f\x20{\n\x20\ + \x20\x20\x20\x20\x20\x20b\x20{\n\x20\x20\x20\x20\x20\x20\x20\x20\x20d\ + \x20:\x201\n\x20\x20\x20\x20\x20\x20\x20\x20\x20x\x20:\x202\n\x20\x20\ + \x20\x20\x20\x20\x20}\n\x20\x20\x20\x20\x20\x20\x20c\x20:\x201\n\x20\x20\ + \x20\x20\x20}\n\n\x20And\x20an\x20update\x20message:\n\n\x20\x20\x20\x20\ + \x20f\x20{\n\x20\x20\x20\x20\x20\x20\x20b\x20{\n\x20\x20\x20\x20\x20\x20\ + \x20\x20\x20d\x20:\x2010\n\x20\x20\x20\x20\x20\x20\x20}\n\x20\x20\x20\ + \x20\x20}\n\n\x20then\x20if\x20the\x20field\x20mask\x20is:\n\n\x20\x20pa\ + ths:\x20\"f.b\"\n\n\x20then\x20the\x20result\x20will\x20be:\n\n\x20\x20\ + \x20\x20\x20f\x20{\n\x20\x20\x20\x20\x20\x20\x20b\x20{\n\x20\x20\x20\x20\ + \x20\x20\x20\x20\x20d\x20:\x2010\n\x20\x20\x20\x20\x20\x20\x20}\n\x20\ + \x20\x20\x20\x20\x20\x20c\x20:\x201\n\x20\x20\x20\x20\x20}\n\n\x20Howeve\ + r,\x20if\x20the\x20update\x20mask\x20was:\n\n\x20\x20paths:\x20\"f.b.d\"\ + \n\n\x20then\x20the\x20result\x20would\x20be:\n\n\x20\x20\x20\x20\x20f\ + \x20{\n\x20\x20\x20\x20\x20\x20\x20b\x20{\n\x20\x20\x20\x20\x20\x20\x20\ + \x20\x20d\x20:\x2010\n\x20\x20\x20\x20\x20\x20\x20\x20\x20x\x20:\x202\n\ + \x20\x20\x20\x20\x20\x20\x20}\n\x20\x20\x20\x20\x20\x20\x20c\x20:\x201\n\ + \x20\x20\x20\x20\x20}\n\n\x20In\x20order\x20to\x20reset\x20a\x20field's\ + \x20value\x20to\x20the\x20default,\x20the\x20field\x20must\n\x20be\x20in\ + \x20the\x20mask\x20and\x20set\x20to\x20the\x20default\x20value\x20in\x20\ + the\x20provided\x20resource.\n\x20Hence,\x20in\x20order\x20to\x20reset\ + \x20all\x20fields\x20of\x20a\x20resource,\x20provide\x20a\x20default\n\ + \x20instance\x20of\x20the\x20resource\x20and\x20set\x20all\x20fields\x20\ + in\x20the\x20mask,\x20or\x20do\n\x20not\x20provide\x20a\x20mask\x20as\ + \x20described\x20below.\n\n\x20If\x20a\x20field\x20mask\x20is\x20not\x20\ + present\x20on\x20update,\x20the\x20operation\x20applies\x20to\n\x20all\ + \x20fields\x20(as\x20if\x20a\x20field\x20mask\x20of\x20all\x20fields\x20\ + has\x20been\x20specified).\n\x20Note\x20that\x20in\x20the\x20presence\ + \x20of\x20schema\x20evolution,\x20this\x20may\x20mean\x20that\n\x20field\ + s\x20the\x20client\x20does\x20not\x20know\x20and\x20has\x20therefore\x20\ + not\x20filled\x20into\n\x20the\x20request\x20will\x20be\x20reset\x20to\ + \x20their\x20default.\x20If\x20this\x20is\x20unwanted\n\x20behavior,\x20\ + a\x20specific\x20service\x20may\x20require\x20a\x20client\x20to\x20alway\ + s\x20specify\n\x20a\x20field\x20mask,\x20producing\x20an\x20error\x20if\ + \x20not.\n\n\x20As\x20with\x20get\x20operations,\x20the\x20location\x20o\ + f\x20the\x20resource\x20which\n\x20describes\x20the\x20updated\x20values\ + \x20in\x20the\x20request\x20message\x20depends\x20on\x20the\n\x20operati\ + on\x20kind.\x20In\x20any\x20case,\x20the\x20effect\x20of\x20the\x20field\ + \x20mask\x20is\n\x20required\x20to\x20be\x20honored\x20by\x20the\x20API.\ + \n\n\x20##\x20Considerations\x20for\x20HTTP\x20REST\n\n\x20The\x20HTTP\ + \x20kind\x20of\x20an\x20update\x20operation\x20which\x20uses\x20a\x20fie\ + ld\x20mask\x20must\n\x20be\x20set\x20to\x20PATCH\x20instead\x20of\x20PUT\ + \x20in\x20order\x20to\x20satisfy\x20HTTP\x20semantics\n\x20(PUT\x20must\ + \x20only\x20be\x20used\x20for\x20full\x20updates).\n\n\x20#\x20JSON\x20E\ + ncoding\x20of\x20Field\x20Masks\n\n\x20In\x20JSON,\x20a\x20field\x20mask\ + \x20is\x20encoded\x20as\x20a\x20single\x20string\x20where\x20paths\x20ar\ + e\n\x20separated\x20by\x20a\x20comma.\x20Fields\x20name\x20in\x20each\ + \x20path\x20are\x20converted\n\x20to/from\x20lower-camel\x20naming\x20co\ + nventions.\n\n\x20As\x20an\x20example,\x20consider\x20the\x20following\ + \x20message\x20declarations:\n\n\x20\x20\x20\x20\x20message\x20Profile\ + \x20{\n\x20\x20\x20\x20\x20\x20\x20User\x20user\x20=\x201;\n\x20\x20\x20\ + \x20\x20\x20\x20Photo\x20photo\x20=\x202;\n\x20\x20\x20\x20\x20}\n\x20\ + \x20\x20\x20\x20message\x20User\x20{\n\x20\x20\x20\x20\x20\x20\x20string\ + \x20display_name\x20=\x201;\n\x20\x20\x20\x20\x20\x20\x20string\x20addre\ + ss\x20=\x202;\n\x20\x20\x20\x20\x20}\n\n\x20In\x20proto\x20a\x20field\ + \x20mask\x20for\x20`Profile`\x20may\x20look\x20as\x20such:\n\n\x20\x20\ + \x20\x20\x20mask\x20{\n\x20\x20\x20\x20\x20\x20\x20paths:\x20\"user.disp\ + lay_name\"\n\x20\x20\x20\x20\x20\x20\x20paths:\x20\"photo\"\n\x20\x20\ + \x20\x20\x20}\n\n\x20In\x20JSON,\x20the\x20same\x20mask\x20is\x20represe\ + nted\x20as\x20below:\n\n\x20\x20\x20\x20\x20{\n\x20\x20\x20\x20\x20\x20\ + \x20mask:\x20\"user.displayName,photo\"\n\x20\x20\x20\x20\x20}\n\n\x20#\ + \x20Field\x20Masks\x20and\x20Oneof\x20Fields\n\n\x20Field\x20masks\x20tr\ + eat\x20fields\x20in\x20oneofs\x20just\x20as\x20regular\x20fields.\x20Con\ + sider\x20the\n\x20following\x20message:\n\n\x20\x20\x20\x20\x20message\ + \x20SampleMessage\x20{\n\x20\x20\x20\x20\x20\x20\x20oneof\x20test_oneof\ + \x20{\n\x20\x20\x20\x20\x20\x20\x20\x20\x20string\x20name\x20=\x204;\n\ + \x20\x20\x20\x20\x20\x20\x20\x20\x20SubMessage\x20sub_message\x20=\x209;\ + \n\x20\x20\x20\x20\x20\x20\x20}\n\x20\x20\x20\x20\x20}\n\n\x20The\x20fie\ + ld\x20mask\x20can\x20be:\n\n\x20\x20\x20\x20\x20mask\x20{\n\x20\x20\x20\ + \x20\x20\x20\x20paths:\x20\"name\"\n\x20\x20\x20\x20\x20}\n\n\x20Or:\n\n\ + \x20\x20\x20\x20\x20mask\x20{\n\x20\x20\x20\x20\x20\x20\x20paths:\x20\"s\ + ub_message\"\n\x20\x20\x20\x20\x20}\n\n\x20Note\x20that\x20oneof\x20type\ + \x20names\x20(\"test_oneof\"\x20in\x20this\x20case)\x20cannot\x20be\x20u\ + sed\x20in\n\x20paths.\n\n\x0b\n\x03\x04\0\x01\x12\x04\xf1\x01\x08\x11\n,\ + \n\x04\x04\0\x02\0\x12\x04\xf3\x01\x02\x1c\x1a\x1e\x20The\x20set\x20of\ + \x20field\x20mask\x20paths.\n\n\r\n\x05\x04\0\x02\0\x04\x12\x04\xf3\x01\ + \x02\n\n\r\n\x05\x04\0\x02\0\x05\x12\x04\xf3\x01\x0b\x11\n\r\n\x05\x04\0\ + \x02\0\x01\x12\x04\xf3\x01\x12\x17\n\r\n\x05\x04\0\x02\0\x03\x12\x04\xf3\ + \x01\x1a\x1bb\x06proto3\ +"; + +static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT; + +fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { + ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() +} + +pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { + unsafe { + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) + } +} diff --git a/src/well_known_types/mod.rs b/src/well_known_types/mod.rs new file mode 100644 index 0000000..9ecf8fb --- /dev/null +++ b/src/well_known_types/mod.rs @@ -0,0 +1,26 @@ +// This file is generated. Do not edit +//! Generated code for "well known types" +//! +//! [This document](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf) describes these types. + +mod any; +mod api; +mod duration; +mod empty; +mod field_mask; +mod source_context; +mod struct_pb; +mod timestamp; +mod type_pb; +mod wrappers; + +pub use self::any::*; +pub use self::api::*; +pub use self::duration::*; +pub use self::empty::*; +pub use self::field_mask::*; +pub use self::source_context::*; +pub use self::struct_pb::*; +pub use self::timestamp::*; +pub use self::type_pb::*; +pub use self::wrappers::*; diff --git a/src/well_known_types/source_context.rs b/src/well_known_types/source_context.rs new file mode 100644 index 0000000..c9a9e26 --- /dev/null +++ b/src/well_known_types/source_context.rs @@ -0,0 +1,258 @@ +// This file is generated by rust-protobuf 2.14.0-pre. Do not edit +// @generated + +// https://github.com/rust-lang/rust-clippy/issues/702 +#![allow(unknown_lints)] +#![allow(clippy::all)] + +#![cfg_attr(rustfmt, rustfmt_skip)] + +#![allow(box_pointers)] +#![allow(dead_code)] +#![allow(missing_docs)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(non_upper_case_globals)] +#![allow(trivial_casts)] +#![allow(unsafe_code)] +#![allow(unused_imports)] +#![allow(unused_results)] +//! Generated file from `google/protobuf/source_context.proto` + +use protobuf::Message as Message_imported_for_functions; +use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct SourceContext { + // message fields + pub file_name: ::std::string::String, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a SourceContext { + fn default() -> &'a SourceContext { + <SourceContext as ::protobuf::Message>::default_instance() + } +} + +impl SourceContext { + pub fn new() -> SourceContext { + ::std::default::Default::default() + } + + // string file_name = 1; + + + pub fn get_file_name(&self) -> &str { + &self.file_name + } + pub fn clear_file_name(&mut self) { + self.file_name.clear(); + } + + // Param is passed by value, moved + pub fn set_file_name(&mut self, v: ::std::string::String) { + self.file_name = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_file_name(&mut self) -> &mut ::std::string::String { + &mut self.file_name + } + + // Take field + pub fn take_file_name(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.file_name, ::std::string::String::new()) + } +} + +impl ::protobuf::Message for SourceContext { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.file_name)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.file_name.is_empty() { + my_size += ::protobuf::rt::string_size(1, &self.file_name); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.file_name.is_empty() { + os.write_string(1, &self.file_name)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> SourceContext { + SourceContext::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "file_name", + |m: &SourceContext| { &m.file_name }, + |m: &mut SourceContext| { &mut m.file_name }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<SourceContext>( + "SourceContext", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static SourceContext { + static mut instance: ::protobuf::lazy::Lazy<SourceContext> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(SourceContext::new) + } + } +} + +impl ::protobuf::Clear for SourceContext { + fn clear(&mut self) { + self.file_name.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for SourceContext { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for SourceContext { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +static file_descriptor_proto_data: &'static [u8] = b"\ + \n$google/protobuf/source_context.proto\x12\x0fgoogle.protobuf\",\n\rSou\ + rceContext\x12\x1b\n\tfile_name\x18\x01\x20\x01(\tR\x08fileNameBR\n\x13c\ + om.google.protobufB\x12SourceContextProtoP\x01\xa2\x02\x03GPB\xaa\x02\ + \x1eGoogle.Protobuf.WellKnownTypesJ\xac\x10\n\x06\x12\x04\x1e\0.\x01\n\ + \xcc\x0c\n\x01\x0c\x12\x03\x1e\0\x122\xc1\x0c\x20Protocol\x20Buffers\x20\ + -\x20Google's\x20data\x20interchange\x20format\n\x20Copyright\x202008\ + \x20Google\x20Inc.\x20\x20All\x20rights\x20reserved.\n\x20https://develo\ + pers.google.com/protocol-buffers/\n\n\x20Redistribution\x20and\x20use\ + \x20in\x20source\x20and\x20binary\x20forms,\x20with\x20or\x20without\n\ + \x20modification,\x20are\x20permitted\x20provided\x20that\x20the\x20foll\ + owing\x20conditions\x20are\n\x20met:\n\n\x20\x20\x20\x20\x20*\x20Redistr\ + ibutions\x20of\x20source\x20code\x20must\x20retain\x20the\x20above\x20co\ + pyright\n\x20notice,\x20this\x20list\x20of\x20conditions\x20and\x20the\ + \x20following\x20disclaimer.\n\x20\x20\x20\x20\x20*\x20Redistributions\ + \x20in\x20binary\x20form\x20must\x20reproduce\x20the\x20above\n\x20copyr\ + ight\x20notice,\x20this\x20list\x20of\x20conditions\x20and\x20the\x20fol\ + lowing\x20disclaimer\n\x20in\x20the\x20documentation\x20and/or\x20other\ + \x20materials\x20provided\x20with\x20the\n\x20distribution.\n\x20\x20\ + \x20\x20\x20*\x20Neither\x20the\x20name\x20of\x20Google\x20Inc.\x20nor\ + \x20the\x20names\x20of\x20its\n\x20contributors\x20may\x20be\x20used\x20\ + to\x20endorse\x20or\x20promote\x20products\x20derived\x20from\n\x20this\ + \x20software\x20without\x20specific\x20prior\x20written\x20permission.\n\ + \n\x20THIS\x20SOFTWARE\x20IS\x20PROVIDED\x20BY\x20THE\x20COPYRIGHT\x20HO\ + LDERS\x20AND\x20CONTRIBUTORS\n\x20\"AS\x20IS\"\x20AND\x20ANY\x20EXPRESS\ + \x20OR\x20IMPLIED\x20WARRANTIES,\x20INCLUDING,\x20BUT\x20NOT\n\x20LIMITE\ + D\x20TO,\x20THE\x20IMPLIED\x20WARRANTIES\x20OF\x20MERCHANTABILITY\x20AND\ + \x20FITNESS\x20FOR\n\x20A\x20PARTICULAR\x20PURPOSE\x20ARE\x20DISCLAIMED.\ + \x20IN\x20NO\x20EVENT\x20SHALL\x20THE\x20COPYRIGHT\n\x20OWNER\x20OR\x20C\ + ONTRIBUTORS\x20BE\x20LIABLE\x20FOR\x20ANY\x20DIRECT,\x20INDIRECT,\x20INC\ + IDENTAL,\n\x20SPECIAL,\x20EXEMPLARY,\x20OR\x20CONSEQUENTIAL\x20DAMAGES\ + \x20(INCLUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\x20PROCUREMENT\x20OF\ + \x20SUBSTITUTE\x20GOODS\x20OR\x20SERVICES;\x20LOSS\x20OF\x20USE,\n\x20DA\ + TA,\x20OR\x20PROFITS;\x20OR\x20BUSINESS\x20INTERRUPTION)\x20HOWEVER\x20C\ + AUSED\x20AND\x20ON\x20ANY\n\x20THEORY\x20OF\x20LIABILITY,\x20WHETHER\x20\ + IN\x20CONTRACT,\x20STRICT\x20LIABILITY,\x20OR\x20TORT\n\x20(INCLUDING\ + \x20NEGLIGENCE\x20OR\x20OTHERWISE)\x20ARISING\x20IN\x20ANY\x20WAY\x20OUT\ + \x20OF\x20THE\x20USE\n\x20OF\x20THIS\x20SOFTWARE,\x20EVEN\x20IF\x20ADVIS\ + ED\x20OF\x20THE\x20POSSIBILITY\x20OF\x20SUCH\x20DAMAGE.\n\n\x08\n\x01\ + \x02\x12\x03\x20\0\x18\n\x08\n\x01\x08\x12\x03\"\0;\n\t\n\x02\x08%\x12\ + \x03\"\0;\n\x08\n\x01\x08\x12\x03#\0,\n\t\n\x02\x08\x01\x12\x03#\0,\n\ + \x08\n\x01\x08\x12\x03$\03\n\t\n\x02\x08\x08\x12\x03$\03\n\x08\n\x01\x08\ + \x12\x03%\0\"\n\t\n\x02\x08\n\x12\x03%\0\"\n\x08\n\x01\x08\x12\x03&\0!\n\ + \t\n\x02\x08$\x12\x03&\0!\n\x83\x01\n\x02\x04\0\x12\x04*\0.\x01\x1aw\x20\ + `SourceContext`\x20represents\x20information\x20about\x20the\x20source\ + \x20of\x20a\n\x20protobuf\x20element,\x20like\x20the\x20file\x20in\x20wh\ + ich\x20it\x20is\x20defined.\n\n\n\n\x03\x04\0\x01\x12\x03*\x08\x15\n\xa3\ + \x01\n\x04\x04\0\x02\0\x12\x03-\x02\x17\x1a\x95\x01\x20The\x20path-quali\ + fied\x20name\x20of\x20the\x20.proto\x20file\x20that\x20contained\x20the\ + \x20associated\n\x20protobuf\x20element.\x20\x20For\x20example:\x20`\"go\ + ogle/protobuf/source_context.proto\"`.\n\n\x0c\n\x05\x04\0\x02\0\x05\x12\ + \x03-\x02\x08\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03-\t\x12\n\x0c\n\x05\x04\ + \0\x02\0\x03\x12\x03-\x15\x16b\x06proto3\ +"; + +static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT; + +fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { + ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() +} + +pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { + unsafe { + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) + } +} diff --git a/src/well_known_types/struct_pb.rs b/src/well_known_types/struct_pb.rs new file mode 100644 index 0000000..f644b20 --- /dev/null +++ b/src/well_known_types/struct_pb.rs @@ -0,0 +1,1028 @@ +// This file is generated by rust-protobuf 2.14.0-pre. Do not edit +// @generated + +// https://github.com/rust-lang/rust-clippy/issues/702 +#![allow(unknown_lints)] +#![allow(clippy::all)] + +#![cfg_attr(rustfmt, rustfmt_skip)] + +#![allow(box_pointers)] +#![allow(dead_code)] +#![allow(missing_docs)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(non_upper_case_globals)] +#![allow(trivial_casts)] +#![allow(unsafe_code)] +#![allow(unused_imports)] +#![allow(unused_results)] +//! Generated file from `google/protobuf/struct.proto` + +use protobuf::Message as Message_imported_for_functions; +use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Struct { + // message fields + pub fields: ::std::collections::HashMap<::std::string::String, Value>, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Struct { + fn default() -> &'a Struct { + <Struct as ::protobuf::Message>::default_instance() + } +} + +impl Struct { + pub fn new() -> Struct { + ::std::default::Default::default() + } + + // repeated .google.protobuf.Struct.FieldsEntry fields = 1; + + + pub fn get_fields(&self) -> &::std::collections::HashMap<::std::string::String, Value> { + &self.fields + } + pub fn clear_fields(&mut self) { + self.fields.clear(); + } + + // Param is passed by value, moved + pub fn set_fields(&mut self, v: ::std::collections::HashMap<::std::string::String, Value>) { + self.fields = v; + } + + // Mutable pointer to the field. + pub fn mut_fields(&mut self) -> &mut ::std::collections::HashMap<::std::string::String, Value> { + &mut self.fields + } + + // Take field + pub fn take_fields(&mut self) -> ::std::collections::HashMap<::std::string::String, Value> { + ::std::mem::replace(&mut self.fields, ::std::collections::HashMap::new()) + } +} + +impl ::protobuf::Message for Struct { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_map_into::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<Value>>(wire_type, is, &mut self.fields)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + my_size += ::protobuf::rt::compute_map_size::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<Value>>(1, &self.fields); + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + ::protobuf::rt::write_map_with_cached_sizes::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<Value>>(1, &self.fields, os)?; + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Struct { + Struct::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<Value>>( + "fields", + |m: &Struct| { &m.fields }, + |m: &mut Struct| { &mut m.fields }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Struct>( + "Struct", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Struct { + static mut instance: ::protobuf::lazy::Lazy<Struct> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Struct::new) + } + } +} + +impl ::protobuf::Clear for Struct { + fn clear(&mut self) { + self.fields.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Struct { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Struct { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Value { + // message oneof groups + pub kind: ::std::option::Option<Value_oneof_kind>, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Value { + fn default() -> &'a Value { + <Value as ::protobuf::Message>::default_instance() + } +} + +#[derive(Clone,PartialEq,Debug)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub enum Value_oneof_kind { + null_value(NullValue), + number_value(f64), + string_value(::std::string::String), + bool_value(bool), + struct_value(Struct), + list_value(ListValue), +} + +impl Value { + pub fn new() -> Value { + ::std::default::Default::default() + } + + // .google.protobuf.NullValue null_value = 1; + + + pub fn get_null_value(&self) -> NullValue { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::null_value(v)) => v, + _ => NullValue::NULL_VALUE, + } + } + pub fn clear_null_value(&mut self) { + self.kind = ::std::option::Option::None; + } + + pub fn has_null_value(&self) -> bool { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::null_value(..)) => true, + _ => false, + } + } + + // Param is passed by value, moved + pub fn set_null_value(&mut self, v: NullValue) { + self.kind = ::std::option::Option::Some(Value_oneof_kind::null_value(v)) + } + + // double number_value = 2; + + + pub fn get_number_value(&self) -> f64 { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::number_value(v)) => v, + _ => 0., + } + } + pub fn clear_number_value(&mut self) { + self.kind = ::std::option::Option::None; + } + + pub fn has_number_value(&self) -> bool { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::number_value(..)) => true, + _ => false, + } + } + + // Param is passed by value, moved + pub fn set_number_value(&mut self, v: f64) { + self.kind = ::std::option::Option::Some(Value_oneof_kind::number_value(v)) + } + + // string string_value = 3; + + + pub fn get_string_value(&self) -> &str { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::string_value(ref v)) => v, + _ => "", + } + } + pub fn clear_string_value(&mut self) { + self.kind = ::std::option::Option::None; + } + + pub fn has_string_value(&self) -> bool { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::string_value(..)) => true, + _ => false, + } + } + + // Param is passed by value, moved + pub fn set_string_value(&mut self, v: ::std::string::String) { + self.kind = ::std::option::Option::Some(Value_oneof_kind::string_value(v)) + } + + // Mutable pointer to the field. + pub fn mut_string_value(&mut self) -> &mut ::std::string::String { + if let ::std::option::Option::Some(Value_oneof_kind::string_value(_)) = self.kind { + } else { + self.kind = ::std::option::Option::Some(Value_oneof_kind::string_value(::std::string::String::new())); + } + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::string_value(ref mut v)) => v, + _ => panic!(), + } + } + + // Take field + pub fn take_string_value(&mut self) -> ::std::string::String { + if self.has_string_value() { + match self.kind.take() { + ::std::option::Option::Some(Value_oneof_kind::string_value(v)) => v, + _ => panic!(), + } + } else { + ::std::string::String::new() + } + } + + // bool bool_value = 4; + + + pub fn get_bool_value(&self) -> bool { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::bool_value(v)) => v, + _ => false, + } + } + pub fn clear_bool_value(&mut self) { + self.kind = ::std::option::Option::None; + } + + pub fn has_bool_value(&self) -> bool { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::bool_value(..)) => true, + _ => false, + } + } + + // Param is passed by value, moved + pub fn set_bool_value(&mut self, v: bool) { + self.kind = ::std::option::Option::Some(Value_oneof_kind::bool_value(v)) + } + + // .google.protobuf.Struct struct_value = 5; + + + pub fn get_struct_value(&self) -> &Struct { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::struct_value(ref v)) => v, + _ => Struct::default_instance(), + } + } + pub fn clear_struct_value(&mut self) { + self.kind = ::std::option::Option::None; + } + + pub fn has_struct_value(&self) -> bool { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::struct_value(..)) => true, + _ => false, + } + } + + // Param is passed by value, moved + pub fn set_struct_value(&mut self, v: Struct) { + self.kind = ::std::option::Option::Some(Value_oneof_kind::struct_value(v)) + } + + // Mutable pointer to the field. + pub fn mut_struct_value(&mut self) -> &mut Struct { + if let ::std::option::Option::Some(Value_oneof_kind::struct_value(_)) = self.kind { + } else { + self.kind = ::std::option::Option::Some(Value_oneof_kind::struct_value(Struct::new())); + } + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::struct_value(ref mut v)) => v, + _ => panic!(), + } + } + + // Take field + pub fn take_struct_value(&mut self) -> Struct { + if self.has_struct_value() { + match self.kind.take() { + ::std::option::Option::Some(Value_oneof_kind::struct_value(v)) => v, + _ => panic!(), + } + } else { + Struct::new() + } + } + + // .google.protobuf.ListValue list_value = 6; + + + pub fn get_list_value(&self) -> &ListValue { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::list_value(ref v)) => v, + _ => ListValue::default_instance(), + } + } + pub fn clear_list_value(&mut self) { + self.kind = ::std::option::Option::None; + } + + pub fn has_list_value(&self) -> bool { + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::list_value(..)) => true, + _ => false, + } + } + + // Param is passed by value, moved + pub fn set_list_value(&mut self, v: ListValue) { + self.kind = ::std::option::Option::Some(Value_oneof_kind::list_value(v)) + } + + // Mutable pointer to the field. + pub fn mut_list_value(&mut self) -> &mut ListValue { + if let ::std::option::Option::Some(Value_oneof_kind::list_value(_)) = self.kind { + } else { + self.kind = ::std::option::Option::Some(Value_oneof_kind::list_value(ListValue::new())); + } + match self.kind { + ::std::option::Option::Some(Value_oneof_kind::list_value(ref mut v)) => v, + _ => panic!(), + } + } + + // Take field + pub fn take_list_value(&mut self) -> ListValue { + if self.has_list_value() { + match self.kind.take() { + ::std::option::Option::Some(Value_oneof_kind::list_value(v)) => v, + _ => panic!(), + } + } else { + ListValue::new() + } + } +} + +impl ::protobuf::Message for Value { + fn is_initialized(&self) -> bool { + if let Some(Value_oneof_kind::struct_value(ref v)) = self.kind { + if !v.is_initialized() { + return false; + } + } + if let Some(Value_oneof_kind::list_value(ref v)) = self.kind { + if !v.is_initialized() { + return false; + } + } + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + self.kind = ::std::option::Option::Some(Value_oneof_kind::null_value(is.read_enum()?)); + }, + 2 => { + if wire_type != ::protobuf::wire_format::WireTypeFixed64 { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + self.kind = ::std::option::Option::Some(Value_oneof_kind::number_value(is.read_double()?)); + }, + 3 => { + if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + self.kind = ::std::option::Option::Some(Value_oneof_kind::string_value(is.read_string()?)); + }, + 4 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + self.kind = ::std::option::Option::Some(Value_oneof_kind::bool_value(is.read_bool()?)); + }, + 5 => { + if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + self.kind = ::std::option::Option::Some(Value_oneof_kind::struct_value(is.read_message()?)); + }, + 6 => { + if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + self.kind = ::std::option::Option::Some(Value_oneof_kind::list_value(is.read_message()?)); + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if let ::std::option::Option::Some(ref v) = self.kind { + match v { + &Value_oneof_kind::null_value(v) => { + my_size += ::protobuf::rt::enum_size(1, v); + }, + &Value_oneof_kind::number_value(v) => { + my_size += 9; + }, + &Value_oneof_kind::string_value(ref v) => { + my_size += ::protobuf::rt::string_size(3, &v); + }, + &Value_oneof_kind::bool_value(v) => { + my_size += 2; + }, + &Value_oneof_kind::struct_value(ref v) => { + let len = v.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }, + &Value_oneof_kind::list_value(ref v) => { + let len = v.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }, + }; + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if let ::std::option::Option::Some(ref v) = self.kind { + match v { + &Value_oneof_kind::null_value(v) => { + os.write_enum(1, v.value())?; + }, + &Value_oneof_kind::number_value(v) => { + os.write_double(2, v)?; + }, + &Value_oneof_kind::string_value(ref v) => { + os.write_string(3, v)?; + }, + &Value_oneof_kind::bool_value(v) => { + os.write_bool(4, v)?; + }, + &Value_oneof_kind::struct_value(ref v) => { + os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }, + &Value_oneof_kind::list_value(ref v) => { + os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }, + }; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Value { + Value::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_singular_enum_accessor::<_, NullValue>( + "null_value", + Value::has_null_value, + Value::get_null_value, + )); + fields.push(::protobuf::reflect::accessor::make_singular_f64_accessor::<_>( + "number_value", + Value::has_number_value, + Value::get_number_value, + )); + fields.push(::protobuf::reflect::accessor::make_singular_string_accessor::<_>( + "string_value", + Value::has_string_value, + Value::get_string_value, + )); + fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor::<_>( + "bool_value", + Value::has_bool_value, + Value::get_bool_value, + )); + fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, Struct>( + "struct_value", + Value::has_struct_value, + Value::get_struct_value, + )); + fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, ListValue>( + "list_value", + Value::has_list_value, + Value::get_list_value, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Value>( + "Value", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Value { + static mut instance: ::protobuf::lazy::Lazy<Value> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Value::new) + } + } +} + +impl ::protobuf::Clear for Value { + fn clear(&mut self) { + self.kind = ::std::option::Option::None; + self.kind = ::std::option::Option::None; + self.kind = ::std::option::Option::None; + self.kind = ::std::option::Option::None; + self.kind = ::std::option::Option::None; + self.kind = ::std::option::Option::None; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Value { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Value { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct ListValue { + // message fields + pub values: ::protobuf::RepeatedField<Value>, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a ListValue { + fn default() -> &'a ListValue { + <ListValue as ::protobuf::Message>::default_instance() + } +} + +impl ListValue { + pub fn new() -> ListValue { + ::std::default::Default::default() + } + + // repeated .google.protobuf.Value values = 1; + + + pub fn get_values(&self) -> &[Value] { + &self.values + } + pub fn clear_values(&mut self) { + self.values.clear(); + } + + // Param is passed by value, moved + pub fn set_values(&mut self, v: ::protobuf::RepeatedField<Value>) { + self.values = v; + } + + // Mutable pointer to the field. + pub fn mut_values(&mut self) -> &mut ::protobuf::RepeatedField<Value> { + &mut self.values + } + + // Take field + pub fn take_values(&mut self) -> ::protobuf::RepeatedField<Value> { + ::std::mem::replace(&mut self.values, ::protobuf::RepeatedField::new()) + } +} + +impl ::protobuf::Message for ListValue { + fn is_initialized(&self) -> bool { + for v in &self.values { + if !v.is_initialized() { + return false; + } + }; + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.values)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + for value in &self.values { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + for v in &self.values { + os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> ListValue { + ListValue::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Value>>( + "values", + |m: &ListValue| { &m.values }, + |m: &mut ListValue| { &mut m.values }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<ListValue>( + "ListValue", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static ListValue { + static mut instance: ::protobuf::lazy::Lazy<ListValue> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(ListValue::new) + } + } +} + +impl ::protobuf::Clear for ListValue { + fn clear(&mut self) { + self.values.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for ListValue { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for ListValue { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(Clone,PartialEq,Eq,Debug,Hash)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub enum NullValue { + NULL_VALUE = 0, +} + +impl ::protobuf::ProtobufEnum for NullValue { + fn value(&self) -> i32 { + *self as i32 + } + + fn from_i32(value: i32) -> ::std::option::Option<NullValue> { + match value { + 0 => ::std::option::Option::Some(NullValue::NULL_VALUE), + _ => ::std::option::Option::None + } + } + + fn values() -> &'static [Self] { + static values: &'static [NullValue] = &[ + NullValue::NULL_VALUE, + ]; + values + } + + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::<NullValue>("NullValue", file_descriptor_proto()) + }) + } + } +} + +impl ::std::marker::Copy for NullValue { +} + +impl ::std::default::Default for NullValue { + fn default() -> Self { + NullValue::NULL_VALUE + } +} + +impl ::protobuf::reflect::ProtobufValue for NullValue { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(self.descriptor()) + } +} + +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x1cgoogle/protobuf/struct.proto\x12\x0fgoogle.protobuf\"\x98\x01\n\ + \x06Struct\x12;\n\x06fields\x18\x01\x20\x03(\x0b2#.google.protobuf.Struc\ + t.FieldsEntryR\x06fields\x1aQ\n\x0bFieldsEntry\x12\x10\n\x03key\x18\x01\ + \x20\x01(\tR\x03key\x12,\n\x05value\x18\x02\x20\x01(\x0b2\x16.google.pro\ + tobuf.ValueR\x05value:\x028\x01\"\xb2\x02\n\x05Value\x12;\n\nnull_value\ + \x18\x01\x20\x01(\x0e2\x1a.google.protobuf.NullValueH\0R\tnullValue\x12#\ + \n\x0cnumber_value\x18\x02\x20\x01(\x01H\0R\x0bnumberValue\x12#\n\x0cstr\ + ing_value\x18\x03\x20\x01(\tH\0R\x0bstringValue\x12\x1f\n\nbool_value\ + \x18\x04\x20\x01(\x08H\0R\tboolValue\x12<\n\x0cstruct_value\x18\x05\x20\ + \x01(\x0b2\x17.google.protobuf.StructH\0R\x0bstructValue\x12;\n\nlist_va\ + lue\x18\x06\x20\x01(\x0b2\x1a.google.protobuf.ListValueH\0R\tlistValueB\ + \x06\n\x04kind\";\n\tListValue\x12.\n\x06values\x18\x01\x20\x03(\x0b2\ + \x16.google.protobuf.ValueR\x06values*\x1b\n\tNullValue\x12\x0e\n\nNULL_\ + VALUE\x10\0B\x81\x01\n\x13com.google.protobufB\x0bStructProtoP\x01Z1gith\ + ub.com/golang/protobuf/ptypes/struct;structpb\xf8\x01\x01\xa2\x02\x03GPB\ + \xaa\x02\x1eGoogle.Protobuf.WellKnownTypesJ\x99\x1d\n\x06\x12\x04\x1e\0_\ + \x01\n\xcc\x0c\n\x01\x0c\x12\x03\x1e\0\x122\xc1\x0c\x20Protocol\x20Buffe\ + rs\x20-\x20Google's\x20data\x20interchange\x20format\n\x20Copyright\x202\ + 008\x20Google\x20Inc.\x20\x20All\x20rights\x20reserved.\n\x20https://dev\ + elopers.google.com/protocol-buffers/\n\n\x20Redistribution\x20and\x20use\ + \x20in\x20source\x20and\x20binary\x20forms,\x20with\x20or\x20without\n\ + \x20modification,\x20are\x20permitted\x20provided\x20that\x20the\x20foll\ + owing\x20conditions\x20are\n\x20met:\n\n\x20\x20\x20\x20\x20*\x20Redistr\ + ibutions\x20of\x20source\x20code\x20must\x20retain\x20the\x20above\x20co\ + pyright\n\x20notice,\x20this\x20list\x20of\x20conditions\x20and\x20the\ + \x20following\x20disclaimer.\n\x20\x20\x20\x20\x20*\x20Redistributions\ + \x20in\x20binary\x20form\x20must\x20reproduce\x20the\x20above\n\x20copyr\ + ight\x20notice,\x20this\x20list\x20of\x20conditions\x20and\x20the\x20fol\ + lowing\x20disclaimer\n\x20in\x20the\x20documentation\x20and/or\x20other\ + \x20materials\x20provided\x20with\x20the\n\x20distribution.\n\x20\x20\ + \x20\x20\x20*\x20Neither\x20the\x20name\x20of\x20Google\x20Inc.\x20nor\ + \x20the\x20names\x20of\x20its\n\x20contributors\x20may\x20be\x20used\x20\ + to\x20endorse\x20or\x20promote\x20products\x20derived\x20from\n\x20this\ + \x20software\x20without\x20specific\x20prior\x20written\x20permission.\n\ + \n\x20THIS\x20SOFTWARE\x20IS\x20PROVIDED\x20BY\x20THE\x20COPYRIGHT\x20HO\ + LDERS\x20AND\x20CONTRIBUTORS\n\x20\"AS\x20IS\"\x20AND\x20ANY\x20EXPRESS\ + \x20OR\x20IMPLIED\x20WARRANTIES,\x20INCLUDING,\x20BUT\x20NOT\n\x20LIMITE\ + D\x20TO,\x20THE\x20IMPLIED\x20WARRANTIES\x20OF\x20MERCHANTABILITY\x20AND\ + \x20FITNESS\x20FOR\n\x20A\x20PARTICULAR\x20PURPOSE\x20ARE\x20DISCLAIMED.\ + \x20IN\x20NO\x20EVENT\x20SHALL\x20THE\x20COPYRIGHT\n\x20OWNER\x20OR\x20C\ + ONTRIBUTORS\x20BE\x20LIABLE\x20FOR\x20ANY\x20DIRECT,\x20INDIRECT,\x20INC\ + IDENTAL,\n\x20SPECIAL,\x20EXEMPLARY,\x20OR\x20CONSEQUENTIAL\x20DAMAGES\ + \x20(INCLUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\x20PROCUREMENT\x20OF\ + \x20SUBSTITUTE\x20GOODS\x20OR\x20SERVICES;\x20LOSS\x20OF\x20USE,\n\x20DA\ + TA,\x20OR\x20PROFITS;\x20OR\x20BUSINESS\x20INTERRUPTION)\x20HOWEVER\x20C\ + AUSED\x20AND\x20ON\x20ANY\n\x20THEORY\x20OF\x20LIABILITY,\x20WHETHER\x20\ + IN\x20CONTRACT,\x20STRICT\x20LIABILITY,\x20OR\x20TORT\n\x20(INCLUDING\ + \x20NEGLIGENCE\x20OR\x20OTHERWISE)\x20ARISING\x20IN\x20ANY\x20WAY\x20OUT\ + \x20OF\x20THE\x20USE\n\x20OF\x20THIS\x20SOFTWARE,\x20EVEN\x20IF\x20ADVIS\ + ED\x20OF\x20THE\x20POSSIBILITY\x20OF\x20SUCH\x20DAMAGE.\n\n\x08\n\x01\ + \x02\x12\x03\x20\0\x18\n\x08\n\x01\x08\x12\x03\"\0;\n\t\n\x02\x08%\x12\ + \x03\"\0;\n\x08\n\x01\x08\x12\x03#\0\x1f\n\t\n\x02\x08\x1f\x12\x03#\0\ + \x1f\n\x08\n\x01\x08\x12\x03$\0H\n\t\n\x02\x08\x0b\x12\x03$\0H\n\x08\n\ + \x01\x08\x12\x03%\0,\n\t\n\x02\x08\x01\x12\x03%\0,\n\x08\n\x01\x08\x12\ + \x03&\0,\n\t\n\x02\x08\x08\x12\x03&\0,\n\x08\n\x01\x08\x12\x03'\0\"\n\t\ + \n\x02\x08\n\x12\x03'\0\"\n\x08\n\x01\x08\x12\x03(\0!\n\t\n\x02\x08$\x12\ + \x03(\0!\n\xb3\x03\n\x02\x04\0\x12\x043\06\x01\x1a\xa6\x03\x20`Struct`\ + \x20represents\x20a\x20structured\x20data\x20value,\x20consisting\x20of\ + \x20fields\n\x20which\x20map\x20to\x20dynamically\x20typed\x20values.\ + \x20In\x20some\x20languages,\x20`Struct`\n\x20might\x20be\x20supported\ + \x20by\x20a\x20native\x20representation.\x20For\x20example,\x20in\n\x20s\ + cripting\x20languages\x20like\x20JS\x20a\x20struct\x20is\x20represented\ + \x20as\x20an\n\x20object.\x20The\x20details\x20of\x20that\x20representat\ + ion\x20are\x20described\x20together\n\x20with\x20the\x20proto\x20support\ + \x20for\x20the\x20language.\n\n\x20The\x20JSON\x20representation\x20for\ + \x20`Struct`\x20is\x20JSON\x20object.\n\n\n\n\x03\x04\0\x01\x12\x033\x08\ + \x0e\n9\n\x04\x04\0\x02\0\x12\x035\x02\x20\x1a,\x20Unordered\x20map\x20o\ + f\x20dynamically\x20typed\x20values.\n\n\x0c\n\x05\x04\0\x02\0\x06\x12\ + \x035\x02\x14\n\x0c\n\x05\x04\0\x02\0\x01\x12\x035\x15\x1b\n\x0c\n\x05\ + \x04\0\x02\0\x03\x12\x035\x1e\x1f\n\xc3\x02\n\x02\x04\x01\x12\x04>\0N\ + \x01\x1a\xb6\x02\x20`Value`\x20represents\x20a\x20dynamically\x20typed\ + \x20value\x20which\x20can\x20be\x20either\n\x20null,\x20a\x20number,\x20\ + a\x20string,\x20a\x20boolean,\x20a\x20recursive\x20struct\x20value,\x20o\ + r\x20a\n\x20list\x20of\x20values.\x20A\x20producer\x20of\x20value\x20is\ + \x20expected\x20to\x20set\x20one\x20of\x20that\n\x20variants,\x20absence\ + \x20of\x20any\x20variant\x20indicates\x20an\x20error.\n\n\x20The\x20JSON\ + \x20representation\x20for\x20`Value`\x20is\x20JSON\x20value.\n\n\n\n\x03\ + \x04\x01\x01\x12\x03>\x08\r\n\"\n\x04\x04\x01\x08\0\x12\x04@\x02M\x03\ + \x1a\x14\x20The\x20kind\x20of\x20value.\n\n\x0c\n\x05\x04\x01\x08\0\x01\ + \x12\x03@\x08\x0c\n'\n\x04\x04\x01\x02\0\x12\x03B\x04\x1d\x1a\x1a\x20Rep\ + resents\x20a\x20null\x20value.\n\n\x0c\n\x05\x04\x01\x02\0\x06\x12\x03B\ + \x04\r\n\x0c\n\x05\x04\x01\x02\0\x01\x12\x03B\x0e\x18\n\x0c\n\x05\x04\ + \x01\x02\0\x03\x12\x03B\x1b\x1c\n)\n\x04\x04\x01\x02\x01\x12\x03D\x04\ + \x1c\x1a\x1c\x20Represents\x20a\x20double\x20value.\n\n\x0c\n\x05\x04\ + \x01\x02\x01\x05\x12\x03D\x04\n\n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x03D\ + \x0b\x17\n\x0c\n\x05\x04\x01\x02\x01\x03\x12\x03D\x1a\x1b\n)\n\x04\x04\ + \x01\x02\x02\x12\x03F\x04\x1c\x1a\x1c\x20Represents\x20a\x20string\x20va\ + lue.\n\n\x0c\n\x05\x04\x01\x02\x02\x05\x12\x03F\x04\n\n\x0c\n\x05\x04\ + \x01\x02\x02\x01\x12\x03F\x0b\x17\n\x0c\n\x05\x04\x01\x02\x02\x03\x12\ + \x03F\x1a\x1b\n*\n\x04\x04\x01\x02\x03\x12\x03H\x04\x18\x1a\x1d\x20Repre\ + sents\x20a\x20boolean\x20value.\n\n\x0c\n\x05\x04\x01\x02\x03\x05\x12\ + \x03H\x04\x08\n\x0c\n\x05\x04\x01\x02\x03\x01\x12\x03H\t\x13\n\x0c\n\x05\ + \x04\x01\x02\x03\x03\x12\x03H\x16\x17\n-\n\x04\x04\x01\x02\x04\x12\x03J\ + \x04\x1c\x1a\x20\x20Represents\x20a\x20structured\x20value.\n\n\x0c\n\ + \x05\x04\x01\x02\x04\x06\x12\x03J\x04\n\n\x0c\n\x05\x04\x01\x02\x04\x01\ + \x12\x03J\x0b\x17\n\x0c\n\x05\x04\x01\x02\x04\x03\x12\x03J\x1a\x1b\n-\n\ + \x04\x04\x01\x02\x05\x12\x03L\x04\x1d\x1a\x20\x20Represents\x20a\x20repe\ + ated\x20`Value`.\n\n\x0c\n\x05\x04\x01\x02\x05\x06\x12\x03L\x04\r\n\x0c\ + \n\x05\x04\x01\x02\x05\x01\x12\x03L\x0e\x18\n\x0c\n\x05\x04\x01\x02\x05\ + \x03\x12\x03L\x1b\x1c\n\xa9\x01\n\x02\x05\0\x12\x04T\0W\x01\x1a\x9c\x01\ + \x20`NullValue`\x20is\x20a\x20singleton\x20enumeration\x20to\x20represen\ + t\x20the\x20null\x20value\x20for\x20the\n\x20`Value`\x20type\x20union.\n\ + \n\x20\x20The\x20JSON\x20representation\x20for\x20`NullValue`\x20is\x20J\ + SON\x20`null`.\n\n\n\n\x03\x05\0\x01\x12\x03T\x05\x0e\n\x1a\n\x04\x05\0\ + \x02\0\x12\x03V\x02\x11\x1a\r\x20Null\x20value.\n\n\x0c\n\x05\x05\0\x02\ + \0\x01\x12\x03V\x02\x0c\n\x0c\n\x05\x05\0\x02\0\x02\x12\x03V\x0f\x10\n\ + \x82\x01\n\x02\x04\x02\x12\x04\\\0_\x01\x1av\x20`ListValue`\x20is\x20a\ + \x20wrapper\x20around\x20a\x20repeated\x20field\x20of\x20values.\n\n\x20\ + The\x20JSON\x20representation\x20for\x20`ListValue`\x20is\x20JSON\x20arr\ + ay.\n\n\n\n\x03\x04\x02\x01\x12\x03\\\x08\x11\n:\n\x04\x04\x02\x02\0\x12\ + \x03^\x02\x1c\x1a-\x20Repeated\x20field\x20of\x20dynamically\x20typed\ + \x20values.\n\n\x0c\n\x05\x04\x02\x02\0\x04\x12\x03^\x02\n\n\x0c\n\x05\ + \x04\x02\x02\0\x06\x12\x03^\x0b\x10\n\x0c\n\x05\x04\x02\x02\0\x01\x12\ + \x03^\x11\x17\n\x0c\n\x05\x04\x02\x02\0\x03\x12\x03^\x1a\x1bb\x06proto3\ +"; + +static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT; + +fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { + ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() +} + +pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { + unsafe { + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) + } +} diff --git a/src/well_known_types/timestamp.rs b/src/well_known_types/timestamp.rs new file mode 100644 index 0000000..2fed143 --- /dev/null +++ b/src/well_known_types/timestamp.rs @@ -0,0 +1,335 @@ +// This file is generated by rust-protobuf 2.14.0-pre. Do not edit +// @generated + +// https://github.com/rust-lang/rust-clippy/issues/702 +#![allow(unknown_lints)] +#![allow(clippy::all)] + +#![cfg_attr(rustfmt, rustfmt_skip)] + +#![allow(box_pointers)] +#![allow(dead_code)] +#![allow(missing_docs)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(non_upper_case_globals)] +#![allow(trivial_casts)] +#![allow(unsafe_code)] +#![allow(unused_imports)] +#![allow(unused_results)] +//! Generated file from `google/protobuf/timestamp.proto` + +use protobuf::Message as Message_imported_for_functions; +use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Timestamp { + // message fields + pub seconds: i64, + pub nanos: i32, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Timestamp { + fn default() -> &'a Timestamp { + <Timestamp as ::protobuf::Message>::default_instance() + } +} + +impl Timestamp { + pub fn new() -> Timestamp { + ::std::default::Default::default() + } + + // int64 seconds = 1; + + + pub fn get_seconds(&self) -> i64 { + self.seconds + } + pub fn clear_seconds(&mut self) { + self.seconds = 0; + } + + // Param is passed by value, moved + pub fn set_seconds(&mut self, v: i64) { + self.seconds = v; + } + + // int32 nanos = 2; + + + pub fn get_nanos(&self) -> i32 { + self.nanos + } + pub fn clear_nanos(&mut self) { + self.nanos = 0; + } + + // Param is passed by value, moved + pub fn set_nanos(&mut self, v: i32) { + self.nanos = v; + } +} + +impl ::protobuf::Message for Timestamp { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_int64()?; + self.seconds = tmp; + }, + 2 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_int32()?; + self.nanos = tmp; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.seconds != 0 { + my_size += ::protobuf::rt::value_size(1, self.seconds, ::protobuf::wire_format::WireTypeVarint); + } + if self.nanos != 0 { + my_size += ::protobuf::rt::value_size(2, self.nanos, ::protobuf::wire_format::WireTypeVarint); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.seconds != 0 { + os.write_int64(1, self.seconds)?; + } + if self.nanos != 0 { + os.write_int32(2, self.nanos)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Timestamp { + Timestamp::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "seconds", + |m: &Timestamp| { &m.seconds }, + |m: &mut Timestamp| { &mut m.seconds }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "nanos", + |m: &Timestamp| { &m.nanos }, + |m: &mut Timestamp| { &mut m.nanos }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Timestamp>( + "Timestamp", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Timestamp { + static mut instance: ::protobuf::lazy::Lazy<Timestamp> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Timestamp::new) + } + } +} + +impl ::protobuf::Clear for Timestamp { + fn clear(&mut self) { + self.seconds = 0; + self.nanos = 0; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Timestamp { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Timestamp { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x1fgoogle/protobuf/timestamp.proto\x12\x0fgoogle.protobuf\";\n\tTimes\ + tamp\x12\x18\n\x07seconds\x18\x01\x20\x01(\x03R\x07seconds\x12\x14\n\x05\ + nanos\x18\x02\x20\x01(\x05R\x05nanosB~\n\x13com.google.protobufB\x0eTime\ + stampProtoP\x01Z+github.com/golang/protobuf/ptypes/timestamp\xf8\x01\x01\ + \xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.WellKnownTypesJ\x95!\n\x06\ + \x12\x04\x1e\0k\x01\n\xcc\x0c\n\x01\x0c\x12\x03\x1e\0\x122\xc1\x0c\x20Pr\ + otocol\x20Buffers\x20-\x20Google's\x20data\x20interchange\x20format\n\ + \x20Copyright\x202008\x20Google\x20Inc.\x20\x20All\x20rights\x20reserved\ + .\n\x20https://developers.google.com/protocol-buffers/\n\n\x20Redistribu\ + tion\x20and\x20use\x20in\x20source\x20and\x20binary\x20forms,\x20with\ + \x20or\x20without\n\x20modification,\x20are\x20permitted\x20provided\x20\ + that\x20the\x20following\x20conditions\x20are\n\x20met:\n\n\x20\x20\x20\ + \x20\x20*\x20Redistributions\x20of\x20source\x20code\x20must\x20retain\ + \x20the\x20above\x20copyright\n\x20notice,\x20this\x20list\x20of\x20cond\ + itions\x20and\x20the\x20following\x20disclaimer.\n\x20\x20\x20\x20\x20*\ + \x20Redistributions\x20in\x20binary\x20form\x20must\x20reproduce\x20the\ + \x20above\n\x20copyright\x20notice,\x20this\x20list\x20of\x20conditions\ + \x20and\x20the\x20following\x20disclaimer\n\x20in\x20the\x20documentatio\ + n\x20and/or\x20other\x20materials\x20provided\x20with\x20the\n\x20distri\ + bution.\n\x20\x20\x20\x20\x20*\x20Neither\x20the\x20name\x20of\x20Google\ + \x20Inc.\x20nor\x20the\x20names\x20of\x20its\n\x20contributors\x20may\ + \x20be\x20used\x20to\x20endorse\x20or\x20promote\x20products\x20derived\ + \x20from\n\x20this\x20software\x20without\x20specific\x20prior\x20writte\ + n\x20permission.\n\n\x20THIS\x20SOFTWARE\x20IS\x20PROVIDED\x20BY\x20THE\ + \x20COPYRIGHT\x20HOLDERS\x20AND\x20CONTRIBUTORS\n\x20\"AS\x20IS\"\x20AND\ + \x20ANY\x20EXPRESS\x20OR\x20IMPLIED\x20WARRANTIES,\x20INCLUDING,\x20BUT\ + \x20NOT\n\x20LIMITED\x20TO,\x20THE\x20IMPLIED\x20WARRANTIES\x20OF\x20MER\ + CHANTABILITY\x20AND\x20FITNESS\x20FOR\n\x20A\x20PARTICULAR\x20PURPOSE\ + \x20ARE\x20DISCLAIMED.\x20IN\x20NO\x20EVENT\x20SHALL\x20THE\x20COPYRIGHT\ + \n\x20OWNER\x20OR\x20CONTRIBUTORS\x20BE\x20LIABLE\x20FOR\x20ANY\x20DIREC\ + T,\x20INDIRECT,\x20INCIDENTAL,\n\x20SPECIAL,\x20EXEMPLARY,\x20OR\x20CONS\ + EQUENTIAL\x20DAMAGES\x20(INCLUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\ + \x20PROCUREMENT\x20OF\x20SUBSTITUTE\x20GOODS\x20OR\x20SERVICES;\x20LOSS\ + \x20OF\x20USE,\n\x20DATA,\x20OR\x20PROFITS;\x20OR\x20BUSINESS\x20INTERRU\ + PTION)\x20HOWEVER\x20CAUSED\x20AND\x20ON\x20ANY\n\x20THEORY\x20OF\x20LIA\ + BILITY,\x20WHETHER\x20IN\x20CONTRACT,\x20STRICT\x20LIABILITY,\x20OR\x20T\ + ORT\n\x20(INCLUDING\x20NEGLIGENCE\x20OR\x20OTHERWISE)\x20ARISING\x20IN\ + \x20ANY\x20WAY\x20OUT\x20OF\x20THE\x20USE\n\x20OF\x20THIS\x20SOFTWARE,\ + \x20EVEN\x20IF\x20ADVISED\x20OF\x20THE\x20POSSIBILITY\x20OF\x20SUCH\x20D\ + AMAGE.\n\n\x08\n\x01\x02\x12\x03\x20\0\x18\n\x08\n\x01\x08\x12\x03\"\0;\ + \n\t\n\x02\x08%\x12\x03\"\0;\n\x08\n\x01\x08\x12\x03#\0\x1f\n\t\n\x02\ + \x08\x1f\x12\x03#\0\x1f\n\x08\n\x01\x08\x12\x03$\0B\n\t\n\x02\x08\x0b\ + \x12\x03$\0B\n\x08\n\x01\x08\x12\x03%\0,\n\t\n\x02\x08\x01\x12\x03%\0,\n\ + \x08\n\x01\x08\x12\x03&\0/\n\t\n\x02\x08\x08\x12\x03&\0/\n\x08\n\x01\x08\ + \x12\x03'\0\"\n\t\n\x02\x08\n\x12\x03'\0\"\n\x08\n\x01\x08\x12\x03(\0!\n\ + \t\n\x02\x08$\x12\x03(\0!\n\xb8\x0f\n\x02\x04\0\x12\x04_\0k\x01\x1a\xab\ + \x0f\x20A\x20Timestamp\x20represents\x20a\x20point\x20in\x20time\x20inde\ + pendent\x20of\x20any\x20time\x20zone\n\x20or\x20calendar,\x20represented\ + \x20as\x20seconds\x20and\x20fractions\x20of\x20seconds\x20at\n\x20nanose\ + cond\x20resolution\x20in\x20UTC\x20Epoch\x20time.\x20It\x20is\x20encoded\ + \x20using\x20the\n\x20Proleptic\x20Gregorian\x20Calendar\x20which\x20ext\ + ends\x20the\x20Gregorian\x20calendar\n\x20backwards\x20to\x20year\x20one\ + .\x20It\x20is\x20encoded\x20assuming\x20all\x20minutes\x20are\x2060\n\ + \x20seconds\x20long,\x20i.e.\x20leap\x20seconds\x20are\x20\"smeared\"\ + \x20so\x20that\x20no\x20leap\x20second\n\x20table\x20is\x20needed\x20for\ + \x20interpretation.\x20Range\x20is\x20from\n\x200001-01-01T00:00:00Z\x20\ + to\x209999-12-31T23:59:59.999999999Z.\n\x20By\x20restricting\x20to\x20th\ + at\x20range,\x20we\x20ensure\x20that\x20we\x20can\x20convert\x20to\n\x20\ + and\x20from\x20\x20RFC\x203339\x20date\x20strings.\n\x20See\x20[https://\ + www.ietf.org/rfc/rfc3339.txt](https://www.ietf.org/rfc/rfc3339.txt).\n\n\ + \x20Example\x201:\x20Compute\x20Timestamp\x20from\x20POSIX\x20`time()`.\ + \n\n\x20\x20\x20\x20\x20Timestamp\x20timestamp;\n\x20\x20\x20\x20\x20tim\ + estamp.set_seconds(time(NULL));\n\x20\x20\x20\x20\x20timestamp.set_nanos\ + (0);\n\n\x20Example\x202:\x20Compute\x20Timestamp\x20from\x20POSIX\x20`g\ + ettimeofday()`.\n\n\x20\x20\x20\x20\x20struct\x20timeval\x20tv;\n\x20\ + \x20\x20\x20\x20gettimeofday(&tv,\x20NULL);\n\n\x20\x20\x20\x20\x20Times\ + tamp\x20timestamp;\n\x20\x20\x20\x20\x20timestamp.set_seconds(tv.tv_sec)\ + ;\n\x20\x20\x20\x20\x20timestamp.set_nanos(tv.tv_usec\x20*\x201000);\n\n\ + \x20Example\x203:\x20Compute\x20Timestamp\x20from\x20Win32\x20`GetSystem\ + TimeAsFileTime()`.\n\n\x20\x20\x20\x20\x20FILETIME\x20ft;\n\x20\x20\x20\ + \x20\x20GetSystemTimeAsFileTime(&ft);\n\x20\x20\x20\x20\x20UINT64\x20tic\ + ks\x20=\x20(((UINT64)ft.dwHighDateTime)\x20<<\x2032)\x20|\x20ft.dwLowDat\ + eTime;\n\n\x20\x20\x20\x20\x20//\x20A\x20Windows\x20tick\x20is\x20100\ + \x20nanoseconds.\x20Windows\x20epoch\x201601-01-01T00:00:00Z\n\x20\x20\ + \x20\x20\x20//\x20is\x2011644473600\x20seconds\x20before\x20Unix\x20epoc\ + h\x201970-01-01T00:00:00Z.\n\x20\x20\x20\x20\x20Timestamp\x20timestamp;\ + \n\x20\x20\x20\x20\x20timestamp.set_seconds((INT64)\x20((ticks\x20/\x201\ + 0000000)\x20-\x2011644473600LL));\n\x20\x20\x20\x20\x20timestamp.set_nan\ + os((INT32)\x20((ticks\x20%\x2010000000)\x20*\x20100));\n\n\x20Example\ + \x204:\x20Compute\x20Timestamp\x20from\x20Java\x20`System.currentTimeMil\ + lis()`.\n\n\x20\x20\x20\x20\x20long\x20millis\x20=\x20System.currentTime\ + Millis();\n\n\x20\x20\x20\x20\x20Timestamp\x20timestamp\x20=\x20Timestam\ + p.newBuilder().setSeconds(millis\x20/\x201000)\n\x20\x20\x20\x20\x20\x20\ + \x20\x20\x20.setNanos((int)\x20((millis\x20%\x201000)\x20*\x201000000)).\ + build();\n\n\n\x20Example\x205:\x20Compute\x20Timestamp\x20from\x20curre\ + nt\x20time\x20in\x20Python.\n\n\x20\x20\x20\x20\x20timestamp\x20=\x20Tim\ + estamp()\n\x20\x20\x20\x20\x20timestamp.GetCurrentTime()\n\n\n\n\n\n\x03\ + \x04\0\x01\x12\x03_\x08\x11\n\x9c\x01\n\x04\x04\0\x02\0\x12\x03d\x02\x14\ + \x1a\x8e\x01\x20Represents\x20seconds\x20of\x20UTC\x20time\x20since\x20U\ + nix\x20epoch\n\x201970-01-01T00:00:00Z.\x20Must\x20be\x20from\x200001-01\ + -01T00:00:00Z\x20to\n\x209999-12-31T23:59:59Z\x20inclusive.\n\n\x0c\n\ + \x05\x04\0\x02\0\x05\x12\x03d\x02\x07\n\x0c\n\x05\x04\0\x02\0\x01\x12\ + \x03d\x08\x0f\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03d\x12\x13\n\xe4\x01\n\ + \x04\x04\0\x02\x01\x12\x03j\x02\x12\x1a\xd6\x01\x20Non-negative\x20fract\ + ions\x20of\x20a\x20second\x20at\x20nanosecond\x20resolution.\x20Negative\ + \n\x20second\x20values\x20with\x20fractions\x20must\x20still\x20have\x20\ + non-negative\x20nanos\x20values\n\x20that\x20count\x20forward\x20in\x20t\ + ime.\x20Must\x20be\x20from\x200\x20to\x20999,999,999\n\x20inclusive.\n\n\ + \x0c\n\x05\x04\0\x02\x01\x05\x12\x03j\x02\x07\n\x0c\n\x05\x04\0\x02\x01\ + \x01\x12\x03j\x08\r\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03j\x10\x11b\x06p\ + roto3\ +"; + +static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT; + +fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { + ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() +} + +pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { + unsafe { + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) + } +} diff --git a/src/well_known_types/type_pb.rs b/src/well_known_types/type_pb.rs new file mode 100644 index 0000000..23df582 --- /dev/null +++ b/src/well_known_types/type_pb.rs @@ -0,0 +1,2254 @@ +// This file is generated by rust-protobuf 2.14.0-pre. Do not edit +// @generated + +// https://github.com/rust-lang/rust-clippy/issues/702 +#![allow(unknown_lints)] +#![allow(clippy::all)] + +#![cfg_attr(rustfmt, rustfmt_skip)] + +#![allow(box_pointers)] +#![allow(dead_code)] +#![allow(missing_docs)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(non_upper_case_globals)] +#![allow(trivial_casts)] +#![allow(unsafe_code)] +#![allow(unused_imports)] +#![allow(unused_results)] +//! Generated file from `google/protobuf/type.proto` + +use protobuf::Message as Message_imported_for_functions; +use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Type { + // message fields + pub name: ::std::string::String, + pub fields: ::protobuf::RepeatedField<Field>, + pub oneofs: ::protobuf::RepeatedField<::std::string::String>, + pub options: ::protobuf::RepeatedField<Option>, + pub source_context: ::protobuf::SingularPtrField<::protobuf::well_known_types::SourceContext>, + pub syntax: Syntax, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Type { + fn default() -> &'a Type { + <Type as ::protobuf::Message>::default_instance() + } +} + +impl Type { + pub fn new() -> Type { + ::std::default::Default::default() + } + + // string name = 1; + + + pub fn get_name(&self) -> &str { + &self.name + } + pub fn clear_name(&mut self) { + self.name.clear(); + } + + // Param is passed by value, moved + pub fn set_name(&mut self, v: ::std::string::String) { + self.name = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_name(&mut self) -> &mut ::std::string::String { + &mut self.name + } + + // Take field + pub fn take_name(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.name, ::std::string::String::new()) + } + + // repeated .google.protobuf.Field fields = 2; + + + pub fn get_fields(&self) -> &[Field] { + &self.fields + } + pub fn clear_fields(&mut self) { + self.fields.clear(); + } + + // Param is passed by value, moved + pub fn set_fields(&mut self, v: ::protobuf::RepeatedField<Field>) { + self.fields = v; + } + + // Mutable pointer to the field. + pub fn mut_fields(&mut self) -> &mut ::protobuf::RepeatedField<Field> { + &mut self.fields + } + + // Take field + pub fn take_fields(&mut self) -> ::protobuf::RepeatedField<Field> { + ::std::mem::replace(&mut self.fields, ::protobuf::RepeatedField::new()) + } + + // repeated string oneofs = 3; + + + pub fn get_oneofs(&self) -> &[::std::string::String] { + &self.oneofs + } + pub fn clear_oneofs(&mut self) { + self.oneofs.clear(); + } + + // Param is passed by value, moved + pub fn set_oneofs(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) { + self.oneofs = v; + } + + // Mutable pointer to the field. + pub fn mut_oneofs(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> { + &mut self.oneofs + } + + // Take field + pub fn take_oneofs(&mut self) -> ::protobuf::RepeatedField<::std::string::String> { + ::std::mem::replace(&mut self.oneofs, ::protobuf::RepeatedField::new()) + } + + // repeated .google.protobuf.Option options = 4; + + + pub fn get_options(&self) -> &[Option] { + &self.options + } + pub fn clear_options(&mut self) { + self.options.clear(); + } + + // Param is passed by value, moved + pub fn set_options(&mut self, v: ::protobuf::RepeatedField<Option>) { + self.options = v; + } + + // Mutable pointer to the field. + pub fn mut_options(&mut self) -> &mut ::protobuf::RepeatedField<Option> { + &mut self.options + } + + // Take field + pub fn take_options(&mut self) -> ::protobuf::RepeatedField<Option> { + ::std::mem::replace(&mut self.options, ::protobuf::RepeatedField::new()) + } + + // .google.protobuf.SourceContext source_context = 5; + + + pub fn get_source_context(&self) -> &::protobuf::well_known_types::SourceContext { + self.source_context.as_ref().unwrap_or_else(|| ::protobuf::well_known_types::SourceContext::default_instance()) + } + pub fn clear_source_context(&mut self) { + self.source_context.clear(); + } + + pub fn has_source_context(&self) -> bool { + self.source_context.is_some() + } + + // Param is passed by value, moved + pub fn set_source_context(&mut self, v: ::protobuf::well_known_types::SourceContext) { + self.source_context = ::protobuf::SingularPtrField::some(v); + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_source_context(&mut self) -> &mut ::protobuf::well_known_types::SourceContext { + if self.source_context.is_none() { + self.source_context.set_default(); + } + self.source_context.as_mut().unwrap() + } + + // Take field + pub fn take_source_context(&mut self) -> ::protobuf::well_known_types::SourceContext { + self.source_context.take().unwrap_or_else(|| ::protobuf::well_known_types::SourceContext::new()) + } + + // .google.protobuf.Syntax syntax = 6; + + + pub fn get_syntax(&self) -> Syntax { + self.syntax + } + pub fn clear_syntax(&mut self) { + self.syntax = Syntax::SYNTAX_PROTO2; + } + + // Param is passed by value, moved + pub fn set_syntax(&mut self, v: Syntax) { + self.syntax = v; + } +} + +impl ::protobuf::Message for Type { + fn is_initialized(&self) -> bool { + for v in &self.fields { + if !v.is_initialized() { + return false; + } + }; + for v in &self.options { + if !v.is_initialized() { + return false; + } + }; + for v in &self.source_context { + if !v.is_initialized() { + return false; + } + }; + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?; + }, + 2 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.fields)?; + }, + 3 => { + ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.oneofs)?; + }, + 4 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.options)?; + }, + 5 => { + ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.source_context)?; + }, + 6 => { + ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.syntax, 6, &mut self.unknown_fields)? + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.name.is_empty() { + my_size += ::protobuf::rt::string_size(1, &self.name); + } + for value in &self.fields { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + for value in &self.oneofs { + my_size += ::protobuf::rt::string_size(3, &value); + }; + for value in &self.options { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + if let Some(ref v) = self.source_context.as_ref() { + let len = v.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + } + if self.syntax != Syntax::SYNTAX_PROTO2 { + my_size += ::protobuf::rt::enum_size(6, self.syntax); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.name.is_empty() { + os.write_string(1, &self.name)?; + } + for v in &self.fields { + os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + for v in &self.oneofs { + os.write_string(3, &v)?; + }; + for v in &self.options { + os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + if let Some(ref v) = self.source_context.as_ref() { + os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + } + if self.syntax != Syntax::SYNTAX_PROTO2 { + os.write_enum(6, self.syntax.value())?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Type { + Type::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &Type| { &m.name }, + |m: &mut Type| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Field>>( + "fields", + |m: &Type| { &m.fields }, + |m: &mut Type| { &mut m.fields }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "oneofs", + |m: &Type| { &m.oneofs }, + |m: &mut Type| { &mut m.oneofs }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Option>>( + "options", + |m: &Type| { &m.options }, + |m: &mut Type| { &mut m.options }, + )); + fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::SourceContext>>( + "source_context", + |m: &Type| { &m.source_context }, + |m: &mut Type| { &mut m.source_context }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Syntax>>( + "syntax", + |m: &Type| { &m.syntax }, + |m: &mut Type| { &mut m.syntax }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Type>( + "Type", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Type { + static mut instance: ::protobuf::lazy::Lazy<Type> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Type::new) + } + } +} + +impl ::protobuf::Clear for Type { + fn clear(&mut self) { + self.name.clear(); + self.fields.clear(); + self.oneofs.clear(); + self.options.clear(); + self.source_context.clear(); + self.syntax = Syntax::SYNTAX_PROTO2; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Type { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Type { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Field { + // message fields + pub kind: Field_Kind, + pub cardinality: Field_Cardinality, + pub number: i32, + pub name: ::std::string::String, + pub type_url: ::std::string::String, + pub oneof_index: i32, + pub packed: bool, + pub options: ::protobuf::RepeatedField<Option>, + pub json_name: ::std::string::String, + pub default_value: ::std::string::String, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Field { + fn default() -> &'a Field { + <Field as ::protobuf::Message>::default_instance() + } +} + +impl Field { + pub fn new() -> Field { + ::std::default::Default::default() + } + + // .google.protobuf.Field.Kind kind = 1; + + + pub fn get_kind(&self) -> Field_Kind { + self.kind + } + pub fn clear_kind(&mut self) { + self.kind = Field_Kind::TYPE_UNKNOWN; + } + + // Param is passed by value, moved + pub fn set_kind(&mut self, v: Field_Kind) { + self.kind = v; + } + + // .google.protobuf.Field.Cardinality cardinality = 2; + + + pub fn get_cardinality(&self) -> Field_Cardinality { + self.cardinality + } + pub fn clear_cardinality(&mut self) { + self.cardinality = Field_Cardinality::CARDINALITY_UNKNOWN; + } + + // Param is passed by value, moved + pub fn set_cardinality(&mut self, v: Field_Cardinality) { + self.cardinality = v; + } + + // int32 number = 3; + + + pub fn get_number(&self) -> i32 { + self.number + } + pub fn clear_number(&mut self) { + self.number = 0; + } + + // Param is passed by value, moved + pub fn set_number(&mut self, v: i32) { + self.number = v; + } + + // string name = 4; + + + pub fn get_name(&self) -> &str { + &self.name + } + pub fn clear_name(&mut self) { + self.name.clear(); + } + + // Param is passed by value, moved + pub fn set_name(&mut self, v: ::std::string::String) { + self.name = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_name(&mut self) -> &mut ::std::string::String { + &mut self.name + } + + // Take field + pub fn take_name(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.name, ::std::string::String::new()) + } + + // string type_url = 6; + + + pub fn get_type_url(&self) -> &str { + &self.type_url + } + pub fn clear_type_url(&mut self) { + self.type_url.clear(); + } + + // Param is passed by value, moved + pub fn set_type_url(&mut self, v: ::std::string::String) { + self.type_url = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_type_url(&mut self) -> &mut ::std::string::String { + &mut self.type_url + } + + // Take field + pub fn take_type_url(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.type_url, ::std::string::String::new()) + } + + // int32 oneof_index = 7; + + + pub fn get_oneof_index(&self) -> i32 { + self.oneof_index + } + pub fn clear_oneof_index(&mut self) { + self.oneof_index = 0; + } + + // Param is passed by value, moved + pub fn set_oneof_index(&mut self, v: i32) { + self.oneof_index = v; + } + + // bool packed = 8; + + + pub fn get_packed(&self) -> bool { + self.packed + } + pub fn clear_packed(&mut self) { + self.packed = false; + } + + // Param is passed by value, moved + pub fn set_packed(&mut self, v: bool) { + self.packed = v; + } + + // repeated .google.protobuf.Option options = 9; + + + pub fn get_options(&self) -> &[Option] { + &self.options + } + pub fn clear_options(&mut self) { + self.options.clear(); + } + + // Param is passed by value, moved + pub fn set_options(&mut self, v: ::protobuf::RepeatedField<Option>) { + self.options = v; + } + + // Mutable pointer to the field. + pub fn mut_options(&mut self) -> &mut ::protobuf::RepeatedField<Option> { + &mut self.options + } + + // Take field + pub fn take_options(&mut self) -> ::protobuf::RepeatedField<Option> { + ::std::mem::replace(&mut self.options, ::protobuf::RepeatedField::new()) + } + + // string json_name = 10; + + + pub fn get_json_name(&self) -> &str { + &self.json_name + } + pub fn clear_json_name(&mut self) { + self.json_name.clear(); + } + + // Param is passed by value, moved + pub fn set_json_name(&mut self, v: ::std::string::String) { + self.json_name = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_json_name(&mut self) -> &mut ::std::string::String { + &mut self.json_name + } + + // Take field + pub fn take_json_name(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.json_name, ::std::string::String::new()) + } + + // string default_value = 11; + + + pub fn get_default_value(&self) -> &str { + &self.default_value + } + pub fn clear_default_value(&mut self) { + self.default_value.clear(); + } + + // Param is passed by value, moved + pub fn set_default_value(&mut self, v: ::std::string::String) { + self.default_value = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_default_value(&mut self) -> &mut ::std::string::String { + &mut self.default_value + } + + // Take field + pub fn take_default_value(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.default_value, ::std::string::String::new()) + } +} + +impl ::protobuf::Message for Field { + fn is_initialized(&self) -> bool { + for v in &self.options { + if !v.is_initialized() { + return false; + } + }; + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.kind, 1, &mut self.unknown_fields)? + }, + 2 => { + ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.cardinality, 2, &mut self.unknown_fields)? + }, + 3 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_int32()?; + self.number = tmp; + }, + 4 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?; + }, + 6 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.type_url)?; + }, + 7 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_int32()?; + self.oneof_index = tmp; + }, + 8 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.packed = tmp; + }, + 9 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.options)?; + }, + 10 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.json_name)?; + }, + 11 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.default_value)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.kind != Field_Kind::TYPE_UNKNOWN { + my_size += ::protobuf::rt::enum_size(1, self.kind); + } + if self.cardinality != Field_Cardinality::CARDINALITY_UNKNOWN { + my_size += ::protobuf::rt::enum_size(2, self.cardinality); + } + if self.number != 0 { + my_size += ::protobuf::rt::value_size(3, self.number, ::protobuf::wire_format::WireTypeVarint); + } + if !self.name.is_empty() { + my_size += ::protobuf::rt::string_size(4, &self.name); + } + if !self.type_url.is_empty() { + my_size += ::protobuf::rt::string_size(6, &self.type_url); + } + if self.oneof_index != 0 { + my_size += ::protobuf::rt::value_size(7, self.oneof_index, ::protobuf::wire_format::WireTypeVarint); + } + if self.packed != false { + my_size += 2; + } + for value in &self.options { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + if !self.json_name.is_empty() { + my_size += ::protobuf::rt::string_size(10, &self.json_name); + } + if !self.default_value.is_empty() { + my_size += ::protobuf::rt::string_size(11, &self.default_value); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.kind != Field_Kind::TYPE_UNKNOWN { + os.write_enum(1, self.kind.value())?; + } + if self.cardinality != Field_Cardinality::CARDINALITY_UNKNOWN { + os.write_enum(2, self.cardinality.value())?; + } + if self.number != 0 { + os.write_int32(3, self.number)?; + } + if !self.name.is_empty() { + os.write_string(4, &self.name)?; + } + if !self.type_url.is_empty() { + os.write_string(6, &self.type_url)?; + } + if self.oneof_index != 0 { + os.write_int32(7, self.oneof_index)?; + } + if self.packed != false { + os.write_bool(8, self.packed)?; + } + for v in &self.options { + os.write_tag(9, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + if !self.json_name.is_empty() { + os.write_string(10, &self.json_name)?; + } + if !self.default_value.is_empty() { + os.write_string(11, &self.default_value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Field { + Field::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Field_Kind>>( + "kind", + |m: &Field| { &m.kind }, + |m: &mut Field| { &mut m.kind }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Field_Cardinality>>( + "cardinality", + |m: &Field| { &m.cardinality }, + |m: &mut Field| { &mut m.cardinality }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "number", + |m: &Field| { &m.number }, + |m: &mut Field| { &mut m.number }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &Field| { &m.name }, + |m: &mut Field| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "type_url", + |m: &Field| { &m.type_url }, + |m: &mut Field| { &mut m.type_url }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "oneof_index", + |m: &Field| { &m.oneof_index }, + |m: &mut Field| { &mut m.oneof_index }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "packed", + |m: &Field| { &m.packed }, + |m: &mut Field| { &mut m.packed }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Option>>( + "options", + |m: &Field| { &m.options }, + |m: &mut Field| { &mut m.options }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "json_name", + |m: &Field| { &m.json_name }, + |m: &mut Field| { &mut m.json_name }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "default_value", + |m: &Field| { &m.default_value }, + |m: &mut Field| { &mut m.default_value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Field>( + "Field", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Field { + static mut instance: ::protobuf::lazy::Lazy<Field> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Field::new) + } + } +} + +impl ::protobuf::Clear for Field { + fn clear(&mut self) { + self.kind = Field_Kind::TYPE_UNKNOWN; + self.cardinality = Field_Cardinality::CARDINALITY_UNKNOWN; + self.number = 0; + self.name.clear(); + self.type_url.clear(); + self.oneof_index = 0; + self.packed = false; + self.options.clear(); + self.json_name.clear(); + self.default_value.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Field { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Field { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(Clone,PartialEq,Eq,Debug,Hash)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub enum Field_Kind { + TYPE_UNKNOWN = 0, + TYPE_DOUBLE = 1, + TYPE_FLOAT = 2, + TYPE_INT64 = 3, + TYPE_UINT64 = 4, + TYPE_INT32 = 5, + TYPE_FIXED64 = 6, + TYPE_FIXED32 = 7, + TYPE_BOOL = 8, + TYPE_STRING = 9, + TYPE_GROUP = 10, + TYPE_MESSAGE = 11, + TYPE_BYTES = 12, + TYPE_UINT32 = 13, + TYPE_ENUM = 14, + TYPE_SFIXED32 = 15, + TYPE_SFIXED64 = 16, + TYPE_SINT32 = 17, + TYPE_SINT64 = 18, +} + +impl ::protobuf::ProtobufEnum for Field_Kind { + fn value(&self) -> i32 { + *self as i32 + } + + fn from_i32(value: i32) -> ::std::option::Option<Field_Kind> { + match value { + 0 => ::std::option::Option::Some(Field_Kind::TYPE_UNKNOWN), + 1 => ::std::option::Option::Some(Field_Kind::TYPE_DOUBLE), + 2 => ::std::option::Option::Some(Field_Kind::TYPE_FLOAT), + 3 => ::std::option::Option::Some(Field_Kind::TYPE_INT64), + 4 => ::std::option::Option::Some(Field_Kind::TYPE_UINT64), + 5 => ::std::option::Option::Some(Field_Kind::TYPE_INT32), + 6 => ::std::option::Option::Some(Field_Kind::TYPE_FIXED64), + 7 => ::std::option::Option::Some(Field_Kind::TYPE_FIXED32), + 8 => ::std::option::Option::Some(Field_Kind::TYPE_BOOL), + 9 => ::std::option::Option::Some(Field_Kind::TYPE_STRING), + 10 => ::std::option::Option::Some(Field_Kind::TYPE_GROUP), + 11 => ::std::option::Option::Some(Field_Kind::TYPE_MESSAGE), + 12 => ::std::option::Option::Some(Field_Kind::TYPE_BYTES), + 13 => ::std::option::Option::Some(Field_Kind::TYPE_UINT32), + 14 => ::std::option::Option::Some(Field_Kind::TYPE_ENUM), + 15 => ::std::option::Option::Some(Field_Kind::TYPE_SFIXED32), + 16 => ::std::option::Option::Some(Field_Kind::TYPE_SFIXED64), + 17 => ::std::option::Option::Some(Field_Kind::TYPE_SINT32), + 18 => ::std::option::Option::Some(Field_Kind::TYPE_SINT64), + _ => ::std::option::Option::None + } + } + + fn values() -> &'static [Self] { + static values: &'static [Field_Kind] = &[ + Field_Kind::TYPE_UNKNOWN, + Field_Kind::TYPE_DOUBLE, + Field_Kind::TYPE_FLOAT, + Field_Kind::TYPE_INT64, + Field_Kind::TYPE_UINT64, + Field_Kind::TYPE_INT32, + Field_Kind::TYPE_FIXED64, + Field_Kind::TYPE_FIXED32, + Field_Kind::TYPE_BOOL, + Field_Kind::TYPE_STRING, + Field_Kind::TYPE_GROUP, + Field_Kind::TYPE_MESSAGE, + Field_Kind::TYPE_BYTES, + Field_Kind::TYPE_UINT32, + Field_Kind::TYPE_ENUM, + Field_Kind::TYPE_SFIXED32, + Field_Kind::TYPE_SFIXED64, + Field_Kind::TYPE_SINT32, + Field_Kind::TYPE_SINT64, + ]; + values + } + + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::<Field_Kind>("Field.Kind", file_descriptor_proto()) + }) + } + } +} + +impl ::std::marker::Copy for Field_Kind { +} + +impl ::std::default::Default for Field_Kind { + fn default() -> Self { + Field_Kind::TYPE_UNKNOWN + } +} + +impl ::protobuf::reflect::ProtobufValue for Field_Kind { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(self.descriptor()) + } +} + +#[derive(Clone,PartialEq,Eq,Debug,Hash)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub enum Field_Cardinality { + CARDINALITY_UNKNOWN = 0, + CARDINALITY_OPTIONAL = 1, + CARDINALITY_REQUIRED = 2, + CARDINALITY_REPEATED = 3, +} + +impl ::protobuf::ProtobufEnum for Field_Cardinality { + fn value(&self) -> i32 { + *self as i32 + } + + fn from_i32(value: i32) -> ::std::option::Option<Field_Cardinality> { + match value { + 0 => ::std::option::Option::Some(Field_Cardinality::CARDINALITY_UNKNOWN), + 1 => ::std::option::Option::Some(Field_Cardinality::CARDINALITY_OPTIONAL), + 2 => ::std::option::Option::Some(Field_Cardinality::CARDINALITY_REQUIRED), + 3 => ::std::option::Option::Some(Field_Cardinality::CARDINALITY_REPEATED), + _ => ::std::option::Option::None + } + } + + fn values() -> &'static [Self] { + static values: &'static [Field_Cardinality] = &[ + Field_Cardinality::CARDINALITY_UNKNOWN, + Field_Cardinality::CARDINALITY_OPTIONAL, + Field_Cardinality::CARDINALITY_REQUIRED, + Field_Cardinality::CARDINALITY_REPEATED, + ]; + values + } + + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::<Field_Cardinality>("Field.Cardinality", file_descriptor_proto()) + }) + } + } +} + +impl ::std::marker::Copy for Field_Cardinality { +} + +impl ::std::default::Default for Field_Cardinality { + fn default() -> Self { + Field_Cardinality::CARDINALITY_UNKNOWN + } +} + +impl ::protobuf::reflect::ProtobufValue for Field_Cardinality { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(self.descriptor()) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Enum { + // message fields + pub name: ::std::string::String, + pub enumvalue: ::protobuf::RepeatedField<EnumValue>, + pub options: ::protobuf::RepeatedField<Option>, + pub source_context: ::protobuf::SingularPtrField<::protobuf::well_known_types::SourceContext>, + pub syntax: Syntax, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Enum { + fn default() -> &'a Enum { + <Enum as ::protobuf::Message>::default_instance() + } +} + +impl Enum { + pub fn new() -> Enum { + ::std::default::Default::default() + } + + // string name = 1; + + + pub fn get_name(&self) -> &str { + &self.name + } + pub fn clear_name(&mut self) { + self.name.clear(); + } + + // Param is passed by value, moved + pub fn set_name(&mut self, v: ::std::string::String) { + self.name = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_name(&mut self) -> &mut ::std::string::String { + &mut self.name + } + + // Take field + pub fn take_name(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.name, ::std::string::String::new()) + } + + // repeated .google.protobuf.EnumValue enumvalue = 2; + + + pub fn get_enumvalue(&self) -> &[EnumValue] { + &self.enumvalue + } + pub fn clear_enumvalue(&mut self) { + self.enumvalue.clear(); + } + + // Param is passed by value, moved + pub fn set_enumvalue(&mut self, v: ::protobuf::RepeatedField<EnumValue>) { + self.enumvalue = v; + } + + // Mutable pointer to the field. + pub fn mut_enumvalue(&mut self) -> &mut ::protobuf::RepeatedField<EnumValue> { + &mut self.enumvalue + } + + // Take field + pub fn take_enumvalue(&mut self) -> ::protobuf::RepeatedField<EnumValue> { + ::std::mem::replace(&mut self.enumvalue, ::protobuf::RepeatedField::new()) + } + + // repeated .google.protobuf.Option options = 3; + + + pub fn get_options(&self) -> &[Option] { + &self.options + } + pub fn clear_options(&mut self) { + self.options.clear(); + } + + // Param is passed by value, moved + pub fn set_options(&mut self, v: ::protobuf::RepeatedField<Option>) { + self.options = v; + } + + // Mutable pointer to the field. + pub fn mut_options(&mut self) -> &mut ::protobuf::RepeatedField<Option> { + &mut self.options + } + + // Take field + pub fn take_options(&mut self) -> ::protobuf::RepeatedField<Option> { + ::std::mem::replace(&mut self.options, ::protobuf::RepeatedField::new()) + } + + // .google.protobuf.SourceContext source_context = 4; + + + pub fn get_source_context(&self) -> &::protobuf::well_known_types::SourceContext { + self.source_context.as_ref().unwrap_or_else(|| ::protobuf::well_known_types::SourceContext::default_instance()) + } + pub fn clear_source_context(&mut self) { + self.source_context.clear(); + } + + pub fn has_source_context(&self) -> bool { + self.source_context.is_some() + } + + // Param is passed by value, moved + pub fn set_source_context(&mut self, v: ::protobuf::well_known_types::SourceContext) { + self.source_context = ::protobuf::SingularPtrField::some(v); + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_source_context(&mut self) -> &mut ::protobuf::well_known_types::SourceContext { + if self.source_context.is_none() { + self.source_context.set_default(); + } + self.source_context.as_mut().unwrap() + } + + // Take field + pub fn take_source_context(&mut self) -> ::protobuf::well_known_types::SourceContext { + self.source_context.take().unwrap_or_else(|| ::protobuf::well_known_types::SourceContext::new()) + } + + // .google.protobuf.Syntax syntax = 5; + + + pub fn get_syntax(&self) -> Syntax { + self.syntax + } + pub fn clear_syntax(&mut self) { + self.syntax = Syntax::SYNTAX_PROTO2; + } + + // Param is passed by value, moved + pub fn set_syntax(&mut self, v: Syntax) { + self.syntax = v; + } +} + +impl ::protobuf::Message for Enum { + fn is_initialized(&self) -> bool { + for v in &self.enumvalue { + if !v.is_initialized() { + return false; + } + }; + for v in &self.options { + if !v.is_initialized() { + return false; + } + }; + for v in &self.source_context { + if !v.is_initialized() { + return false; + } + }; + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?; + }, + 2 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.enumvalue)?; + }, + 3 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.options)?; + }, + 4 => { + ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.source_context)?; + }, + 5 => { + ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.syntax, 5, &mut self.unknown_fields)? + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.name.is_empty() { + my_size += ::protobuf::rt::string_size(1, &self.name); + } + for value in &self.enumvalue { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + for value in &self.options { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + if let Some(ref v) = self.source_context.as_ref() { + let len = v.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + } + if self.syntax != Syntax::SYNTAX_PROTO2 { + my_size += ::protobuf::rt::enum_size(5, self.syntax); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.name.is_empty() { + os.write_string(1, &self.name)?; + } + for v in &self.enumvalue { + os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + for v in &self.options { + os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + if let Some(ref v) = self.source_context.as_ref() { + os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + } + if self.syntax != Syntax::SYNTAX_PROTO2 { + os.write_enum(5, self.syntax.value())?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Enum { + Enum::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &Enum| { &m.name }, + |m: &mut Enum| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<EnumValue>>( + "enumvalue", + |m: &Enum| { &m.enumvalue }, + |m: &mut Enum| { &mut m.enumvalue }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Option>>( + "options", + |m: &Enum| { &m.options }, + |m: &mut Enum| { &mut m.options }, + )); + fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::SourceContext>>( + "source_context", + |m: &Enum| { &m.source_context }, + |m: &mut Enum| { &mut m.source_context }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Syntax>>( + "syntax", + |m: &Enum| { &m.syntax }, + |m: &mut Enum| { &mut m.syntax }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Enum>( + "Enum", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Enum { + static mut instance: ::protobuf::lazy::Lazy<Enum> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Enum::new) + } + } +} + +impl ::protobuf::Clear for Enum { + fn clear(&mut self) { + self.name.clear(); + self.enumvalue.clear(); + self.options.clear(); + self.source_context.clear(); + self.syntax = Syntax::SYNTAX_PROTO2; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Enum { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Enum { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct EnumValue { + // message fields + pub name: ::std::string::String, + pub number: i32, + pub options: ::protobuf::RepeatedField<Option>, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a EnumValue { + fn default() -> &'a EnumValue { + <EnumValue as ::protobuf::Message>::default_instance() + } +} + +impl EnumValue { + pub fn new() -> EnumValue { + ::std::default::Default::default() + } + + // string name = 1; + + + pub fn get_name(&self) -> &str { + &self.name + } + pub fn clear_name(&mut self) { + self.name.clear(); + } + + // Param is passed by value, moved + pub fn set_name(&mut self, v: ::std::string::String) { + self.name = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_name(&mut self) -> &mut ::std::string::String { + &mut self.name + } + + // Take field + pub fn take_name(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.name, ::std::string::String::new()) + } + + // int32 number = 2; + + + pub fn get_number(&self) -> i32 { + self.number + } + pub fn clear_number(&mut self) { + self.number = 0; + } + + // Param is passed by value, moved + pub fn set_number(&mut self, v: i32) { + self.number = v; + } + + // repeated .google.protobuf.Option options = 3; + + + pub fn get_options(&self) -> &[Option] { + &self.options + } + pub fn clear_options(&mut self) { + self.options.clear(); + } + + // Param is passed by value, moved + pub fn set_options(&mut self, v: ::protobuf::RepeatedField<Option>) { + self.options = v; + } + + // Mutable pointer to the field. + pub fn mut_options(&mut self) -> &mut ::protobuf::RepeatedField<Option> { + &mut self.options + } + + // Take field + pub fn take_options(&mut self) -> ::protobuf::RepeatedField<Option> { + ::std::mem::replace(&mut self.options, ::protobuf::RepeatedField::new()) + } +} + +impl ::protobuf::Message for EnumValue { + fn is_initialized(&self) -> bool { + for v in &self.options { + if !v.is_initialized() { + return false; + } + }; + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?; + }, + 2 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_int32()?; + self.number = tmp; + }, + 3 => { + ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.options)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.name.is_empty() { + my_size += ::protobuf::rt::string_size(1, &self.name); + } + if self.number != 0 { + my_size += ::protobuf::rt::value_size(2, self.number, ::protobuf::wire_format::WireTypeVarint); + } + for value in &self.options { + let len = value.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + }; + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.name.is_empty() { + os.write_string(1, &self.name)?; + } + if self.number != 0 { + os.write_int32(2, self.number)?; + } + for v in &self.options { + os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + }; + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> EnumValue { + EnumValue::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &EnumValue| { &m.name }, + |m: &mut EnumValue| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "number", + |m: &EnumValue| { &m.number }, + |m: &mut EnumValue| { &mut m.number }, + )); + fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Option>>( + "options", + |m: &EnumValue| { &m.options }, + |m: &mut EnumValue| { &mut m.options }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<EnumValue>( + "EnumValue", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static EnumValue { + static mut instance: ::protobuf::lazy::Lazy<EnumValue> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(EnumValue::new) + } + } +} + +impl ::protobuf::Clear for EnumValue { + fn clear(&mut self) { + self.name.clear(); + self.number = 0; + self.options.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for EnumValue { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for EnumValue { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Option { + // message fields + pub name: ::std::string::String, + pub value: ::protobuf::SingularPtrField<::protobuf::well_known_types::Any>, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Option { + fn default() -> &'a Option { + <Option as ::protobuf::Message>::default_instance() + } +} + +impl Option { + pub fn new() -> Option { + ::std::default::Default::default() + } + + // string name = 1; + + + pub fn get_name(&self) -> &str { + &self.name + } + pub fn clear_name(&mut self) { + self.name.clear(); + } + + // Param is passed by value, moved + pub fn set_name(&mut self, v: ::std::string::String) { + self.name = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_name(&mut self) -> &mut ::std::string::String { + &mut self.name + } + + // Take field + pub fn take_name(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.name, ::std::string::String::new()) + } + + // .google.protobuf.Any value = 2; + + + pub fn get_value(&self) -> &::protobuf::well_known_types::Any { + self.value.as_ref().unwrap_or_else(|| ::protobuf::well_known_types::Any::default_instance()) + } + pub fn clear_value(&mut self) { + self.value.clear(); + } + + pub fn has_value(&self) -> bool { + self.value.is_some() + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: ::protobuf::well_known_types::Any) { + self.value = ::protobuf::SingularPtrField::some(v); + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_value(&mut self) -> &mut ::protobuf::well_known_types::Any { + if self.value.is_none() { + self.value.set_default(); + } + self.value.as_mut().unwrap() + } + + // Take field + pub fn take_value(&mut self) -> ::protobuf::well_known_types::Any { + self.value.take().unwrap_or_else(|| ::protobuf::well_known_types::Any::new()) + } +} + +impl ::protobuf::Message for Option { + fn is_initialized(&self) -> bool { + for v in &self.value { + if !v.is_initialized() { + return false; + } + }; + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?; + }, + 2 => { + ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.value)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.name.is_empty() { + my_size += ::protobuf::rt::string_size(1, &self.name); + } + if let Some(ref v) = self.value.as_ref() { + let len = v.compute_size(); + my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.name.is_empty() { + os.write_string(1, &self.name)?; + } + if let Some(ref v) = self.value.as_ref() { + os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; + os.write_raw_varint32(v.get_cached_size())?; + v.write_to_with_cached_sizes(os)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Option { + Option::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "name", + |m: &Option| { &m.name }, + |m: &mut Option| { &mut m.name }, + )); + fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Any>>( + "value", + |m: &Option| { &m.value }, + |m: &mut Option| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Option>( + "Option", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Option { + static mut instance: ::protobuf::lazy::Lazy<Option> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Option::new) + } + } +} + +impl ::protobuf::Clear for Option { + fn clear(&mut self) { + self.name.clear(); + self.value.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Option { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Option { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(Clone,PartialEq,Eq,Debug,Hash)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub enum Syntax { + SYNTAX_PROTO2 = 0, + SYNTAX_PROTO3 = 1, +} + +impl ::protobuf::ProtobufEnum for Syntax { + fn value(&self) -> i32 { + *self as i32 + } + + fn from_i32(value: i32) -> ::std::option::Option<Syntax> { + match value { + 0 => ::std::option::Option::Some(Syntax::SYNTAX_PROTO2), + 1 => ::std::option::Option::Some(Syntax::SYNTAX_PROTO3), + _ => ::std::option::Option::None + } + } + + fn values() -> &'static [Self] { + static values: &'static [Syntax] = &[ + Syntax::SYNTAX_PROTO2, + Syntax::SYNTAX_PROTO3, + ]; + values + } + + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + ::protobuf::reflect::EnumDescriptor::new_pb_name::<Syntax>("Syntax", file_descriptor_proto()) + }) + } + } +} + +impl ::std::marker::Copy for Syntax { +} + +impl ::std::default::Default for Syntax { + fn default() -> Self { + Syntax::SYNTAX_PROTO2 + } +} + +impl ::protobuf::reflect::ProtobufValue for Syntax { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Enum(self.descriptor()) + } +} + +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x1agoogle/protobuf/type.proto\x12\x0fgoogle.protobuf\x1a\x19google/pr\ + otobuf/any.proto\x1a$google/protobuf/source_context.proto\"\x8d\x02\n\ + \x04Type\x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\x12.\n\x06fields\ + \x18\x02\x20\x03(\x0b2\x16.google.protobuf.FieldR\x06fields\x12\x16\n\ + \x06oneofs\x18\x03\x20\x03(\tR\x06oneofs\x121\n\x07options\x18\x04\x20\ + \x03(\x0b2\x17.google.protobuf.OptionR\x07options\x12E\n\x0esource_conte\ + xt\x18\x05\x20\x01(\x0b2\x1e.google.protobuf.SourceContextR\rsourceConte\ + xt\x12/\n\x06syntax\x18\x06\x20\x01(\x0e2\x17.google.protobuf.SyntaxR\ + \x06syntax\"\xb4\x06\n\x05Field\x12/\n\x04kind\x18\x01\x20\x01(\x0e2\x1b\ + .google.protobuf.Field.KindR\x04kind\x12D\n\x0bcardinality\x18\x02\x20\ + \x01(\x0e2\".google.protobuf.Field.CardinalityR\x0bcardinality\x12\x16\n\ + \x06number\x18\x03\x20\x01(\x05R\x06number\x12\x12\n\x04name\x18\x04\x20\ + \x01(\tR\x04name\x12\x19\n\x08type_url\x18\x06\x20\x01(\tR\x07typeUrl\ + \x12\x1f\n\x0boneof_index\x18\x07\x20\x01(\x05R\noneofIndex\x12\x16\n\ + \x06packed\x18\x08\x20\x01(\x08R\x06packed\x121\n\x07options\x18\t\x20\ + \x03(\x0b2\x17.google.protobuf.OptionR\x07options\x12\x1b\n\tjson_name\ + \x18\n\x20\x01(\tR\x08jsonName\x12#\n\rdefault_value\x18\x0b\x20\x01(\tR\ + \x0cdefaultValue\"\xc8\x02\n\x04Kind\x12\x10\n\x0cTYPE_UNKNOWN\x10\0\x12\ + \x0f\n\x0bTYPE_DOUBLE\x10\x01\x12\x0e\n\nTYPE_FLOAT\x10\x02\x12\x0e\n\nT\ + YPE_INT64\x10\x03\x12\x0f\n\x0bTYPE_UINT64\x10\x04\x12\x0e\n\nTYPE_INT32\ + \x10\x05\x12\x10\n\x0cTYPE_FIXED64\x10\x06\x12\x10\n\x0cTYPE_FIXED32\x10\ + \x07\x12\r\n\tTYPE_BOOL\x10\x08\x12\x0f\n\x0bTYPE_STRING\x10\t\x12\x0e\n\ + \nTYPE_GROUP\x10\n\x12\x10\n\x0cTYPE_MESSAGE\x10\x0b\x12\x0e\n\nTYPE_BYT\ + ES\x10\x0c\x12\x0f\n\x0bTYPE_UINT32\x10\r\x12\r\n\tTYPE_ENUM\x10\x0e\x12\ + \x11\n\rTYPE_SFIXED32\x10\x0f\x12\x11\n\rTYPE_SFIXED64\x10\x10\x12\x0f\n\ + \x0bTYPE_SINT32\x10\x11\x12\x0f\n\x0bTYPE_SINT64\x10\x12\"t\n\x0bCardina\ + lity\x12\x17\n\x13CARDINALITY_UNKNOWN\x10\0\x12\x18\n\x14CARDINALITY_OPT\ + IONAL\x10\x01\x12\x18\n\x14CARDINALITY_REQUIRED\x10\x02\x12\x18\n\x14CAR\ + DINALITY_REPEATED\x10\x03\"\xff\x01\n\x04Enum\x12\x12\n\x04name\x18\x01\ + \x20\x01(\tR\x04name\x128\n\tenumvalue\x18\x02\x20\x03(\x0b2\x1a.google.\ + protobuf.EnumValueR\tenumvalue\x121\n\x07options\x18\x03\x20\x03(\x0b2\ + \x17.google.protobuf.OptionR\x07options\x12E\n\x0esource_context\x18\x04\ + \x20\x01(\x0b2\x1e.google.protobuf.SourceContextR\rsourceContext\x12/\n\ + \x06syntax\x18\x05\x20\x01(\x0e2\x17.google.protobuf.SyntaxR\x06syntax\"\ + j\n\tEnumValue\x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\x12\x16\n\ + \x06number\x18\x02\x20\x01(\x05R\x06number\x121\n\x07options\x18\x03\x20\ + \x03(\x0b2\x17.google.protobuf.OptionR\x07options\"H\n\x06Option\x12\x12\ + \n\x04name\x18\x01\x20\x01(\tR\x04name\x12*\n\x05value\x18\x02\x20\x01(\ + \x0b2\x14.google.protobuf.AnyR\x05value*.\n\x06Syntax\x12\x11\n\rSYNTAX_\ + PROTO2\x10\0\x12\x11\n\rSYNTAX_PROTO3\x10\x01BL\n\x13com.google.protobuf\ + B\tTypeProtoP\x01\xf8\x01\x01\xa2\x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.\ + WellKnownTypesJ\x9a5\n\x07\x12\x05\x1e\0\xb3\x01\x01\n\xcc\x0c\n\x01\x0c\ + \x12\x03\x1e\0\x122\xc1\x0c\x20Protocol\x20Buffers\x20-\x20Google's\x20d\ + ata\x20interchange\x20format\n\x20Copyright\x202008\x20Google\x20Inc.\ + \x20\x20All\x20rights\x20reserved.\n\x20https://developers.google.com/pr\ + otocol-buffers/\n\n\x20Redistribution\x20and\x20use\x20in\x20source\x20a\ + nd\x20binary\x20forms,\x20with\x20or\x20without\n\x20modification,\x20ar\ + e\x20permitted\x20provided\x20that\x20the\x20following\x20conditions\x20\ + are\n\x20met:\n\n\x20\x20\x20\x20\x20*\x20Redistributions\x20of\x20sourc\ + e\x20code\x20must\x20retain\x20the\x20above\x20copyright\n\x20notice,\ + \x20this\x20list\x20of\x20conditions\x20and\x20the\x20following\x20discl\ + aimer.\n\x20\x20\x20\x20\x20*\x20Redistributions\x20in\x20binary\x20form\ + \x20must\x20reproduce\x20the\x20above\n\x20copyright\x20notice,\x20this\ + \x20list\x20of\x20conditions\x20and\x20the\x20following\x20disclaimer\n\ + \x20in\x20the\x20documentation\x20and/or\x20other\x20materials\x20provid\ + ed\x20with\x20the\n\x20distribution.\n\x20\x20\x20\x20\x20*\x20Neither\ + \x20the\x20name\x20of\x20Google\x20Inc.\x20nor\x20the\x20names\x20of\x20\ + its\n\x20contributors\x20may\x20be\x20used\x20to\x20endorse\x20or\x20pro\ + mote\x20products\x20derived\x20from\n\x20this\x20software\x20without\x20\ + specific\x20prior\x20written\x20permission.\n\n\x20THIS\x20SOFTWARE\x20I\ + S\x20PROVIDED\x20BY\x20THE\x20COPYRIGHT\x20HOLDERS\x20AND\x20CONTRIBUTOR\ + S\n\x20\"AS\x20IS\"\x20AND\x20ANY\x20EXPRESS\x20OR\x20IMPLIED\x20WARRANT\ + IES,\x20INCLUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\x20THE\x20IMPLIED\ + \x20WARRANTIES\x20OF\x20MERCHANTABILITY\x20AND\x20FITNESS\x20FOR\n\x20A\ + \x20PARTICULAR\x20PURPOSE\x20ARE\x20DISCLAIMED.\x20IN\x20NO\x20EVENT\x20\ + SHALL\x20THE\x20COPYRIGHT\n\x20OWNER\x20OR\x20CONTRIBUTORS\x20BE\x20LIAB\ + LE\x20FOR\x20ANY\x20DIRECT,\x20INDIRECT,\x20INCIDENTAL,\n\x20SPECIAL,\ + \x20EXEMPLARY,\x20OR\x20CONSEQUENTIAL\x20DAMAGES\x20(INCLUDING,\x20BUT\ + \x20NOT\n\x20LIMITED\x20TO,\x20PROCUREMENT\x20OF\x20SUBSTITUTE\x20GOODS\ + \x20OR\x20SERVICES;\x20LOSS\x20OF\x20USE,\n\x20DATA,\x20OR\x20PROFITS;\ + \x20OR\x20BUSINESS\x20INTERRUPTION)\x20HOWEVER\x20CAUSED\x20AND\x20ON\ + \x20ANY\n\x20THEORY\x20OF\x20LIABILITY,\x20WHETHER\x20IN\x20CONTRACT,\ + \x20STRICT\x20LIABILITY,\x20OR\x20TORT\n\x20(INCLUDING\x20NEGLIGENCE\x20\ + OR\x20OTHERWISE)\x20ARISING\x20IN\x20ANY\x20WAY\x20OUT\x20OF\x20THE\x20U\ + SE\n\x20OF\x20THIS\x20SOFTWARE,\x20EVEN\x20IF\x20ADVISED\x20OF\x20THE\ + \x20POSSIBILITY\x20OF\x20SUCH\x20DAMAGE.\n\n\x08\n\x01\x02\x12\x03\x20\0\ + \x18\n\t\n\x02\x03\0\x12\x03\"\0#\n\t\n\x02\x03\x01\x12\x03#\0.\n\x08\n\ + \x01\x08\x12\x03%\0;\n\t\n\x02\x08%\x12\x03%\0;\n\x08\n\x01\x08\x12\x03&\ + \0\x1f\n\t\n\x02\x08\x1f\x12\x03&\0\x1f\n\x08\n\x01\x08\x12\x03'\0,\n\t\ + \n\x02\x08\x01\x12\x03'\0,\n\x08\n\x01\x08\x12\x03(\0*\n\t\n\x02\x08\x08\ + \x12\x03(\0*\n\x08\n\x01\x08\x12\x03)\0\"\n\t\n\x02\x08\n\x12\x03)\0\"\n\ + \x08\n\x01\x08\x12\x03*\0!\n\t\n\x02\x08$\x12\x03*\0!\n-\n\x02\x04\0\x12\ + \x04-\0:\x01\x1a!\x20A\x20protocol\x20buffer\x20message\x20type.\n\n\n\n\ + \x03\x04\0\x01\x12\x03-\x08\x0c\n0\n\x04\x04\0\x02\0\x12\x03/\x02\x12\ + \x1a#\x20The\x20fully\x20qualified\x20message\x20name.\n\n\x0c\n\x05\x04\ + \0\x02\0\x05\x12\x03/\x02\x08\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03/\t\r\n\ + \x0c\n\x05\x04\0\x02\0\x03\x12\x03/\x10\x11\n\"\n\x04\x04\0\x02\x01\x12\ + \x031\x02\x1c\x1a\x15\x20The\x20list\x20of\x20fields.\n\n\x0c\n\x05\x04\ + \0\x02\x01\x04\x12\x031\x02\n\n\x0c\n\x05\x04\0\x02\x01\x06\x12\x031\x0b\ + \x10\n\x0c\n\x05\x04\0\x02\x01\x01\x12\x031\x11\x17\n\x0c\n\x05\x04\0\ + \x02\x01\x03\x12\x031\x1a\x1b\nO\n\x04\x04\0\x02\x02\x12\x033\x02\x1d\ + \x1aB\x20The\x20list\x20of\x20types\x20appearing\x20in\x20`oneof`\x20def\ + initions\x20in\x20this\x20type.\n\n\x0c\n\x05\x04\0\x02\x02\x04\x12\x033\ + \x02\n\n\x0c\n\x05\x04\0\x02\x02\x05\x12\x033\x0b\x11\n\x0c\n\x05\x04\0\ + \x02\x02\x01\x12\x033\x12\x18\n\x0c\n\x05\x04\0\x02\x02\x03\x12\x033\x1b\ + \x1c\n+\n\x04\x04\0\x02\x03\x12\x035\x02\x1e\x1a\x1e\x20The\x20protocol\ + \x20buffer\x20options.\n\n\x0c\n\x05\x04\0\x02\x03\x04\x12\x035\x02\n\n\ + \x0c\n\x05\x04\0\x02\x03\x06\x12\x035\x0b\x11\n\x0c\n\x05\x04\0\x02\x03\ + \x01\x12\x035\x12\x19\n\x0c\n\x05\x04\0\x02\x03\x03\x12\x035\x1c\x1d\n\"\ + \n\x04\x04\0\x02\x04\x12\x037\x02#\x1a\x15\x20The\x20source\x20context.\ + \n\n\x0c\n\x05\x04\0\x02\x04\x06\x12\x037\x02\x0f\n\x0c\n\x05\x04\0\x02\ + \x04\x01\x12\x037\x10\x1e\n\x0c\n\x05\x04\0\x02\x04\x03\x12\x037!\"\n!\n\ + \x04\x04\0\x02\x05\x12\x039\x02\x14\x1a\x14\x20The\x20source\x20syntax.\ + \n\n\x0c\n\x05\x04\0\x02\x05\x06\x12\x039\x02\x08\n\x0c\n\x05\x04\0\x02\ + \x05\x01\x12\x039\t\x0f\n\x0c\n\x05\x04\0\x02\x05\x03\x12\x039\x12\x13\n\ + 0\n\x02\x04\x01\x12\x05=\0\x8a\x01\x01\x1a#\x20A\x20single\x20field\x20o\ + f\x20a\x20message\x20type.\n\n\n\n\x03\x04\x01\x01\x12\x03=\x08\r\n\"\n\ + \x04\x04\x01\x04\0\x12\x04?\x02f\x03\x1a\x14\x20Basic\x20field\x20types.\ + \n\n\x0c\n\x05\x04\x01\x04\0\x01\x12\x03?\x07\x0b\n$\n\x06\x04\x01\x04\0\ + \x02\0\x12\x03A\x04\x1c\x1a\x15\x20Field\x20type\x20unknown.\n\n\x0e\n\ + \x07\x04\x01\x04\0\x02\0\x01\x12\x03A\x04\x10\n\x0e\n\x07\x04\x01\x04\0\ + \x02\0\x02\x12\x03A\x1a\x1b\n#\n\x06\x04\x01\x04\0\x02\x01\x12\x03C\x04\ + \x1c\x1a\x14\x20Field\x20type\x20double.\n\n\x0e\n\x07\x04\x01\x04\0\x02\ + \x01\x01\x12\x03C\x04\x0f\n\x0e\n\x07\x04\x01\x04\0\x02\x01\x02\x12\x03C\ + \x1a\x1b\n\"\n\x06\x04\x01\x04\0\x02\x02\x12\x03E\x04\x1c\x1a\x13\x20Fie\ + ld\x20type\x20float.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x02\x01\x12\x03E\ + \x04\x0e\n\x0e\n\x07\x04\x01\x04\0\x02\x02\x02\x12\x03E\x1a\x1b\n\"\n\ + \x06\x04\x01\x04\0\x02\x03\x12\x03G\x04\x1c\x1a\x13\x20Field\x20type\x20\ + int64.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x03\x01\x12\x03G\x04\x0e\n\x0e\n\ + \x07\x04\x01\x04\0\x02\x03\x02\x12\x03G\x1a\x1b\n#\n\x06\x04\x01\x04\0\ + \x02\x04\x12\x03I\x04\x1c\x1a\x14\x20Field\x20type\x20uint64.\n\n\x0e\n\ + \x07\x04\x01\x04\0\x02\x04\x01\x12\x03I\x04\x0f\n\x0e\n\x07\x04\x01\x04\ + \0\x02\x04\x02\x12\x03I\x1a\x1b\n\"\n\x06\x04\x01\x04\0\x02\x05\x12\x03K\ + \x04\x1c\x1a\x13\x20Field\x20type\x20int32.\n\n\x0e\n\x07\x04\x01\x04\0\ + \x02\x05\x01\x12\x03K\x04\x0e\n\x0e\n\x07\x04\x01\x04\0\x02\x05\x02\x12\ + \x03K\x1a\x1b\n$\n\x06\x04\x01\x04\0\x02\x06\x12\x03M\x04\x1c\x1a\x15\ + \x20Field\x20type\x20fixed64.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x06\x01\ + \x12\x03M\x04\x10\n\x0e\n\x07\x04\x01\x04\0\x02\x06\x02\x12\x03M\x1a\x1b\ + \n$\n\x06\x04\x01\x04\0\x02\x07\x12\x03O\x04\x1c\x1a\x15\x20Field\x20typ\ + e\x20fixed32.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x07\x01\x12\x03O\x04\x10\n\ + \x0e\n\x07\x04\x01\x04\0\x02\x07\x02\x12\x03O\x1a\x1b\n!\n\x06\x04\x01\ + \x04\0\x02\x08\x12\x03Q\x04\x1c\x1a\x12\x20Field\x20type\x20bool.\n\n\ + \x0e\n\x07\x04\x01\x04\0\x02\x08\x01\x12\x03Q\x04\r\n\x0e\n\x07\x04\x01\ + \x04\0\x02\x08\x02\x12\x03Q\x1a\x1b\n#\n\x06\x04\x01\x04\0\x02\t\x12\x03\ + S\x04\x1c\x1a\x14\x20Field\x20type\x20string.\n\n\x0e\n\x07\x04\x01\x04\ + \0\x02\t\x01\x12\x03S\x04\x0f\n\x0e\n\x07\x04\x01\x04\0\x02\t\x02\x12\ + \x03S\x1a\x1b\nF\n\x06\x04\x01\x04\0\x02\n\x12\x03U\x04\x1d\x1a7\x20Fiel\ + d\x20type\x20group.\x20Proto2\x20syntax\x20only,\x20and\x20deprecated.\n\ + \n\x0e\n\x07\x04\x01\x04\0\x02\n\x01\x12\x03U\x04\x0e\n\x0e\n\x07\x04\ + \x01\x04\0\x02\n\x02\x12\x03U\x1a\x1c\n$\n\x06\x04\x01\x04\0\x02\x0b\x12\ + \x03W\x04\x1d\x1a\x15\x20Field\x20type\x20message.\n\n\x0e\n\x07\x04\x01\ + \x04\0\x02\x0b\x01\x12\x03W\x04\x10\n\x0e\n\x07\x04\x01\x04\0\x02\x0b\ + \x02\x12\x03W\x1a\x1c\n\"\n\x06\x04\x01\x04\0\x02\x0c\x12\x03Y\x04\x1d\ + \x1a\x13\x20Field\x20type\x20bytes.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x0c\ + \x01\x12\x03Y\x04\x0e\n\x0e\n\x07\x04\x01\x04\0\x02\x0c\x02\x12\x03Y\x1a\ + \x1c\n#\n\x06\x04\x01\x04\0\x02\r\x12\x03[\x04\x1d\x1a\x14\x20Field\x20t\ + ype\x20uint32.\n\n\x0e\n\x07\x04\x01\x04\0\x02\r\x01\x12\x03[\x04\x0f\n\ + \x0e\n\x07\x04\x01\x04\0\x02\r\x02\x12\x03[\x1a\x1c\n!\n\x06\x04\x01\x04\ + \0\x02\x0e\x12\x03]\x04\x1d\x1a\x12\x20Field\x20type\x20enum.\n\n\x0e\n\ + \x07\x04\x01\x04\0\x02\x0e\x01\x12\x03]\x04\r\n\x0e\n\x07\x04\x01\x04\0\ + \x02\x0e\x02\x12\x03]\x1a\x1c\n%\n\x06\x04\x01\x04\0\x02\x0f\x12\x03_\ + \x04\x1d\x1a\x16\x20Field\x20type\x20sfixed32.\n\n\x0e\n\x07\x04\x01\x04\ + \0\x02\x0f\x01\x12\x03_\x04\x11\n\x0e\n\x07\x04\x01\x04\0\x02\x0f\x02\ + \x12\x03_\x1a\x1c\n%\n\x06\x04\x01\x04\0\x02\x10\x12\x03a\x04\x1d\x1a\ + \x16\x20Field\x20type\x20sfixed64.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x10\ + \x01\x12\x03a\x04\x11\n\x0e\n\x07\x04\x01\x04\0\x02\x10\x02\x12\x03a\x1a\ + \x1c\n#\n\x06\x04\x01\x04\0\x02\x11\x12\x03c\x04\x1d\x1a\x14\x20Field\ + \x20type\x20sint32.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x11\x01\x12\x03c\x04\ + \x0f\n\x0e\n\x07\x04\x01\x04\0\x02\x11\x02\x12\x03c\x1a\x1c\n#\n\x06\x04\ + \x01\x04\0\x02\x12\x12\x03e\x04\x1d\x1a\x14\x20Field\x20type\x20sint64.\ + \n\n\x0e\n\x07\x04\x01\x04\0\x02\x12\x01\x12\x03e\x04\x0f\n\x0e\n\x07\ + \x04\x01\x04\0\x02\x12\x02\x12\x03e\x1a\x1c\nC\n\x04\x04\x01\x04\x01\x12\ + \x04i\x02r\x03\x1a5\x20Whether\x20a\x20field\x20is\x20optional,\x20requi\ + red,\x20or\x20repeated.\n\n\x0c\n\x05\x04\x01\x04\x01\x01\x12\x03i\x07\ + \x12\n5\n\x06\x04\x01\x04\x01\x02\0\x12\x03k\x04\x1c\x1a&\x20For\x20fiel\ + ds\x20with\x20unknown\x20cardinality.\n\n\x0e\n\x07\x04\x01\x04\x01\x02\ + \0\x01\x12\x03k\x04\x17\n\x0e\n\x07\x04\x01\x04\x01\x02\0\x02\x12\x03k\ + \x1a\x1b\n%\n\x06\x04\x01\x04\x01\x02\x01\x12\x03m\x04\x1d\x1a\x16\x20Fo\ + r\x20optional\x20fields.\n\n\x0e\n\x07\x04\x01\x04\x01\x02\x01\x01\x12\ + \x03m\x04\x18\n\x0e\n\x07\x04\x01\x04\x01\x02\x01\x02\x12\x03m\x1b\x1c\n\ + 9\n\x06\x04\x01\x04\x01\x02\x02\x12\x03o\x04\x1d\x1a*\x20For\x20required\ + \x20fields.\x20Proto2\x20syntax\x20only.\n\n\x0e\n\x07\x04\x01\x04\x01\ + \x02\x02\x01\x12\x03o\x04\x18\n\x0e\n\x07\x04\x01\x04\x01\x02\x02\x02\ + \x12\x03o\x1b\x1c\n%\n\x06\x04\x01\x04\x01\x02\x03\x12\x03q\x04\x1d\x1a\ + \x16\x20For\x20repeated\x20fields.\n\n\x0e\n\x07\x04\x01\x04\x01\x02\x03\ + \x01\x12\x03q\x04\x18\n\x0e\n\x07\x04\x01\x04\x01\x02\x03\x02\x12\x03q\ + \x1b\x1c\n\x1e\n\x04\x04\x01\x02\0\x12\x03u\x02\x10\x1a\x11\x20The\x20fi\ + eld\x20type.\n\n\x0c\n\x05\x04\x01\x02\0\x06\x12\x03u\x02\x06\n\x0c\n\ + \x05\x04\x01\x02\0\x01\x12\x03u\x07\x0b\n\x0c\n\x05\x04\x01\x02\0\x03\ + \x12\x03u\x0e\x0f\n%\n\x04\x04\x01\x02\x01\x12\x03w\x02\x1e\x1a\x18\x20T\ + he\x20field\x20cardinality.\n\n\x0c\n\x05\x04\x01\x02\x01\x06\x12\x03w\ + \x02\r\n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x03w\x0e\x19\n\x0c\n\x05\x04\ + \x01\x02\x01\x03\x12\x03w\x1c\x1d\n\x20\n\x04\x04\x01\x02\x02\x12\x03y\ + \x02\x13\x1a\x13\x20The\x20field\x20number.\n\n\x0c\n\x05\x04\x01\x02\ + \x02\x05\x12\x03y\x02\x07\n\x0c\n\x05\x04\x01\x02\x02\x01\x12\x03y\x08\ + \x0e\n\x0c\n\x05\x04\x01\x02\x02\x03\x12\x03y\x11\x12\n\x1e\n\x04\x04\ + \x01\x02\x03\x12\x03{\x02\x12\x1a\x11\x20The\x20field\x20name.\n\n\x0c\n\ + \x05\x04\x01\x02\x03\x05\x12\x03{\x02\x08\n\x0c\n\x05\x04\x01\x02\x03\ + \x01\x12\x03{\t\r\n\x0c\n\x05\x04\x01\x02\x03\x03\x12\x03{\x10\x11\n\x96\ + \x01\n\x04\x04\x01\x02\x04\x12\x03~\x02\x16\x1a\x88\x01\x20The\x20field\ + \x20type\x20URL,\x20without\x20the\x20scheme,\x20for\x20message\x20or\ + \x20enumeration\n\x20types.\x20Example:\x20`\"type.googleapis.com/google\ + .protobuf.Timestamp\"`.\n\n\x0c\n\x05\x04\x01\x02\x04\x05\x12\x03~\x02\ + \x08\n\x0c\n\x05\x04\x01\x02\x04\x01\x12\x03~\t\x11\n\x0c\n\x05\x04\x01\ + \x02\x04\x03\x12\x03~\x14\x15\n\xa5\x01\n\x04\x04\x01\x02\x05\x12\x04\ + \x81\x01\x02\x18\x1a\x96\x01\x20The\x20index\x20of\x20the\x20field\x20ty\ + pe\x20in\x20`Type.oneofs`,\x20for\x20message\x20or\x20enumeration\n\x20t\ + ypes.\x20The\x20first\x20type\x20has\x20index\x201;\x20zero\x20means\x20\ + the\x20type\x20is\x20not\x20in\x20the\x20list.\n\n\r\n\x05\x04\x01\x02\ + \x05\x05\x12\x04\x81\x01\x02\x07\n\r\n\x05\x04\x01\x02\x05\x01\x12\x04\ + \x81\x01\x08\x13\n\r\n\x05\x04\x01\x02\x05\x03\x12\x04\x81\x01\x16\x17\n\ + F\n\x04\x04\x01\x02\x06\x12\x04\x83\x01\x02\x12\x1a8\x20Whether\x20to\ + \x20use\x20alternative\x20packed\x20wire\x20representation.\n\n\r\n\x05\ + \x04\x01\x02\x06\x05\x12\x04\x83\x01\x02\x06\n\r\n\x05\x04\x01\x02\x06\ + \x01\x12\x04\x83\x01\x07\r\n\r\n\x05\x04\x01\x02\x06\x03\x12\x04\x83\x01\ + \x10\x11\n,\n\x04\x04\x01\x02\x07\x12\x04\x85\x01\x02\x1e\x1a\x1e\x20The\ + \x20protocol\x20buffer\x20options.\n\n\r\n\x05\x04\x01\x02\x07\x04\x12\ + \x04\x85\x01\x02\n\n\r\n\x05\x04\x01\x02\x07\x06\x12\x04\x85\x01\x0b\x11\ + \n\r\n\x05\x04\x01\x02\x07\x01\x12\x04\x85\x01\x12\x19\n\r\n\x05\x04\x01\ + \x02\x07\x03\x12\x04\x85\x01\x1c\x1d\n$\n\x04\x04\x01\x02\x08\x12\x04\ + \x87\x01\x02\x18\x1a\x16\x20The\x20field\x20JSON\x20name.\n\n\r\n\x05\ + \x04\x01\x02\x08\x05\x12\x04\x87\x01\x02\x08\n\r\n\x05\x04\x01\x02\x08\ + \x01\x12\x04\x87\x01\t\x12\n\r\n\x05\x04\x01\x02\x08\x03\x12\x04\x87\x01\ + \x15\x17\nX\n\x04\x04\x01\x02\t\x12\x04\x89\x01\x02\x1c\x1aJ\x20The\x20s\ + tring\x20value\x20of\x20the\x20default\x20value\x20of\x20this\x20field.\ + \x20Proto2\x20syntax\x20only.\n\n\r\n\x05\x04\x01\x02\t\x05\x12\x04\x89\ + \x01\x02\x08\n\r\n\x05\x04\x01\x02\t\x01\x12\x04\x89\x01\t\x16\n\r\n\x05\ + \x04\x01\x02\t\x03\x12\x04\x89\x01\x19\x1b\n%\n\x02\x04\x02\x12\x06\x8d\ + \x01\0\x98\x01\x01\x1a\x17\x20Enum\x20type\x20definition.\n\n\x0b\n\x03\ + \x04\x02\x01\x12\x04\x8d\x01\x08\x0c\n\x1f\n\x04\x04\x02\x02\0\x12\x04\ + \x8f\x01\x02\x12\x1a\x11\x20Enum\x20type\x20name.\n\n\r\n\x05\x04\x02\ + \x02\0\x05\x12\x04\x8f\x01\x02\x08\n\r\n\x05\x04\x02\x02\0\x01\x12\x04\ + \x8f\x01\t\r\n\r\n\x05\x04\x02\x02\0\x03\x12\x04\x8f\x01\x10\x11\n'\n\ + \x04\x04\x02\x02\x01\x12\x04\x91\x01\x02#\x1a\x19\x20Enum\x20value\x20de\ + finitions.\n\n\r\n\x05\x04\x02\x02\x01\x04\x12\x04\x91\x01\x02\n\n\r\n\ + \x05\x04\x02\x02\x01\x06\x12\x04\x91\x01\x0b\x14\n\r\n\x05\x04\x02\x02\ + \x01\x01\x12\x04\x91\x01\x15\x1e\n\r\n\x05\x04\x02\x02\x01\x03\x12\x04\ + \x91\x01!\"\n(\n\x04\x04\x02\x02\x02\x12\x04\x93\x01\x02\x1e\x1a\x1a\x20\ + Protocol\x20buffer\x20options.\n\n\r\n\x05\x04\x02\x02\x02\x04\x12\x04\ + \x93\x01\x02\n\n\r\n\x05\x04\x02\x02\x02\x06\x12\x04\x93\x01\x0b\x11\n\r\ + \n\x05\x04\x02\x02\x02\x01\x12\x04\x93\x01\x12\x19\n\r\n\x05\x04\x02\x02\ + \x02\x03\x12\x04\x93\x01\x1c\x1d\n#\n\x04\x04\x02\x02\x03\x12\x04\x95\ + \x01\x02#\x1a\x15\x20The\x20source\x20context.\n\n\r\n\x05\x04\x02\x02\ + \x03\x06\x12\x04\x95\x01\x02\x0f\n\r\n\x05\x04\x02\x02\x03\x01\x12\x04\ + \x95\x01\x10\x1e\n\r\n\x05\x04\x02\x02\x03\x03\x12\x04\x95\x01!\"\n\"\n\ + \x04\x04\x02\x02\x04\x12\x04\x97\x01\x02\x14\x1a\x14\x20The\x20source\ + \x20syntax.\n\n\r\n\x05\x04\x02\x02\x04\x06\x12\x04\x97\x01\x02\x08\n\r\ + \n\x05\x04\x02\x02\x04\x01\x12\x04\x97\x01\t\x0f\n\r\n\x05\x04\x02\x02\ + \x04\x03\x12\x04\x97\x01\x12\x13\n&\n\x02\x04\x03\x12\x06\x9b\x01\0\xa2\ + \x01\x01\x1a\x18\x20Enum\x20value\x20definition.\n\n\x0b\n\x03\x04\x03\ + \x01\x12\x04\x9b\x01\x08\x11\n\x20\n\x04\x04\x03\x02\0\x12\x04\x9d\x01\ + \x02\x12\x1a\x12\x20Enum\x20value\x20name.\n\n\r\n\x05\x04\x03\x02\0\x05\ + \x12\x04\x9d\x01\x02\x08\n\r\n\x05\x04\x03\x02\0\x01\x12\x04\x9d\x01\t\r\ + \n\r\n\x05\x04\x03\x02\0\x03\x12\x04\x9d\x01\x10\x11\n\"\n\x04\x04\x03\ + \x02\x01\x12\x04\x9f\x01\x02\x13\x1a\x14\x20Enum\x20value\x20number.\n\n\ + \r\n\x05\x04\x03\x02\x01\x05\x12\x04\x9f\x01\x02\x07\n\r\n\x05\x04\x03\ + \x02\x01\x01\x12\x04\x9f\x01\x08\x0e\n\r\n\x05\x04\x03\x02\x01\x03\x12\ + \x04\x9f\x01\x11\x12\n(\n\x04\x04\x03\x02\x02\x12\x04\xa1\x01\x02\x1e\ + \x1a\x1a\x20Protocol\x20buffer\x20options.\n\n\r\n\x05\x04\x03\x02\x02\ + \x04\x12\x04\xa1\x01\x02\n\n\r\n\x05\x04\x03\x02\x02\x06\x12\x04\xa1\x01\ + \x0b\x11\n\r\n\x05\x04\x03\x02\x02\x01\x12\x04\xa1\x01\x12\x19\n\r\n\x05\ + \x04\x03\x02\x02\x03\x12\x04\xa1\x01\x1c\x1d\ng\n\x02\x04\x04\x12\x06\ + \xa6\x01\0\xab\x01\x01\x1aY\x20A\x20protocol\x20buffer\x20option,\x20whi\ + ch\x20can\x20be\x20attached\x20to\x20a\x20message,\x20field,\n\x20enumer\ + ation,\x20etc.\n\n\x0b\n\x03\x04\x04\x01\x12\x04\xa6\x01\x08\x0e\nA\n\ + \x04\x04\x04\x02\0\x12\x04\xa8\x01\x02\x12\x1a3\x20The\x20option's\x20na\ + me.\x20For\x20example,\x20`\"java_package\"`.\n\n\r\n\x05\x04\x04\x02\0\ + \x05\x12\x04\xa8\x01\x02\x08\n\r\n\x05\x04\x04\x02\0\x01\x12\x04\xa8\x01\ + \t\r\n\r\n\x05\x04\x04\x02\0\x03\x12\x04\xa8\x01\x10\x11\nI\n\x04\x04\ + \x04\x02\x01\x12\x04\xaa\x01\x02\x10\x1a;\x20The\x20option's\x20value.\ + \x20For\x20example,\x20`\"com.google.protobuf\"`.\n\n\r\n\x05\x04\x04\ + \x02\x01\x06\x12\x04\xaa\x01\x02\x05\n\r\n\x05\x04\x04\x02\x01\x01\x12\ + \x04\xaa\x01\x06\x0b\n\r\n\x05\x04\x04\x02\x01\x03\x12\x04\xaa\x01\x0e\ + \x0f\nI\n\x02\x05\0\x12\x06\xae\x01\0\xb3\x01\x01\x1a;\x20The\x20syntax\ + \x20in\x20which\x20a\x20protocol\x20buffer\x20element\x20is\x20defined.\ + \n\n\x0b\n\x03\x05\0\x01\x12\x04\xae\x01\x05\x0b\n\x20\n\x04\x05\0\x02\0\ + \x12\x04\xb0\x01\x02\x14\x1a\x12\x20Syntax\x20`proto2`.\n\n\r\n\x05\x05\ + \0\x02\0\x01\x12\x04\xb0\x01\x02\x0f\n\r\n\x05\x05\0\x02\0\x02\x12\x04\ + \xb0\x01\x12\x13\n\x20\n\x04\x05\0\x02\x01\x12\x04\xb2\x01\x02\x14\x1a\ + \x12\x20Syntax\x20`proto3`.\n\n\r\n\x05\x05\0\x02\x01\x01\x12\x04\xb2\ + \x01\x02\x0f\n\r\n\x05\x05\0\x02\x01\x02\x12\x04\xb2\x01\x12\x13b\x06pro\ + to3\ +"; + +static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT; + +fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { + ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() +} + +pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { + unsafe { + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) + } +} diff --git a/src/well_known_types/wrappers.rs b/src/well_known_types/wrappers.rs new file mode 100644 index 0000000..35015fd --- /dev/null +++ b/src/well_known_types/wrappers.rs @@ -0,0 +1,1597 @@ +// This file is generated by rust-protobuf 2.14.0-pre. Do not edit +// @generated + +// https://github.com/rust-lang/rust-clippy/issues/702 +#![allow(unknown_lints)] +#![allow(clippy::all)] + +#![cfg_attr(rustfmt, rustfmt_skip)] + +#![allow(box_pointers)] +#![allow(dead_code)] +#![allow(missing_docs)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] +#![allow(non_upper_case_globals)] +#![allow(trivial_casts)] +#![allow(unsafe_code)] +#![allow(unused_imports)] +#![allow(unused_results)] +//! Generated file from `google/protobuf/wrappers.proto` + +use protobuf::Message as Message_imported_for_functions; +use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions; + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct DoubleValue { + // message fields + pub value: f64, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a DoubleValue { + fn default() -> &'a DoubleValue { + <DoubleValue as ::protobuf::Message>::default_instance() + } +} + +impl DoubleValue { + pub fn new() -> DoubleValue { + ::std::default::Default::default() + } + + // double value = 1; + + + pub fn get_value(&self) -> f64 { + self.value + } + pub fn clear_value(&mut self) { + self.value = 0.; + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: f64) { + self.value = v; + } +} + +impl ::protobuf::Message for DoubleValue { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeFixed64 { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_double()?; + self.value = tmp; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.value != 0. { + my_size += 9; + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.value != 0. { + os.write_double(1, self.value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> DoubleValue { + DoubleValue::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>( + "value", + |m: &DoubleValue| { &m.value }, + |m: &mut DoubleValue| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<DoubleValue>( + "DoubleValue", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static DoubleValue { + static mut instance: ::protobuf::lazy::Lazy<DoubleValue> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(DoubleValue::new) + } + } +} + +impl ::protobuf::Clear for DoubleValue { + fn clear(&mut self) { + self.value = 0.; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for DoubleValue { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for DoubleValue { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct FloatValue { + // message fields + pub value: f32, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a FloatValue { + fn default() -> &'a FloatValue { + <FloatValue as ::protobuf::Message>::default_instance() + } +} + +impl FloatValue { + pub fn new() -> FloatValue { + ::std::default::Default::default() + } + + // float value = 1; + + + pub fn get_value(&self) -> f32 { + self.value + } + pub fn clear_value(&mut self) { + self.value = 0.; + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: f32) { + self.value = v; + } +} + +impl ::protobuf::Message for FloatValue { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeFixed32 { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_float()?; + self.value = tmp; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.value != 0. { + my_size += 5; + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.value != 0. { + os.write_float(1, self.value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> FloatValue { + FloatValue::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeFloat>( + "value", + |m: &FloatValue| { &m.value }, + |m: &mut FloatValue| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<FloatValue>( + "FloatValue", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static FloatValue { + static mut instance: ::protobuf::lazy::Lazy<FloatValue> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(FloatValue::new) + } + } +} + +impl ::protobuf::Clear for FloatValue { + fn clear(&mut self) { + self.value = 0.; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for FloatValue { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for FloatValue { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Int64Value { + // message fields + pub value: i64, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Int64Value { + fn default() -> &'a Int64Value { + <Int64Value as ::protobuf::Message>::default_instance() + } +} + +impl Int64Value { + pub fn new() -> Int64Value { + ::std::default::Default::default() + } + + // int64 value = 1; + + + pub fn get_value(&self) -> i64 { + self.value + } + pub fn clear_value(&mut self) { + self.value = 0; + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: i64) { + self.value = v; + } +} + +impl ::protobuf::Message for Int64Value { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_int64()?; + self.value = tmp; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.value != 0 { + my_size += ::protobuf::rt::value_size(1, self.value, ::protobuf::wire_format::WireTypeVarint); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.value != 0 { + os.write_int64(1, self.value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Int64Value { + Int64Value::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( + "value", + |m: &Int64Value| { &m.value }, + |m: &mut Int64Value| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Int64Value>( + "Int64Value", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Int64Value { + static mut instance: ::protobuf::lazy::Lazy<Int64Value> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Int64Value::new) + } + } +} + +impl ::protobuf::Clear for Int64Value { + fn clear(&mut self) { + self.value = 0; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Int64Value { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Int64Value { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct UInt64Value { + // message fields + pub value: u64, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a UInt64Value { + fn default() -> &'a UInt64Value { + <UInt64Value as ::protobuf::Message>::default_instance() + } +} + +impl UInt64Value { + pub fn new() -> UInt64Value { + ::std::default::Default::default() + } + + // uint64 value = 1; + + + pub fn get_value(&self) -> u64 { + self.value + } + pub fn clear_value(&mut self) { + self.value = 0; + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: u64) { + self.value = v; + } +} + +impl ::protobuf::Message for UInt64Value { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_uint64()?; + self.value = tmp; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.value != 0 { + my_size += ::protobuf::rt::value_size(1, self.value, ::protobuf::wire_format::WireTypeVarint); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.value != 0 { + os.write_uint64(1, self.value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> UInt64Value { + UInt64Value::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( + "value", + |m: &UInt64Value| { &m.value }, + |m: &mut UInt64Value| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<UInt64Value>( + "UInt64Value", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static UInt64Value { + static mut instance: ::protobuf::lazy::Lazy<UInt64Value> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(UInt64Value::new) + } + } +} + +impl ::protobuf::Clear for UInt64Value { + fn clear(&mut self) { + self.value = 0; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for UInt64Value { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for UInt64Value { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct Int32Value { + // message fields + pub value: i32, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a Int32Value { + fn default() -> &'a Int32Value { + <Int32Value as ::protobuf::Message>::default_instance() + } +} + +impl Int32Value { + pub fn new() -> Int32Value { + ::std::default::Default::default() + } + + // int32 value = 1; + + + pub fn get_value(&self) -> i32 { + self.value + } + pub fn clear_value(&mut self) { + self.value = 0; + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: i32) { + self.value = v; + } +} + +impl ::protobuf::Message for Int32Value { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_int32()?; + self.value = tmp; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.value != 0 { + my_size += ::protobuf::rt::value_size(1, self.value, ::protobuf::wire_format::WireTypeVarint); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.value != 0 { + os.write_int32(1, self.value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> Int32Value { + Int32Value::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( + "value", + |m: &Int32Value| { &m.value }, + |m: &mut Int32Value| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<Int32Value>( + "Int32Value", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static Int32Value { + static mut instance: ::protobuf::lazy::Lazy<Int32Value> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(Int32Value::new) + } + } +} + +impl ::protobuf::Clear for Int32Value { + fn clear(&mut self) { + self.value = 0; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for Int32Value { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for Int32Value { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct UInt32Value { + // message fields + pub value: u32, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a UInt32Value { + fn default() -> &'a UInt32Value { + <UInt32Value as ::protobuf::Message>::default_instance() + } +} + +impl UInt32Value { + pub fn new() -> UInt32Value { + ::std::default::Default::default() + } + + // uint32 value = 1; + + + pub fn get_value(&self) -> u32 { + self.value + } + pub fn clear_value(&mut self) { + self.value = 0; + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: u32) { + self.value = v; + } +} + +impl ::protobuf::Message for UInt32Value { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_uint32()?; + self.value = tmp; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.value != 0 { + my_size += ::protobuf::rt::value_size(1, self.value, ::protobuf::wire_format::WireTypeVarint); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.value != 0 { + os.write_uint32(1, self.value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> UInt32Value { + UInt32Value::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( + "value", + |m: &UInt32Value| { &m.value }, + |m: &mut UInt32Value| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<UInt32Value>( + "UInt32Value", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static UInt32Value { + static mut instance: ::protobuf::lazy::Lazy<UInt32Value> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(UInt32Value::new) + } + } +} + +impl ::protobuf::Clear for UInt32Value { + fn clear(&mut self) { + self.value = 0; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for UInt32Value { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for UInt32Value { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct BoolValue { + // message fields + pub value: bool, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a BoolValue { + fn default() -> &'a BoolValue { + <BoolValue as ::protobuf::Message>::default_instance() + } +} + +impl BoolValue { + pub fn new() -> BoolValue { + ::std::default::Default::default() + } + + // bool value = 1; + + + pub fn get_value(&self) -> bool { + self.value + } + pub fn clear_value(&mut self) { + self.value = false; + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: bool) { + self.value = v; + } +} + +impl ::protobuf::Message for BoolValue { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + if wire_type != ::protobuf::wire_format::WireTypeVarint { + return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); + } + let tmp = is.read_bool()?; + self.value = tmp; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if self.value != false { + my_size += 2; + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if self.value != false { + os.write_bool(1, self.value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> BoolValue { + BoolValue::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>( + "value", + |m: &BoolValue| { &m.value }, + |m: &mut BoolValue| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<BoolValue>( + "BoolValue", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static BoolValue { + static mut instance: ::protobuf::lazy::Lazy<BoolValue> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(BoolValue::new) + } + } +} + +impl ::protobuf::Clear for BoolValue { + fn clear(&mut self) { + self.value = false; + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for BoolValue { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for BoolValue { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct StringValue { + // message fields + pub value: ::std::string::String, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a StringValue { + fn default() -> &'a StringValue { + <StringValue as ::protobuf::Message>::default_instance() + } +} + +impl StringValue { + pub fn new() -> StringValue { + ::std::default::Default::default() + } + + // string value = 1; + + + pub fn get_value(&self) -> &str { + &self.value + } + pub fn clear_value(&mut self) { + self.value.clear(); + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: ::std::string::String) { + self.value = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_value(&mut self) -> &mut ::std::string::String { + &mut self.value + } + + // Take field + pub fn take_value(&mut self) -> ::std::string::String { + ::std::mem::replace(&mut self.value, ::std::string::String::new()) + } +} + +impl ::protobuf::Message for StringValue { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.value)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.value.is_empty() { + my_size += ::protobuf::rt::string_size(1, &self.value); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.value.is_empty() { + os.write_string(1, &self.value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> StringValue { + StringValue::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( + "value", + |m: &StringValue| { &m.value }, + |m: &mut StringValue| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<StringValue>( + "StringValue", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static StringValue { + static mut instance: ::protobuf::lazy::Lazy<StringValue> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(StringValue::new) + } + } +} + +impl ::protobuf::Clear for StringValue { + fn clear(&mut self) { + self.value.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for StringValue { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for StringValue { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +#[derive(PartialEq,Clone,Default)] +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] +pub struct BytesValue { + // message fields + pub value: ::std::vec::Vec<u8>, + // special fields + #[cfg_attr(feature = "with-serde", serde(skip))] + pub unknown_fields: ::protobuf::UnknownFields, + #[cfg_attr(feature = "with-serde", serde(skip))] + pub cached_size: ::protobuf::CachedSize, +} + +impl<'a> ::std::default::Default for &'a BytesValue { + fn default() -> &'a BytesValue { + <BytesValue as ::protobuf::Message>::default_instance() + } +} + +impl BytesValue { + pub fn new() -> BytesValue { + ::std::default::Default::default() + } + + // bytes value = 1; + + + pub fn get_value(&self) -> &[u8] { + &self.value + } + pub fn clear_value(&mut self) { + self.value.clear(); + } + + // Param is passed by value, moved + pub fn set_value(&mut self, v: ::std::vec::Vec<u8>) { + self.value = v; + } + + // Mutable pointer to the field. + // If field is not initialized, it is initialized with default value first. + pub fn mut_value(&mut self) -> &mut ::std::vec::Vec<u8> { + &mut self.value + } + + // Take field + pub fn take_value(&mut self) -> ::std::vec::Vec<u8> { + ::std::mem::replace(&mut self.value, ::std::vec::Vec::new()) + } +} + +impl ::protobuf::Message for BytesValue { + fn is_initialized(&self) -> bool { + true + } + + fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> { + while !is.eof()? { + let (field_number, wire_type) = is.read_tag_unpack()?; + match field_number { + 1 => { + ::protobuf::rt::read_singular_proto3_bytes_into(wire_type, is, &mut self.value)?; + }, + _ => { + ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; + }, + }; + } + ::std::result::Result::Ok(()) + } + + // Compute sizes of nested messages + #[allow(unused_variables)] + fn compute_size(&self) -> u32 { + let mut my_size = 0; + if !self.value.is_empty() { + my_size += ::protobuf::rt::bytes_size(1, &self.value); + } + my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); + self.cached_size.set(my_size); + my_size + } + + fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> { + if !self.value.is_empty() { + os.write_bytes(1, &self.value)?; + } + os.write_unknown_fields(self.get_unknown_fields())?; + ::std::result::Result::Ok(()) + } + + fn get_cached_size(&self) -> u32 { + self.cached_size.get() + } + + fn get_unknown_fields(&self) -> &::protobuf::UnknownFields { + &self.unknown_fields + } + + fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields { + &mut self.unknown_fields + } + + fn as_any(&self) -> &dyn (::std::any::Any) { + self as &dyn (::std::any::Any) + } + fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { + self as &mut dyn (::std::any::Any) + } + fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> { + self + } + + fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { + Self::descriptor_static() + } + + fn new() -> BytesValue { + BytesValue::new() + } + + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { + static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT; + unsafe { + descriptor.get(|| { + let mut fields = ::std::vec::Vec::new(); + fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( + "value", + |m: &BytesValue| { &m.value }, + |m: &mut BytesValue| { &mut m.value }, + )); + ::protobuf::reflect::MessageDescriptor::new_pb_name::<BytesValue>( + "BytesValue", + fields, + file_descriptor_proto() + ) + }) + } + } + + fn default_instance() -> &'static BytesValue { + static mut instance: ::protobuf::lazy::Lazy<BytesValue> = ::protobuf::lazy::Lazy::INIT; + unsafe { + instance.get(BytesValue::new) + } + } +} + +impl ::protobuf::Clear for BytesValue { + fn clear(&mut self) { + self.value.clear(); + self.unknown_fields.clear(); + } +} + +impl ::std::fmt::Debug for BytesValue { + fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + ::protobuf::text_format::fmt(self, f) + } +} + +impl ::protobuf::reflect::ProtobufValue for BytesValue { + fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef { + ::protobuf::reflect::ReflectValueRef::Message(self) + } +} + +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x1egoogle/protobuf/wrappers.proto\x12\x0fgoogle.protobuf\"#\n\x0bDoub\ + leValue\x12\x14\n\x05value\x18\x01\x20\x01(\x01R\x05value\"\"\n\nFloatVa\ + lue\x12\x14\n\x05value\x18\x01\x20\x01(\x02R\x05value\"\"\n\nInt64Value\ + \x12\x14\n\x05value\x18\x01\x20\x01(\x03R\x05value\"#\n\x0bUInt64Value\ + \x12\x14\n\x05value\x18\x01\x20\x01(\x04R\x05value\"\"\n\nInt32Value\x12\ + \x14\n\x05value\x18\x01\x20\x01(\x05R\x05value\"#\n\x0bUInt32Value\x12\ + \x14\n\x05value\x18\x01\x20\x01(\rR\x05value\"!\n\tBoolValue\x12\x14\n\ + \x05value\x18\x01\x20\x01(\x08R\x05value\"#\n\x0bStringValue\x12\x14\n\ + \x05value\x18\x01\x20\x01(\tR\x05value\"\"\n\nBytesValue\x12\x14\n\x05va\ + lue\x18\x01\x20\x01(\x0cR\x05valueB|\n\x13com.google.protobufB\rWrappers\ + ProtoP\x01Z*github.com/golang/protobuf/ptypes/wrappers\xf8\x01\x01\xa2\ + \x02\x03GPB\xaa\x02\x1eGoogle.Protobuf.WellKnownTypesJ\xae\x1d\n\x06\x12\ + \x04#\0u\x01\n\xc3\x0e\n\x01\x0c\x12\x03#\0\x122\xc1\x0c\x20Protocol\x20\ + Buffers\x20-\x20Google's\x20data\x20interchange\x20format\n\x20Copyright\ + \x202008\x20Google\x20Inc.\x20\x20All\x20rights\x20reserved.\n\x20https:\ + //developers.google.com/protocol-buffers/\n\n\x20Redistribution\x20and\ + \x20use\x20in\x20source\x20and\x20binary\x20forms,\x20with\x20or\x20with\ + out\n\x20modification,\x20are\x20permitted\x20provided\x20that\x20the\ + \x20following\x20conditions\x20are\n\x20met:\n\n\x20\x20\x20\x20\x20*\ + \x20Redistributions\x20of\x20source\x20code\x20must\x20retain\x20the\x20\ + above\x20copyright\n\x20notice,\x20this\x20list\x20of\x20conditions\x20a\ + nd\x20the\x20following\x20disclaimer.\n\x20\x20\x20\x20\x20*\x20Redistri\ + butions\x20in\x20binary\x20form\x20must\x20reproduce\x20the\x20above\n\ + \x20copyright\x20notice,\x20this\x20list\x20of\x20conditions\x20and\x20t\ + he\x20following\x20disclaimer\n\x20in\x20the\x20documentation\x20and/or\ + \x20other\x20materials\x20provided\x20with\x20the\n\x20distribution.\n\ + \x20\x20\x20\x20\x20*\x20Neither\x20the\x20name\x20of\x20Google\x20Inc.\ + \x20nor\x20the\x20names\x20of\x20its\n\x20contributors\x20may\x20be\x20u\ + sed\x20to\x20endorse\x20or\x20promote\x20products\x20derived\x20from\n\ + \x20this\x20software\x20without\x20specific\x20prior\x20written\x20permi\ + ssion.\n\n\x20THIS\x20SOFTWARE\x20IS\x20PROVIDED\x20BY\x20THE\x20COPYRIG\ + HT\x20HOLDERS\x20AND\x20CONTRIBUTORS\n\x20\"AS\x20IS\"\x20AND\x20ANY\x20\ + EXPRESS\x20OR\x20IMPLIED\x20WARRANTIES,\x20INCLUDING,\x20BUT\x20NOT\n\ + \x20LIMITED\x20TO,\x20THE\x20IMPLIED\x20WARRANTIES\x20OF\x20MERCHANTABIL\ + ITY\x20AND\x20FITNESS\x20FOR\n\x20A\x20PARTICULAR\x20PURPOSE\x20ARE\x20D\ + ISCLAIMED.\x20IN\x20NO\x20EVENT\x20SHALL\x20THE\x20COPYRIGHT\n\x20OWNER\ + \x20OR\x20CONTRIBUTORS\x20BE\x20LIABLE\x20FOR\x20ANY\x20DIRECT,\x20INDIR\ + ECT,\x20INCIDENTAL,\n\x20SPECIAL,\x20EXEMPLARY,\x20OR\x20CONSEQUENTIAL\ + \x20DAMAGES\x20(INCLUDING,\x20BUT\x20NOT\n\x20LIMITED\x20TO,\x20PROCUREM\ + ENT\x20OF\x20SUBSTITUTE\x20GOODS\x20OR\x20SERVICES;\x20LOSS\x20OF\x20USE\ + ,\n\x20DATA,\x20OR\x20PROFITS;\x20OR\x20BUSINESS\x20INTERRUPTION)\x20HOW\ + EVER\x20CAUSED\x20AND\x20ON\x20ANY\n\x20THEORY\x20OF\x20LIABILITY,\x20WH\ + ETHER\x20IN\x20CONTRACT,\x20STRICT\x20LIABILITY,\x20OR\x20TORT\n\x20(INC\ + LUDING\x20NEGLIGENCE\x20OR\x20OTHERWISE)\x20ARISING\x20IN\x20ANY\x20WAY\ + \x20OUT\x20OF\x20THE\x20USE\n\x20OF\x20THIS\x20SOFTWARE,\x20EVEN\x20IF\ + \x20ADVISED\x20OF\x20THE\x20POSSIBILITY\x20OF\x20SUCH\x20DAMAGE.\n2\xf4\ + \x01\x20Wrappers\x20for\x20primitive\x20(non-message)\x20types.\x20These\ + \x20types\x20are\x20useful\n\x20for\x20embedding\x20primitives\x20in\x20\ + the\x20`google.protobuf.Any`\x20type\x20and\x20for\x20places\n\x20where\ + \x20we\x20need\x20to\x20distinguish\x20between\x20the\x20absence\x20of\ + \x20a\x20primitive\n\x20typed\x20field\x20and\x20its\x20default\x20value\ + .\n\n\x08\n\x01\x02\x12\x03%\0\x18\n\x08\n\x01\x08\x12\x03'\0;\n\t\n\x02\ + \x08%\x12\x03'\0;\n\x08\n\x01\x08\x12\x03(\0\x1f\n\t\n\x02\x08\x1f\x12\ + \x03(\0\x1f\n\x08\n\x01\x08\x12\x03)\0A\n\t\n\x02\x08\x0b\x12\x03)\0A\n\ + \x08\n\x01\x08\x12\x03*\0,\n\t\n\x02\x08\x01\x12\x03*\0,\n\x08\n\x01\x08\ + \x12\x03+\0.\n\t\n\x02\x08\x08\x12\x03+\0.\n\x08\n\x01\x08\x12\x03,\0\"\ + \n\t\n\x02\x08\n\x12\x03,\0\"\n\x08\n\x01\x08\x12\x03-\0!\n\t\n\x02\x08$\ + \x12\x03-\0!\ng\n\x02\x04\0\x12\x042\05\x01\x1a[\x20Wrapper\x20message\ + \x20for\x20`double`.\n\n\x20The\x20JSON\x20representation\x20for\x20`Dou\ + bleValue`\x20is\x20JSON\x20number.\n\n\n\n\x03\x04\0\x01\x12\x032\x08\ + \x13\n\x20\n\x04\x04\0\x02\0\x12\x034\x02\x13\x1a\x13\x20The\x20double\ + \x20value.\n\n\x0c\n\x05\x04\0\x02\0\x05\x12\x034\x02\x08\n\x0c\n\x05\ + \x04\0\x02\0\x01\x12\x034\t\x0e\n\x0c\n\x05\x04\0\x02\0\x03\x12\x034\x11\ + \x12\ne\n\x02\x04\x01\x12\x04:\0=\x01\x1aY\x20Wrapper\x20message\x20for\ + \x20`float`.\n\n\x20The\x20JSON\x20representation\x20for\x20`FloatValue`\ + \x20is\x20JSON\x20number.\n\n\n\n\x03\x04\x01\x01\x12\x03:\x08\x12\n\x1f\ + \n\x04\x04\x01\x02\0\x12\x03<\x02\x12\x1a\x12\x20The\x20float\x20value.\ + \n\n\x0c\n\x05\x04\x01\x02\0\x05\x12\x03<\x02\x07\n\x0c\n\x05\x04\x01\ + \x02\0\x01\x12\x03<\x08\r\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03<\x10\x11\ + \ne\n\x02\x04\x02\x12\x04B\0E\x01\x1aY\x20Wrapper\x20message\x20for\x20`\ + int64`.\n\n\x20The\x20JSON\x20representation\x20for\x20`Int64Value`\x20i\ + s\x20JSON\x20string.\n\n\n\n\x03\x04\x02\x01\x12\x03B\x08\x12\n\x1f\n\ + \x04\x04\x02\x02\0\x12\x03D\x02\x12\x1a\x12\x20The\x20int64\x20value.\n\ + \n\x0c\n\x05\x04\x02\x02\0\x05\x12\x03D\x02\x07\n\x0c\n\x05\x04\x02\x02\ + \0\x01\x12\x03D\x08\r\n\x0c\n\x05\x04\x02\x02\0\x03\x12\x03D\x10\x11\ng\ + \n\x02\x04\x03\x12\x04J\0M\x01\x1a[\x20Wrapper\x20message\x20for\x20`uin\ + t64`.\n\n\x20The\x20JSON\x20representation\x20for\x20`UInt64Value`\x20is\ + \x20JSON\x20string.\n\n\n\n\x03\x04\x03\x01\x12\x03J\x08\x13\n\x20\n\x04\ + \x04\x03\x02\0\x12\x03L\x02\x13\x1a\x13\x20The\x20uint64\x20value.\n\n\ + \x0c\n\x05\x04\x03\x02\0\x05\x12\x03L\x02\x08\n\x0c\n\x05\x04\x03\x02\0\ + \x01\x12\x03L\t\x0e\n\x0c\n\x05\x04\x03\x02\0\x03\x12\x03L\x11\x12\ne\n\ + \x02\x04\x04\x12\x04R\0U\x01\x1aY\x20Wrapper\x20message\x20for\x20`int32\ + `.\n\n\x20The\x20JSON\x20representation\x20for\x20`Int32Value`\x20is\x20\ + JSON\x20number.\n\n\n\n\x03\x04\x04\x01\x12\x03R\x08\x12\n\x1f\n\x04\x04\ + \x04\x02\0\x12\x03T\x02\x12\x1a\x12\x20The\x20int32\x20value.\n\n\x0c\n\ + \x05\x04\x04\x02\0\x05\x12\x03T\x02\x07\n\x0c\n\x05\x04\x04\x02\0\x01\ + \x12\x03T\x08\r\n\x0c\n\x05\x04\x04\x02\0\x03\x12\x03T\x10\x11\ng\n\x02\ + \x04\x05\x12\x04Z\0]\x01\x1a[\x20Wrapper\x20message\x20for\x20`uint32`.\ + \n\n\x20The\x20JSON\x20representation\x20for\x20`UInt32Value`\x20is\x20J\ + SON\x20number.\n\n\n\n\x03\x04\x05\x01\x12\x03Z\x08\x13\n\x20\n\x04\x04\ + \x05\x02\0\x12\x03\\\x02\x13\x1a\x13\x20The\x20uint32\x20value.\n\n\x0c\ + \n\x05\x04\x05\x02\0\x05\x12\x03\\\x02\x08\n\x0c\n\x05\x04\x05\x02\0\x01\ + \x12\x03\\\t\x0e\n\x0c\n\x05\x04\x05\x02\0\x03\x12\x03\\\x11\x12\no\n\ + \x02\x04\x06\x12\x04b\0e\x01\x1ac\x20Wrapper\x20message\x20for\x20`bool`\ + .\n\n\x20The\x20JSON\x20representation\x20for\x20`BoolValue`\x20is\x20JS\ + ON\x20`true`\x20and\x20`false`.\n\n\n\n\x03\x04\x06\x01\x12\x03b\x08\x11\ + \n\x1e\n\x04\x04\x06\x02\0\x12\x03d\x02\x11\x1a\x11\x20The\x20bool\x20va\ + lue.\n\n\x0c\n\x05\x04\x06\x02\0\x05\x12\x03d\x02\x06\n\x0c\n\x05\x04\ + \x06\x02\0\x01\x12\x03d\x07\x0c\n\x0c\n\x05\x04\x06\x02\0\x03\x12\x03d\ + \x0f\x10\ng\n\x02\x04\x07\x12\x04j\0m\x01\x1a[\x20Wrapper\x20message\x20\ + for\x20`string`.\n\n\x20The\x20JSON\x20representation\x20for\x20`StringV\ + alue`\x20is\x20JSON\x20string.\n\n\n\n\x03\x04\x07\x01\x12\x03j\x08\x13\ + \n\x20\n\x04\x04\x07\x02\0\x12\x03l\x02\x13\x1a\x13\x20The\x20string\x20\ + value.\n\n\x0c\n\x05\x04\x07\x02\0\x05\x12\x03l\x02\x08\n\x0c\n\x05\x04\ + \x07\x02\0\x01\x12\x03l\t\x0e\n\x0c\n\x05\x04\x07\x02\0\x03\x12\x03l\x11\ + \x12\ne\n\x02\x04\x08\x12\x04r\0u\x01\x1aY\x20Wrapper\x20message\x20for\ + \x20`bytes`.\n\n\x20The\x20JSON\x20representation\x20for\x20`BytesValue`\ + \x20is\x20JSON\x20string.\n\n\n\n\x03\x04\x08\x01\x12\x03r\x08\x12\n\x1f\ + \n\x04\x04\x08\x02\0\x12\x03t\x02\x12\x1a\x12\x20The\x20bytes\x20value.\ + \n\n\x0c\n\x05\x04\x08\x02\0\x05\x12\x03t\x02\x07\n\x0c\n\x05\x04\x08\ + \x02\0\x01\x12\x03t\x08\r\n\x0c\n\x05\x04\x08\x02\0\x03\x12\x03t\x10\x11\ + b\x06proto3\ +"; + +static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT; + +fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto { + ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap() +} + +pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto { + unsafe { + file_descriptor_proto_lazy.get(|| { + parse_descriptor_proto() + }) + } +} |