wedpr_s_protos/generated/
scd.rs

1// Copyright 2020 WeDPR Lab Project Authors. Licensed under Apache-2.0.
2
3// This file is generated by rust-protobuf 2.22.1. Do not edit
4// @generated
5
6// https://github.com/rust-lang/rust-clippy/issues/702
7#![allow(unknown_lints)]
8#![allow(clippy::all)]
9
10#![allow(unused_attributes)]
11#![cfg_attr(rustfmt, rustfmt::skip)]
12
13#![allow(box_pointers)]
14#![allow(dead_code)]
15#![allow(missing_docs)]
16#![allow(non_camel_case_types)]
17#![allow(non_snake_case)]
18#![allow(non_upper_case_globals)]
19#![allow(trivial_casts)]
20#![allow(unused_imports)]
21#![allow(unused_results)]
22//! Generated file from `solution/scd/scd.proto`
23
24/// Generated files are compatible only with the same version
25/// of protobuf runtime.
26// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_22_1;
27
28#[derive(PartialEq,Clone,Default)]
29pub struct CertificateSchema {
30    // message fields
31    pub attribute_name: ::protobuf::RepeatedField<::std::string::String>,
32    // special fields
33    pub unknown_fields: ::protobuf::UnknownFields,
34    pub cached_size: ::protobuf::CachedSize,
35}
36
37impl<'a> ::std::default::Default for &'a CertificateSchema {
38    fn default() -> &'a CertificateSchema {
39        <CertificateSchema as ::protobuf::Message>::default_instance()
40    }
41}
42
43impl CertificateSchema {
44    pub fn new() -> CertificateSchema {
45        ::std::default::Default::default()
46    }
47
48    // repeated string attribute_name = 1;
49
50
51    pub fn get_attribute_name(&self) -> &[::std::string::String] {
52        &self.attribute_name
53    }
54    pub fn clear_attribute_name(&mut self) {
55        self.attribute_name.clear();
56    }
57
58    // Param is passed by value, moved
59    pub fn set_attribute_name(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
60        self.attribute_name = v;
61    }
62
63    // Mutable pointer to the field.
64    pub fn mut_attribute_name(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
65        &mut self.attribute_name
66    }
67
68    // Take field
69    pub fn take_attribute_name(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
70        ::std::mem::replace(&mut self.attribute_name, ::protobuf::RepeatedField::new())
71    }
72}
73
74impl ::protobuf::Message for CertificateSchema {
75    fn is_initialized(&self) -> bool {
76        true
77    }
78
79    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
80        while !is.eof()? {
81            let (field_number, wire_type) = is.read_tag_unpack()?;
82            match field_number {
83                1 => {
84                    ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.attribute_name)?;
85                },
86                _ => {
87                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
88                },
89            };
90        }
91        ::std::result::Result::Ok(())
92    }
93
94    // Compute sizes of nested messages
95    #[allow(unused_variables)]
96    fn compute_size(&self) -> u32 {
97        let mut my_size = 0;
98        for value in &self.attribute_name {
99            my_size += ::protobuf::rt::string_size(1, &value);
100        };
101        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
102        self.cached_size.set(my_size);
103        my_size
104    }
105
106    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
107        for v in &self.attribute_name {
108            os.write_string(1, &v)?;
109        };
110        os.write_unknown_fields(self.get_unknown_fields())?;
111        ::std::result::Result::Ok(())
112    }
113
114    fn get_cached_size(&self) -> u32 {
115        self.cached_size.get()
116    }
117
118    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
119        &self.unknown_fields
120    }
121
122    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
123        &mut self.unknown_fields
124    }
125
126    fn as_any(&self) -> &dyn (::std::any::Any) {
127        self as &dyn (::std::any::Any)
128    }
129    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
130        self as &mut dyn (::std::any::Any)
131    }
132    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
133        self
134    }
135
136    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
137        Self::descriptor_static()
138    }
139
140    fn new() -> CertificateSchema {
141        CertificateSchema::new()
142    }
143
144    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
145        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
146        descriptor.get(|| {
147            let mut fields = ::std::vec::Vec::new();
148            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
149                "attribute_name",
150                |m: &CertificateSchema| { &m.attribute_name },
151                |m: &mut CertificateSchema| { &mut m.attribute_name },
152            ));
153            ::protobuf::reflect::MessageDescriptor::new_pb_name::<CertificateSchema>(
154                "CertificateSchema",
155                fields,
156                file_descriptor_proto()
157            )
158        })
159    }
160
161    fn default_instance() -> &'static CertificateSchema {
162        static instance: ::protobuf::rt::LazyV2<CertificateSchema> = ::protobuf::rt::LazyV2::INIT;
163        instance.get(CertificateSchema::new)
164    }
165}
166
167impl ::protobuf::Clear for CertificateSchema {
168    fn clear(&mut self) {
169        self.attribute_name.clear();
170        self.unknown_fields.clear();
171    }
172}
173
174impl ::std::fmt::Debug for CertificateSchema {
175    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
176        ::protobuf::text_format::fmt(self, f)
177    }
178}
179
180impl ::protobuf::reflect::ProtobufValue for CertificateSchema {
181    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
182        ::protobuf::reflect::ReflectValueRef::Message(self)
183    }
184}
185
186#[derive(PartialEq,Clone,Default)]
187pub struct StringToStringPair {
188    // message fields
189    pub key: ::std::string::String,
190    pub value: ::std::string::String,
191    // special fields
192    pub unknown_fields: ::protobuf::UnknownFields,
193    pub cached_size: ::protobuf::CachedSize,
194}
195
196impl<'a> ::std::default::Default for &'a StringToStringPair {
197    fn default() -> &'a StringToStringPair {
198        <StringToStringPair as ::protobuf::Message>::default_instance()
199    }
200}
201
202impl StringToStringPair {
203    pub fn new() -> StringToStringPair {
204        ::std::default::Default::default()
205    }
206
207    // string key = 1;
208
209
210    pub fn get_key(&self) -> &str {
211        &self.key
212    }
213    pub fn clear_key(&mut self) {
214        self.key.clear();
215    }
216
217    // Param is passed by value, moved
218    pub fn set_key(&mut self, v: ::std::string::String) {
219        self.key = v;
220    }
221
222    // Mutable pointer to the field.
223    // If field is not initialized, it is initialized with default value first.
224    pub fn mut_key(&mut self) -> &mut ::std::string::String {
225        &mut self.key
226    }
227
228    // Take field
229    pub fn take_key(&mut self) -> ::std::string::String {
230        ::std::mem::replace(&mut self.key, ::std::string::String::new())
231    }
232
233    // string value = 2;
234
235
236    pub fn get_value(&self) -> &str {
237        &self.value
238    }
239    pub fn clear_value(&mut self) {
240        self.value.clear();
241    }
242
243    // Param is passed by value, moved
244    pub fn set_value(&mut self, v: ::std::string::String) {
245        self.value = 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_value(&mut self) -> &mut ::std::string::String {
251        &mut self.value
252    }
253
254    // Take field
255    pub fn take_value(&mut self) -> ::std::string::String {
256        ::std::mem::replace(&mut self.value, ::std::string::String::new())
257    }
258}
259
260impl ::protobuf::Message for StringToStringPair {
261    fn is_initialized(&self) -> bool {
262        true
263    }
264
265    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
266        while !is.eof()? {
267            let (field_number, wire_type) = is.read_tag_unpack()?;
268            match field_number {
269                1 => {
270                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.key)?;
271                },
272                2 => {
273                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.value)?;
274                },
275                _ => {
276                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
277                },
278            };
279        }
280        ::std::result::Result::Ok(())
281    }
282
283    // Compute sizes of nested messages
284    #[allow(unused_variables)]
285    fn compute_size(&self) -> u32 {
286        let mut my_size = 0;
287        if !self.key.is_empty() {
288            my_size += ::protobuf::rt::string_size(1, &self.key);
289        }
290        if !self.value.is_empty() {
291            my_size += ::protobuf::rt::string_size(2, &self.value);
292        }
293        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
294        self.cached_size.set(my_size);
295        my_size
296    }
297
298    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
299        if !self.key.is_empty() {
300            os.write_string(1, &self.key)?;
301        }
302        if !self.value.is_empty() {
303            os.write_string(2, &self.value)?;
304        }
305        os.write_unknown_fields(self.get_unknown_fields())?;
306        ::std::result::Result::Ok(())
307    }
308
309    fn get_cached_size(&self) -> u32 {
310        self.cached_size.get()
311    }
312
313    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
314        &self.unknown_fields
315    }
316
317    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
318        &mut self.unknown_fields
319    }
320
321    fn as_any(&self) -> &dyn (::std::any::Any) {
322        self as &dyn (::std::any::Any)
323    }
324    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
325        self as &mut dyn (::std::any::Any)
326    }
327    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
328        self
329    }
330
331    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
332        Self::descriptor_static()
333    }
334
335    fn new() -> StringToStringPair {
336        StringToStringPair::new()
337    }
338
339    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
340        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
341        descriptor.get(|| {
342            let mut fields = ::std::vec::Vec::new();
343            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
344                "key",
345                |m: &StringToStringPair| { &m.key },
346                |m: &mut StringToStringPair| { &mut m.key },
347            ));
348            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
349                "value",
350                |m: &StringToStringPair| { &m.value },
351                |m: &mut StringToStringPair| { &mut m.value },
352            ));
353            ::protobuf::reflect::MessageDescriptor::new_pb_name::<StringToStringPair>(
354                "StringToStringPair",
355                fields,
356                file_descriptor_proto()
357            )
358        })
359    }
360
361    fn default_instance() -> &'static StringToStringPair {
362        static instance: ::protobuf::rt::LazyV2<StringToStringPair> = ::protobuf::rt::LazyV2::INIT;
363        instance.get(StringToStringPair::new)
364    }
365}
366
367impl ::protobuf::Clear for StringToStringPair {
368    fn clear(&mut self) {
369        self.key.clear();
370        self.value.clear();
371        self.unknown_fields.clear();
372    }
373}
374
375impl ::std::fmt::Debug for StringToStringPair {
376    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
377        ::protobuf::text_format::fmt(self, f)
378    }
379}
380
381impl ::protobuf::reflect::ProtobufValue for StringToStringPair {
382    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
383        ::protobuf::reflect::ReflectValueRef::Message(self)
384    }
385}
386
387#[derive(PartialEq,Clone,Default)]
388pub struct CertificateTemplate {
389    // message fields
390    pub certificate_schema: ::protobuf::SingularPtrField<CertificateSchema>,
391    pub template_correctness_proof: ::std::string::String,
392    pub template_public_key: ::protobuf::SingularPtrField<TemplatePublicKey>,
393    // special fields
394    pub unknown_fields: ::protobuf::UnknownFields,
395    pub cached_size: ::protobuf::CachedSize,
396}
397
398impl<'a> ::std::default::Default for &'a CertificateTemplate {
399    fn default() -> &'a CertificateTemplate {
400        <CertificateTemplate as ::protobuf::Message>::default_instance()
401    }
402}
403
404impl CertificateTemplate {
405    pub fn new() -> CertificateTemplate {
406        ::std::default::Default::default()
407    }
408
409    // .com.webank.wedpr.scd.proto.CertificateSchema certificate_schema = 1;
410
411
412    pub fn get_certificate_schema(&self) -> &CertificateSchema {
413        self.certificate_schema.as_ref().unwrap_or_else(|| <CertificateSchema as ::protobuf::Message>::default_instance())
414    }
415    pub fn clear_certificate_schema(&mut self) {
416        self.certificate_schema.clear();
417    }
418
419    pub fn has_certificate_schema(&self) -> bool {
420        self.certificate_schema.is_some()
421    }
422
423    // Param is passed by value, moved
424    pub fn set_certificate_schema(&mut self, v: CertificateSchema) {
425        self.certificate_schema = ::protobuf::SingularPtrField::some(v);
426    }
427
428    // Mutable pointer to the field.
429    // If field is not initialized, it is initialized with default value first.
430    pub fn mut_certificate_schema(&mut self) -> &mut CertificateSchema {
431        if self.certificate_schema.is_none() {
432            self.certificate_schema.set_default();
433        }
434        self.certificate_schema.as_mut().unwrap()
435    }
436
437    // Take field
438    pub fn take_certificate_schema(&mut self) -> CertificateSchema {
439        self.certificate_schema.take().unwrap_or_else(|| CertificateSchema::new())
440    }
441
442    // string template_correctness_proof = 2;
443
444
445    pub fn get_template_correctness_proof(&self) -> &str {
446        &self.template_correctness_proof
447    }
448    pub fn clear_template_correctness_proof(&mut self) {
449        self.template_correctness_proof.clear();
450    }
451
452    // Param is passed by value, moved
453    pub fn set_template_correctness_proof(&mut self, v: ::std::string::String) {
454        self.template_correctness_proof = v;
455    }
456
457    // Mutable pointer to the field.
458    // If field is not initialized, it is initialized with default value first.
459    pub fn mut_template_correctness_proof(&mut self) -> &mut ::std::string::String {
460        &mut self.template_correctness_proof
461    }
462
463    // Take field
464    pub fn take_template_correctness_proof(&mut self) -> ::std::string::String {
465        ::std::mem::replace(&mut self.template_correctness_proof, ::std::string::String::new())
466    }
467
468    // .com.webank.wedpr.scd.proto.TemplatePublicKey template_public_key = 3;
469
470
471    pub fn get_template_public_key(&self) -> &TemplatePublicKey {
472        self.template_public_key.as_ref().unwrap_or_else(|| <TemplatePublicKey as ::protobuf::Message>::default_instance())
473    }
474    pub fn clear_template_public_key(&mut self) {
475        self.template_public_key.clear();
476    }
477
478    pub fn has_template_public_key(&self) -> bool {
479        self.template_public_key.is_some()
480    }
481
482    // Param is passed by value, moved
483    pub fn set_template_public_key(&mut self, v: TemplatePublicKey) {
484        self.template_public_key = ::protobuf::SingularPtrField::some(v);
485    }
486
487    // Mutable pointer to the field.
488    // If field is not initialized, it is initialized with default value first.
489    pub fn mut_template_public_key(&mut self) -> &mut TemplatePublicKey {
490        if self.template_public_key.is_none() {
491            self.template_public_key.set_default();
492        }
493        self.template_public_key.as_mut().unwrap()
494    }
495
496    // Take field
497    pub fn take_template_public_key(&mut self) -> TemplatePublicKey {
498        self.template_public_key.take().unwrap_or_else(|| TemplatePublicKey::new())
499    }
500}
501
502impl ::protobuf::Message for CertificateTemplate {
503    fn is_initialized(&self) -> bool {
504        for v in &self.certificate_schema {
505            if !v.is_initialized() {
506                return false;
507            }
508        };
509        for v in &self.template_public_key {
510            if !v.is_initialized() {
511                return false;
512            }
513        };
514        true
515    }
516
517    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
518        while !is.eof()? {
519            let (field_number, wire_type) = is.read_tag_unpack()?;
520            match field_number {
521                1 => {
522                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.certificate_schema)?;
523                },
524                2 => {
525                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.template_correctness_proof)?;
526                },
527                3 => {
528                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.template_public_key)?;
529                },
530                _ => {
531                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
532                },
533            };
534        }
535        ::std::result::Result::Ok(())
536    }
537
538    // Compute sizes of nested messages
539    #[allow(unused_variables)]
540    fn compute_size(&self) -> u32 {
541        let mut my_size = 0;
542        if let Some(ref v) = self.certificate_schema.as_ref() {
543            let len = v.compute_size();
544            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
545        }
546        if !self.template_correctness_proof.is_empty() {
547            my_size += ::protobuf::rt::string_size(2, &self.template_correctness_proof);
548        }
549        if let Some(ref v) = self.template_public_key.as_ref() {
550            let len = v.compute_size();
551            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
552        }
553        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
554        self.cached_size.set(my_size);
555        my_size
556    }
557
558    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
559        if let Some(ref v) = self.certificate_schema.as_ref() {
560            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
561            os.write_raw_varint32(v.get_cached_size())?;
562            v.write_to_with_cached_sizes(os)?;
563        }
564        if !self.template_correctness_proof.is_empty() {
565            os.write_string(2, &self.template_correctness_proof)?;
566        }
567        if let Some(ref v) = self.template_public_key.as_ref() {
568            os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
569            os.write_raw_varint32(v.get_cached_size())?;
570            v.write_to_with_cached_sizes(os)?;
571        }
572        os.write_unknown_fields(self.get_unknown_fields())?;
573        ::std::result::Result::Ok(())
574    }
575
576    fn get_cached_size(&self) -> u32 {
577        self.cached_size.get()
578    }
579
580    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
581        &self.unknown_fields
582    }
583
584    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
585        &mut self.unknown_fields
586    }
587
588    fn as_any(&self) -> &dyn (::std::any::Any) {
589        self as &dyn (::std::any::Any)
590    }
591    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
592        self as &mut dyn (::std::any::Any)
593    }
594    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
595        self
596    }
597
598    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
599        Self::descriptor_static()
600    }
601
602    fn new() -> CertificateTemplate {
603        CertificateTemplate::new()
604    }
605
606    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
607        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
608        descriptor.get(|| {
609            let mut fields = ::std::vec::Vec::new();
610            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<CertificateSchema>>(
611                "certificate_schema",
612                |m: &CertificateTemplate| { &m.certificate_schema },
613                |m: &mut CertificateTemplate| { &mut m.certificate_schema },
614            ));
615            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
616                "template_correctness_proof",
617                |m: &CertificateTemplate| { &m.template_correctness_proof },
618                |m: &mut CertificateTemplate| { &mut m.template_correctness_proof },
619            ));
620            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<TemplatePublicKey>>(
621                "template_public_key",
622                |m: &CertificateTemplate| { &m.template_public_key },
623                |m: &mut CertificateTemplate| { &mut m.template_public_key },
624            ));
625            ::protobuf::reflect::MessageDescriptor::new_pb_name::<CertificateTemplate>(
626                "CertificateTemplate",
627                fields,
628                file_descriptor_proto()
629            )
630        })
631    }
632
633    fn default_instance() -> &'static CertificateTemplate {
634        static instance: ::protobuf::rt::LazyV2<CertificateTemplate> = ::protobuf::rt::LazyV2::INIT;
635        instance.get(CertificateTemplate::new)
636    }
637}
638
639impl ::protobuf::Clear for CertificateTemplate {
640    fn clear(&mut self) {
641        self.certificate_schema.clear();
642        self.template_correctness_proof.clear();
643        self.template_public_key.clear();
644        self.unknown_fields.clear();
645    }
646}
647
648impl ::std::fmt::Debug for CertificateTemplate {
649    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
650        ::protobuf::text_format::fmt(self, f)
651    }
652}
653
654impl ::protobuf::reflect::ProtobufValue for CertificateTemplate {
655    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
656        ::protobuf::reflect::ReflectValueRef::Message(self)
657    }
658}
659
660#[derive(PartialEq,Clone,Default)]
661pub struct TemplatePublicKey {
662    // message fields
663    pub key: ::std::string::String,
664    // special fields
665    pub unknown_fields: ::protobuf::UnknownFields,
666    pub cached_size: ::protobuf::CachedSize,
667}
668
669impl<'a> ::std::default::Default for &'a TemplatePublicKey {
670    fn default() -> &'a TemplatePublicKey {
671        <TemplatePublicKey as ::protobuf::Message>::default_instance()
672    }
673}
674
675impl TemplatePublicKey {
676    pub fn new() -> TemplatePublicKey {
677        ::std::default::Default::default()
678    }
679
680    // string key = 1;
681
682
683    pub fn get_key(&self) -> &str {
684        &self.key
685    }
686    pub fn clear_key(&mut self) {
687        self.key.clear();
688    }
689
690    // Param is passed by value, moved
691    pub fn set_key(&mut self, v: ::std::string::String) {
692        self.key = v;
693    }
694
695    // Mutable pointer to the field.
696    // If field is not initialized, it is initialized with default value first.
697    pub fn mut_key(&mut self) -> &mut ::std::string::String {
698        &mut self.key
699    }
700
701    // Take field
702    pub fn take_key(&mut self) -> ::std::string::String {
703        ::std::mem::replace(&mut self.key, ::std::string::String::new())
704    }
705}
706
707impl ::protobuf::Message for TemplatePublicKey {
708    fn is_initialized(&self) -> bool {
709        true
710    }
711
712    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
713        while !is.eof()? {
714            let (field_number, wire_type) = is.read_tag_unpack()?;
715            match field_number {
716                1 => {
717                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.key)?;
718                },
719                _ => {
720                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
721                },
722            };
723        }
724        ::std::result::Result::Ok(())
725    }
726
727    // Compute sizes of nested messages
728    #[allow(unused_variables)]
729    fn compute_size(&self) -> u32 {
730        let mut my_size = 0;
731        if !self.key.is_empty() {
732            my_size += ::protobuf::rt::string_size(1, &self.key);
733        }
734        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
735        self.cached_size.set(my_size);
736        my_size
737    }
738
739    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
740        if !self.key.is_empty() {
741            os.write_string(1, &self.key)?;
742        }
743        os.write_unknown_fields(self.get_unknown_fields())?;
744        ::std::result::Result::Ok(())
745    }
746
747    fn get_cached_size(&self) -> u32 {
748        self.cached_size.get()
749    }
750
751    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
752        &self.unknown_fields
753    }
754
755    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
756        &mut self.unknown_fields
757    }
758
759    fn as_any(&self) -> &dyn (::std::any::Any) {
760        self as &dyn (::std::any::Any)
761    }
762    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
763        self as &mut dyn (::std::any::Any)
764    }
765    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
766        self
767    }
768
769    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
770        Self::descriptor_static()
771    }
772
773    fn new() -> TemplatePublicKey {
774        TemplatePublicKey::new()
775    }
776
777    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
778        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
779        descriptor.get(|| {
780            let mut fields = ::std::vec::Vec::new();
781            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
782                "key",
783                |m: &TemplatePublicKey| { &m.key },
784                |m: &mut TemplatePublicKey| { &mut m.key },
785            ));
786            ::protobuf::reflect::MessageDescriptor::new_pb_name::<TemplatePublicKey>(
787                "TemplatePublicKey",
788                fields,
789                file_descriptor_proto()
790            )
791        })
792    }
793
794    fn default_instance() -> &'static TemplatePublicKey {
795        static instance: ::protobuf::rt::LazyV2<TemplatePublicKey> = ::protobuf::rt::LazyV2::INIT;
796        instance.get(TemplatePublicKey::new)
797    }
798}
799
800impl ::protobuf::Clear for TemplatePublicKey {
801    fn clear(&mut self) {
802        self.key.clear();
803        self.unknown_fields.clear();
804    }
805}
806
807impl ::std::fmt::Debug for TemplatePublicKey {
808    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
809        ::protobuf::text_format::fmt(self, f)
810    }
811}
812
813impl ::protobuf::reflect::ProtobufValue for TemplatePublicKey {
814    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
815        ::protobuf::reflect::ReflectValueRef::Message(self)
816    }
817}
818
819#[derive(PartialEq,Clone,Default)]
820pub struct TemplatePrivateKey {
821    // message fields
822    pub key: ::std::string::String,
823    // special fields
824    pub unknown_fields: ::protobuf::UnknownFields,
825    pub cached_size: ::protobuf::CachedSize,
826}
827
828impl<'a> ::std::default::Default for &'a TemplatePrivateKey {
829    fn default() -> &'a TemplatePrivateKey {
830        <TemplatePrivateKey as ::protobuf::Message>::default_instance()
831    }
832}
833
834impl TemplatePrivateKey {
835    pub fn new() -> TemplatePrivateKey {
836        ::std::default::Default::default()
837    }
838
839    // string key = 1;
840
841
842    pub fn get_key(&self) -> &str {
843        &self.key
844    }
845    pub fn clear_key(&mut self) {
846        self.key.clear();
847    }
848
849    // Param is passed by value, moved
850    pub fn set_key(&mut self, v: ::std::string::String) {
851        self.key = v;
852    }
853
854    // Mutable pointer to the field.
855    // If field is not initialized, it is initialized with default value first.
856    pub fn mut_key(&mut self) -> &mut ::std::string::String {
857        &mut self.key
858    }
859
860    // Take field
861    pub fn take_key(&mut self) -> ::std::string::String {
862        ::std::mem::replace(&mut self.key, ::std::string::String::new())
863    }
864}
865
866impl ::protobuf::Message for TemplatePrivateKey {
867    fn is_initialized(&self) -> bool {
868        true
869    }
870
871    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
872        while !is.eof()? {
873            let (field_number, wire_type) = is.read_tag_unpack()?;
874            match field_number {
875                1 => {
876                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.key)?;
877                },
878                _ => {
879                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
880                },
881            };
882        }
883        ::std::result::Result::Ok(())
884    }
885
886    // Compute sizes of nested messages
887    #[allow(unused_variables)]
888    fn compute_size(&self) -> u32 {
889        let mut my_size = 0;
890        if !self.key.is_empty() {
891            my_size += ::protobuf::rt::string_size(1, &self.key);
892        }
893        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
894        self.cached_size.set(my_size);
895        my_size
896    }
897
898    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
899        if !self.key.is_empty() {
900            os.write_string(1, &self.key)?;
901        }
902        os.write_unknown_fields(self.get_unknown_fields())?;
903        ::std::result::Result::Ok(())
904    }
905
906    fn get_cached_size(&self) -> u32 {
907        self.cached_size.get()
908    }
909
910    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
911        &self.unknown_fields
912    }
913
914    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
915        &mut self.unknown_fields
916    }
917
918    fn as_any(&self) -> &dyn (::std::any::Any) {
919        self as &dyn (::std::any::Any)
920    }
921    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
922        self as &mut dyn (::std::any::Any)
923    }
924    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
925        self
926    }
927
928    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
929        Self::descriptor_static()
930    }
931
932    fn new() -> TemplatePrivateKey {
933        TemplatePrivateKey::new()
934    }
935
936    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
937        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
938        descriptor.get(|| {
939            let mut fields = ::std::vec::Vec::new();
940            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
941                "key",
942                |m: &TemplatePrivateKey| { &m.key },
943                |m: &mut TemplatePrivateKey| { &mut m.key },
944            ));
945            ::protobuf::reflect::MessageDescriptor::new_pb_name::<TemplatePrivateKey>(
946                "TemplatePrivateKey",
947                fields,
948                file_descriptor_proto()
949            )
950        })
951    }
952
953    fn default_instance() -> &'static TemplatePrivateKey {
954        static instance: ::protobuf::rt::LazyV2<TemplatePrivateKey> = ::protobuf::rt::LazyV2::INIT;
955        instance.get(TemplatePrivateKey::new)
956    }
957}
958
959impl ::protobuf::Clear for TemplatePrivateKey {
960    fn clear(&mut self) {
961        self.key.clear();
962        self.unknown_fields.clear();
963    }
964}
965
966impl ::std::fmt::Debug for TemplatePrivateKey {
967    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
968        ::protobuf::text_format::fmt(self, f)
969    }
970}
971
972impl ::protobuf::reflect::ProtobufValue for TemplatePrivateKey {
973    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
974        ::protobuf::reflect::ReflectValueRef::Message(self)
975    }
976}
977
978#[derive(PartialEq,Clone,Default)]
979pub struct AttributeDict {
980    // message fields
981    pub pair: ::protobuf::RepeatedField<StringToStringPair>,
982    // special fields
983    pub unknown_fields: ::protobuf::UnknownFields,
984    pub cached_size: ::protobuf::CachedSize,
985}
986
987impl<'a> ::std::default::Default for &'a AttributeDict {
988    fn default() -> &'a AttributeDict {
989        <AttributeDict as ::protobuf::Message>::default_instance()
990    }
991}
992
993impl AttributeDict {
994    pub fn new() -> AttributeDict {
995        ::std::default::Default::default()
996    }
997
998    // repeated .com.webank.wedpr.scd.proto.StringToStringPair pair = 1;
999
1000
1001    pub fn get_pair(&self) -> &[StringToStringPair] {
1002        &self.pair
1003    }
1004    pub fn clear_pair(&mut self) {
1005        self.pair.clear();
1006    }
1007
1008    // Param is passed by value, moved
1009    pub fn set_pair(&mut self, v: ::protobuf::RepeatedField<StringToStringPair>) {
1010        self.pair = v;
1011    }
1012
1013    // Mutable pointer to the field.
1014    pub fn mut_pair(&mut self) -> &mut ::protobuf::RepeatedField<StringToStringPair> {
1015        &mut self.pair
1016    }
1017
1018    // Take field
1019    pub fn take_pair(&mut self) -> ::protobuf::RepeatedField<StringToStringPair> {
1020        ::std::mem::replace(&mut self.pair, ::protobuf::RepeatedField::new())
1021    }
1022}
1023
1024impl ::protobuf::Message for AttributeDict {
1025    fn is_initialized(&self) -> bool {
1026        for v in &self.pair {
1027            if !v.is_initialized() {
1028                return false;
1029            }
1030        };
1031        true
1032    }
1033
1034    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1035        while !is.eof()? {
1036            let (field_number, wire_type) = is.read_tag_unpack()?;
1037            match field_number {
1038                1 => {
1039                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.pair)?;
1040                },
1041                _ => {
1042                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1043                },
1044            };
1045        }
1046        ::std::result::Result::Ok(())
1047    }
1048
1049    // Compute sizes of nested messages
1050    #[allow(unused_variables)]
1051    fn compute_size(&self) -> u32 {
1052        let mut my_size = 0;
1053        for value in &self.pair {
1054            let len = value.compute_size();
1055            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1056        };
1057        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1058        self.cached_size.set(my_size);
1059        my_size
1060    }
1061
1062    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1063        for v in &self.pair {
1064            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1065            os.write_raw_varint32(v.get_cached_size())?;
1066            v.write_to_with_cached_sizes(os)?;
1067        };
1068        os.write_unknown_fields(self.get_unknown_fields())?;
1069        ::std::result::Result::Ok(())
1070    }
1071
1072    fn get_cached_size(&self) -> u32 {
1073        self.cached_size.get()
1074    }
1075
1076    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1077        &self.unknown_fields
1078    }
1079
1080    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1081        &mut self.unknown_fields
1082    }
1083
1084    fn as_any(&self) -> &dyn (::std::any::Any) {
1085        self as &dyn (::std::any::Any)
1086    }
1087    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1088        self as &mut dyn (::std::any::Any)
1089    }
1090    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1091        self
1092    }
1093
1094    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1095        Self::descriptor_static()
1096    }
1097
1098    fn new() -> AttributeDict {
1099        AttributeDict::new()
1100    }
1101
1102    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1103        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1104        descriptor.get(|| {
1105            let mut fields = ::std::vec::Vec::new();
1106            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<StringToStringPair>>(
1107                "pair",
1108                |m: &AttributeDict| { &m.pair },
1109                |m: &mut AttributeDict| { &mut m.pair },
1110            ));
1111            ::protobuf::reflect::MessageDescriptor::new_pb_name::<AttributeDict>(
1112                "AttributeDict",
1113                fields,
1114                file_descriptor_proto()
1115            )
1116        })
1117    }
1118
1119    fn default_instance() -> &'static AttributeDict {
1120        static instance: ::protobuf::rt::LazyV2<AttributeDict> = ::protobuf::rt::LazyV2::INIT;
1121        instance.get(AttributeDict::new)
1122    }
1123}
1124
1125impl ::protobuf::Clear for AttributeDict {
1126    fn clear(&mut self) {
1127        self.pair.clear();
1128        self.unknown_fields.clear();
1129    }
1130}
1131
1132impl ::std::fmt::Debug for AttributeDict {
1133    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1134        ::protobuf::text_format::fmt(self, f)
1135    }
1136}
1137
1138impl ::protobuf::reflect::ProtobufValue for AttributeDict {
1139    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1140        ::protobuf::reflect::ReflectValueRef::Message(self)
1141    }
1142}
1143
1144#[derive(PartialEq,Clone,Default)]
1145pub struct BlindedCertificateSecret {
1146    // message fields
1147    pub blinded_certificate_secrets: ::std::string::String,
1148    pub blinded_certificate_secrets_correctness_proof: ::std::string::String,
1149    // special fields
1150    pub unknown_fields: ::protobuf::UnknownFields,
1151    pub cached_size: ::protobuf::CachedSize,
1152}
1153
1154impl<'a> ::std::default::Default for &'a BlindedCertificateSecret {
1155    fn default() -> &'a BlindedCertificateSecret {
1156        <BlindedCertificateSecret as ::protobuf::Message>::default_instance()
1157    }
1158}
1159
1160impl BlindedCertificateSecret {
1161    pub fn new() -> BlindedCertificateSecret {
1162        ::std::default::Default::default()
1163    }
1164
1165    // string blinded_certificate_secrets = 1;
1166
1167
1168    pub fn get_blinded_certificate_secrets(&self) -> &str {
1169        &self.blinded_certificate_secrets
1170    }
1171    pub fn clear_blinded_certificate_secrets(&mut self) {
1172        self.blinded_certificate_secrets.clear();
1173    }
1174
1175    // Param is passed by value, moved
1176    pub fn set_blinded_certificate_secrets(&mut self, v: ::std::string::String) {
1177        self.blinded_certificate_secrets = v;
1178    }
1179
1180    // Mutable pointer to the field.
1181    // If field is not initialized, it is initialized with default value first.
1182    pub fn mut_blinded_certificate_secrets(&mut self) -> &mut ::std::string::String {
1183        &mut self.blinded_certificate_secrets
1184    }
1185
1186    // Take field
1187    pub fn take_blinded_certificate_secrets(&mut self) -> ::std::string::String {
1188        ::std::mem::replace(&mut self.blinded_certificate_secrets, ::std::string::String::new())
1189    }
1190
1191    // string blinded_certificate_secrets_correctness_proof = 2;
1192
1193
1194    pub fn get_blinded_certificate_secrets_correctness_proof(&self) -> &str {
1195        &self.blinded_certificate_secrets_correctness_proof
1196    }
1197    pub fn clear_blinded_certificate_secrets_correctness_proof(&mut self) {
1198        self.blinded_certificate_secrets_correctness_proof.clear();
1199    }
1200
1201    // Param is passed by value, moved
1202    pub fn set_blinded_certificate_secrets_correctness_proof(&mut self, v: ::std::string::String) {
1203        self.blinded_certificate_secrets_correctness_proof = v;
1204    }
1205
1206    // Mutable pointer to the field.
1207    // If field is not initialized, it is initialized with default value first.
1208    pub fn mut_blinded_certificate_secrets_correctness_proof(&mut self) -> &mut ::std::string::String {
1209        &mut self.blinded_certificate_secrets_correctness_proof
1210    }
1211
1212    // Take field
1213    pub fn take_blinded_certificate_secrets_correctness_proof(&mut self) -> ::std::string::String {
1214        ::std::mem::replace(&mut self.blinded_certificate_secrets_correctness_proof, ::std::string::String::new())
1215    }
1216}
1217
1218impl ::protobuf::Message for BlindedCertificateSecret {
1219    fn is_initialized(&self) -> bool {
1220        true
1221    }
1222
1223    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1224        while !is.eof()? {
1225            let (field_number, wire_type) = is.read_tag_unpack()?;
1226            match field_number {
1227                1 => {
1228                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.blinded_certificate_secrets)?;
1229                },
1230                2 => {
1231                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.blinded_certificate_secrets_correctness_proof)?;
1232                },
1233                _ => {
1234                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1235                },
1236            };
1237        }
1238        ::std::result::Result::Ok(())
1239    }
1240
1241    // Compute sizes of nested messages
1242    #[allow(unused_variables)]
1243    fn compute_size(&self) -> u32 {
1244        let mut my_size = 0;
1245        if !self.blinded_certificate_secrets.is_empty() {
1246            my_size += ::protobuf::rt::string_size(1, &self.blinded_certificate_secrets);
1247        }
1248        if !self.blinded_certificate_secrets_correctness_proof.is_empty() {
1249            my_size += ::protobuf::rt::string_size(2, &self.blinded_certificate_secrets_correctness_proof);
1250        }
1251        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1252        self.cached_size.set(my_size);
1253        my_size
1254    }
1255
1256    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1257        if !self.blinded_certificate_secrets.is_empty() {
1258            os.write_string(1, &self.blinded_certificate_secrets)?;
1259        }
1260        if !self.blinded_certificate_secrets_correctness_proof.is_empty() {
1261            os.write_string(2, &self.blinded_certificate_secrets_correctness_proof)?;
1262        }
1263        os.write_unknown_fields(self.get_unknown_fields())?;
1264        ::std::result::Result::Ok(())
1265    }
1266
1267    fn get_cached_size(&self) -> u32 {
1268        self.cached_size.get()
1269    }
1270
1271    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1272        &self.unknown_fields
1273    }
1274
1275    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1276        &mut self.unknown_fields
1277    }
1278
1279    fn as_any(&self) -> &dyn (::std::any::Any) {
1280        self as &dyn (::std::any::Any)
1281    }
1282    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1283        self as &mut dyn (::std::any::Any)
1284    }
1285    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1286        self
1287    }
1288
1289    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1290        Self::descriptor_static()
1291    }
1292
1293    fn new() -> BlindedCertificateSecret {
1294        BlindedCertificateSecret::new()
1295    }
1296
1297    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1298        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1299        descriptor.get(|| {
1300            let mut fields = ::std::vec::Vec::new();
1301            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1302                "blinded_certificate_secrets",
1303                |m: &BlindedCertificateSecret| { &m.blinded_certificate_secrets },
1304                |m: &mut BlindedCertificateSecret| { &mut m.blinded_certificate_secrets },
1305            ));
1306            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1307                "blinded_certificate_secrets_correctness_proof",
1308                |m: &BlindedCertificateSecret| { &m.blinded_certificate_secrets_correctness_proof },
1309                |m: &mut BlindedCertificateSecret| { &mut m.blinded_certificate_secrets_correctness_proof },
1310            ));
1311            ::protobuf::reflect::MessageDescriptor::new_pb_name::<BlindedCertificateSecret>(
1312                "BlindedCertificateSecret",
1313                fields,
1314                file_descriptor_proto()
1315            )
1316        })
1317    }
1318
1319    fn default_instance() -> &'static BlindedCertificateSecret {
1320        static instance: ::protobuf::rt::LazyV2<BlindedCertificateSecret> = ::protobuf::rt::LazyV2::INIT;
1321        instance.get(BlindedCertificateSecret::new)
1322    }
1323}
1324
1325impl ::protobuf::Clear for BlindedCertificateSecret {
1326    fn clear(&mut self) {
1327        self.blinded_certificate_secrets.clear();
1328        self.blinded_certificate_secrets_correctness_proof.clear();
1329        self.unknown_fields.clear();
1330    }
1331}
1332
1333impl ::std::fmt::Debug for BlindedCertificateSecret {
1334    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1335        ::protobuf::text_format::fmt(self, f)
1336    }
1337}
1338
1339impl ::protobuf::reflect::ProtobufValue for BlindedCertificateSecret {
1340    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1341        ::protobuf::reflect::ReflectValueRef::Message(self)
1342    }
1343}
1344
1345#[derive(PartialEq,Clone,Default)]
1346pub struct CertificateSignature {
1347    // message fields
1348    pub certificate_signature: ::std::string::String,
1349    pub signature_correctness_proof: ::std::string::String,
1350    // special fields
1351    pub unknown_fields: ::protobuf::UnknownFields,
1352    pub cached_size: ::protobuf::CachedSize,
1353}
1354
1355impl<'a> ::std::default::Default for &'a CertificateSignature {
1356    fn default() -> &'a CertificateSignature {
1357        <CertificateSignature as ::protobuf::Message>::default_instance()
1358    }
1359}
1360
1361impl CertificateSignature {
1362    pub fn new() -> CertificateSignature {
1363        ::std::default::Default::default()
1364    }
1365
1366    // string certificate_signature = 1;
1367
1368
1369    pub fn get_certificate_signature(&self) -> &str {
1370        &self.certificate_signature
1371    }
1372    pub fn clear_certificate_signature(&mut self) {
1373        self.certificate_signature.clear();
1374    }
1375
1376    // Param is passed by value, moved
1377    pub fn set_certificate_signature(&mut self, v: ::std::string::String) {
1378        self.certificate_signature = v;
1379    }
1380
1381    // Mutable pointer to the field.
1382    // If field is not initialized, it is initialized with default value first.
1383    pub fn mut_certificate_signature(&mut self) -> &mut ::std::string::String {
1384        &mut self.certificate_signature
1385    }
1386
1387    // Take field
1388    pub fn take_certificate_signature(&mut self) -> ::std::string::String {
1389        ::std::mem::replace(&mut self.certificate_signature, ::std::string::String::new())
1390    }
1391
1392    // string signature_correctness_proof = 2;
1393
1394
1395    pub fn get_signature_correctness_proof(&self) -> &str {
1396        &self.signature_correctness_proof
1397    }
1398    pub fn clear_signature_correctness_proof(&mut self) {
1399        self.signature_correctness_proof.clear();
1400    }
1401
1402    // Param is passed by value, moved
1403    pub fn set_signature_correctness_proof(&mut self, v: ::std::string::String) {
1404        self.signature_correctness_proof = v;
1405    }
1406
1407    // Mutable pointer to the field.
1408    // If field is not initialized, it is initialized with default value first.
1409    pub fn mut_signature_correctness_proof(&mut self) -> &mut ::std::string::String {
1410        &mut self.signature_correctness_proof
1411    }
1412
1413    // Take field
1414    pub fn take_signature_correctness_proof(&mut self) -> ::std::string::String {
1415        ::std::mem::replace(&mut self.signature_correctness_proof, ::std::string::String::new())
1416    }
1417}
1418
1419impl ::protobuf::Message for CertificateSignature {
1420    fn is_initialized(&self) -> bool {
1421        true
1422    }
1423
1424    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1425        while !is.eof()? {
1426            let (field_number, wire_type) = is.read_tag_unpack()?;
1427            match field_number {
1428                1 => {
1429                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.certificate_signature)?;
1430                },
1431                2 => {
1432                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.signature_correctness_proof)?;
1433                },
1434                _ => {
1435                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1436                },
1437            };
1438        }
1439        ::std::result::Result::Ok(())
1440    }
1441
1442    // Compute sizes of nested messages
1443    #[allow(unused_variables)]
1444    fn compute_size(&self) -> u32 {
1445        let mut my_size = 0;
1446        if !self.certificate_signature.is_empty() {
1447            my_size += ::protobuf::rt::string_size(1, &self.certificate_signature);
1448        }
1449        if !self.signature_correctness_proof.is_empty() {
1450            my_size += ::protobuf::rt::string_size(2, &self.signature_correctness_proof);
1451        }
1452        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1453        self.cached_size.set(my_size);
1454        my_size
1455    }
1456
1457    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1458        if !self.certificate_signature.is_empty() {
1459            os.write_string(1, &self.certificate_signature)?;
1460        }
1461        if !self.signature_correctness_proof.is_empty() {
1462            os.write_string(2, &self.signature_correctness_proof)?;
1463        }
1464        os.write_unknown_fields(self.get_unknown_fields())?;
1465        ::std::result::Result::Ok(())
1466    }
1467
1468    fn get_cached_size(&self) -> u32 {
1469        self.cached_size.get()
1470    }
1471
1472    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1473        &self.unknown_fields
1474    }
1475
1476    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1477        &mut self.unknown_fields
1478    }
1479
1480    fn as_any(&self) -> &dyn (::std::any::Any) {
1481        self as &dyn (::std::any::Any)
1482    }
1483    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1484        self as &mut dyn (::std::any::Any)
1485    }
1486    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1487        self
1488    }
1489
1490    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1491        Self::descriptor_static()
1492    }
1493
1494    fn new() -> CertificateSignature {
1495        CertificateSignature::new()
1496    }
1497
1498    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1499        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1500        descriptor.get(|| {
1501            let mut fields = ::std::vec::Vec::new();
1502            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1503                "certificate_signature",
1504                |m: &CertificateSignature| { &m.certificate_signature },
1505                |m: &mut CertificateSignature| { &mut m.certificate_signature },
1506            ));
1507            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1508                "signature_correctness_proof",
1509                |m: &CertificateSignature| { &m.signature_correctness_proof },
1510                |m: &mut CertificateSignature| { &mut m.signature_correctness_proof },
1511            ));
1512            ::protobuf::reflect::MessageDescriptor::new_pb_name::<CertificateSignature>(
1513                "CertificateSignature",
1514                fields,
1515                file_descriptor_proto()
1516            )
1517        })
1518    }
1519
1520    fn default_instance() -> &'static CertificateSignature {
1521        static instance: ::protobuf::rt::LazyV2<CertificateSignature> = ::protobuf::rt::LazyV2::INIT;
1522        instance.get(CertificateSignature::new)
1523    }
1524}
1525
1526impl ::protobuf::Clear for CertificateSignature {
1527    fn clear(&mut self) {
1528        self.certificate_signature.clear();
1529        self.signature_correctness_proof.clear();
1530        self.unknown_fields.clear();
1531    }
1532}
1533
1534impl ::std::fmt::Debug for CertificateSignature {
1535    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1536        ::protobuf::text_format::fmt(self, f)
1537    }
1538}
1539
1540impl ::protobuf::reflect::ProtobufValue for CertificateSignature {
1541    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1542        ::protobuf::reflect::ReflectValueRef::Message(self)
1543    }
1544}
1545
1546#[derive(PartialEq,Clone,Default)]
1547pub struct Predicate {
1548    // message fields
1549    pub attribute_name: ::std::string::String,
1550    pub predicate_type: ::std::string::String,
1551    pub predicate_value: u64,
1552    // special fields
1553    pub unknown_fields: ::protobuf::UnknownFields,
1554    pub cached_size: ::protobuf::CachedSize,
1555}
1556
1557impl<'a> ::std::default::Default for &'a Predicate {
1558    fn default() -> &'a Predicate {
1559        <Predicate as ::protobuf::Message>::default_instance()
1560    }
1561}
1562
1563impl Predicate {
1564    pub fn new() -> Predicate {
1565        ::std::default::Default::default()
1566    }
1567
1568    // string attribute_name = 1;
1569
1570
1571    pub fn get_attribute_name(&self) -> &str {
1572        &self.attribute_name
1573    }
1574    pub fn clear_attribute_name(&mut self) {
1575        self.attribute_name.clear();
1576    }
1577
1578    // Param is passed by value, moved
1579    pub fn set_attribute_name(&mut self, v: ::std::string::String) {
1580        self.attribute_name = v;
1581    }
1582
1583    // Mutable pointer to the field.
1584    // If field is not initialized, it is initialized with default value first.
1585    pub fn mut_attribute_name(&mut self) -> &mut ::std::string::String {
1586        &mut self.attribute_name
1587    }
1588
1589    // Take field
1590    pub fn take_attribute_name(&mut self) -> ::std::string::String {
1591        ::std::mem::replace(&mut self.attribute_name, ::std::string::String::new())
1592    }
1593
1594    // string predicate_type = 2;
1595
1596
1597    pub fn get_predicate_type(&self) -> &str {
1598        &self.predicate_type
1599    }
1600    pub fn clear_predicate_type(&mut self) {
1601        self.predicate_type.clear();
1602    }
1603
1604    // Param is passed by value, moved
1605    pub fn set_predicate_type(&mut self, v: ::std::string::String) {
1606        self.predicate_type = v;
1607    }
1608
1609    // Mutable pointer to the field.
1610    // If field is not initialized, it is initialized with default value first.
1611    pub fn mut_predicate_type(&mut self) -> &mut ::std::string::String {
1612        &mut self.predicate_type
1613    }
1614
1615    // Take field
1616    pub fn take_predicate_type(&mut self) -> ::std::string::String {
1617        ::std::mem::replace(&mut self.predicate_type, ::std::string::String::new())
1618    }
1619
1620    // uint64 predicate_value = 3;
1621
1622
1623    pub fn get_predicate_value(&self) -> u64 {
1624        self.predicate_value
1625    }
1626    pub fn clear_predicate_value(&mut self) {
1627        self.predicate_value = 0;
1628    }
1629
1630    // Param is passed by value, moved
1631    pub fn set_predicate_value(&mut self, v: u64) {
1632        self.predicate_value = v;
1633    }
1634}
1635
1636impl ::protobuf::Message for Predicate {
1637    fn is_initialized(&self) -> bool {
1638        true
1639    }
1640
1641    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1642        while !is.eof()? {
1643            let (field_number, wire_type) = is.read_tag_unpack()?;
1644            match field_number {
1645                1 => {
1646                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.attribute_name)?;
1647                },
1648                2 => {
1649                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.predicate_type)?;
1650                },
1651                3 => {
1652                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
1653                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1654                    }
1655                    let tmp = is.read_uint64()?;
1656                    self.predicate_value = tmp;
1657                },
1658                _ => {
1659                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1660                },
1661            };
1662        }
1663        ::std::result::Result::Ok(())
1664    }
1665
1666    // Compute sizes of nested messages
1667    #[allow(unused_variables)]
1668    fn compute_size(&self) -> u32 {
1669        let mut my_size = 0;
1670        if !self.attribute_name.is_empty() {
1671            my_size += ::protobuf::rt::string_size(1, &self.attribute_name);
1672        }
1673        if !self.predicate_type.is_empty() {
1674            my_size += ::protobuf::rt::string_size(2, &self.predicate_type);
1675        }
1676        if self.predicate_value != 0 {
1677            my_size += ::protobuf::rt::value_size(3, self.predicate_value, ::protobuf::wire_format::WireTypeVarint);
1678        }
1679        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1680        self.cached_size.set(my_size);
1681        my_size
1682    }
1683
1684    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1685        if !self.attribute_name.is_empty() {
1686            os.write_string(1, &self.attribute_name)?;
1687        }
1688        if !self.predicate_type.is_empty() {
1689            os.write_string(2, &self.predicate_type)?;
1690        }
1691        if self.predicate_value != 0 {
1692            os.write_uint64(3, self.predicate_value)?;
1693        }
1694        os.write_unknown_fields(self.get_unknown_fields())?;
1695        ::std::result::Result::Ok(())
1696    }
1697
1698    fn get_cached_size(&self) -> u32 {
1699        self.cached_size.get()
1700    }
1701
1702    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1703        &self.unknown_fields
1704    }
1705
1706    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1707        &mut self.unknown_fields
1708    }
1709
1710    fn as_any(&self) -> &dyn (::std::any::Any) {
1711        self as &dyn (::std::any::Any)
1712    }
1713    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1714        self as &mut dyn (::std::any::Any)
1715    }
1716    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1717        self
1718    }
1719
1720    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1721        Self::descriptor_static()
1722    }
1723
1724    fn new() -> Predicate {
1725        Predicate::new()
1726    }
1727
1728    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1729        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1730        descriptor.get(|| {
1731            let mut fields = ::std::vec::Vec::new();
1732            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1733                "attribute_name",
1734                |m: &Predicate| { &m.attribute_name },
1735                |m: &mut Predicate| { &mut m.attribute_name },
1736            ));
1737            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1738                "predicate_type",
1739                |m: &Predicate| { &m.predicate_type },
1740                |m: &mut Predicate| { &mut m.predicate_type },
1741            ));
1742            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint64>(
1743                "predicate_value",
1744                |m: &Predicate| { &m.predicate_value },
1745                |m: &mut Predicate| { &mut m.predicate_value },
1746            ));
1747            ::protobuf::reflect::MessageDescriptor::new_pb_name::<Predicate>(
1748                "Predicate",
1749                fields,
1750                file_descriptor_proto()
1751            )
1752        })
1753    }
1754
1755    fn default_instance() -> &'static Predicate {
1756        static instance: ::protobuf::rt::LazyV2<Predicate> = ::protobuf::rt::LazyV2::INIT;
1757        instance.get(Predicate::new)
1758    }
1759}
1760
1761impl ::protobuf::Clear for Predicate {
1762    fn clear(&mut self) {
1763        self.attribute_name.clear();
1764        self.predicate_type.clear();
1765        self.predicate_value = 0;
1766        self.unknown_fields.clear();
1767    }
1768}
1769
1770impl ::std::fmt::Debug for Predicate {
1771    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1772        ::protobuf::text_format::fmt(self, f)
1773    }
1774}
1775
1776impl ::protobuf::reflect::ProtobufValue for Predicate {
1777    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1778        ::protobuf::reflect::ReflectValueRef::Message(self)
1779    }
1780}
1781
1782#[derive(PartialEq,Clone,Default)]
1783pub struct VerificationRuleSet {
1784    // message fields
1785    pub revealed_attribute_name: ::protobuf::RepeatedField<::std::string::String>,
1786    pub attribute_predicate: ::protobuf::RepeatedField<Predicate>,
1787    // special fields
1788    pub unknown_fields: ::protobuf::UnknownFields,
1789    pub cached_size: ::protobuf::CachedSize,
1790}
1791
1792impl<'a> ::std::default::Default for &'a VerificationRuleSet {
1793    fn default() -> &'a VerificationRuleSet {
1794        <VerificationRuleSet as ::protobuf::Message>::default_instance()
1795    }
1796}
1797
1798impl VerificationRuleSet {
1799    pub fn new() -> VerificationRuleSet {
1800        ::std::default::Default::default()
1801    }
1802
1803    // repeated string revealed_attribute_name = 1;
1804
1805
1806    pub fn get_revealed_attribute_name(&self) -> &[::std::string::String] {
1807        &self.revealed_attribute_name
1808    }
1809    pub fn clear_revealed_attribute_name(&mut self) {
1810        self.revealed_attribute_name.clear();
1811    }
1812
1813    // Param is passed by value, moved
1814    pub fn set_revealed_attribute_name(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
1815        self.revealed_attribute_name = v;
1816    }
1817
1818    // Mutable pointer to the field.
1819    pub fn mut_revealed_attribute_name(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
1820        &mut self.revealed_attribute_name
1821    }
1822
1823    // Take field
1824    pub fn take_revealed_attribute_name(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
1825        ::std::mem::replace(&mut self.revealed_attribute_name, ::protobuf::RepeatedField::new())
1826    }
1827
1828    // repeated .com.webank.wedpr.scd.proto.Predicate attribute_predicate = 2;
1829
1830
1831    pub fn get_attribute_predicate(&self) -> &[Predicate] {
1832        &self.attribute_predicate
1833    }
1834    pub fn clear_attribute_predicate(&mut self) {
1835        self.attribute_predicate.clear();
1836    }
1837
1838    // Param is passed by value, moved
1839    pub fn set_attribute_predicate(&mut self, v: ::protobuf::RepeatedField<Predicate>) {
1840        self.attribute_predicate = v;
1841    }
1842
1843    // Mutable pointer to the field.
1844    pub fn mut_attribute_predicate(&mut self) -> &mut ::protobuf::RepeatedField<Predicate> {
1845        &mut self.attribute_predicate
1846    }
1847
1848    // Take field
1849    pub fn take_attribute_predicate(&mut self) -> ::protobuf::RepeatedField<Predicate> {
1850        ::std::mem::replace(&mut self.attribute_predicate, ::protobuf::RepeatedField::new())
1851    }
1852}
1853
1854impl ::protobuf::Message for VerificationRuleSet {
1855    fn is_initialized(&self) -> bool {
1856        for v in &self.attribute_predicate {
1857            if !v.is_initialized() {
1858                return false;
1859            }
1860        };
1861        true
1862    }
1863
1864    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1865        while !is.eof()? {
1866            let (field_number, wire_type) = is.read_tag_unpack()?;
1867            match field_number {
1868                1 => {
1869                    ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.revealed_attribute_name)?;
1870                },
1871                2 => {
1872                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.attribute_predicate)?;
1873                },
1874                _ => {
1875                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1876                },
1877            };
1878        }
1879        ::std::result::Result::Ok(())
1880    }
1881
1882    // Compute sizes of nested messages
1883    #[allow(unused_variables)]
1884    fn compute_size(&self) -> u32 {
1885        let mut my_size = 0;
1886        for value in &self.revealed_attribute_name {
1887            my_size += ::protobuf::rt::string_size(1, &value);
1888        };
1889        for value in &self.attribute_predicate {
1890            let len = value.compute_size();
1891            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1892        };
1893        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1894        self.cached_size.set(my_size);
1895        my_size
1896    }
1897
1898    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1899        for v in &self.revealed_attribute_name {
1900            os.write_string(1, &v)?;
1901        };
1902        for v in &self.attribute_predicate {
1903            os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1904            os.write_raw_varint32(v.get_cached_size())?;
1905            v.write_to_with_cached_sizes(os)?;
1906        };
1907        os.write_unknown_fields(self.get_unknown_fields())?;
1908        ::std::result::Result::Ok(())
1909    }
1910
1911    fn get_cached_size(&self) -> u32 {
1912        self.cached_size.get()
1913    }
1914
1915    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1916        &self.unknown_fields
1917    }
1918
1919    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1920        &mut self.unknown_fields
1921    }
1922
1923    fn as_any(&self) -> &dyn (::std::any::Any) {
1924        self as &dyn (::std::any::Any)
1925    }
1926    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1927        self as &mut dyn (::std::any::Any)
1928    }
1929    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1930        self
1931    }
1932
1933    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1934        Self::descriptor_static()
1935    }
1936
1937    fn new() -> VerificationRuleSet {
1938        VerificationRuleSet::new()
1939    }
1940
1941    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1942        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1943        descriptor.get(|| {
1944            let mut fields = ::std::vec::Vec::new();
1945            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1946                "revealed_attribute_name",
1947                |m: &VerificationRuleSet| { &m.revealed_attribute_name },
1948                |m: &mut VerificationRuleSet| { &mut m.revealed_attribute_name },
1949            ));
1950            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Predicate>>(
1951                "attribute_predicate",
1952                |m: &VerificationRuleSet| { &m.attribute_predicate },
1953                |m: &mut VerificationRuleSet| { &mut m.attribute_predicate },
1954            ));
1955            ::protobuf::reflect::MessageDescriptor::new_pb_name::<VerificationRuleSet>(
1956                "VerificationRuleSet",
1957                fields,
1958                file_descriptor_proto()
1959            )
1960        })
1961    }
1962
1963    fn default_instance() -> &'static VerificationRuleSet {
1964        static instance: ::protobuf::rt::LazyV2<VerificationRuleSet> = ::protobuf::rt::LazyV2::INIT;
1965        instance.get(VerificationRuleSet::new)
1966    }
1967}
1968
1969impl ::protobuf::Clear for VerificationRuleSet {
1970    fn clear(&mut self) {
1971        self.revealed_attribute_name.clear();
1972        self.attribute_predicate.clear();
1973        self.unknown_fields.clear();
1974    }
1975}
1976
1977impl ::std::fmt::Debug for VerificationRuleSet {
1978    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1979        ::protobuf::text_format::fmt(self, f)
1980    }
1981}
1982
1983impl ::protobuf::reflect::ProtobufValue for VerificationRuleSet {
1984    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1985        ::protobuf::reflect::ReflectValueRef::Message(self)
1986    }
1987}
1988
1989#[derive(PartialEq,Clone,Default)]
1990pub struct SignCertificateRequest {
1991    // message fields
1992    pub certificate_attribute_dict: ::protobuf::SingularPtrField<AttributeDict>,
1993    pub blinded_certificate_secrets: ::std::string::String,
1994    pub blinded_certificate_secrets_correctness_proof: ::std::string::String,
1995    // special fields
1996    pub unknown_fields: ::protobuf::UnknownFields,
1997    pub cached_size: ::protobuf::CachedSize,
1998}
1999
2000impl<'a> ::std::default::Default for &'a SignCertificateRequest {
2001    fn default() -> &'a SignCertificateRequest {
2002        <SignCertificateRequest as ::protobuf::Message>::default_instance()
2003    }
2004}
2005
2006impl SignCertificateRequest {
2007    pub fn new() -> SignCertificateRequest {
2008        ::std::default::Default::default()
2009    }
2010
2011    // .com.webank.wedpr.scd.proto.AttributeDict certificate_attribute_dict = 1;
2012
2013
2014    pub fn get_certificate_attribute_dict(&self) -> &AttributeDict {
2015        self.certificate_attribute_dict.as_ref().unwrap_or_else(|| <AttributeDict as ::protobuf::Message>::default_instance())
2016    }
2017    pub fn clear_certificate_attribute_dict(&mut self) {
2018        self.certificate_attribute_dict.clear();
2019    }
2020
2021    pub fn has_certificate_attribute_dict(&self) -> bool {
2022        self.certificate_attribute_dict.is_some()
2023    }
2024
2025    // Param is passed by value, moved
2026    pub fn set_certificate_attribute_dict(&mut self, v: AttributeDict) {
2027        self.certificate_attribute_dict = ::protobuf::SingularPtrField::some(v);
2028    }
2029
2030    // Mutable pointer to the field.
2031    // If field is not initialized, it is initialized with default value first.
2032    pub fn mut_certificate_attribute_dict(&mut self) -> &mut AttributeDict {
2033        if self.certificate_attribute_dict.is_none() {
2034            self.certificate_attribute_dict.set_default();
2035        }
2036        self.certificate_attribute_dict.as_mut().unwrap()
2037    }
2038
2039    // Take field
2040    pub fn take_certificate_attribute_dict(&mut self) -> AttributeDict {
2041        self.certificate_attribute_dict.take().unwrap_or_else(|| AttributeDict::new())
2042    }
2043
2044    // string blinded_certificate_secrets = 2;
2045
2046
2047    pub fn get_blinded_certificate_secrets(&self) -> &str {
2048        &self.blinded_certificate_secrets
2049    }
2050    pub fn clear_blinded_certificate_secrets(&mut self) {
2051        self.blinded_certificate_secrets.clear();
2052    }
2053
2054    // Param is passed by value, moved
2055    pub fn set_blinded_certificate_secrets(&mut self, v: ::std::string::String) {
2056        self.blinded_certificate_secrets = v;
2057    }
2058
2059    // Mutable pointer to the field.
2060    // If field is not initialized, it is initialized with default value first.
2061    pub fn mut_blinded_certificate_secrets(&mut self) -> &mut ::std::string::String {
2062        &mut self.blinded_certificate_secrets
2063    }
2064
2065    // Take field
2066    pub fn take_blinded_certificate_secrets(&mut self) -> ::std::string::String {
2067        ::std::mem::replace(&mut self.blinded_certificate_secrets, ::std::string::String::new())
2068    }
2069
2070    // string blinded_certificate_secrets_correctness_proof = 3;
2071
2072
2073    pub fn get_blinded_certificate_secrets_correctness_proof(&self) -> &str {
2074        &self.blinded_certificate_secrets_correctness_proof
2075    }
2076    pub fn clear_blinded_certificate_secrets_correctness_proof(&mut self) {
2077        self.blinded_certificate_secrets_correctness_proof.clear();
2078    }
2079
2080    // Param is passed by value, moved
2081    pub fn set_blinded_certificate_secrets_correctness_proof(&mut self, v: ::std::string::String) {
2082        self.blinded_certificate_secrets_correctness_proof = v;
2083    }
2084
2085    // Mutable pointer to the field.
2086    // If field is not initialized, it is initialized with default value first.
2087    pub fn mut_blinded_certificate_secrets_correctness_proof(&mut self) -> &mut ::std::string::String {
2088        &mut self.blinded_certificate_secrets_correctness_proof
2089    }
2090
2091    // Take field
2092    pub fn take_blinded_certificate_secrets_correctness_proof(&mut self) -> ::std::string::String {
2093        ::std::mem::replace(&mut self.blinded_certificate_secrets_correctness_proof, ::std::string::String::new())
2094    }
2095}
2096
2097impl ::protobuf::Message for SignCertificateRequest {
2098    fn is_initialized(&self) -> bool {
2099        for v in &self.certificate_attribute_dict {
2100            if !v.is_initialized() {
2101                return false;
2102            }
2103        };
2104        true
2105    }
2106
2107    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2108        while !is.eof()? {
2109            let (field_number, wire_type) = is.read_tag_unpack()?;
2110            match field_number {
2111                1 => {
2112                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.certificate_attribute_dict)?;
2113                },
2114                2 => {
2115                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.blinded_certificate_secrets)?;
2116                },
2117                3 => {
2118                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.blinded_certificate_secrets_correctness_proof)?;
2119                },
2120                _ => {
2121                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
2122                },
2123            };
2124        }
2125        ::std::result::Result::Ok(())
2126    }
2127
2128    // Compute sizes of nested messages
2129    #[allow(unused_variables)]
2130    fn compute_size(&self) -> u32 {
2131        let mut my_size = 0;
2132        if let Some(ref v) = self.certificate_attribute_dict.as_ref() {
2133            let len = v.compute_size();
2134            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2135        }
2136        if !self.blinded_certificate_secrets.is_empty() {
2137            my_size += ::protobuf::rt::string_size(2, &self.blinded_certificate_secrets);
2138        }
2139        if !self.blinded_certificate_secrets_correctness_proof.is_empty() {
2140            my_size += ::protobuf::rt::string_size(3, &self.blinded_certificate_secrets_correctness_proof);
2141        }
2142        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
2143        self.cached_size.set(my_size);
2144        my_size
2145    }
2146
2147    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2148        if let Some(ref v) = self.certificate_attribute_dict.as_ref() {
2149            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2150            os.write_raw_varint32(v.get_cached_size())?;
2151            v.write_to_with_cached_sizes(os)?;
2152        }
2153        if !self.blinded_certificate_secrets.is_empty() {
2154            os.write_string(2, &self.blinded_certificate_secrets)?;
2155        }
2156        if !self.blinded_certificate_secrets_correctness_proof.is_empty() {
2157            os.write_string(3, &self.blinded_certificate_secrets_correctness_proof)?;
2158        }
2159        os.write_unknown_fields(self.get_unknown_fields())?;
2160        ::std::result::Result::Ok(())
2161    }
2162
2163    fn get_cached_size(&self) -> u32 {
2164        self.cached_size.get()
2165    }
2166
2167    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
2168        &self.unknown_fields
2169    }
2170
2171    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
2172        &mut self.unknown_fields
2173    }
2174
2175    fn as_any(&self) -> &dyn (::std::any::Any) {
2176        self as &dyn (::std::any::Any)
2177    }
2178    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
2179        self as &mut dyn (::std::any::Any)
2180    }
2181    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
2182        self
2183    }
2184
2185    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
2186        Self::descriptor_static()
2187    }
2188
2189    fn new() -> SignCertificateRequest {
2190        SignCertificateRequest::new()
2191    }
2192
2193    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
2194        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
2195        descriptor.get(|| {
2196            let mut fields = ::std::vec::Vec::new();
2197            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<AttributeDict>>(
2198                "certificate_attribute_dict",
2199                |m: &SignCertificateRequest| { &m.certificate_attribute_dict },
2200                |m: &mut SignCertificateRequest| { &mut m.certificate_attribute_dict },
2201            ));
2202            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2203                "blinded_certificate_secrets",
2204                |m: &SignCertificateRequest| { &m.blinded_certificate_secrets },
2205                |m: &mut SignCertificateRequest| { &mut m.blinded_certificate_secrets },
2206            ));
2207            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2208                "blinded_certificate_secrets_correctness_proof",
2209                |m: &SignCertificateRequest| { &m.blinded_certificate_secrets_correctness_proof },
2210                |m: &mut SignCertificateRequest| { &mut m.blinded_certificate_secrets_correctness_proof },
2211            ));
2212            ::protobuf::reflect::MessageDescriptor::new_pb_name::<SignCertificateRequest>(
2213                "SignCertificateRequest",
2214                fields,
2215                file_descriptor_proto()
2216            )
2217        })
2218    }
2219
2220    fn default_instance() -> &'static SignCertificateRequest {
2221        static instance: ::protobuf::rt::LazyV2<SignCertificateRequest> = ::protobuf::rt::LazyV2::INIT;
2222        instance.get(SignCertificateRequest::new)
2223    }
2224}
2225
2226impl ::protobuf::Clear for SignCertificateRequest {
2227    fn clear(&mut self) {
2228        self.certificate_attribute_dict.clear();
2229        self.blinded_certificate_secrets.clear();
2230        self.blinded_certificate_secrets_correctness_proof.clear();
2231        self.unknown_fields.clear();
2232    }
2233}
2234
2235impl ::std::fmt::Debug for SignCertificateRequest {
2236    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2237        ::protobuf::text_format::fmt(self, f)
2238    }
2239}
2240
2241impl ::protobuf::reflect::ProtobufValue for SignCertificateRequest {
2242    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
2243        ::protobuf::reflect::ReflectValueRef::Message(self)
2244    }
2245}
2246
2247#[derive(PartialEq,Clone,Default)]
2248pub struct VerifyRequest {
2249    // message fields
2250    pub certificate_template: ::protobuf::SingularPtrField<CertificateTemplate>,
2251    pub verification_proof: ::std::string::String,
2252    pub verification_nonce: ::std::string::String,
2253    // special fields
2254    pub unknown_fields: ::protobuf::UnknownFields,
2255    pub cached_size: ::protobuf::CachedSize,
2256}
2257
2258impl<'a> ::std::default::Default for &'a VerifyRequest {
2259    fn default() -> &'a VerifyRequest {
2260        <VerifyRequest as ::protobuf::Message>::default_instance()
2261    }
2262}
2263
2264impl VerifyRequest {
2265    pub fn new() -> VerifyRequest {
2266        ::std::default::Default::default()
2267    }
2268
2269    // .com.webank.wedpr.scd.proto.CertificateTemplate certificate_template = 1;
2270
2271
2272    pub fn get_certificate_template(&self) -> &CertificateTemplate {
2273        self.certificate_template.as_ref().unwrap_or_else(|| <CertificateTemplate as ::protobuf::Message>::default_instance())
2274    }
2275    pub fn clear_certificate_template(&mut self) {
2276        self.certificate_template.clear();
2277    }
2278
2279    pub fn has_certificate_template(&self) -> bool {
2280        self.certificate_template.is_some()
2281    }
2282
2283    // Param is passed by value, moved
2284    pub fn set_certificate_template(&mut self, v: CertificateTemplate) {
2285        self.certificate_template = ::protobuf::SingularPtrField::some(v);
2286    }
2287
2288    // Mutable pointer to the field.
2289    // If field is not initialized, it is initialized with default value first.
2290    pub fn mut_certificate_template(&mut self) -> &mut CertificateTemplate {
2291        if self.certificate_template.is_none() {
2292            self.certificate_template.set_default();
2293        }
2294        self.certificate_template.as_mut().unwrap()
2295    }
2296
2297    // Take field
2298    pub fn take_certificate_template(&mut self) -> CertificateTemplate {
2299        self.certificate_template.take().unwrap_or_else(|| CertificateTemplate::new())
2300    }
2301
2302    // string verification_proof = 2;
2303
2304
2305    pub fn get_verification_proof(&self) -> &str {
2306        &self.verification_proof
2307    }
2308    pub fn clear_verification_proof(&mut self) {
2309        self.verification_proof.clear();
2310    }
2311
2312    // Param is passed by value, moved
2313    pub fn set_verification_proof(&mut self, v: ::std::string::String) {
2314        self.verification_proof = v;
2315    }
2316
2317    // Mutable pointer to the field.
2318    // If field is not initialized, it is initialized with default value first.
2319    pub fn mut_verification_proof(&mut self) -> &mut ::std::string::String {
2320        &mut self.verification_proof
2321    }
2322
2323    // Take field
2324    pub fn take_verification_proof(&mut self) -> ::std::string::String {
2325        ::std::mem::replace(&mut self.verification_proof, ::std::string::String::new())
2326    }
2327
2328    // string verification_nonce = 3;
2329
2330
2331    pub fn get_verification_nonce(&self) -> &str {
2332        &self.verification_nonce
2333    }
2334    pub fn clear_verification_nonce(&mut self) {
2335        self.verification_nonce.clear();
2336    }
2337
2338    // Param is passed by value, moved
2339    pub fn set_verification_nonce(&mut self, v: ::std::string::String) {
2340        self.verification_nonce = v;
2341    }
2342
2343    // Mutable pointer to the field.
2344    // If field is not initialized, it is initialized with default value first.
2345    pub fn mut_verification_nonce(&mut self) -> &mut ::std::string::String {
2346        &mut self.verification_nonce
2347    }
2348
2349    // Take field
2350    pub fn take_verification_nonce(&mut self) -> ::std::string::String {
2351        ::std::mem::replace(&mut self.verification_nonce, ::std::string::String::new())
2352    }
2353}
2354
2355impl ::protobuf::Message for VerifyRequest {
2356    fn is_initialized(&self) -> bool {
2357        for v in &self.certificate_template {
2358            if !v.is_initialized() {
2359                return false;
2360            }
2361        };
2362        true
2363    }
2364
2365    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2366        while !is.eof()? {
2367            let (field_number, wire_type) = is.read_tag_unpack()?;
2368            match field_number {
2369                1 => {
2370                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.certificate_template)?;
2371                },
2372                2 => {
2373                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.verification_proof)?;
2374                },
2375                3 => {
2376                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.verification_nonce)?;
2377                },
2378                _ => {
2379                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
2380                },
2381            };
2382        }
2383        ::std::result::Result::Ok(())
2384    }
2385
2386    // Compute sizes of nested messages
2387    #[allow(unused_variables)]
2388    fn compute_size(&self) -> u32 {
2389        let mut my_size = 0;
2390        if let Some(ref v) = self.certificate_template.as_ref() {
2391            let len = v.compute_size();
2392            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2393        }
2394        if !self.verification_proof.is_empty() {
2395            my_size += ::protobuf::rt::string_size(2, &self.verification_proof);
2396        }
2397        if !self.verification_nonce.is_empty() {
2398            my_size += ::protobuf::rt::string_size(3, &self.verification_nonce);
2399        }
2400        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
2401        self.cached_size.set(my_size);
2402        my_size
2403    }
2404
2405    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2406        if let Some(ref v) = self.certificate_template.as_ref() {
2407            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2408            os.write_raw_varint32(v.get_cached_size())?;
2409            v.write_to_with_cached_sizes(os)?;
2410        }
2411        if !self.verification_proof.is_empty() {
2412            os.write_string(2, &self.verification_proof)?;
2413        }
2414        if !self.verification_nonce.is_empty() {
2415            os.write_string(3, &self.verification_nonce)?;
2416        }
2417        os.write_unknown_fields(self.get_unknown_fields())?;
2418        ::std::result::Result::Ok(())
2419    }
2420
2421    fn get_cached_size(&self) -> u32 {
2422        self.cached_size.get()
2423    }
2424
2425    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
2426        &self.unknown_fields
2427    }
2428
2429    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
2430        &mut self.unknown_fields
2431    }
2432
2433    fn as_any(&self) -> &dyn (::std::any::Any) {
2434        self as &dyn (::std::any::Any)
2435    }
2436    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
2437        self as &mut dyn (::std::any::Any)
2438    }
2439    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
2440        self
2441    }
2442
2443    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
2444        Self::descriptor_static()
2445    }
2446
2447    fn new() -> VerifyRequest {
2448        VerifyRequest::new()
2449    }
2450
2451    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
2452        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
2453        descriptor.get(|| {
2454            let mut fields = ::std::vec::Vec::new();
2455            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<CertificateTemplate>>(
2456                "certificate_template",
2457                |m: &VerifyRequest| { &m.certificate_template },
2458                |m: &mut VerifyRequest| { &mut m.certificate_template },
2459            ));
2460            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2461                "verification_proof",
2462                |m: &VerifyRequest| { &m.verification_proof },
2463                |m: &mut VerifyRequest| { &mut m.verification_proof },
2464            ));
2465            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2466                "verification_nonce",
2467                |m: &VerifyRequest| { &m.verification_nonce },
2468                |m: &mut VerifyRequest| { &mut m.verification_nonce },
2469            ));
2470            ::protobuf::reflect::MessageDescriptor::new_pb_name::<VerifyRequest>(
2471                "VerifyRequest",
2472                fields,
2473                file_descriptor_proto()
2474            )
2475        })
2476    }
2477
2478    fn default_instance() -> &'static VerifyRequest {
2479        static instance: ::protobuf::rt::LazyV2<VerifyRequest> = ::protobuf::rt::LazyV2::INIT;
2480        instance.get(VerifyRequest::new)
2481    }
2482}
2483
2484impl ::protobuf::Clear for VerifyRequest {
2485    fn clear(&mut self) {
2486        self.certificate_template.clear();
2487        self.verification_proof.clear();
2488        self.verification_nonce.clear();
2489        self.unknown_fields.clear();
2490    }
2491}
2492
2493impl ::std::fmt::Debug for VerifyRequest {
2494    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2495        ::protobuf::text_format::fmt(self, f)
2496    }
2497}
2498
2499impl ::protobuf::reflect::ProtobufValue for VerifyRequest {
2500    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
2501        ::protobuf::reflect::ReflectValueRef::Message(self)
2502    }
2503}
2504
2505#[derive(PartialEq,Clone,Default)]
2506pub struct ScdResult {
2507    // message fields
2508    pub certificate_template: ::protobuf::SingularPtrField<CertificateTemplate>,
2509    pub template_private_key: ::protobuf::SingularPtrField<TemplatePrivateKey>,
2510    pub issuer_nonce: ::std::string::String,
2511    pub certificate_signature: ::protobuf::SingularPtrField<CertificateSignature>,
2512    pub user_nonce: ::std::string::String,
2513    pub sign_certificate_request: ::protobuf::SingularPtrField<SignCertificateRequest>,
2514    pub user_private_key: ::std::string::String,
2515    pub certificate_secrets_blinding_factors: ::std::string::String,
2516    pub verification_nonce: ::std::string::String,
2517    pub verify_request: ::protobuf::SingularPtrField<VerifyRequest>,
2518    pub revealed_attribute_dict: ::protobuf::SingularPtrField<AttributeDict>,
2519    pub bool_result: bool,
2520    // special fields
2521    pub unknown_fields: ::protobuf::UnknownFields,
2522    pub cached_size: ::protobuf::CachedSize,
2523}
2524
2525impl<'a> ::std::default::Default for &'a ScdResult {
2526    fn default() -> &'a ScdResult {
2527        <ScdResult as ::protobuf::Message>::default_instance()
2528    }
2529}
2530
2531impl ScdResult {
2532    pub fn new() -> ScdResult {
2533        ::std::default::Default::default()
2534    }
2535
2536    // .com.webank.wedpr.scd.proto.CertificateTemplate certificate_template = 1;
2537
2538
2539    pub fn get_certificate_template(&self) -> &CertificateTemplate {
2540        self.certificate_template.as_ref().unwrap_or_else(|| <CertificateTemplate as ::protobuf::Message>::default_instance())
2541    }
2542    pub fn clear_certificate_template(&mut self) {
2543        self.certificate_template.clear();
2544    }
2545
2546    pub fn has_certificate_template(&self) -> bool {
2547        self.certificate_template.is_some()
2548    }
2549
2550    // Param is passed by value, moved
2551    pub fn set_certificate_template(&mut self, v: CertificateTemplate) {
2552        self.certificate_template = ::protobuf::SingularPtrField::some(v);
2553    }
2554
2555    // Mutable pointer to the field.
2556    // If field is not initialized, it is initialized with default value first.
2557    pub fn mut_certificate_template(&mut self) -> &mut CertificateTemplate {
2558        if self.certificate_template.is_none() {
2559            self.certificate_template.set_default();
2560        }
2561        self.certificate_template.as_mut().unwrap()
2562    }
2563
2564    // Take field
2565    pub fn take_certificate_template(&mut self) -> CertificateTemplate {
2566        self.certificate_template.take().unwrap_or_else(|| CertificateTemplate::new())
2567    }
2568
2569    // .com.webank.wedpr.scd.proto.TemplatePrivateKey template_private_key = 2;
2570
2571
2572    pub fn get_template_private_key(&self) -> &TemplatePrivateKey {
2573        self.template_private_key.as_ref().unwrap_or_else(|| <TemplatePrivateKey as ::protobuf::Message>::default_instance())
2574    }
2575    pub fn clear_template_private_key(&mut self) {
2576        self.template_private_key.clear();
2577    }
2578
2579    pub fn has_template_private_key(&self) -> bool {
2580        self.template_private_key.is_some()
2581    }
2582
2583    // Param is passed by value, moved
2584    pub fn set_template_private_key(&mut self, v: TemplatePrivateKey) {
2585        self.template_private_key = ::protobuf::SingularPtrField::some(v);
2586    }
2587
2588    // Mutable pointer to the field.
2589    // If field is not initialized, it is initialized with default value first.
2590    pub fn mut_template_private_key(&mut self) -> &mut TemplatePrivateKey {
2591        if self.template_private_key.is_none() {
2592            self.template_private_key.set_default();
2593        }
2594        self.template_private_key.as_mut().unwrap()
2595    }
2596
2597    // Take field
2598    pub fn take_template_private_key(&mut self) -> TemplatePrivateKey {
2599        self.template_private_key.take().unwrap_or_else(|| TemplatePrivateKey::new())
2600    }
2601
2602    // string issuer_nonce = 3;
2603
2604
2605    pub fn get_issuer_nonce(&self) -> &str {
2606        &self.issuer_nonce
2607    }
2608    pub fn clear_issuer_nonce(&mut self) {
2609        self.issuer_nonce.clear();
2610    }
2611
2612    // Param is passed by value, moved
2613    pub fn set_issuer_nonce(&mut self, v: ::std::string::String) {
2614        self.issuer_nonce = v;
2615    }
2616
2617    // Mutable pointer to the field.
2618    // If field is not initialized, it is initialized with default value first.
2619    pub fn mut_issuer_nonce(&mut self) -> &mut ::std::string::String {
2620        &mut self.issuer_nonce
2621    }
2622
2623    // Take field
2624    pub fn take_issuer_nonce(&mut self) -> ::std::string::String {
2625        ::std::mem::replace(&mut self.issuer_nonce, ::std::string::String::new())
2626    }
2627
2628    // .com.webank.wedpr.scd.proto.CertificateSignature certificate_signature = 4;
2629
2630
2631    pub fn get_certificate_signature(&self) -> &CertificateSignature {
2632        self.certificate_signature.as_ref().unwrap_or_else(|| <CertificateSignature as ::protobuf::Message>::default_instance())
2633    }
2634    pub fn clear_certificate_signature(&mut self) {
2635        self.certificate_signature.clear();
2636    }
2637
2638    pub fn has_certificate_signature(&self) -> bool {
2639        self.certificate_signature.is_some()
2640    }
2641
2642    // Param is passed by value, moved
2643    pub fn set_certificate_signature(&mut self, v: CertificateSignature) {
2644        self.certificate_signature = ::protobuf::SingularPtrField::some(v);
2645    }
2646
2647    // Mutable pointer to the field.
2648    // If field is not initialized, it is initialized with default value first.
2649    pub fn mut_certificate_signature(&mut self) -> &mut CertificateSignature {
2650        if self.certificate_signature.is_none() {
2651            self.certificate_signature.set_default();
2652        }
2653        self.certificate_signature.as_mut().unwrap()
2654    }
2655
2656    // Take field
2657    pub fn take_certificate_signature(&mut self) -> CertificateSignature {
2658        self.certificate_signature.take().unwrap_or_else(|| CertificateSignature::new())
2659    }
2660
2661    // string user_nonce = 5;
2662
2663
2664    pub fn get_user_nonce(&self) -> &str {
2665        &self.user_nonce
2666    }
2667    pub fn clear_user_nonce(&mut self) {
2668        self.user_nonce.clear();
2669    }
2670
2671    // Param is passed by value, moved
2672    pub fn set_user_nonce(&mut self, v: ::std::string::String) {
2673        self.user_nonce = v;
2674    }
2675
2676    // Mutable pointer to the field.
2677    // If field is not initialized, it is initialized with default value first.
2678    pub fn mut_user_nonce(&mut self) -> &mut ::std::string::String {
2679        &mut self.user_nonce
2680    }
2681
2682    // Take field
2683    pub fn take_user_nonce(&mut self) -> ::std::string::String {
2684        ::std::mem::replace(&mut self.user_nonce, ::std::string::String::new())
2685    }
2686
2687    // .com.webank.wedpr.scd.proto.SignCertificateRequest sign_certificate_request = 6;
2688
2689
2690    pub fn get_sign_certificate_request(&self) -> &SignCertificateRequest {
2691        self.sign_certificate_request.as_ref().unwrap_or_else(|| <SignCertificateRequest as ::protobuf::Message>::default_instance())
2692    }
2693    pub fn clear_sign_certificate_request(&mut self) {
2694        self.sign_certificate_request.clear();
2695    }
2696
2697    pub fn has_sign_certificate_request(&self) -> bool {
2698        self.sign_certificate_request.is_some()
2699    }
2700
2701    // Param is passed by value, moved
2702    pub fn set_sign_certificate_request(&mut self, v: SignCertificateRequest) {
2703        self.sign_certificate_request = ::protobuf::SingularPtrField::some(v);
2704    }
2705
2706    // Mutable pointer to the field.
2707    // If field is not initialized, it is initialized with default value first.
2708    pub fn mut_sign_certificate_request(&mut self) -> &mut SignCertificateRequest {
2709        if self.sign_certificate_request.is_none() {
2710            self.sign_certificate_request.set_default();
2711        }
2712        self.sign_certificate_request.as_mut().unwrap()
2713    }
2714
2715    // Take field
2716    pub fn take_sign_certificate_request(&mut self) -> SignCertificateRequest {
2717        self.sign_certificate_request.take().unwrap_or_else(|| SignCertificateRequest::new())
2718    }
2719
2720    // string user_private_key = 7;
2721
2722
2723    pub fn get_user_private_key(&self) -> &str {
2724        &self.user_private_key
2725    }
2726    pub fn clear_user_private_key(&mut self) {
2727        self.user_private_key.clear();
2728    }
2729
2730    // Param is passed by value, moved
2731    pub fn set_user_private_key(&mut self, v: ::std::string::String) {
2732        self.user_private_key = v;
2733    }
2734
2735    // Mutable pointer to the field.
2736    // If field is not initialized, it is initialized with default value first.
2737    pub fn mut_user_private_key(&mut self) -> &mut ::std::string::String {
2738        &mut self.user_private_key
2739    }
2740
2741    // Take field
2742    pub fn take_user_private_key(&mut self) -> ::std::string::String {
2743        ::std::mem::replace(&mut self.user_private_key, ::std::string::String::new())
2744    }
2745
2746    // string certificate_secrets_blinding_factors = 8;
2747
2748
2749    pub fn get_certificate_secrets_blinding_factors(&self) -> &str {
2750        &self.certificate_secrets_blinding_factors
2751    }
2752    pub fn clear_certificate_secrets_blinding_factors(&mut self) {
2753        self.certificate_secrets_blinding_factors.clear();
2754    }
2755
2756    // Param is passed by value, moved
2757    pub fn set_certificate_secrets_blinding_factors(&mut self, v: ::std::string::String) {
2758        self.certificate_secrets_blinding_factors = v;
2759    }
2760
2761    // Mutable pointer to the field.
2762    // If field is not initialized, it is initialized with default value first.
2763    pub fn mut_certificate_secrets_blinding_factors(&mut self) -> &mut ::std::string::String {
2764        &mut self.certificate_secrets_blinding_factors
2765    }
2766
2767    // Take field
2768    pub fn take_certificate_secrets_blinding_factors(&mut self) -> ::std::string::String {
2769        ::std::mem::replace(&mut self.certificate_secrets_blinding_factors, ::std::string::String::new())
2770    }
2771
2772    // string verification_nonce = 9;
2773
2774
2775    pub fn get_verification_nonce(&self) -> &str {
2776        &self.verification_nonce
2777    }
2778    pub fn clear_verification_nonce(&mut self) {
2779        self.verification_nonce.clear();
2780    }
2781
2782    // Param is passed by value, moved
2783    pub fn set_verification_nonce(&mut self, v: ::std::string::String) {
2784        self.verification_nonce = v;
2785    }
2786
2787    // Mutable pointer to the field.
2788    // If field is not initialized, it is initialized with default value first.
2789    pub fn mut_verification_nonce(&mut self) -> &mut ::std::string::String {
2790        &mut self.verification_nonce
2791    }
2792
2793    // Take field
2794    pub fn take_verification_nonce(&mut self) -> ::std::string::String {
2795        ::std::mem::replace(&mut self.verification_nonce, ::std::string::String::new())
2796    }
2797
2798    // .com.webank.wedpr.scd.proto.VerifyRequest verify_request = 10;
2799
2800
2801    pub fn get_verify_request(&self) -> &VerifyRequest {
2802        self.verify_request.as_ref().unwrap_or_else(|| <VerifyRequest as ::protobuf::Message>::default_instance())
2803    }
2804    pub fn clear_verify_request(&mut self) {
2805        self.verify_request.clear();
2806    }
2807
2808    pub fn has_verify_request(&self) -> bool {
2809        self.verify_request.is_some()
2810    }
2811
2812    // Param is passed by value, moved
2813    pub fn set_verify_request(&mut self, v: VerifyRequest) {
2814        self.verify_request = ::protobuf::SingularPtrField::some(v);
2815    }
2816
2817    // Mutable pointer to the field.
2818    // If field is not initialized, it is initialized with default value first.
2819    pub fn mut_verify_request(&mut self) -> &mut VerifyRequest {
2820        if self.verify_request.is_none() {
2821            self.verify_request.set_default();
2822        }
2823        self.verify_request.as_mut().unwrap()
2824    }
2825
2826    // Take field
2827    pub fn take_verify_request(&mut self) -> VerifyRequest {
2828        self.verify_request.take().unwrap_or_else(|| VerifyRequest::new())
2829    }
2830
2831    // .com.webank.wedpr.scd.proto.AttributeDict revealed_attribute_dict = 11;
2832
2833
2834    pub fn get_revealed_attribute_dict(&self) -> &AttributeDict {
2835        self.revealed_attribute_dict.as_ref().unwrap_or_else(|| <AttributeDict as ::protobuf::Message>::default_instance())
2836    }
2837    pub fn clear_revealed_attribute_dict(&mut self) {
2838        self.revealed_attribute_dict.clear();
2839    }
2840
2841    pub fn has_revealed_attribute_dict(&self) -> bool {
2842        self.revealed_attribute_dict.is_some()
2843    }
2844
2845    // Param is passed by value, moved
2846    pub fn set_revealed_attribute_dict(&mut self, v: AttributeDict) {
2847        self.revealed_attribute_dict = ::protobuf::SingularPtrField::some(v);
2848    }
2849
2850    // Mutable pointer to the field.
2851    // If field is not initialized, it is initialized with default value first.
2852    pub fn mut_revealed_attribute_dict(&mut self) -> &mut AttributeDict {
2853        if self.revealed_attribute_dict.is_none() {
2854            self.revealed_attribute_dict.set_default();
2855        }
2856        self.revealed_attribute_dict.as_mut().unwrap()
2857    }
2858
2859    // Take field
2860    pub fn take_revealed_attribute_dict(&mut self) -> AttributeDict {
2861        self.revealed_attribute_dict.take().unwrap_or_else(|| AttributeDict::new())
2862    }
2863
2864    // bool bool_result = 12;
2865
2866
2867    pub fn get_bool_result(&self) -> bool {
2868        self.bool_result
2869    }
2870    pub fn clear_bool_result(&mut self) {
2871        self.bool_result = false;
2872    }
2873
2874    // Param is passed by value, moved
2875    pub fn set_bool_result(&mut self, v: bool) {
2876        self.bool_result = v;
2877    }
2878}
2879
2880impl ::protobuf::Message for ScdResult {
2881    fn is_initialized(&self) -> bool {
2882        for v in &self.certificate_template {
2883            if !v.is_initialized() {
2884                return false;
2885            }
2886        };
2887        for v in &self.template_private_key {
2888            if !v.is_initialized() {
2889                return false;
2890            }
2891        };
2892        for v in &self.certificate_signature {
2893            if !v.is_initialized() {
2894                return false;
2895            }
2896        };
2897        for v in &self.sign_certificate_request {
2898            if !v.is_initialized() {
2899                return false;
2900            }
2901        };
2902        for v in &self.verify_request {
2903            if !v.is_initialized() {
2904                return false;
2905            }
2906        };
2907        for v in &self.revealed_attribute_dict {
2908            if !v.is_initialized() {
2909                return false;
2910            }
2911        };
2912        true
2913    }
2914
2915    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2916        while !is.eof()? {
2917            let (field_number, wire_type) = is.read_tag_unpack()?;
2918            match field_number {
2919                1 => {
2920                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.certificate_template)?;
2921                },
2922                2 => {
2923                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.template_private_key)?;
2924                },
2925                3 => {
2926                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.issuer_nonce)?;
2927                },
2928                4 => {
2929                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.certificate_signature)?;
2930                },
2931                5 => {
2932                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.user_nonce)?;
2933                },
2934                6 => {
2935                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.sign_certificate_request)?;
2936                },
2937                7 => {
2938                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.user_private_key)?;
2939                },
2940                8 => {
2941                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.certificate_secrets_blinding_factors)?;
2942                },
2943                9 => {
2944                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.verification_nonce)?;
2945                },
2946                10 => {
2947                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.verify_request)?;
2948                },
2949                11 => {
2950                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.revealed_attribute_dict)?;
2951                },
2952                12 => {
2953                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
2954                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2955                    }
2956                    let tmp = is.read_bool()?;
2957                    self.bool_result = tmp;
2958                },
2959                _ => {
2960                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
2961                },
2962            };
2963        }
2964        ::std::result::Result::Ok(())
2965    }
2966
2967    // Compute sizes of nested messages
2968    #[allow(unused_variables)]
2969    fn compute_size(&self) -> u32 {
2970        let mut my_size = 0;
2971        if let Some(ref v) = self.certificate_template.as_ref() {
2972            let len = v.compute_size();
2973            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2974        }
2975        if let Some(ref v) = self.template_private_key.as_ref() {
2976            let len = v.compute_size();
2977            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2978        }
2979        if !self.issuer_nonce.is_empty() {
2980            my_size += ::protobuf::rt::string_size(3, &self.issuer_nonce);
2981        }
2982        if let Some(ref v) = self.certificate_signature.as_ref() {
2983            let len = v.compute_size();
2984            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2985        }
2986        if !self.user_nonce.is_empty() {
2987            my_size += ::protobuf::rt::string_size(5, &self.user_nonce);
2988        }
2989        if let Some(ref v) = self.sign_certificate_request.as_ref() {
2990            let len = v.compute_size();
2991            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2992        }
2993        if !self.user_private_key.is_empty() {
2994            my_size += ::protobuf::rt::string_size(7, &self.user_private_key);
2995        }
2996        if !self.certificate_secrets_blinding_factors.is_empty() {
2997            my_size += ::protobuf::rt::string_size(8, &self.certificate_secrets_blinding_factors);
2998        }
2999        if !self.verification_nonce.is_empty() {
3000            my_size += ::protobuf::rt::string_size(9, &self.verification_nonce);
3001        }
3002        if let Some(ref v) = self.verify_request.as_ref() {
3003            let len = v.compute_size();
3004            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
3005        }
3006        if let Some(ref v) = self.revealed_attribute_dict.as_ref() {
3007            let len = v.compute_size();
3008            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
3009        }
3010        if self.bool_result != false {
3011            my_size += 2;
3012        }
3013        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
3014        self.cached_size.set(my_size);
3015        my_size
3016    }
3017
3018    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3019        if let Some(ref v) = self.certificate_template.as_ref() {
3020            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3021            os.write_raw_varint32(v.get_cached_size())?;
3022            v.write_to_with_cached_sizes(os)?;
3023        }
3024        if let Some(ref v) = self.template_private_key.as_ref() {
3025            os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3026            os.write_raw_varint32(v.get_cached_size())?;
3027            v.write_to_with_cached_sizes(os)?;
3028        }
3029        if !self.issuer_nonce.is_empty() {
3030            os.write_string(3, &self.issuer_nonce)?;
3031        }
3032        if let Some(ref v) = self.certificate_signature.as_ref() {
3033            os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3034            os.write_raw_varint32(v.get_cached_size())?;
3035            v.write_to_with_cached_sizes(os)?;
3036        }
3037        if !self.user_nonce.is_empty() {
3038            os.write_string(5, &self.user_nonce)?;
3039        }
3040        if let Some(ref v) = self.sign_certificate_request.as_ref() {
3041            os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3042            os.write_raw_varint32(v.get_cached_size())?;
3043            v.write_to_with_cached_sizes(os)?;
3044        }
3045        if !self.user_private_key.is_empty() {
3046            os.write_string(7, &self.user_private_key)?;
3047        }
3048        if !self.certificate_secrets_blinding_factors.is_empty() {
3049            os.write_string(8, &self.certificate_secrets_blinding_factors)?;
3050        }
3051        if !self.verification_nonce.is_empty() {
3052            os.write_string(9, &self.verification_nonce)?;
3053        }
3054        if let Some(ref v) = self.verify_request.as_ref() {
3055            os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3056            os.write_raw_varint32(v.get_cached_size())?;
3057            v.write_to_with_cached_sizes(os)?;
3058        }
3059        if let Some(ref v) = self.revealed_attribute_dict.as_ref() {
3060            os.write_tag(11, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3061            os.write_raw_varint32(v.get_cached_size())?;
3062            v.write_to_with_cached_sizes(os)?;
3063        }
3064        if self.bool_result != false {
3065            os.write_bool(12, self.bool_result)?;
3066        }
3067        os.write_unknown_fields(self.get_unknown_fields())?;
3068        ::std::result::Result::Ok(())
3069    }
3070
3071    fn get_cached_size(&self) -> u32 {
3072        self.cached_size.get()
3073    }
3074
3075    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
3076        &self.unknown_fields
3077    }
3078
3079    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
3080        &mut self.unknown_fields
3081    }
3082
3083    fn as_any(&self) -> &dyn (::std::any::Any) {
3084        self as &dyn (::std::any::Any)
3085    }
3086    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
3087        self as &mut dyn (::std::any::Any)
3088    }
3089    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
3090        self
3091    }
3092
3093    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
3094        Self::descriptor_static()
3095    }
3096
3097    fn new() -> ScdResult {
3098        ScdResult::new()
3099    }
3100
3101    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
3102        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
3103        descriptor.get(|| {
3104            let mut fields = ::std::vec::Vec::new();
3105            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<CertificateTemplate>>(
3106                "certificate_template",
3107                |m: &ScdResult| { &m.certificate_template },
3108                |m: &mut ScdResult| { &mut m.certificate_template },
3109            ));
3110            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<TemplatePrivateKey>>(
3111                "template_private_key",
3112                |m: &ScdResult| { &m.template_private_key },
3113                |m: &mut ScdResult| { &mut m.template_private_key },
3114            ));
3115            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3116                "issuer_nonce",
3117                |m: &ScdResult| { &m.issuer_nonce },
3118                |m: &mut ScdResult| { &mut m.issuer_nonce },
3119            ));
3120            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<CertificateSignature>>(
3121                "certificate_signature",
3122                |m: &ScdResult| { &m.certificate_signature },
3123                |m: &mut ScdResult| { &mut m.certificate_signature },
3124            ));
3125            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3126                "user_nonce",
3127                |m: &ScdResult| { &m.user_nonce },
3128                |m: &mut ScdResult| { &mut m.user_nonce },
3129            ));
3130            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<SignCertificateRequest>>(
3131                "sign_certificate_request",
3132                |m: &ScdResult| { &m.sign_certificate_request },
3133                |m: &mut ScdResult| { &mut m.sign_certificate_request },
3134            ));
3135            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3136                "user_private_key",
3137                |m: &ScdResult| { &m.user_private_key },
3138                |m: &mut ScdResult| { &mut m.user_private_key },
3139            ));
3140            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3141                "certificate_secrets_blinding_factors",
3142                |m: &ScdResult| { &m.certificate_secrets_blinding_factors },
3143                |m: &mut ScdResult| { &mut m.certificate_secrets_blinding_factors },
3144            ));
3145            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3146                "verification_nonce",
3147                |m: &ScdResult| { &m.verification_nonce },
3148                |m: &mut ScdResult| { &mut m.verification_nonce },
3149            ));
3150            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<VerifyRequest>>(
3151                "verify_request",
3152                |m: &ScdResult| { &m.verify_request },
3153                |m: &mut ScdResult| { &mut m.verify_request },
3154            ));
3155            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<AttributeDict>>(
3156                "revealed_attribute_dict",
3157                |m: &ScdResult| { &m.revealed_attribute_dict },
3158                |m: &mut ScdResult| { &mut m.revealed_attribute_dict },
3159            ));
3160            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
3161                "bool_result",
3162                |m: &ScdResult| { &m.bool_result },
3163                |m: &mut ScdResult| { &mut m.bool_result },
3164            ));
3165            ::protobuf::reflect::MessageDescriptor::new_pb_name::<ScdResult>(
3166                "ScdResult",
3167                fields,
3168                file_descriptor_proto()
3169            )
3170        })
3171    }
3172
3173    fn default_instance() -> &'static ScdResult {
3174        static instance: ::protobuf::rt::LazyV2<ScdResult> = ::protobuf::rt::LazyV2::INIT;
3175        instance.get(ScdResult::new)
3176    }
3177}
3178
3179impl ::protobuf::Clear for ScdResult {
3180    fn clear(&mut self) {
3181        self.certificate_template.clear();
3182        self.template_private_key.clear();
3183        self.issuer_nonce.clear();
3184        self.certificate_signature.clear();
3185        self.user_nonce.clear();
3186        self.sign_certificate_request.clear();
3187        self.user_private_key.clear();
3188        self.certificate_secrets_blinding_factors.clear();
3189        self.verification_nonce.clear();
3190        self.verify_request.clear();
3191        self.revealed_attribute_dict.clear();
3192        self.bool_result = false;
3193        self.unknown_fields.clear();
3194    }
3195}
3196
3197impl ::std::fmt::Debug for ScdResult {
3198    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3199        ::protobuf::text_format::fmt(self, f)
3200    }
3201}
3202
3203impl ::protobuf::reflect::ProtobufValue for ScdResult {
3204    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
3205        ::protobuf::reflect::ReflectValueRef::Message(self)
3206    }
3207}
3208
3209static file_descriptor_proto_data: &'static [u8] = b"\
3210    \n\x16solution/scd/scd.proto\x12\x1acom.webank.wedpr.scd.proto\":\n\x11C\
3211    ertificateSchema\x12%\n\x0eattribute_name\x18\x01\x20\x03(\tR\rattribute\
3212    Name\"<\n\x12StringToStringPair\x12\x10\n\x03key\x18\x01\x20\x01(\tR\x03\
3213    key\x12\x14\n\x05value\x18\x02\x20\x01(\tR\x05value\"\x90\x02\n\x13Certi\
3214    ficateTemplate\x12\\\n\x12certificate_schema\x18\x01\x20\x01(\x0b2-.com.\
3215    webank.wedpr.scd.proto.CertificateSchemaR\x11certificateSchema\x12<\n\
3216    \x1atemplate_correctness_proof\x18\x02\x20\x01(\tR\x18templateCorrectnes\
3217    sProof\x12]\n\x13template_public_key\x18\x03\x20\x01(\x0b2-.com.webank.w\
3218    edpr.scd.proto.TemplatePublicKeyR\x11templatePublicKey\"%\n\x11TemplateP\
3219    ublicKey\x12\x10\n\x03key\x18\x01\x20\x01(\tR\x03key\"&\n\x12TemplatePri\
3220    vateKey\x12\x10\n\x03key\x18\x01\x20\x01(\tR\x03key\"S\n\rAttributeDict\
3221    \x12B\n\x04pair\x18\x01\x20\x03(\x0b2..com.webank.wedpr.scd.proto.String\
3222    ToStringPairR\x04pair\"\xbc\x01\n\x18BlindedCertificateSecret\x12>\n\x1b\
3223    blinded_certificate_secrets\x18\x01\x20\x01(\tR\x19blindedCertificateSec\
3224    rets\x12`\n-blinded_certificate_secrets_correctness_proof\x18\x02\x20\
3225    \x01(\tR)blindedCertificateSecretsCorrectnessProof\"\x8b\x01\n\x14Certif\
3226    icateSignature\x123\n\x15certificate_signature\x18\x01\x20\x01(\tR\x14ce\
3227    rtificateSignature\x12>\n\x1bsignature_correctness_proof\x18\x02\x20\x01\
3228    (\tR\x19signatureCorrectnessProof\"\x82\x01\n\tPredicate\x12%\n\x0eattri\
3229    bute_name\x18\x01\x20\x01(\tR\rattributeName\x12%\n\x0epredicate_type\
3230    \x18\x02\x20\x01(\tR\rpredicateType\x12'\n\x0fpredicate_value\x18\x03\
3231    \x20\x01(\x04R\x0epredicateValue\"\xa5\x01\n\x13VerificationRuleSet\x126\
3232    \n\x17revealed_attribute_name\x18\x01\x20\x03(\tR\x15revealedAttributeNa\
3233    me\x12V\n\x13attribute_predicate\x18\x02\x20\x03(\x0b2%.com.webank.wedpr\
3234    .scd.proto.PredicateR\x12attributePredicate\"\xa3\x02\n\x16SignCertifica\
3235    teRequest\x12g\n\x1acertificate_attribute_dict\x18\x01\x20\x01(\x0b2).co\
3236    m.webank.wedpr.scd.proto.AttributeDictR\x18certificateAttributeDict\x12>\
3237    \n\x1bblinded_certificate_secrets\x18\x02\x20\x01(\tR\x19blindedCertific\
3238    ateSecrets\x12`\n-blinded_certificate_secrets_correctness_proof\x18\x03\
3239    \x20\x01(\tR)blindedCertificateSecretsCorrectnessProof\"\xd1\x01\n\rVeri\
3240    fyRequest\x12b\n\x14certificate_template\x18\x01\x20\x01(\x0b2/.com.weba\
3241    nk.wedpr.scd.proto.CertificateTemplateR\x13certificateTemplate\x12-\n\
3242    \x12verification_proof\x18\x02\x20\x01(\tR\x11verificationProof\x12-\n\
3243    \x12verification_nonce\x18\x03\x20\x01(\tR\x11verificationNonce\"\xe8\
3244    \x06\n\tScdResult\x12b\n\x14certificate_template\x18\x01\x20\x01(\x0b2/.\
3245    com.webank.wedpr.scd.proto.CertificateTemplateR\x13certificateTemplate\
3246    \x12`\n\x14template_private_key\x18\x02\x20\x01(\x0b2..com.webank.wedpr.\
3247    scd.proto.TemplatePrivateKeyR\x12templatePrivateKey\x12!\n\x0cissuer_non\
3248    ce\x18\x03\x20\x01(\tR\x0bissuerNonce\x12e\n\x15certificate_signature\
3249    \x18\x04\x20\x01(\x0b20.com.webank.wedpr.scd.proto.CertificateSignatureR\
3250    \x14certificateSignature\x12\x1d\n\nuser_nonce\x18\x05\x20\x01(\tR\tuser\
3251    Nonce\x12l\n\x18sign_certificate_request\x18\x06\x20\x01(\x0b22.com.weba\
3252    nk.wedpr.scd.proto.SignCertificateRequestR\x16signCertificateRequest\x12\
3253    (\n\x10user_private_key\x18\x07\x20\x01(\tR\x0euserPrivateKey\x12O\n$cer\
3254    tificate_secrets_blinding_factors\x18\x08\x20\x01(\tR!certificateSecrets\
3255    BlindingFactors\x12-\n\x12verification_nonce\x18\t\x20\x01(\tR\x11verifi\
3256    cationNonce\x12P\n\x0everify_request\x18\n\x20\x01(\x0b2).com.webank.wed\
3257    pr.scd.proto.VerifyRequestR\rverifyRequest\x12a\n\x17revealed_attribute_\
3258    dict\x18\x0b\x20\x01(\x0b2).com.webank.wedpr.scd.proto.AttributeDictR\
3259    \x15revealedAttributeDict\x12\x1f\n\x0bbool_result\x18\x0c\x20\x01(\x08R\
3260    \nboolResultB\x1e\n\x1acom.webank.wedpr.scd.protoP\x01b\x06proto3\
3261";
3262
3263static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT;
3264
3265fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
3266    ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
3267}
3268
3269pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
3270    file_descriptor_proto_lazy.get(|| {
3271        parse_descriptor_proto()
3272    })
3273}