google_cloud_rust_raw/api/
consumer.rs

1// This file is generated by rust-protobuf 2.28.0. Do not edit
2// @generated
3
4// https://github.com/rust-lang/rust-clippy/issues/702
5#![allow(unknown_lints)]
6#![allow(clippy::all)]
7
8#![allow(unused_attributes)]
9#![cfg_attr(rustfmt, rustfmt::skip)]
10
11#![allow(box_pointers)]
12#![allow(dead_code)]
13#![allow(missing_docs)]
14#![allow(non_camel_case_types)]
15#![allow(non_snake_case)]
16#![allow(non_upper_case_globals)]
17#![allow(trivial_casts)]
18#![allow(unused_imports)]
19#![allow(unused_results)]
20//! Generated file from `google/api/consumer.proto`
21
22/// Generated files are compatible only with the same version
23/// of protobuf runtime.
24// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_28_0;
25
26#[derive(PartialEq,Clone,Default)]
27pub struct ProjectProperties {
28    // message fields
29    pub properties: ::protobuf::RepeatedField<Property>,
30    // special fields
31    pub unknown_fields: ::protobuf::UnknownFields,
32    pub cached_size: ::protobuf::CachedSize,
33}
34
35impl<'a> ::std::default::Default for &'a ProjectProperties {
36    fn default() -> &'a ProjectProperties {
37        <ProjectProperties as ::protobuf::Message>::default_instance()
38    }
39}
40
41impl ProjectProperties {
42    pub fn new() -> ProjectProperties {
43        ::std::default::Default::default()
44    }
45
46    // repeated .google.api.Property properties = 1;
47
48
49    pub fn get_properties(&self) -> &[Property] {
50        &self.properties
51    }
52    pub fn clear_properties(&mut self) {
53        self.properties.clear();
54    }
55
56    // Param is passed by value, moved
57    pub fn set_properties(&mut self, v: ::protobuf::RepeatedField<Property>) {
58        self.properties = v;
59    }
60
61    // Mutable pointer to the field.
62    pub fn mut_properties(&mut self) -> &mut ::protobuf::RepeatedField<Property> {
63        &mut self.properties
64    }
65
66    // Take field
67    pub fn take_properties(&mut self) -> ::protobuf::RepeatedField<Property> {
68        ::std::mem::replace(&mut self.properties, ::protobuf::RepeatedField::new())
69    }
70}
71
72impl ::protobuf::Message for ProjectProperties {
73    fn is_initialized(&self) -> bool {
74        for v in &self.properties {
75            if !v.is_initialized() {
76                return false;
77            }
78        };
79        true
80    }
81
82    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
83        while !is.eof()? {
84            let (field_number, wire_type) = is.read_tag_unpack()?;
85            match field_number {
86                1 => {
87                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.properties)?;
88                },
89                _ => {
90                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
91                },
92            };
93        }
94        ::std::result::Result::Ok(())
95    }
96
97    // Compute sizes of nested messages
98    #[allow(unused_variables)]
99    fn compute_size(&self) -> u32 {
100        let mut my_size = 0;
101        for value in &self.properties {
102            let len = value.compute_size();
103            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
104        };
105        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
106        self.cached_size.set(my_size);
107        my_size
108    }
109
110    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
111        for v in &self.properties {
112            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
113            os.write_raw_varint32(v.get_cached_size())?;
114            v.write_to_with_cached_sizes(os)?;
115        };
116        os.write_unknown_fields(self.get_unknown_fields())?;
117        ::std::result::Result::Ok(())
118    }
119
120    fn get_cached_size(&self) -> u32 {
121        self.cached_size.get()
122    }
123
124    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
125        &self.unknown_fields
126    }
127
128    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
129        &mut self.unknown_fields
130    }
131
132    fn as_any(&self) -> &dyn (::std::any::Any) {
133        self as &dyn (::std::any::Any)
134    }
135    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
136        self as &mut dyn (::std::any::Any)
137    }
138    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
139        self
140    }
141
142    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
143        Self::descriptor_static()
144    }
145
146    fn new() -> ProjectProperties {
147        ProjectProperties::new()
148    }
149
150    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
151        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
152        descriptor.get(|| {
153            let mut fields = ::std::vec::Vec::new();
154            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Property>>(
155                "properties",
156                |m: &ProjectProperties| { &m.properties },
157                |m: &mut ProjectProperties| { &mut m.properties },
158            ));
159            ::protobuf::reflect::MessageDescriptor::new_pb_name::<ProjectProperties>(
160                "ProjectProperties",
161                fields,
162                file_descriptor_proto()
163            )
164        })
165    }
166
167    fn default_instance() -> &'static ProjectProperties {
168        static instance: ::protobuf::rt::LazyV2<ProjectProperties> = ::protobuf::rt::LazyV2::INIT;
169        instance.get(ProjectProperties::new)
170    }
171}
172
173impl ::protobuf::Clear for ProjectProperties {
174    fn clear(&mut self) {
175        self.properties.clear();
176        self.unknown_fields.clear();
177    }
178}
179
180impl ::std::fmt::Debug for ProjectProperties {
181    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
182        ::protobuf::text_format::fmt(self, f)
183    }
184}
185
186impl ::protobuf::reflect::ProtobufValue for ProjectProperties {
187    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
188        ::protobuf::reflect::ReflectValueRef::Message(self)
189    }
190}
191
192#[derive(PartialEq,Clone,Default)]
193pub struct Property {
194    // message fields
195    pub name: ::std::string::String,
196    pub field_type: Property_PropertyType,
197    pub description: ::std::string::String,
198    // special fields
199    pub unknown_fields: ::protobuf::UnknownFields,
200    pub cached_size: ::protobuf::CachedSize,
201}
202
203impl<'a> ::std::default::Default for &'a Property {
204    fn default() -> &'a Property {
205        <Property as ::protobuf::Message>::default_instance()
206    }
207}
208
209impl Property {
210    pub fn new() -> Property {
211        ::std::default::Default::default()
212    }
213
214    // string name = 1;
215
216
217    pub fn get_name(&self) -> &str {
218        &self.name
219    }
220    pub fn clear_name(&mut self) {
221        self.name.clear();
222    }
223
224    // Param is passed by value, moved
225    pub fn set_name(&mut self, v: ::std::string::String) {
226        self.name = v;
227    }
228
229    // Mutable pointer to the field.
230    // If field is not initialized, it is initialized with default value first.
231    pub fn mut_name(&mut self) -> &mut ::std::string::String {
232        &mut self.name
233    }
234
235    // Take field
236    pub fn take_name(&mut self) -> ::std::string::String {
237        ::std::mem::replace(&mut self.name, ::std::string::String::new())
238    }
239
240    // .google.api.Property.PropertyType type = 2;
241
242
243    pub fn get_field_type(&self) -> Property_PropertyType {
244        self.field_type
245    }
246    pub fn clear_field_type(&mut self) {
247        self.field_type = Property_PropertyType::UNSPECIFIED;
248    }
249
250    // Param is passed by value, moved
251    pub fn set_field_type(&mut self, v: Property_PropertyType) {
252        self.field_type = v;
253    }
254
255    // string description = 3;
256
257
258    pub fn get_description(&self) -> &str {
259        &self.description
260    }
261    pub fn clear_description(&mut self) {
262        self.description.clear();
263    }
264
265    // Param is passed by value, moved
266    pub fn set_description(&mut self, v: ::std::string::String) {
267        self.description = v;
268    }
269
270    // Mutable pointer to the field.
271    // If field is not initialized, it is initialized with default value first.
272    pub fn mut_description(&mut self) -> &mut ::std::string::String {
273        &mut self.description
274    }
275
276    // Take field
277    pub fn take_description(&mut self) -> ::std::string::String {
278        ::std::mem::replace(&mut self.description, ::std::string::String::new())
279    }
280}
281
282impl ::protobuf::Message for Property {
283    fn is_initialized(&self) -> bool {
284        true
285    }
286
287    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
288        while !is.eof()? {
289            let (field_number, wire_type) = is.read_tag_unpack()?;
290            match field_number {
291                1 => {
292                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
293                },
294                2 => {
295                    ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.field_type, 2, &mut self.unknown_fields)?
296                },
297                3 => {
298                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.description)?;
299                },
300                _ => {
301                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
302                },
303            };
304        }
305        ::std::result::Result::Ok(())
306    }
307
308    // Compute sizes of nested messages
309    #[allow(unused_variables)]
310    fn compute_size(&self) -> u32 {
311        let mut my_size = 0;
312        if !self.name.is_empty() {
313            my_size += ::protobuf::rt::string_size(1, &self.name);
314        }
315        if self.field_type != Property_PropertyType::UNSPECIFIED {
316            my_size += ::protobuf::rt::enum_size(2, self.field_type);
317        }
318        if !self.description.is_empty() {
319            my_size += ::protobuf::rt::string_size(3, &self.description);
320        }
321        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
322        self.cached_size.set(my_size);
323        my_size
324    }
325
326    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
327        if !self.name.is_empty() {
328            os.write_string(1, &self.name)?;
329        }
330        if self.field_type != Property_PropertyType::UNSPECIFIED {
331            os.write_enum(2, ::protobuf::ProtobufEnum::value(&self.field_type))?;
332        }
333        if !self.description.is_empty() {
334            os.write_string(3, &self.description)?;
335        }
336        os.write_unknown_fields(self.get_unknown_fields())?;
337        ::std::result::Result::Ok(())
338    }
339
340    fn get_cached_size(&self) -> u32 {
341        self.cached_size.get()
342    }
343
344    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
345        &self.unknown_fields
346    }
347
348    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
349        &mut self.unknown_fields
350    }
351
352    fn as_any(&self) -> &dyn (::std::any::Any) {
353        self as &dyn (::std::any::Any)
354    }
355    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
356        self as &mut dyn (::std::any::Any)
357    }
358    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
359        self
360    }
361
362    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
363        Self::descriptor_static()
364    }
365
366    fn new() -> Property {
367        Property::new()
368    }
369
370    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
371        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
372        descriptor.get(|| {
373            let mut fields = ::std::vec::Vec::new();
374            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
375                "name",
376                |m: &Property| { &m.name },
377                |m: &mut Property| { &mut m.name },
378            ));
379            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Property_PropertyType>>(
380                "type",
381                |m: &Property| { &m.field_type },
382                |m: &mut Property| { &mut m.field_type },
383            ));
384            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
385                "description",
386                |m: &Property| { &m.description },
387                |m: &mut Property| { &mut m.description },
388            ));
389            ::protobuf::reflect::MessageDescriptor::new_pb_name::<Property>(
390                "Property",
391                fields,
392                file_descriptor_proto()
393            )
394        })
395    }
396
397    fn default_instance() -> &'static Property {
398        static instance: ::protobuf::rt::LazyV2<Property> = ::protobuf::rt::LazyV2::INIT;
399        instance.get(Property::new)
400    }
401}
402
403impl ::protobuf::Clear for Property {
404    fn clear(&mut self) {
405        self.name.clear();
406        self.field_type = Property_PropertyType::UNSPECIFIED;
407        self.description.clear();
408        self.unknown_fields.clear();
409    }
410}
411
412impl ::std::fmt::Debug for Property {
413    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
414        ::protobuf::text_format::fmt(self, f)
415    }
416}
417
418impl ::protobuf::reflect::ProtobufValue for Property {
419    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
420        ::protobuf::reflect::ReflectValueRef::Message(self)
421    }
422}
423
424#[derive(Clone,PartialEq,Eq,Debug,Hash)]
425pub enum Property_PropertyType {
426    UNSPECIFIED = 0,
427    INT64 = 1,
428    BOOL = 2,
429    STRING = 3,
430    DOUBLE = 4,
431}
432
433impl ::protobuf::ProtobufEnum for Property_PropertyType {
434    fn value(&self) -> i32 {
435        *self as i32
436    }
437
438    fn from_i32(value: i32) -> ::std::option::Option<Property_PropertyType> {
439        match value {
440            0 => ::std::option::Option::Some(Property_PropertyType::UNSPECIFIED),
441            1 => ::std::option::Option::Some(Property_PropertyType::INT64),
442            2 => ::std::option::Option::Some(Property_PropertyType::BOOL),
443            3 => ::std::option::Option::Some(Property_PropertyType::STRING),
444            4 => ::std::option::Option::Some(Property_PropertyType::DOUBLE),
445            _ => ::std::option::Option::None
446        }
447    }
448
449    fn values() -> &'static [Self] {
450        static values: &'static [Property_PropertyType] = &[
451            Property_PropertyType::UNSPECIFIED,
452            Property_PropertyType::INT64,
453            Property_PropertyType::BOOL,
454            Property_PropertyType::STRING,
455            Property_PropertyType::DOUBLE,
456        ];
457        values
458    }
459
460    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
461        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
462        descriptor.get(|| {
463            ::protobuf::reflect::EnumDescriptor::new_pb_name::<Property_PropertyType>("Property.PropertyType", file_descriptor_proto())
464        })
465    }
466}
467
468impl ::std::marker::Copy for Property_PropertyType {
469}
470
471impl ::std::default::Default for Property_PropertyType {
472    fn default() -> Self {
473        Property_PropertyType::UNSPECIFIED
474    }
475}
476
477impl ::protobuf::reflect::ProtobufValue for Property_PropertyType {
478    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
479        ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
480    }
481}
482
483static file_descriptor_proto_data: &'static [u8] = b"\
484    \n\x19google/api/consumer.proto\x12\ngoogle.api\"I\n\x11ProjectPropertie\
485    s\x124\n\nproperties\x18\x01\x20\x03(\x0b2\x14.google.api.PropertyR\npro\
486    perties\"\xc5\x01\n\x08Property\x12\x12\n\x04name\x18\x01\x20\x01(\tR\
487    \x04name\x125\n\x04type\x18\x02\x20\x01(\x0e2!.google.api.Property.Prope\
488    rtyTypeR\x04type\x12\x20\n\x0bdescription\x18\x03\x20\x01(\tR\x0bdescrip\
489    tion\"L\n\x0cPropertyType\x12\x0f\n\x0bUNSPECIFIED\x10\0\x12\t\n\x05INT6\
490    4\x10\x01\x12\x08\n\x04BOOL\x10\x02\x12\n\n\x06STRING\x10\x03\x12\n\n\
491    \x06DOUBLE\x10\x04Bh\n\x0ecom.google.apiB\rConsumerProtoP\x01ZEgoogle.go\
492    lang.org/genproto/googleapis/api/serviceconfig;serviceconfigJ\xbb\x15\n\
493    \x06\x12\x04\x0e\0Q\x01\n\xbc\x04\n\x01\x0c\x12\x03\x0e\0\x122\xb1\x04\
494    \x20Copyright\x202016\x20Google\x20LLC\n\n\x20Licensed\x20under\x20the\
495    \x20Apache\x20License,\x20Version\x202.0\x20(the\x20\"License\");\n\x20y\
496    ou\x20may\x20not\x20use\x20this\x20file\x20except\x20in\x20compliance\
497    \x20with\x20the\x20License.\n\x20You\x20may\x20obtain\x20a\x20copy\x20of\
498    \x20the\x20License\x20at\n\n\x20\x20\x20\x20\x20http://www.apache.org/li\
499    censes/LICENSE-2.0\n\n\x20Unless\x20required\x20by\x20applicable\x20law\
500    \x20or\x20agreed\x20to\x20in\x20writing,\x20software\n\x20distributed\
501    \x20under\x20the\x20License\x20is\x20distributed\x20on\x20an\x20\"AS\x20\
502    IS\"\x20BASIS,\n\x20WITHOUT\x20WARRANTIES\x20OR\x20CONDITIONS\x20OF\x20A\
503    NY\x20KIND,\x20either\x20express\x20or\x20implied.\n\x20See\x20the\x20Li\
504    cense\x20for\x20the\x20specific\x20language\x20governing\x20permissions\
505    \x20and\n\x20limitations\x20under\x20the\x20License.\n\n\x08\n\x01\x02\
506    \x12\x03\x10\0\x13\n\x08\n\x01\x08\x12\x03\x12\0\\\n\t\n\x02\x08\x0b\x12\
507    \x03\x12\0\\\n\x08\n\x01\x08\x12\x03\x13\0\"\n\t\n\x02\x08\n\x12\x03\x13\
508    \0\"\n\x08\n\x01\x08\x12\x03\x14\0.\n\t\n\x02\x08\x08\x12\x03\x14\0.\n\
509    \x08\n\x01\x08\x12\x03\x15\0'\n\t\n\x02\x08\x01\x12\x03\x15\0'\n\xbf\x05\
510    \n\x02\x04\0\x12\x04'\0*\x01\x1a\xb2\x05\x20A\x20descriptor\x20for\x20de\
511    fining\x20project\x20properties\x20for\x20a\x20service.\x20One\x20servic\
512    e\x20may\n\x20have\x20many\x20consumer\x20projects,\x20and\x20the\x20ser\
513    vice\x20may\x20want\x20to\x20behave\x20differently\n\x20depending\x20on\
514    \x20some\x20properties\x20on\x20the\x20project.\x20For\x20example,\x20a\
515    \x20project\x20may\x20be\n\x20associated\x20with\x20a\x20school,\x20or\
516    \x20a\x20business,\x20or\x20a\x20government\x20agency,\x20a\x20business\
517    \n\x20type\x20property\x20on\x20the\x20project\x20may\x20affect\x20how\
518    \x20a\x20service\x20responds\x20to\x20the\x20client.\n\x20This\x20descri\
519    ptor\x20defines\x20which\x20properties\x20are\x20allowed\x20to\x20be\x20\
520    set\x20on\x20a\x20project.\n\n\x20Example:\n\n\x20\x20\x20\x20project_pr\
521    operties:\n\x20\x20\x20\x20\x20\x20properties:\n\x20\x20\x20\x20\x20\x20\
522    -\x20name:\x20NO_WATERMARK\n\x20\x20\x20\x20\x20\x20\x20\x20type:\x20BOO\
523    L\n\x20\x20\x20\x20\x20\x20\x20\x20description:\x20Allows\x20usage\x20of\
524    \x20the\x20API\x20without\x20watermarks.\n\x20\x20\x20\x20\x20\x20-\x20n\
525    ame:\x20EXTENDED_TILE_CACHE_PERIOD\n\x20\x20\x20\x20\x20\x20\x20\x20type\
526    :\x20INT64\n\n\n\n\x03\x04\0\x01\x12\x03'\x08\x19\n@\n\x04\x04\0\x02\0\
527    \x12\x03)\x02#\x1a3\x20List\x20of\x20per\x20consumer\x20project-specific\
528    \x20properties.\n\n\x0c\n\x05\x04\0\x02\0\x04\x12\x03)\x02\n\n\x0c\n\x05\
529    \x04\0\x02\0\x06\x12\x03)\x0b\x13\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03)\
530    \x14\x1e\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03)!\"\n\xe1\x03\n\x02\x04\x01\
531    \x12\x046\0Q\x01\x1a\xd4\x03\x20Defines\x20project\x20properties.\n\n\
532    \x20API\x20services\x20can\x20define\x20properties\x20that\x20can\x20be\
533    \x20assigned\x20to\x20consumer\x20projects\n\x20so\x20that\x20backends\
534    \x20can\x20perform\x20response\x20customization\x20without\x20having\x20\
535    to\x20make\n\x20additional\x20calls\x20or\x20maintain\x20additional\x20s\
536    torage.\x20For\x20example,\x20Maps\x20API\n\x20defines\x20properties\x20\
537    that\x20controls\x20map\x20tile\x20cache\x20period,\x20or\x20whether\x20\
538    to\x20embed\x20a\n\x20watermark\x20in\x20a\x20result.\n\n\x20These\x20va\
539    lues\x20can\x20be\x20set\x20via\x20API\x20producer\x20console.\x20Only\
540    \x20API\x20providers\x20can\n\x20define\x20and\x20set\x20these\x20proper\
541    ties.\n\n\n\n\x03\x04\x01\x01\x12\x036\x08\x10\n:\n\x04\x04\x01\x04\0\
542    \x12\x048\x02G\x03\x1a,\x20Supported\x20data\x20type\x20of\x20the\x20pro\
543    perty\x20values\n\n\x0c\n\x05\x04\x01\x04\0\x01\x12\x038\x07\x13\nF\n\
544    \x06\x04\x01\x04\0\x02\0\x12\x03:\x04\x14\x1a7\x20The\x20type\x20is\x20u\
545    nspecified,\x20and\x20will\x20result\x20in\x20an\x20error.\n\n\x0e\n\x07\
546    \x04\x01\x04\0\x02\0\x01\x12\x03:\x04\x0f\n\x0e\n\x07\x04\x01\x04\0\x02\
547    \0\x02\x12\x03:\x12\x13\n%\n\x06\x04\x01\x04\0\x02\x01\x12\x03=\x04\x0e\
548    \x1a\x16\x20The\x20type\x20is\x20`int64`.\n\n\x0e\n\x07\x04\x01\x04\0\
549    \x02\x01\x01\x12\x03=\x04\t\n\x0e\n\x07\x04\x01\x04\0\x02\x01\x02\x12\
550    \x03=\x0c\r\n$\n\x06\x04\x01\x04\0\x02\x02\x12\x03@\x04\r\x1a\x15\x20The\
551    \x20type\x20is\x20`bool`.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x02\x01\x12\
552    \x03@\x04\x08\n\x0e\n\x07\x04\x01\x04\0\x02\x02\x02\x12\x03@\x0b\x0c\n&\
553    \n\x06\x04\x01\x04\0\x02\x03\x12\x03C\x04\x0f\x1a\x17\x20The\x20type\x20\
554    is\x20`string`.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x03\x01\x12\x03C\x04\n\n\
555    \x0e\n\x07\x04\x01\x04\0\x02\x03\x02\x12\x03C\r\x0e\n&\n\x06\x04\x01\x04\
556    \0\x02\x04\x12\x03F\x04\x0f\x1a\x17\x20The\x20type\x20is\x20'double'.\n\
557    \n\x0e\n\x07\x04\x01\x04\0\x02\x04\x01\x12\x03F\x04\n\n\x0e\n\x07\x04\
558    \x01\x04\0\x02\x04\x02\x12\x03F\r\x0e\n4\n\x04\x04\x01\x02\0\x12\x03J\
559    \x02\x12\x1a'\x20The\x20name\x20of\x20the\x20property\x20(a.k.a\x20key).\
560    \n\n\x0c\n\x05\x04\x01\x02\0\x05\x12\x03J\x02\x08\n\x0c\n\x05\x04\x01\
561    \x02\0\x01\x12\x03J\t\r\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03J\x10\x11\n\
562    )\n\x04\x04\x01\x02\x01\x12\x03M\x02\x18\x1a\x1c\x20The\x20type\x20of\
563    \x20this\x20property.\n\n\x0c\n\x05\x04\x01\x02\x01\x06\x12\x03M\x02\x0e\
564    \n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x03M\x0f\x13\n\x0c\n\x05\x04\x01\
565    \x02\x01\x03\x12\x03M\x16\x17\n.\n\x04\x04\x01\x02\x02\x12\x03P\x02\x19\
566    \x1a!\x20The\x20description\x20of\x20the\x20property\n\n\x0c\n\x05\x04\
567    \x01\x02\x02\x05\x12\x03P\x02\x08\n\x0c\n\x05\x04\x01\x02\x02\x01\x12\
568    \x03P\t\x14\n\x0c\n\x05\x04\x01\x02\x02\x03\x12\x03P\x17\x18b\x06proto3\
569";
570
571static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT;
572
573fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
574    ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
575}
576
577pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
578    file_descriptor_proto_lazy.get(|| {
579        parse_descriptor_proto()
580    })
581}