grpcio_proto/proto/protobuf/testing/
stats.rs

1// This file is generated by rust-protobuf 2.8.2. Do not edit
2// @generated
3
4// https://github.com/Manishearth/rust-clippy/issues/702
5#![allow(unknown_lints)]
6#![allow(clippy::all)]
7
8#![cfg_attr(rustfmt, rustfmt_skip)]
9
10#![allow(box_pointers)]
11#![allow(dead_code)]
12#![allow(missing_docs)]
13#![allow(non_camel_case_types)]
14#![allow(non_snake_case)]
15#![allow(non_upper_case_globals)]
16#![allow(trivial_casts)]
17#![allow(unsafe_code)]
18#![allow(unused_imports)]
19#![allow(unused_results)]
20//! Generated file from `grpc/testing/stats.proto`
21
22use protobuf::Message as Message_imported_for_functions;
23use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
24
25/// Generated files are compatible only with the same version
26/// of protobuf runtime.
27
28#[derive(PartialEq,Clone,Default)]
29pub struct ServerStats {
30    // message fields
31    pub time_elapsed: f64,
32    pub time_user: f64,
33    pub time_system: f64,
34    pub total_cpu_time: u64,
35    pub idle_cpu_time: u64,
36    pub cq_poll_count: u64,
37    // special fields
38    pub unknown_fields: ::protobuf::UnknownFields,
39    pub cached_size: ::protobuf::CachedSize,
40}
41
42impl<'a> ::std::default::Default for &'a ServerStats {
43    fn default() -> &'a ServerStats {
44        <ServerStats as ::protobuf::Message>::default_instance()
45    }
46}
47
48impl ServerStats {
49    pub fn new() -> ServerStats {
50        ::std::default::Default::default()
51    }
52
53    // double time_elapsed = 1;
54
55
56    pub fn get_time_elapsed(&self) -> f64 {
57        self.time_elapsed
58    }
59    pub fn clear_time_elapsed(&mut self) {
60        self.time_elapsed = 0.;
61    }
62
63    // Param is passed by value, moved
64    pub fn set_time_elapsed(&mut self, v: f64) {
65        self.time_elapsed = v;
66    }
67
68    // double time_user = 2;
69
70
71    pub fn get_time_user(&self) -> f64 {
72        self.time_user
73    }
74    pub fn clear_time_user(&mut self) {
75        self.time_user = 0.;
76    }
77
78    // Param is passed by value, moved
79    pub fn set_time_user(&mut self, v: f64) {
80        self.time_user = v;
81    }
82
83    // double time_system = 3;
84
85
86    pub fn get_time_system(&self) -> f64 {
87        self.time_system
88    }
89    pub fn clear_time_system(&mut self) {
90        self.time_system = 0.;
91    }
92
93    // Param is passed by value, moved
94    pub fn set_time_system(&mut self, v: f64) {
95        self.time_system = v;
96    }
97
98    // uint64 total_cpu_time = 4;
99
100
101    pub fn get_total_cpu_time(&self) -> u64 {
102        self.total_cpu_time
103    }
104    pub fn clear_total_cpu_time(&mut self) {
105        self.total_cpu_time = 0;
106    }
107
108    // Param is passed by value, moved
109    pub fn set_total_cpu_time(&mut self, v: u64) {
110        self.total_cpu_time = v;
111    }
112
113    // uint64 idle_cpu_time = 5;
114
115
116    pub fn get_idle_cpu_time(&self) -> u64 {
117        self.idle_cpu_time
118    }
119    pub fn clear_idle_cpu_time(&mut self) {
120        self.idle_cpu_time = 0;
121    }
122
123    // Param is passed by value, moved
124    pub fn set_idle_cpu_time(&mut self, v: u64) {
125        self.idle_cpu_time = v;
126    }
127
128    // uint64 cq_poll_count = 6;
129
130
131    pub fn get_cq_poll_count(&self) -> u64 {
132        self.cq_poll_count
133    }
134    pub fn clear_cq_poll_count(&mut self) {
135        self.cq_poll_count = 0;
136    }
137
138    // Param is passed by value, moved
139    pub fn set_cq_poll_count(&mut self, v: u64) {
140        self.cq_poll_count = v;
141    }
142}
143
144impl ::protobuf::Message for ServerStats {
145    fn is_initialized(&self) -> bool {
146        true
147    }
148
149    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
150        while !is.eof()? {
151            let (field_number, wire_type) = is.read_tag_unpack()?;
152            match field_number {
153                1 => {
154                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
155                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
156                    }
157                    let tmp = is.read_double()?;
158                    self.time_elapsed = tmp;
159                },
160                2 => {
161                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
162                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
163                    }
164                    let tmp = is.read_double()?;
165                    self.time_user = tmp;
166                },
167                3 => {
168                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
169                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
170                    }
171                    let tmp = is.read_double()?;
172                    self.time_system = tmp;
173                },
174                4 => {
175                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
176                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
177                    }
178                    let tmp = is.read_uint64()?;
179                    self.total_cpu_time = tmp;
180                },
181                5 => {
182                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
183                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
184                    }
185                    let tmp = is.read_uint64()?;
186                    self.idle_cpu_time = tmp;
187                },
188                6 => {
189                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
190                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
191                    }
192                    let tmp = is.read_uint64()?;
193                    self.cq_poll_count = tmp;
194                },
195                _ => {
196                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
197                },
198            };
199        }
200        ::std::result::Result::Ok(())
201    }
202
203    // Compute sizes of nested messages
204    #[allow(unused_variables)]
205    fn compute_size(&self) -> u32 {
206        let mut my_size = 0;
207        if self.time_elapsed != 0. {
208            my_size += 9;
209        }
210        if self.time_user != 0. {
211            my_size += 9;
212        }
213        if self.time_system != 0. {
214            my_size += 9;
215        }
216        if self.total_cpu_time != 0 {
217            my_size += ::protobuf::rt::value_size(4, self.total_cpu_time, ::protobuf::wire_format::WireTypeVarint);
218        }
219        if self.idle_cpu_time != 0 {
220            my_size += ::protobuf::rt::value_size(5, self.idle_cpu_time, ::protobuf::wire_format::WireTypeVarint);
221        }
222        if self.cq_poll_count != 0 {
223            my_size += ::protobuf::rt::value_size(6, self.cq_poll_count, ::protobuf::wire_format::WireTypeVarint);
224        }
225        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
226        self.cached_size.set(my_size);
227        my_size
228    }
229
230    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
231        if self.time_elapsed != 0. {
232            os.write_double(1, self.time_elapsed)?;
233        }
234        if self.time_user != 0. {
235            os.write_double(2, self.time_user)?;
236        }
237        if self.time_system != 0. {
238            os.write_double(3, self.time_system)?;
239        }
240        if self.total_cpu_time != 0 {
241            os.write_uint64(4, self.total_cpu_time)?;
242        }
243        if self.idle_cpu_time != 0 {
244            os.write_uint64(5, self.idle_cpu_time)?;
245        }
246        if self.cq_poll_count != 0 {
247            os.write_uint64(6, self.cq_poll_count)?;
248        }
249        os.write_unknown_fields(self.get_unknown_fields())?;
250        ::std::result::Result::Ok(())
251    }
252
253    fn get_cached_size(&self) -> u32 {
254        self.cached_size.get()
255    }
256
257    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
258        &self.unknown_fields
259    }
260
261    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
262        &mut self.unknown_fields
263    }
264
265    fn as_any(&self) -> &dyn (::std::any::Any) {
266        self as &dyn (::std::any::Any)
267    }
268    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
269        self as &mut dyn (::std::any::Any)
270    }
271    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
272        self
273    }
274
275    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
276        Self::descriptor_static()
277    }
278
279    fn new() -> ServerStats {
280        ServerStats::new()
281    }
282
283    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
284        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
285            lock: ::protobuf::lazy::ONCE_INIT,
286            ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
287        };
288        unsafe {
289            descriptor.get(|| {
290                let mut fields = ::std::vec::Vec::new();
291                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
292                    "time_elapsed",
293                    |m: &ServerStats| { &m.time_elapsed },
294                    |m: &mut ServerStats| { &mut m.time_elapsed },
295                ));
296                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
297                    "time_user",
298                    |m: &ServerStats| { &m.time_user },
299                    |m: &mut ServerStats| { &mut m.time_user },
300                ));
301                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
302                    "time_system",
303                    |m: &ServerStats| { &m.time_system },
304                    |m: &mut ServerStats| { &mut m.time_system },
305                ));
306                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>(
307                    "total_cpu_time",
308                    |m: &ServerStats| { &m.total_cpu_time },
309                    |m: &mut ServerStats| { &mut m.total_cpu_time },
310                ));
311                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>(
312                    "idle_cpu_time",
313                    |m: &ServerStats| { &m.idle_cpu_time },
314                    |m: &mut ServerStats| { &mut m.idle_cpu_time },
315                ));
316                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>(
317                    "cq_poll_count",
318                    |m: &ServerStats| { &m.cq_poll_count },
319                    |m: &mut ServerStats| { &mut m.cq_poll_count },
320                ));
321                ::protobuf::reflect::MessageDescriptor::new::<ServerStats>(
322                    "ServerStats",
323                    fields,
324                    file_descriptor_proto()
325                )
326            })
327        }
328    }
329
330    fn default_instance() -> &'static ServerStats {
331        static mut instance: ::protobuf::lazy::Lazy<ServerStats> = ::protobuf::lazy::Lazy {
332            lock: ::protobuf::lazy::ONCE_INIT,
333            ptr: 0 as *const ServerStats,
334        };
335        unsafe {
336            instance.get(ServerStats::new)
337        }
338    }
339}
340
341impl ::protobuf::Clear for ServerStats {
342    fn clear(&mut self) {
343        self.time_elapsed = 0.;
344        self.time_user = 0.;
345        self.time_system = 0.;
346        self.total_cpu_time = 0;
347        self.idle_cpu_time = 0;
348        self.cq_poll_count = 0;
349        self.unknown_fields.clear();
350    }
351}
352
353impl ::std::fmt::Debug for ServerStats {
354    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
355        ::protobuf::text_format::fmt(self, f)
356    }
357}
358
359impl ::protobuf::reflect::ProtobufValue for ServerStats {
360    fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
361        ::protobuf::reflect::ProtobufValueRef::Message(self)
362    }
363}
364
365#[derive(PartialEq,Clone,Default)]
366pub struct HistogramParams {
367    // message fields
368    pub resolution: f64,
369    pub max_possible: f64,
370    // special fields
371    pub unknown_fields: ::protobuf::UnknownFields,
372    pub cached_size: ::protobuf::CachedSize,
373}
374
375impl<'a> ::std::default::Default for &'a HistogramParams {
376    fn default() -> &'a HistogramParams {
377        <HistogramParams as ::protobuf::Message>::default_instance()
378    }
379}
380
381impl HistogramParams {
382    pub fn new() -> HistogramParams {
383        ::std::default::Default::default()
384    }
385
386    // double resolution = 1;
387
388
389    pub fn get_resolution(&self) -> f64 {
390        self.resolution
391    }
392    pub fn clear_resolution(&mut self) {
393        self.resolution = 0.;
394    }
395
396    // Param is passed by value, moved
397    pub fn set_resolution(&mut self, v: f64) {
398        self.resolution = v;
399    }
400
401    // double max_possible = 2;
402
403
404    pub fn get_max_possible(&self) -> f64 {
405        self.max_possible
406    }
407    pub fn clear_max_possible(&mut self) {
408        self.max_possible = 0.;
409    }
410
411    // Param is passed by value, moved
412    pub fn set_max_possible(&mut self, v: f64) {
413        self.max_possible = v;
414    }
415}
416
417impl ::protobuf::Message for HistogramParams {
418    fn is_initialized(&self) -> bool {
419        true
420    }
421
422    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
423        while !is.eof()? {
424            let (field_number, wire_type) = is.read_tag_unpack()?;
425            match field_number {
426                1 => {
427                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
428                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
429                    }
430                    let tmp = is.read_double()?;
431                    self.resolution = tmp;
432                },
433                2 => {
434                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
435                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
436                    }
437                    let tmp = is.read_double()?;
438                    self.max_possible = tmp;
439                },
440                _ => {
441                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
442                },
443            };
444        }
445        ::std::result::Result::Ok(())
446    }
447
448    // Compute sizes of nested messages
449    #[allow(unused_variables)]
450    fn compute_size(&self) -> u32 {
451        let mut my_size = 0;
452        if self.resolution != 0. {
453            my_size += 9;
454        }
455        if self.max_possible != 0. {
456            my_size += 9;
457        }
458        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
459        self.cached_size.set(my_size);
460        my_size
461    }
462
463    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
464        if self.resolution != 0. {
465            os.write_double(1, self.resolution)?;
466        }
467        if self.max_possible != 0. {
468            os.write_double(2, self.max_possible)?;
469        }
470        os.write_unknown_fields(self.get_unknown_fields())?;
471        ::std::result::Result::Ok(())
472    }
473
474    fn get_cached_size(&self) -> u32 {
475        self.cached_size.get()
476    }
477
478    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
479        &self.unknown_fields
480    }
481
482    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
483        &mut self.unknown_fields
484    }
485
486    fn as_any(&self) -> &dyn (::std::any::Any) {
487        self as &dyn (::std::any::Any)
488    }
489    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
490        self as &mut dyn (::std::any::Any)
491    }
492    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
493        self
494    }
495
496    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
497        Self::descriptor_static()
498    }
499
500    fn new() -> HistogramParams {
501        HistogramParams::new()
502    }
503
504    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
505        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
506            lock: ::protobuf::lazy::ONCE_INIT,
507            ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
508        };
509        unsafe {
510            descriptor.get(|| {
511                let mut fields = ::std::vec::Vec::new();
512                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
513                    "resolution",
514                    |m: &HistogramParams| { &m.resolution },
515                    |m: &mut HistogramParams| { &mut m.resolution },
516                ));
517                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
518                    "max_possible",
519                    |m: &HistogramParams| { &m.max_possible },
520                    |m: &mut HistogramParams| { &mut m.max_possible },
521                ));
522                ::protobuf::reflect::MessageDescriptor::new::<HistogramParams>(
523                    "HistogramParams",
524                    fields,
525                    file_descriptor_proto()
526                )
527            })
528        }
529    }
530
531    fn default_instance() -> &'static HistogramParams {
532        static mut instance: ::protobuf::lazy::Lazy<HistogramParams> = ::protobuf::lazy::Lazy {
533            lock: ::protobuf::lazy::ONCE_INIT,
534            ptr: 0 as *const HistogramParams,
535        };
536        unsafe {
537            instance.get(HistogramParams::new)
538        }
539    }
540}
541
542impl ::protobuf::Clear for HistogramParams {
543    fn clear(&mut self) {
544        self.resolution = 0.;
545        self.max_possible = 0.;
546        self.unknown_fields.clear();
547    }
548}
549
550impl ::std::fmt::Debug for HistogramParams {
551    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
552        ::protobuf::text_format::fmt(self, f)
553    }
554}
555
556impl ::protobuf::reflect::ProtobufValue for HistogramParams {
557    fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
558        ::protobuf::reflect::ProtobufValueRef::Message(self)
559    }
560}
561
562#[derive(PartialEq,Clone,Default)]
563pub struct HistogramData {
564    // message fields
565    pub bucket: ::std::vec::Vec<u32>,
566    pub min_seen: f64,
567    pub max_seen: f64,
568    pub sum: f64,
569    pub sum_of_squares: f64,
570    pub count: f64,
571    // special fields
572    pub unknown_fields: ::protobuf::UnknownFields,
573    pub cached_size: ::protobuf::CachedSize,
574}
575
576impl<'a> ::std::default::Default for &'a HistogramData {
577    fn default() -> &'a HistogramData {
578        <HistogramData as ::protobuf::Message>::default_instance()
579    }
580}
581
582impl HistogramData {
583    pub fn new() -> HistogramData {
584        ::std::default::Default::default()
585    }
586
587    // repeated uint32 bucket = 1;
588
589
590    pub fn get_bucket(&self) -> &[u32] {
591        &self.bucket
592    }
593    pub fn clear_bucket(&mut self) {
594        self.bucket.clear();
595    }
596
597    // Param is passed by value, moved
598    pub fn set_bucket(&mut self, v: ::std::vec::Vec<u32>) {
599        self.bucket = v;
600    }
601
602    // Mutable pointer to the field.
603    pub fn mut_bucket(&mut self) -> &mut ::std::vec::Vec<u32> {
604        &mut self.bucket
605    }
606
607    // Take field
608    pub fn take_bucket(&mut self) -> ::std::vec::Vec<u32> {
609        ::std::mem::replace(&mut self.bucket, ::std::vec::Vec::new())
610    }
611
612    // double min_seen = 2;
613
614
615    pub fn get_min_seen(&self) -> f64 {
616        self.min_seen
617    }
618    pub fn clear_min_seen(&mut self) {
619        self.min_seen = 0.;
620    }
621
622    // Param is passed by value, moved
623    pub fn set_min_seen(&mut self, v: f64) {
624        self.min_seen = v;
625    }
626
627    // double max_seen = 3;
628
629
630    pub fn get_max_seen(&self) -> f64 {
631        self.max_seen
632    }
633    pub fn clear_max_seen(&mut self) {
634        self.max_seen = 0.;
635    }
636
637    // Param is passed by value, moved
638    pub fn set_max_seen(&mut self, v: f64) {
639        self.max_seen = v;
640    }
641
642    // double sum = 4;
643
644
645    pub fn get_sum(&self) -> f64 {
646        self.sum
647    }
648    pub fn clear_sum(&mut self) {
649        self.sum = 0.;
650    }
651
652    // Param is passed by value, moved
653    pub fn set_sum(&mut self, v: f64) {
654        self.sum = v;
655    }
656
657    // double sum_of_squares = 5;
658
659
660    pub fn get_sum_of_squares(&self) -> f64 {
661        self.sum_of_squares
662    }
663    pub fn clear_sum_of_squares(&mut self) {
664        self.sum_of_squares = 0.;
665    }
666
667    // Param is passed by value, moved
668    pub fn set_sum_of_squares(&mut self, v: f64) {
669        self.sum_of_squares = v;
670    }
671
672    // double count = 6;
673
674
675    pub fn get_count(&self) -> f64 {
676        self.count
677    }
678    pub fn clear_count(&mut self) {
679        self.count = 0.;
680    }
681
682    // Param is passed by value, moved
683    pub fn set_count(&mut self, v: f64) {
684        self.count = v;
685    }
686}
687
688impl ::protobuf::Message for HistogramData {
689    fn is_initialized(&self) -> bool {
690        true
691    }
692
693    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
694        while !is.eof()? {
695            let (field_number, wire_type) = is.read_tag_unpack()?;
696            match field_number {
697                1 => {
698                    ::protobuf::rt::read_repeated_uint32_into(wire_type, is, &mut self.bucket)?;
699                },
700                2 => {
701                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
702                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
703                    }
704                    let tmp = is.read_double()?;
705                    self.min_seen = tmp;
706                },
707                3 => {
708                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
709                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
710                    }
711                    let tmp = is.read_double()?;
712                    self.max_seen = tmp;
713                },
714                4 => {
715                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
716                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
717                    }
718                    let tmp = is.read_double()?;
719                    self.sum = tmp;
720                },
721                5 => {
722                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
723                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
724                    }
725                    let tmp = is.read_double()?;
726                    self.sum_of_squares = tmp;
727                },
728                6 => {
729                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
730                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
731                    }
732                    let tmp = is.read_double()?;
733                    self.count = tmp;
734                },
735                _ => {
736                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
737                },
738            };
739        }
740        ::std::result::Result::Ok(())
741    }
742
743    // Compute sizes of nested messages
744    #[allow(unused_variables)]
745    fn compute_size(&self) -> u32 {
746        let mut my_size = 0;
747        for value in &self.bucket {
748            my_size += ::protobuf::rt::value_size(1, *value, ::protobuf::wire_format::WireTypeVarint);
749        };
750        if self.min_seen != 0. {
751            my_size += 9;
752        }
753        if self.max_seen != 0. {
754            my_size += 9;
755        }
756        if self.sum != 0. {
757            my_size += 9;
758        }
759        if self.sum_of_squares != 0. {
760            my_size += 9;
761        }
762        if self.count != 0. {
763            my_size += 9;
764        }
765        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
766        self.cached_size.set(my_size);
767        my_size
768    }
769
770    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
771        for v in &self.bucket {
772            os.write_uint32(1, *v)?;
773        };
774        if self.min_seen != 0. {
775            os.write_double(2, self.min_seen)?;
776        }
777        if self.max_seen != 0. {
778            os.write_double(3, self.max_seen)?;
779        }
780        if self.sum != 0. {
781            os.write_double(4, self.sum)?;
782        }
783        if self.sum_of_squares != 0. {
784            os.write_double(5, self.sum_of_squares)?;
785        }
786        if self.count != 0. {
787            os.write_double(6, self.count)?;
788        }
789        os.write_unknown_fields(self.get_unknown_fields())?;
790        ::std::result::Result::Ok(())
791    }
792
793    fn get_cached_size(&self) -> u32 {
794        self.cached_size.get()
795    }
796
797    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
798        &self.unknown_fields
799    }
800
801    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
802        &mut self.unknown_fields
803    }
804
805    fn as_any(&self) -> &dyn (::std::any::Any) {
806        self as &dyn (::std::any::Any)
807    }
808    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
809        self as &mut dyn (::std::any::Any)
810    }
811    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
812        self
813    }
814
815    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
816        Self::descriptor_static()
817    }
818
819    fn new() -> HistogramData {
820        HistogramData::new()
821    }
822
823    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
824        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
825            lock: ::protobuf::lazy::ONCE_INIT,
826            ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
827        };
828        unsafe {
829            descriptor.get(|| {
830                let mut fields = ::std::vec::Vec::new();
831                fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
832                    "bucket",
833                    |m: &HistogramData| { &m.bucket },
834                    |m: &mut HistogramData| { &mut m.bucket },
835                ));
836                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
837                    "min_seen",
838                    |m: &HistogramData| { &m.min_seen },
839                    |m: &mut HistogramData| { &mut m.min_seen },
840                ));
841                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
842                    "max_seen",
843                    |m: &HistogramData| { &m.max_seen },
844                    |m: &mut HistogramData| { &mut m.max_seen },
845                ));
846                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
847                    "sum",
848                    |m: &HistogramData| { &m.sum },
849                    |m: &mut HistogramData| { &mut m.sum },
850                ));
851                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
852                    "sum_of_squares",
853                    |m: &HistogramData| { &m.sum_of_squares },
854                    |m: &mut HistogramData| { &mut m.sum_of_squares },
855                ));
856                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
857                    "count",
858                    |m: &HistogramData| { &m.count },
859                    |m: &mut HistogramData| { &mut m.count },
860                ));
861                ::protobuf::reflect::MessageDescriptor::new::<HistogramData>(
862                    "HistogramData",
863                    fields,
864                    file_descriptor_proto()
865                )
866            })
867        }
868    }
869
870    fn default_instance() -> &'static HistogramData {
871        static mut instance: ::protobuf::lazy::Lazy<HistogramData> = ::protobuf::lazy::Lazy {
872            lock: ::protobuf::lazy::ONCE_INIT,
873            ptr: 0 as *const HistogramData,
874        };
875        unsafe {
876            instance.get(HistogramData::new)
877        }
878    }
879}
880
881impl ::protobuf::Clear for HistogramData {
882    fn clear(&mut self) {
883        self.bucket.clear();
884        self.min_seen = 0.;
885        self.max_seen = 0.;
886        self.sum = 0.;
887        self.sum_of_squares = 0.;
888        self.count = 0.;
889        self.unknown_fields.clear();
890    }
891}
892
893impl ::std::fmt::Debug for HistogramData {
894    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
895        ::protobuf::text_format::fmt(self, f)
896    }
897}
898
899impl ::protobuf::reflect::ProtobufValue for HistogramData {
900    fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
901        ::protobuf::reflect::ProtobufValueRef::Message(self)
902    }
903}
904
905#[derive(PartialEq,Clone,Default)]
906pub struct RequestResultCount {
907    // message fields
908    pub status_code: i32,
909    pub count: i64,
910    // special fields
911    pub unknown_fields: ::protobuf::UnknownFields,
912    pub cached_size: ::protobuf::CachedSize,
913}
914
915impl<'a> ::std::default::Default for &'a RequestResultCount {
916    fn default() -> &'a RequestResultCount {
917        <RequestResultCount as ::protobuf::Message>::default_instance()
918    }
919}
920
921impl RequestResultCount {
922    pub fn new() -> RequestResultCount {
923        ::std::default::Default::default()
924    }
925
926    // int32 status_code = 1;
927
928
929    pub fn get_status_code(&self) -> i32 {
930        self.status_code
931    }
932    pub fn clear_status_code(&mut self) {
933        self.status_code = 0;
934    }
935
936    // Param is passed by value, moved
937    pub fn set_status_code(&mut self, v: i32) {
938        self.status_code = v;
939    }
940
941    // int64 count = 2;
942
943
944    pub fn get_count(&self) -> i64 {
945        self.count
946    }
947    pub fn clear_count(&mut self) {
948        self.count = 0;
949    }
950
951    // Param is passed by value, moved
952    pub fn set_count(&mut self, v: i64) {
953        self.count = v;
954    }
955}
956
957impl ::protobuf::Message for RequestResultCount {
958    fn is_initialized(&self) -> bool {
959        true
960    }
961
962    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
963        while !is.eof()? {
964            let (field_number, wire_type) = is.read_tag_unpack()?;
965            match field_number {
966                1 => {
967                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
968                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
969                    }
970                    let tmp = is.read_int32()?;
971                    self.status_code = tmp;
972                },
973                2 => {
974                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
975                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
976                    }
977                    let tmp = is.read_int64()?;
978                    self.count = tmp;
979                },
980                _ => {
981                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
982                },
983            };
984        }
985        ::std::result::Result::Ok(())
986    }
987
988    // Compute sizes of nested messages
989    #[allow(unused_variables)]
990    fn compute_size(&self) -> u32 {
991        let mut my_size = 0;
992        if self.status_code != 0 {
993            my_size += ::protobuf::rt::value_size(1, self.status_code, ::protobuf::wire_format::WireTypeVarint);
994        }
995        if self.count != 0 {
996            my_size += ::protobuf::rt::value_size(2, self.count, ::protobuf::wire_format::WireTypeVarint);
997        }
998        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
999        self.cached_size.set(my_size);
1000        my_size
1001    }
1002
1003    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1004        if self.status_code != 0 {
1005            os.write_int32(1, self.status_code)?;
1006        }
1007        if self.count != 0 {
1008            os.write_int64(2, self.count)?;
1009        }
1010        os.write_unknown_fields(self.get_unknown_fields())?;
1011        ::std::result::Result::Ok(())
1012    }
1013
1014    fn get_cached_size(&self) -> u32 {
1015        self.cached_size.get()
1016    }
1017
1018    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1019        &self.unknown_fields
1020    }
1021
1022    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1023        &mut self.unknown_fields
1024    }
1025
1026    fn as_any(&self) -> &dyn (::std::any::Any) {
1027        self as &dyn (::std::any::Any)
1028    }
1029    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1030        self as &mut dyn (::std::any::Any)
1031    }
1032    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1033        self
1034    }
1035
1036    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1037        Self::descriptor_static()
1038    }
1039
1040    fn new() -> RequestResultCount {
1041        RequestResultCount::new()
1042    }
1043
1044    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1045        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
1046            lock: ::protobuf::lazy::ONCE_INIT,
1047            ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
1048        };
1049        unsafe {
1050            descriptor.get(|| {
1051                let mut fields = ::std::vec::Vec::new();
1052                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
1053                    "status_code",
1054                    |m: &RequestResultCount| { &m.status_code },
1055                    |m: &mut RequestResultCount| { &mut m.status_code },
1056                ));
1057                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
1058                    "count",
1059                    |m: &RequestResultCount| { &m.count },
1060                    |m: &mut RequestResultCount| { &mut m.count },
1061                ));
1062                ::protobuf::reflect::MessageDescriptor::new::<RequestResultCount>(
1063                    "RequestResultCount",
1064                    fields,
1065                    file_descriptor_proto()
1066                )
1067            })
1068        }
1069    }
1070
1071    fn default_instance() -> &'static RequestResultCount {
1072        static mut instance: ::protobuf::lazy::Lazy<RequestResultCount> = ::protobuf::lazy::Lazy {
1073            lock: ::protobuf::lazy::ONCE_INIT,
1074            ptr: 0 as *const RequestResultCount,
1075        };
1076        unsafe {
1077            instance.get(RequestResultCount::new)
1078        }
1079    }
1080}
1081
1082impl ::protobuf::Clear for RequestResultCount {
1083    fn clear(&mut self) {
1084        self.status_code = 0;
1085        self.count = 0;
1086        self.unknown_fields.clear();
1087    }
1088}
1089
1090impl ::std::fmt::Debug for RequestResultCount {
1091    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1092        ::protobuf::text_format::fmt(self, f)
1093    }
1094}
1095
1096impl ::protobuf::reflect::ProtobufValue for RequestResultCount {
1097    fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
1098        ::protobuf::reflect::ProtobufValueRef::Message(self)
1099    }
1100}
1101
1102#[derive(PartialEq,Clone,Default)]
1103pub struct ClientStats {
1104    // message fields
1105    pub latencies: ::protobuf::SingularPtrField<HistogramData>,
1106    pub time_elapsed: f64,
1107    pub time_user: f64,
1108    pub time_system: f64,
1109    pub request_results: ::protobuf::RepeatedField<RequestResultCount>,
1110    pub cq_poll_count: u64,
1111    // special fields
1112    pub unknown_fields: ::protobuf::UnknownFields,
1113    pub cached_size: ::protobuf::CachedSize,
1114}
1115
1116impl<'a> ::std::default::Default for &'a ClientStats {
1117    fn default() -> &'a ClientStats {
1118        <ClientStats as ::protobuf::Message>::default_instance()
1119    }
1120}
1121
1122impl ClientStats {
1123    pub fn new() -> ClientStats {
1124        ::std::default::Default::default()
1125    }
1126
1127    // .grpc.testing.HistogramData latencies = 1;
1128
1129
1130    pub fn get_latencies(&self) -> &HistogramData {
1131        self.latencies.as_ref().unwrap_or_else(|| HistogramData::default_instance())
1132    }
1133    pub fn clear_latencies(&mut self) {
1134        self.latencies.clear();
1135    }
1136
1137    pub fn has_latencies(&self) -> bool {
1138        self.latencies.is_some()
1139    }
1140
1141    // Param is passed by value, moved
1142    pub fn set_latencies(&mut self, v: HistogramData) {
1143        self.latencies = ::protobuf::SingularPtrField::some(v);
1144    }
1145
1146    // Mutable pointer to the field.
1147    // If field is not initialized, it is initialized with default value first.
1148    pub fn mut_latencies(&mut self) -> &mut HistogramData {
1149        if self.latencies.is_none() {
1150            self.latencies.set_default();
1151        }
1152        self.latencies.as_mut().unwrap()
1153    }
1154
1155    // Take field
1156    pub fn take_latencies(&mut self) -> HistogramData {
1157        self.latencies.take().unwrap_or_else(|| HistogramData::new())
1158    }
1159
1160    // double time_elapsed = 2;
1161
1162
1163    pub fn get_time_elapsed(&self) -> f64 {
1164        self.time_elapsed
1165    }
1166    pub fn clear_time_elapsed(&mut self) {
1167        self.time_elapsed = 0.;
1168    }
1169
1170    // Param is passed by value, moved
1171    pub fn set_time_elapsed(&mut self, v: f64) {
1172        self.time_elapsed = v;
1173    }
1174
1175    // double time_user = 3;
1176
1177
1178    pub fn get_time_user(&self) -> f64 {
1179        self.time_user
1180    }
1181    pub fn clear_time_user(&mut self) {
1182        self.time_user = 0.;
1183    }
1184
1185    // Param is passed by value, moved
1186    pub fn set_time_user(&mut self, v: f64) {
1187        self.time_user = v;
1188    }
1189
1190    // double time_system = 4;
1191
1192
1193    pub fn get_time_system(&self) -> f64 {
1194        self.time_system
1195    }
1196    pub fn clear_time_system(&mut self) {
1197        self.time_system = 0.;
1198    }
1199
1200    // Param is passed by value, moved
1201    pub fn set_time_system(&mut self, v: f64) {
1202        self.time_system = v;
1203    }
1204
1205    // repeated .grpc.testing.RequestResultCount request_results = 5;
1206
1207
1208    pub fn get_request_results(&self) -> &[RequestResultCount] {
1209        &self.request_results
1210    }
1211    pub fn clear_request_results(&mut self) {
1212        self.request_results.clear();
1213    }
1214
1215    // Param is passed by value, moved
1216    pub fn set_request_results(&mut self, v: ::protobuf::RepeatedField<RequestResultCount>) {
1217        self.request_results = v;
1218    }
1219
1220    // Mutable pointer to the field.
1221    pub fn mut_request_results(&mut self) -> &mut ::protobuf::RepeatedField<RequestResultCount> {
1222        &mut self.request_results
1223    }
1224
1225    // Take field
1226    pub fn take_request_results(&mut self) -> ::protobuf::RepeatedField<RequestResultCount> {
1227        ::std::mem::replace(&mut self.request_results, ::protobuf::RepeatedField::new())
1228    }
1229
1230    // uint64 cq_poll_count = 6;
1231
1232
1233    pub fn get_cq_poll_count(&self) -> u64 {
1234        self.cq_poll_count
1235    }
1236    pub fn clear_cq_poll_count(&mut self) {
1237        self.cq_poll_count = 0;
1238    }
1239
1240    // Param is passed by value, moved
1241    pub fn set_cq_poll_count(&mut self, v: u64) {
1242        self.cq_poll_count = v;
1243    }
1244}
1245
1246impl ::protobuf::Message for ClientStats {
1247    fn is_initialized(&self) -> bool {
1248        for v in &self.latencies {
1249            if !v.is_initialized() {
1250                return false;
1251            }
1252        };
1253        for v in &self.request_results {
1254            if !v.is_initialized() {
1255                return false;
1256            }
1257        };
1258        true
1259    }
1260
1261    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1262        while !is.eof()? {
1263            let (field_number, wire_type) = is.read_tag_unpack()?;
1264            match field_number {
1265                1 => {
1266                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.latencies)?;
1267                },
1268                2 => {
1269                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
1270                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1271                    }
1272                    let tmp = is.read_double()?;
1273                    self.time_elapsed = tmp;
1274                },
1275                3 => {
1276                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
1277                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1278                    }
1279                    let tmp = is.read_double()?;
1280                    self.time_user = tmp;
1281                },
1282                4 => {
1283                    if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
1284                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1285                    }
1286                    let tmp = is.read_double()?;
1287                    self.time_system = tmp;
1288                },
1289                5 => {
1290                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.request_results)?;
1291                },
1292                6 => {
1293                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
1294                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1295                    }
1296                    let tmp = is.read_uint64()?;
1297                    self.cq_poll_count = tmp;
1298                },
1299                _ => {
1300                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1301                },
1302            };
1303        }
1304        ::std::result::Result::Ok(())
1305    }
1306
1307    // Compute sizes of nested messages
1308    #[allow(unused_variables)]
1309    fn compute_size(&self) -> u32 {
1310        let mut my_size = 0;
1311        if let Some(ref v) = self.latencies.as_ref() {
1312            let len = v.compute_size();
1313            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1314        }
1315        if self.time_elapsed != 0. {
1316            my_size += 9;
1317        }
1318        if self.time_user != 0. {
1319            my_size += 9;
1320        }
1321        if self.time_system != 0. {
1322            my_size += 9;
1323        }
1324        for value in &self.request_results {
1325            let len = value.compute_size();
1326            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1327        };
1328        if self.cq_poll_count != 0 {
1329            my_size += ::protobuf::rt::value_size(6, self.cq_poll_count, ::protobuf::wire_format::WireTypeVarint);
1330        }
1331        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1332        self.cached_size.set(my_size);
1333        my_size
1334    }
1335
1336    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1337        if let Some(ref v) = self.latencies.as_ref() {
1338            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1339            os.write_raw_varint32(v.get_cached_size())?;
1340            v.write_to_with_cached_sizes(os)?;
1341        }
1342        if self.time_elapsed != 0. {
1343            os.write_double(2, self.time_elapsed)?;
1344        }
1345        if self.time_user != 0. {
1346            os.write_double(3, self.time_user)?;
1347        }
1348        if self.time_system != 0. {
1349            os.write_double(4, self.time_system)?;
1350        }
1351        for v in &self.request_results {
1352            os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1353            os.write_raw_varint32(v.get_cached_size())?;
1354            v.write_to_with_cached_sizes(os)?;
1355        };
1356        if self.cq_poll_count != 0 {
1357            os.write_uint64(6, self.cq_poll_count)?;
1358        }
1359        os.write_unknown_fields(self.get_unknown_fields())?;
1360        ::std::result::Result::Ok(())
1361    }
1362
1363    fn get_cached_size(&self) -> u32 {
1364        self.cached_size.get()
1365    }
1366
1367    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1368        &self.unknown_fields
1369    }
1370
1371    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1372        &mut self.unknown_fields
1373    }
1374
1375    fn as_any(&self) -> &dyn (::std::any::Any) {
1376        self as &dyn (::std::any::Any)
1377    }
1378    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1379        self as &mut dyn (::std::any::Any)
1380    }
1381    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1382        self
1383    }
1384
1385    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1386        Self::descriptor_static()
1387    }
1388
1389    fn new() -> ClientStats {
1390        ClientStats::new()
1391    }
1392
1393    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1394        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
1395            lock: ::protobuf::lazy::ONCE_INIT,
1396            ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
1397        };
1398        unsafe {
1399            descriptor.get(|| {
1400                let mut fields = ::std::vec::Vec::new();
1401                fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<HistogramData>>(
1402                    "latencies",
1403                    |m: &ClientStats| { &m.latencies },
1404                    |m: &mut ClientStats| { &mut m.latencies },
1405                ));
1406                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
1407                    "time_elapsed",
1408                    |m: &ClientStats| { &m.time_elapsed },
1409                    |m: &mut ClientStats| { &mut m.time_elapsed },
1410                ));
1411                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
1412                    "time_user",
1413                    |m: &ClientStats| { &m.time_user },
1414                    |m: &mut ClientStats| { &mut m.time_user },
1415                ));
1416                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeDouble>(
1417                    "time_system",
1418                    |m: &ClientStats| { &m.time_system },
1419                    |m: &mut ClientStats| { &mut m.time_system },
1420                ));
1421                fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<RequestResultCount>>(
1422                    "request_results",
1423                    |m: &ClientStats| { &m.request_results },
1424                    |m: &mut ClientStats| { &mut m.request_results },
1425                ));
1426                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>(
1427                    "cq_poll_count",
1428                    |m: &ClientStats| { &m.cq_poll_count },
1429                    |m: &mut ClientStats| { &mut m.cq_poll_count },
1430                ));
1431                ::protobuf::reflect::MessageDescriptor::new::<ClientStats>(
1432                    "ClientStats",
1433                    fields,
1434                    file_descriptor_proto()
1435                )
1436            })
1437        }
1438    }
1439
1440    fn default_instance() -> &'static ClientStats {
1441        static mut instance: ::protobuf::lazy::Lazy<ClientStats> = ::protobuf::lazy::Lazy {
1442            lock: ::protobuf::lazy::ONCE_INIT,
1443            ptr: 0 as *const ClientStats,
1444        };
1445        unsafe {
1446            instance.get(ClientStats::new)
1447        }
1448    }
1449}
1450
1451impl ::protobuf::Clear for ClientStats {
1452    fn clear(&mut self) {
1453        self.latencies.clear();
1454        self.time_elapsed = 0.;
1455        self.time_user = 0.;
1456        self.time_system = 0.;
1457        self.request_results.clear();
1458        self.cq_poll_count = 0;
1459        self.unknown_fields.clear();
1460    }
1461}
1462
1463impl ::std::fmt::Debug for ClientStats {
1464    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1465        ::protobuf::text_format::fmt(self, f)
1466    }
1467}
1468
1469impl ::protobuf::reflect::ProtobufValue for ClientStats {
1470    fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
1471        ::protobuf::reflect::ProtobufValueRef::Message(self)
1472    }
1473}
1474
1475static file_descriptor_proto_data: &'static [u8] = b"\
1476    \n\x18grpc/testing/stats.proto\x12\x0cgrpc.testing\"\xdc\x01\n\x0bServer\
1477    Stats\x12!\n\x0ctime_elapsed\x18\x01\x20\x01(\x01R\x0btimeElapsed\x12\
1478    \x1b\n\ttime_user\x18\x02\x20\x01(\x01R\x08timeUser\x12\x1f\n\x0btime_sy\
1479    stem\x18\x03\x20\x01(\x01R\ntimeSystem\x12$\n\x0etotal_cpu_time\x18\x04\
1480    \x20\x01(\x04R\x0ctotalCpuTime\x12\"\n\ridle_cpu_time\x18\x05\x20\x01(\
1481    \x04R\x0bidleCpuTime\x12\"\n\rcq_poll_count\x18\x06\x20\x01(\x04R\x0bcqP\
1482    ollCount\"T\n\x0fHistogramParams\x12\x1e\n\nresolution\x18\x01\x20\x01(\
1483    \x01R\nresolution\x12!\n\x0cmax_possible\x18\x02\x20\x01(\x01R\x0bmaxPos\
1484    sible\"\xab\x01\n\rHistogramData\x12\x16\n\x06bucket\x18\x01\x20\x03(\rR\
1485    \x06bucket\x12\x19\n\x08min_seen\x18\x02\x20\x01(\x01R\x07minSeen\x12\
1486    \x19\n\x08max_seen\x18\x03\x20\x01(\x01R\x07maxSeen\x12\x10\n\x03sum\x18\
1487    \x04\x20\x01(\x01R\x03sum\x12$\n\x0esum_of_squares\x18\x05\x20\x01(\x01R\
1488    \x0csumOfSquares\x12\x14\n\x05count\x18\x06\x20\x01(\x01R\x05count\"K\n\
1489    \x12RequestResultCount\x12\x1f\n\x0bstatus_code\x18\x01\x20\x01(\x05R\ns\
1490    tatusCode\x12\x14\n\x05count\x18\x02\x20\x01(\x03R\x05count\"\x98\x02\n\
1491    \x0bClientStats\x129\n\tlatencies\x18\x01\x20\x01(\x0b2\x1b.grpc.testing\
1492    .HistogramDataR\tlatencies\x12!\n\x0ctime_elapsed\x18\x02\x20\x01(\x01R\
1493    \x0btimeElapsed\x12\x1b\n\ttime_user\x18\x03\x20\x01(\x01R\x08timeUser\
1494    \x12\x1f\n\x0btime_system\x18\x04\x20\x01(\x01R\ntimeSystem\x12I\n\x0fre\
1495    quest_results\x18\x05\x20\x03(\x0b2\x20.grpc.testing.RequestResultCountR\
1496    \x0erequestResults\x12\"\n\rcq_poll_count\x18\x06\x20\x01(\x04R\x0bcqPol\
1497    lCountb\x06proto3\
1498";
1499
1500static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy {
1501    lock: ::protobuf::lazy::ONCE_INIT,
1502    ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto,
1503};
1504
1505fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
1506    ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap()
1507}
1508
1509pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
1510    unsafe {
1511        file_descriptor_proto_lazy.get(|| {
1512            parse_descriptor_proto()
1513        })
1514    }
1515}