Skip to main content

gf_metadata/
axes.rs

1// This file is generated by rust-protobuf 3.7.2. Do not edit
2// .proto file is parsed by protoc --rs_out=...
3// @generated
4
5// https://github.com/rust-lang/rust-clippy/issues/702
6#![allow(unknown_lints)]
7#![allow(clippy::all)]
8
9#![allow(unused_attributes)]
10#![cfg_attr(rustfmt, rustfmt::skip)]
11
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_results)]
19#![allow(unused_mut)]
20
21//! Generated file from `axes.proto`
22
23/// Generated files are compatible only with the same version
24/// of protobuf runtime.
25const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_3_7_2;
26
27///  An axis in the GF Axis Registry
28// @@protoc_insertion_point(message:AxisProto)
29#[derive(PartialEq,Clone,Default,Debug)]
30pub struct AxisProto {
31    // message fields
32    ///  Axis tag
33    // @@protoc_insertion_point(field:AxisProto.tag)
34    pub tag: ::std::option::Option<::std::string::String>,
35    ///  Display name for axis, e.g. "Optical size" for 'opsz'
36    ///  Like 'Name' in
37    ///  https://docs.microsoft.com/en-us/typography/opentype/spec/dvaraxistag_opsz
38    // @@protoc_insertion_point(field:AxisProto.display_name)
39    pub display_name: ::std::option::Option<::std::string::String>,
40    ///  Lower bound for the axis
41    // @@protoc_insertion_point(field:AxisProto.min_value)
42    pub min_value: ::std::option::Option<f32>,
43    ///  The default position to use and to prefer for exemplars
44    // @@protoc_insertion_point(field:AxisProto.default_value)
45    pub default_value: ::std::option::Option<f32>,
46    ///  Upper bound for the axis
47    // @@protoc_insertion_point(field:AxisProto.max_value)
48    pub max_value: ::std::option::Option<f32>,
49    ///  Input values for this axis must aligned to 10^precision
50    // @@protoc_insertion_point(field:AxisProto.precision)
51    pub precision: ::std::option::Option<i32>,
52    ///  Fallback positions along the axis
53    // @@protoc_insertion_point(field:AxisProto.fallback)
54    pub fallback: ::std::vec::Vec<FallbackProto>,
55    ///  Short descriptive paragraph
56    // @@protoc_insertion_point(field:AxisProto.description)
57    pub description: ::std::option::Option<::std::string::String>,
58    ///  Whether only the fallback positions should be used, for example, an axis
59    ///  might have only three relevant positions: the min, the middle, and the max.
60    // @@protoc_insertion_point(field:AxisProto.fallback_only)
61    pub fallback_only: ::std::option::Option<bool>,
62    // special fields
63    // @@protoc_insertion_point(special_field:AxisProto.special_fields)
64    pub special_fields: ::protobuf::SpecialFields,
65}
66
67impl<'a> ::std::default::Default for &'a AxisProto {
68    fn default() -> &'a AxisProto {
69        <AxisProto as ::protobuf::Message>::default_instance()
70    }
71}
72
73impl AxisProto {
74    pub fn new() -> AxisProto {
75        ::std::default::Default::default()
76    }
77
78    // optional string tag = 1;
79
80    pub fn tag(&self) -> &str {
81        match self.tag.as_ref() {
82            Some(v) => v,
83            None => "",
84        }
85    }
86
87    pub fn clear_tag(&mut self) {
88        self.tag = ::std::option::Option::None;
89    }
90
91    pub fn has_tag(&self) -> bool {
92        self.tag.is_some()
93    }
94
95    // Param is passed by value, moved
96    pub fn set_tag(&mut self, v: ::std::string::String) {
97        self.tag = ::std::option::Option::Some(v);
98    }
99
100    // Mutable pointer to the field.
101    // If field is not initialized, it is initialized with default value first.
102    pub fn mut_tag(&mut self) -> &mut ::std::string::String {
103        if self.tag.is_none() {
104            self.tag = ::std::option::Option::Some(::std::string::String::new());
105        }
106        self.tag.as_mut().unwrap()
107    }
108
109    // Take field
110    pub fn take_tag(&mut self) -> ::std::string::String {
111        self.tag.take().unwrap_or_else(|| ::std::string::String::new())
112    }
113
114    // optional string display_name = 7;
115
116    pub fn display_name(&self) -> &str {
117        match self.display_name.as_ref() {
118            Some(v) => v,
119            None => "",
120        }
121    }
122
123    pub fn clear_display_name(&mut self) {
124        self.display_name = ::std::option::Option::None;
125    }
126
127    pub fn has_display_name(&self) -> bool {
128        self.display_name.is_some()
129    }
130
131    // Param is passed by value, moved
132    pub fn set_display_name(&mut self, v: ::std::string::String) {
133        self.display_name = ::std::option::Option::Some(v);
134    }
135
136    // Mutable pointer to the field.
137    // If field is not initialized, it is initialized with default value first.
138    pub fn mut_display_name(&mut self) -> &mut ::std::string::String {
139        if self.display_name.is_none() {
140            self.display_name = ::std::option::Option::Some(::std::string::String::new());
141        }
142        self.display_name.as_mut().unwrap()
143    }
144
145    // Take field
146    pub fn take_display_name(&mut self) -> ::std::string::String {
147        self.display_name.take().unwrap_or_else(|| ::std::string::String::new())
148    }
149
150    // optional float min_value = 2;
151
152    pub fn min_value(&self) -> f32 {
153        self.min_value.unwrap_or(0.)
154    }
155
156    pub fn clear_min_value(&mut self) {
157        self.min_value = ::std::option::Option::None;
158    }
159
160    pub fn has_min_value(&self) -> bool {
161        self.min_value.is_some()
162    }
163
164    // Param is passed by value, moved
165    pub fn set_min_value(&mut self, v: f32) {
166        self.min_value = ::std::option::Option::Some(v);
167    }
168
169    // optional float default_value = 3;
170
171    pub fn default_value(&self) -> f32 {
172        self.default_value.unwrap_or(0.)
173    }
174
175    pub fn clear_default_value(&mut self) {
176        self.default_value = ::std::option::Option::None;
177    }
178
179    pub fn has_default_value(&self) -> bool {
180        self.default_value.is_some()
181    }
182
183    // Param is passed by value, moved
184    pub fn set_default_value(&mut self, v: f32) {
185        self.default_value = ::std::option::Option::Some(v);
186    }
187
188    // optional float max_value = 4;
189
190    pub fn max_value(&self) -> f32 {
191        self.max_value.unwrap_or(0.)
192    }
193
194    pub fn clear_max_value(&mut self) {
195        self.max_value = ::std::option::Option::None;
196    }
197
198    pub fn has_max_value(&self) -> bool {
199        self.max_value.is_some()
200    }
201
202    // Param is passed by value, moved
203    pub fn set_max_value(&mut self, v: f32) {
204        self.max_value = ::std::option::Option::Some(v);
205    }
206
207    // optional int32 precision = 5;
208
209    pub fn precision(&self) -> i32 {
210        self.precision.unwrap_or(0)
211    }
212
213    pub fn clear_precision(&mut self) {
214        self.precision = ::std::option::Option::None;
215    }
216
217    pub fn has_precision(&self) -> bool {
218        self.precision.is_some()
219    }
220
221    // Param is passed by value, moved
222    pub fn set_precision(&mut self, v: i32) {
223        self.precision = ::std::option::Option::Some(v);
224    }
225
226    // optional string description = 8;
227
228    pub fn description(&self) -> &str {
229        match self.description.as_ref() {
230            Some(v) => v,
231            None => "",
232        }
233    }
234
235    pub fn clear_description(&mut self) {
236        self.description = ::std::option::Option::None;
237    }
238
239    pub fn has_description(&self) -> bool {
240        self.description.is_some()
241    }
242
243    // Param is passed by value, moved
244    pub fn set_description(&mut self, v: ::std::string::String) {
245        self.description = ::std::option::Option::Some(v);
246    }
247
248    // Mutable pointer to the field.
249    // If field is not initialized, it is initialized with default value first.
250    pub fn mut_description(&mut self) -> &mut ::std::string::String {
251        if self.description.is_none() {
252            self.description = ::std::option::Option::Some(::std::string::String::new());
253        }
254        self.description.as_mut().unwrap()
255    }
256
257    // Take field
258    pub fn take_description(&mut self) -> ::std::string::String {
259        self.description.take().unwrap_or_else(|| ::std::string::String::new())
260    }
261
262    // optional bool fallback_only = 9;
263
264    pub fn fallback_only(&self) -> bool {
265        self.fallback_only.unwrap_or(false)
266    }
267
268    pub fn clear_fallback_only(&mut self) {
269        self.fallback_only = ::std::option::Option::None;
270    }
271
272    pub fn has_fallback_only(&self) -> bool {
273        self.fallback_only.is_some()
274    }
275
276    // Param is passed by value, moved
277    pub fn set_fallback_only(&mut self, v: bool) {
278        self.fallback_only = ::std::option::Option::Some(v);
279    }
280
281    fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
282        let mut fields = ::std::vec::Vec::with_capacity(9);
283        let mut oneofs = ::std::vec::Vec::with_capacity(0);
284        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
285            "tag",
286            |m: &AxisProto| { &m.tag },
287            |m: &mut AxisProto| { &mut m.tag },
288        ));
289        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
290            "display_name",
291            |m: &AxisProto| { &m.display_name },
292            |m: &mut AxisProto| { &mut m.display_name },
293        ));
294        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
295            "min_value",
296            |m: &AxisProto| { &m.min_value },
297            |m: &mut AxisProto| { &mut m.min_value },
298        ));
299        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
300            "default_value",
301            |m: &AxisProto| { &m.default_value },
302            |m: &mut AxisProto| { &mut m.default_value },
303        ));
304        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
305            "max_value",
306            |m: &AxisProto| { &m.max_value },
307            |m: &mut AxisProto| { &mut m.max_value },
308        ));
309        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
310            "precision",
311            |m: &AxisProto| { &m.precision },
312            |m: &mut AxisProto| { &mut m.precision },
313        ));
314        fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
315            "fallback",
316            |m: &AxisProto| { &m.fallback },
317            |m: &mut AxisProto| { &mut m.fallback },
318        ));
319        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
320            "description",
321            |m: &AxisProto| { &m.description },
322            |m: &mut AxisProto| { &mut m.description },
323        ));
324        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
325            "fallback_only",
326            |m: &AxisProto| { &m.fallback_only },
327            |m: &mut AxisProto| { &mut m.fallback_only },
328        ));
329        ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<AxisProto>(
330            "AxisProto",
331            fields,
332            oneofs,
333        )
334    }
335}
336
337impl ::protobuf::Message for AxisProto {
338    const NAME: &'static str = "AxisProto";
339
340    fn is_initialized(&self) -> bool {
341        true
342    }
343
344    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
345        while let Some(tag) = is.read_raw_tag_or_eof()? {
346            match tag {
347                10 => {
348                    self.tag = ::std::option::Option::Some(is.read_string()?);
349                },
350                58 => {
351                    self.display_name = ::std::option::Option::Some(is.read_string()?);
352                },
353                21 => {
354                    self.min_value = ::std::option::Option::Some(is.read_float()?);
355                },
356                29 => {
357                    self.default_value = ::std::option::Option::Some(is.read_float()?);
358                },
359                37 => {
360                    self.max_value = ::std::option::Option::Some(is.read_float()?);
361                },
362                40 => {
363                    self.precision = ::std::option::Option::Some(is.read_int32()?);
364                },
365                50 => {
366                    self.fallback.push(is.read_message()?);
367                },
368                66 => {
369                    self.description = ::std::option::Option::Some(is.read_string()?);
370                },
371                72 => {
372                    self.fallback_only = ::std::option::Option::Some(is.read_bool()?);
373                },
374                tag => {
375                    ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
376                },
377            };
378        }
379        ::std::result::Result::Ok(())
380    }
381
382    // Compute sizes of nested messages
383    #[allow(unused_variables)]
384    fn compute_size(&self) -> u64 {
385        let mut my_size = 0;
386        if let Some(v) = self.tag.as_ref() {
387            my_size += ::protobuf::rt::string_size(1, &v);
388        }
389        if let Some(v) = self.display_name.as_ref() {
390            my_size += ::protobuf::rt::string_size(7, &v);
391        }
392        if let Some(v) = self.min_value {
393            my_size += 1 + 4;
394        }
395        if let Some(v) = self.default_value {
396            my_size += 1 + 4;
397        }
398        if let Some(v) = self.max_value {
399            my_size += 1 + 4;
400        }
401        if let Some(v) = self.precision {
402            my_size += ::protobuf::rt::int32_size(5, v);
403        }
404        for value in &self.fallback {
405            let len = value.compute_size();
406            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
407        };
408        if let Some(v) = self.description.as_ref() {
409            my_size += ::protobuf::rt::string_size(8, &v);
410        }
411        if let Some(v) = self.fallback_only {
412            my_size += 1 + 1;
413        }
414        my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
415        self.special_fields.cached_size().set(my_size as u32);
416        my_size
417    }
418
419    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
420        if let Some(v) = self.tag.as_ref() {
421            os.write_string(1, v)?;
422        }
423        if let Some(v) = self.display_name.as_ref() {
424            os.write_string(7, v)?;
425        }
426        if let Some(v) = self.min_value {
427            os.write_float(2, v)?;
428        }
429        if let Some(v) = self.default_value {
430            os.write_float(3, v)?;
431        }
432        if let Some(v) = self.max_value {
433            os.write_float(4, v)?;
434        }
435        if let Some(v) = self.precision {
436            os.write_int32(5, v)?;
437        }
438        for v in &self.fallback {
439            ::protobuf::rt::write_message_field_with_cached_size(6, v, os)?;
440        };
441        if let Some(v) = self.description.as_ref() {
442            os.write_string(8, v)?;
443        }
444        if let Some(v) = self.fallback_only {
445            os.write_bool(9, v)?;
446        }
447        os.write_unknown_fields(self.special_fields.unknown_fields())?;
448        ::std::result::Result::Ok(())
449    }
450
451    fn special_fields(&self) -> &::protobuf::SpecialFields {
452        &self.special_fields
453    }
454
455    fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
456        &mut self.special_fields
457    }
458
459    fn new() -> AxisProto {
460        AxisProto::new()
461    }
462
463    fn clear(&mut self) {
464        self.tag = ::std::option::Option::None;
465        self.display_name = ::std::option::Option::None;
466        self.min_value = ::std::option::Option::None;
467        self.default_value = ::std::option::Option::None;
468        self.max_value = ::std::option::Option::None;
469        self.precision = ::std::option::Option::None;
470        self.fallback.clear();
471        self.description = ::std::option::Option::None;
472        self.fallback_only = ::std::option::Option::None;
473        self.special_fields.clear();
474    }
475
476    fn default_instance() -> &'static AxisProto {
477        static instance: AxisProto = AxisProto {
478            tag: ::std::option::Option::None,
479            display_name: ::std::option::Option::None,
480            min_value: ::std::option::Option::None,
481            default_value: ::std::option::Option::None,
482            max_value: ::std::option::Option::None,
483            precision: ::std::option::Option::None,
484            fallback: ::std::vec::Vec::new(),
485            description: ::std::option::Option::None,
486            fallback_only: ::std::option::Option::None,
487            special_fields: ::protobuf::SpecialFields::new(),
488        };
489        &instance
490    }
491}
492
493impl ::protobuf::MessageFull for AxisProto {
494    fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
495        static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
496        descriptor.get(|| file_descriptor().message_by_package_relative_name("AxisProto").unwrap()).clone()
497    }
498}
499
500impl ::std::fmt::Display for AxisProto {
501    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
502        ::protobuf::text_format::fmt(self, f)
503    }
504}
505
506impl ::protobuf::reflect::ProtobufValue for AxisProto {
507    type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
508}
509
510// @@protoc_insertion_point(message:FallbackProto)
511#[derive(PartialEq,Clone,Default,Debug)]
512pub struct FallbackProto {
513    // message fields
514    // @@protoc_insertion_point(field:FallbackProto.name)
515    pub name: ::std::option::Option<::std::string::String>,
516    // @@protoc_insertion_point(field:FallbackProto.value)
517    pub value: ::std::option::Option<f32>,
518    // @@protoc_insertion_point(field:FallbackProto.display_name)
519    pub display_name: ::std::option::Option<::std::string::String>,
520    // special fields
521    // @@protoc_insertion_point(special_field:FallbackProto.special_fields)
522    pub special_fields: ::protobuf::SpecialFields,
523}
524
525impl<'a> ::std::default::Default for &'a FallbackProto {
526    fn default() -> &'a FallbackProto {
527        <FallbackProto as ::protobuf::Message>::default_instance()
528    }
529}
530
531impl FallbackProto {
532    pub fn new() -> FallbackProto {
533        ::std::default::Default::default()
534    }
535
536    // optional string name = 1;
537
538    pub fn name(&self) -> &str {
539        match self.name.as_ref() {
540            Some(v) => v,
541            None => "",
542        }
543    }
544
545    pub fn clear_name(&mut self) {
546        self.name = ::std::option::Option::None;
547    }
548
549    pub fn has_name(&self) -> bool {
550        self.name.is_some()
551    }
552
553    // Param is passed by value, moved
554    pub fn set_name(&mut self, v: ::std::string::String) {
555        self.name = ::std::option::Option::Some(v);
556    }
557
558    // Mutable pointer to the field.
559    // If field is not initialized, it is initialized with default value first.
560    pub fn mut_name(&mut self) -> &mut ::std::string::String {
561        if self.name.is_none() {
562            self.name = ::std::option::Option::Some(::std::string::String::new());
563        }
564        self.name.as_mut().unwrap()
565    }
566
567    // Take field
568    pub fn take_name(&mut self) -> ::std::string::String {
569        self.name.take().unwrap_or_else(|| ::std::string::String::new())
570    }
571
572    // optional float value = 2;
573
574    pub fn value(&self) -> f32 {
575        self.value.unwrap_or(0.)
576    }
577
578    pub fn clear_value(&mut self) {
579        self.value = ::std::option::Option::None;
580    }
581
582    pub fn has_value(&self) -> bool {
583        self.value.is_some()
584    }
585
586    // Param is passed by value, moved
587    pub fn set_value(&mut self, v: f32) {
588        self.value = ::std::option::Option::Some(v);
589    }
590
591    // optional string display_name = 3;
592
593    pub fn display_name(&self) -> &str {
594        match self.display_name.as_ref() {
595            Some(v) => v,
596            None => "",
597        }
598    }
599
600    pub fn clear_display_name(&mut self) {
601        self.display_name = ::std::option::Option::None;
602    }
603
604    pub fn has_display_name(&self) -> bool {
605        self.display_name.is_some()
606    }
607
608    // Param is passed by value, moved
609    pub fn set_display_name(&mut self, v: ::std::string::String) {
610        self.display_name = ::std::option::Option::Some(v);
611    }
612
613    // Mutable pointer to the field.
614    // If field is not initialized, it is initialized with default value first.
615    pub fn mut_display_name(&mut self) -> &mut ::std::string::String {
616        if self.display_name.is_none() {
617            self.display_name = ::std::option::Option::Some(::std::string::String::new());
618        }
619        self.display_name.as_mut().unwrap()
620    }
621
622    // Take field
623    pub fn take_display_name(&mut self) -> ::std::string::String {
624        self.display_name.take().unwrap_or_else(|| ::std::string::String::new())
625    }
626
627    fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
628        let mut fields = ::std::vec::Vec::with_capacity(3);
629        let mut oneofs = ::std::vec::Vec::with_capacity(0);
630        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
631            "name",
632            |m: &FallbackProto| { &m.name },
633            |m: &mut FallbackProto| { &mut m.name },
634        ));
635        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
636            "value",
637            |m: &FallbackProto| { &m.value },
638            |m: &mut FallbackProto| { &mut m.value },
639        ));
640        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
641            "display_name",
642            |m: &FallbackProto| { &m.display_name },
643            |m: &mut FallbackProto| { &mut m.display_name },
644        ));
645        ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<FallbackProto>(
646            "FallbackProto",
647            fields,
648            oneofs,
649        )
650    }
651}
652
653impl ::protobuf::Message for FallbackProto {
654    const NAME: &'static str = "FallbackProto";
655
656    fn is_initialized(&self) -> bool {
657        true
658    }
659
660    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
661        while let Some(tag) = is.read_raw_tag_or_eof()? {
662            match tag {
663                10 => {
664                    self.name = ::std::option::Option::Some(is.read_string()?);
665                },
666                21 => {
667                    self.value = ::std::option::Option::Some(is.read_float()?);
668                },
669                26 => {
670                    self.display_name = ::std::option::Option::Some(is.read_string()?);
671                },
672                tag => {
673                    ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
674                },
675            };
676        }
677        ::std::result::Result::Ok(())
678    }
679
680    // Compute sizes of nested messages
681    #[allow(unused_variables)]
682    fn compute_size(&self) -> u64 {
683        let mut my_size = 0;
684        if let Some(v) = self.name.as_ref() {
685            my_size += ::protobuf::rt::string_size(1, &v);
686        }
687        if let Some(v) = self.value {
688            my_size += 1 + 4;
689        }
690        if let Some(v) = self.display_name.as_ref() {
691            my_size += ::protobuf::rt::string_size(3, &v);
692        }
693        my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
694        self.special_fields.cached_size().set(my_size as u32);
695        my_size
696    }
697
698    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
699        if let Some(v) = self.name.as_ref() {
700            os.write_string(1, v)?;
701        }
702        if let Some(v) = self.value {
703            os.write_float(2, v)?;
704        }
705        if let Some(v) = self.display_name.as_ref() {
706            os.write_string(3, v)?;
707        }
708        os.write_unknown_fields(self.special_fields.unknown_fields())?;
709        ::std::result::Result::Ok(())
710    }
711
712    fn special_fields(&self) -> &::protobuf::SpecialFields {
713        &self.special_fields
714    }
715
716    fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
717        &mut self.special_fields
718    }
719
720    fn new() -> FallbackProto {
721        FallbackProto::new()
722    }
723
724    fn clear(&mut self) {
725        self.name = ::std::option::Option::None;
726        self.value = ::std::option::Option::None;
727        self.display_name = ::std::option::Option::None;
728        self.special_fields.clear();
729    }
730
731    fn default_instance() -> &'static FallbackProto {
732        static instance: FallbackProto = FallbackProto {
733            name: ::std::option::Option::None,
734            value: ::std::option::Option::None,
735            display_name: ::std::option::Option::None,
736            special_fields: ::protobuf::SpecialFields::new(),
737        };
738        &instance
739    }
740}
741
742impl ::protobuf::MessageFull for FallbackProto {
743    fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
744        static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
745        descriptor.get(|| file_descriptor().message_by_package_relative_name("FallbackProto").unwrap()).clone()
746    }
747}
748
749impl ::std::fmt::Display for FallbackProto {
750    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
751        ::protobuf::text_format::fmt(self, f)
752    }
753}
754
755impl ::protobuf::reflect::ProtobufValue for FallbackProto {
756    type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
757}
758
759static file_descriptor_proto_data: &'static [u8] = b"\
760    \n\naxes.proto\"\xb0\x02\n\tAxisProto\x12\x10\n\x03tag\x18\x01\x20\x01(\
761    \tR\x03tag\x12!\n\x0cdisplay_name\x18\x07\x20\x01(\tR\x0bdisplayName\x12\
762    \x1b\n\tmin_value\x18\x02\x20\x01(\x02R\x08minValue\x12#\n\rdefault_valu\
763    e\x18\x03\x20\x01(\x02R\x0cdefaultValue\x12\x1b\n\tmax_value\x18\x04\x20\
764    \x01(\x02R\x08maxValue\x12\x1c\n\tprecision\x18\x05\x20\x01(\x05R\tpreci\
765    sion\x12*\n\x08fallback\x18\x06\x20\x03(\x0b2\x0e.FallbackProtoR\x08fall\
766    back\x12\x20\n\x0bdescription\x18\x08\x20\x01(\tR\x0bdescription\x12#\n\
767    \rfallback_only\x18\t\x20\x01(\x08R\x0cfallbackOnly\"\\\n\rFallbackProto\
768    \x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\x12\x14\n\x05value\x18\
769    \x02\x20\x01(\x02R\x05value\x12!\n\x0cdisplay_name\x18\x03\x20\x01(\tR\
770    \x0bdisplayNameJ\xec\x0b\n\x06\x12\x04\0\0*\x01\n#\n\x01\x0c\x12\x03\0\0\
771    \x12\"\x19\x20GF\x20Axis\x20Registry\x20Protos\n\n-\n\x02\x04\0\x12\x04\
772    \x04\0$\x01\x1a!\x20An\x20axis\x20in\x20the\x20GF\x20Axis\x20Registry\n\
773    \n\n\n\x03\x04\0\x01\x12\x03\x04\x08\x11\n\x17\n\x04\x04\0\x02\0\x12\x03\
774    \x06\x02\x1a\x1a\n\x20Axis\x20tag\n\n\x0c\n\x05\x04\0\x02\0\x04\x12\x03\
775    \x06\x02\n\n\x0c\n\x05\x04\0\x02\0\x05\x12\x03\x06\x0b\x11\n\x0c\n\x05\
776    \x04\0\x02\0\x01\x12\x03\x06\x12\x15\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03\
777    \x06\x18\x19\n\xa1\x01\n\x04\x04\0\x02\x01\x12\x03\x0b\x02#\x1a\x93\x01\
778    \x20Display\x20name\x20for\x20axis,\x20e.g.\x20\"Optical\x20size\"\x20fo\
779    r\x20'opsz'\n\x20Like\x20'Name'\x20in\n\x20https://docs.microsoft.com/en\
780    -us/typography/opentype/spec/dvaraxistag_opsz\n\n\x0c\n\x05\x04\0\x02\
781    \x01\x04\x12\x03\x0b\x02\n\n\x0c\n\x05\x04\0\x02\x01\x05\x12\x03\x0b\x0b\
782    \x11\n\x0c\n\x05\x04\0\x02\x01\x01\x12\x03\x0b\x12\x1e\n\x0c\n\x05\x04\0\
783    \x02\x01\x03\x12\x03\x0b!\"\n'\n\x04\x04\0\x02\x02\x12\x03\x0e\x02\x1f\
784    \x1a\x1a\x20Lower\x20bound\x20for\x20the\x20axis\n\n\x0c\n\x05\x04\0\x02\
785    \x02\x04\x12\x03\x0e\x02\n\n\x0c\n\x05\x04\0\x02\x02\x05\x12\x03\x0e\x0b\
786    \x10\n\x0c\n\x05\x04\0\x02\x02\x01\x12\x03\x0e\x11\x1a\n\x0c\n\x05\x04\0\
787    \x02\x02\x03\x12\x03\x0e\x1d\x1e\nF\n\x04\x04\0\x02\x03\x12\x03\x11\x02#\
788    \x1a9\x20The\x20default\x20position\x20to\x20use\x20and\x20to\x20prefer\
789    \x20for\x20exemplars\n\n\x0c\n\x05\x04\0\x02\x03\x04\x12\x03\x11\x02\n\n\
790    \x0c\n\x05\x04\0\x02\x03\x05\x12\x03\x11\x0b\x10\n\x0c\n\x05\x04\0\x02\
791    \x03\x01\x12\x03\x11\x11\x1e\n\x0c\n\x05\x04\0\x02\x03\x03\x12\x03\x11!\
792    \"\n'\n\x04\x04\0\x02\x04\x12\x03\x14\x02\x1f\x1a\x1a\x20Upper\x20bound\
793    \x20for\x20the\x20axis\n\n\x0c\n\x05\x04\0\x02\x04\x04\x12\x03\x14\x02\n\
794    \n\x0c\n\x05\x04\0\x02\x04\x05\x12\x03\x14\x0b\x10\n\x0c\n\x05\x04\0\x02\
795    \x04\x01\x12\x03\x14\x11\x1a\n\x0c\n\x05\x04\0\x02\x04\x03\x12\x03\x14\
796    \x1d\x1e\nF\n\x04\x04\0\x02\x05\x12\x03\x17\x02\x1f\x1a9\x20Input\x20val\
797    ues\x20for\x20this\x20axis\x20must\x20aligned\x20to\x2010^precision\n\n\
798    \x0c\n\x05\x04\0\x02\x05\x04\x12\x03\x17\x02\n\n\x0c\n\x05\x04\0\x02\x05\
799    \x05\x12\x03\x17\x0b\x10\n\x0c\n\x05\x04\0\x02\x05\x01\x12\x03\x17\x11\
800    \x1a\n\x0c\n\x05\x04\0\x02\x05\x03\x12\x03\x17\x1d\x1e\n0\n\x04\x04\0\
801    \x02\x06\x12\x03\x1a\x02&\x1a#\x20Fallback\x20positions\x20along\x20the\
802    \x20axis\n\n\x0c\n\x05\x04\0\x02\x06\x04\x12\x03\x1a\x02\n\n\x0c\n\x05\
803    \x04\0\x02\x06\x06\x12\x03\x1a\x0b\x18\n\x0c\n\x05\x04\0\x02\x06\x01\x12\
804    \x03\x1a\x19!\n\x0c\n\x05\x04\0\x02\x06\x03\x12\x03\x1a$%\n*\n\x04\x04\0\
805    \x02\x07\x12\x03\x1d\x02\"\x1a\x1d\x20Short\x20descriptive\x20paragraph\
806    \n\n\x0c\n\x05\x04\0\x02\x07\x04\x12\x03\x1d\x02\n\n\x0c\n\x05\x04\0\x02\
807    \x07\x05\x12\x03\x1d\x0b\x11\n\x0c\n\x05\x04\0\x02\x07\x01\x12\x03\x1d\
808    \x12\x1d\n\x0c\n\x05\x04\0\x02\x07\x03\x12\x03\x1d\x20!\n\xa5\x01\n\x04\
809    \x04\0\x02\x08\x12\x03!\x02\"\x1a\x97\x01\x20Whether\x20only\x20the\x20f\
810    allback\x20positions\x20should\x20be\x20used,\x20for\x20example,\x20an\
811    \x20axis\n\x20might\x20have\x20only\x20three\x20relevant\x20positions:\
812    \x20the\x20min,\x20the\x20middle,\x20and\x20the\x20max.\n\n\x0c\n\x05\
813    \x04\0\x02\x08\x04\x12\x03!\x02\n\n\x0c\n\x05\x04\0\x02\x08\x05\x12\x03!\
814    \x0b\x0f\n\x0c\n\x05\x04\0\x02\x08\x01\x12\x03!\x10\x1d\n\x0c\n\x05\x04\
815    \0\x02\x08\x03\x12\x03!\x20!\n\n\n\x02\x04\x01\x12\x04&\0*\x01\n\n\n\x03\
816    \x04\x01\x01\x12\x03&\x08\x15\n\x0b\n\x04\x04\x01\x02\0\x12\x03'\x02\x1b\
817    \n\x0c\n\x05\x04\x01\x02\0\x04\x12\x03'\x02\n\n\x0c\n\x05\x04\x01\x02\0\
818    \x05\x12\x03'\x0b\x11\n\x0c\n\x05\x04\x01\x02\0\x01\x12\x03'\x12\x16\n\
819    \x0c\n\x05\x04\x01\x02\0\x03\x12\x03'\x19\x1a\n\x0b\n\x04\x04\x01\x02\
820    \x01\x12\x03(\x02\x1b\n\x0c\n\x05\x04\x01\x02\x01\x04\x12\x03(\x02\n\n\
821    \x0c\n\x05\x04\x01\x02\x01\x05\x12\x03(\x0b\x10\n\x0c\n\x05\x04\x01\x02\
822    \x01\x01\x12\x03(\x11\x16\n\x0c\n\x05\x04\x01\x02\x01\x03\x12\x03(\x19\
823    \x1a\n\x0b\n\x04\x04\x01\x02\x02\x12\x03)\x02#\n\x0c\n\x05\x04\x01\x02\
824    \x02\x04\x12\x03)\x02\n\n\x0c\n\x05\x04\x01\x02\x02\x05\x12\x03)\x0b\x11\
825    \n\x0c\n\x05\x04\x01\x02\x02\x01\x12\x03)\x12\x1e\n\x0c\n\x05\x04\x01\
826    \x02\x02\x03\x12\x03)!\"\
827";
828
829/// `FileDescriptorProto` object which was a source for this generated file
830fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
831    static file_descriptor_proto_lazy: ::protobuf::rt::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::Lazy::new();
832    file_descriptor_proto_lazy.get(|| {
833        ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
834    })
835}
836
837/// `FileDescriptor` object which allows dynamic access to files
838pub fn file_descriptor() -> &'static ::protobuf::reflect::FileDescriptor {
839    static generated_file_descriptor_lazy: ::protobuf::rt::Lazy<::protobuf::reflect::GeneratedFileDescriptor> = ::protobuf::rt::Lazy::new();
840    static file_descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::FileDescriptor> = ::protobuf::rt::Lazy::new();
841    file_descriptor.get(|| {
842        let generated_file_descriptor = generated_file_descriptor_lazy.get(|| {
843            let mut deps = ::std::vec::Vec::with_capacity(0);
844            let mut messages = ::std::vec::Vec::with_capacity(2);
845            messages.push(AxisProto::generated_message_descriptor_data());
846            messages.push(FallbackProto::generated_message_descriptor_data());
847            let mut enums = ::std::vec::Vec::with_capacity(0);
848            ::protobuf::reflect::GeneratedFileDescriptor::new_generated(
849                file_descriptor_proto(),
850                deps,
851                messages,
852                enums,
853            )
854        });
855        ::protobuf::reflect::FileDescriptor::new_generated_2(generated_file_descriptor)
856    })
857}