1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications)] const _IMPL_DESERIALIZE_FOR_Status: () = { extern crate serde as _serde; #[automatically_derived] impl _serde::de::Deserialize for Status { fn deserialize<__D>(deserializer: &mut __D) -> ::std::result::Result<Status, __D::Error> where __D: _serde::de::Deserializer { #[allow(non_camel_case_types)] enum __Field { __field0, __field1, __ignore, } impl _serde::de::Deserialize for __Field { #[inline] fn deserialize<__D>(deserializer: &mut __D) -> ::std::result::Result<__Field, __D::Error> where __D: _serde::de::Deserializer { struct __FieldVisitor; impl _serde::de::Visitor for __FieldVisitor { type Value = __Field; fn visit_usize<__E>(&mut self, value: usize) -> ::std::result::Result<__Field, __E> where __E: _serde::de::Error { match value { 0usize => { Ok(__Field::__field0) } 1usize => { Ok(__Field::__field1) } _ => Ok(__Field::__ignore), } } fn visit_str<__E>(&mut self, value: &str) -> ::std::result::Result<__Field, __E> where __E: _serde::de::Error { match value { "text" => { Ok(__Field::__field0) } "audio" => { Ok(__Field::__field1) } _ => Ok(__Field::__ignore), } } fn visit_bytes<__E>(&mut self, value: &[u8]) -> ::std::result::Result<__Field, __E> where __E: _serde::de::Error { match value { b"text" => { Ok(__Field::__field0) } b"audio" => { Ok(__Field::__field1) } _ => Ok(__Field::__ignore), } } } deserializer.deserialize_struct_field(__FieldVisitor) } } struct __Visitor; impl _serde::de::Visitor for __Visitor { type Value = Status; #[inline] fn visit_seq<__V>(&mut self, mut visitor: __V) -> ::std::result::Result<Status, __V::Error> where __V: _serde::de::SeqVisitor { let __field0 = match try!(visitor . visit :: < String > ( )) { Some(value) => { value } None => { try!(visitor . end ( )); return Err(_serde::de::Error::invalid_length(0usize)); } }; let __field1 = match try!(visitor . visit :: < Option<Audio> > ( )) { Some(value) => { value } None => { try!(visitor . end ( )); return Err(_serde::de::Error::invalid_length(1usize)); } }; try!(visitor . end ( )); Ok(Status{text: __field0, audio: __field1,}) } #[inline] fn visit_map<__V>(&mut self, mut visitor: __V) -> ::std::result::Result<Status, __V::Error> where __V: _serde::de::MapVisitor { let mut __field0: Option<String> = None; let mut __field1: Option<Option<Audio>> = None; while let Some(key) = try!(visitor . visit_key :: < __Field > ( )) { match key { __Field::__field0 => { if __field0.is_some() { return Err(<__V::Error as _serde::de::Error>::duplicate_field("text")); } __field0 = Some(try!(visitor . visit_value :: < String > ( ))); } __Field::__field1 => { if __field1.is_some() { return Err(<__V::Error as _serde::de::Error>::duplicate_field("audio")); } __field1 = Some(try!(visitor . visit_value :: < Option<Audio> > ( ))); } _ => { try!(visitor . visit_value :: < _serde :: de :: impls :: IgnoredAny > ( )); } } } try!(visitor . end ( )); let __field0 = match __field0 { Some(__field0) => __field0, None => try!(visitor . missing_field ( "text" )), }; let __field1 = match __field1 { Some(__field1) => __field1, None => try!(visitor . missing_field ( "audio" )), }; Ok(Status{text: __field0, audio: __field1,}) } } const FIELDS: &'static [&'static str] = &["text", "audio"]; deserializer.deserialize_struct("Status", FIELDS, __Visitor) } } }; #[derive(Clone, Eq, PartialEq, Debug)] pub struct Status { pub text: String, pub audio: Option<Audio>, }