1 use serde::Serialize; 2 enum SerEnum<'a, B: 'a, C: 'a, D> 3 where 4 D: 'a, 5 { 6 Unit, 7 Seq(i8, B, &'a C, &'a mut D), 8 Map { a: i8, b: B, c: &'a C, d: &'a mut D }, 9 _Unit2, 10 _Seq2(i8, B, &'a C, &'a mut D), 11 _Map2 { a: i8, b: B, c: &'a C, d: &'a mut D }, 12 } 13 #[doc(hidden)] 14 #[allow(non_upper_case_globals, unused_attributes, unused_qualifications)] 15 const _: () = { 16 #[allow(unused_extern_crates, clippy::useless_attribute)] 17 extern crate serde as _serde; 18 #[automatically_derived] 19 impl<'a, B: 'a, C: 'a, D> _serde::Serialize for SerEnum<'a, B, C, D> 20 where 21 D: 'a, 22 B: _serde::Serialize, 23 C: _serde::Serialize, 24 D: _serde::Serialize, 25 { serialize<__S>( &self, __serializer: __S, ) -> _serde::__private::Result<__S::Ok, __S::Error> where __S: _serde::Serializer,26 fn serialize<__S>( 27 &self, 28 __serializer: __S, 29 ) -> _serde::__private::Result<__S::Ok, __S::Error> 30 where 31 __S: _serde::Serializer, 32 { 33 match *self { 34 SerEnum::Unit => _serde::Serializer::serialize_unit_variant( 35 __serializer, 36 "SerEnum", 37 0u32, 38 "Unit", 39 ), 40 SerEnum::Seq(ref __field0, ref __field1, ref __field2, ref __field3) => { 41 let mut __serde_state = match _serde::Serializer::serialize_tuple_variant( 42 __serializer, 43 "SerEnum", 44 1u32, 45 "Seq", 46 0 + 1 + 1 + 1 + 1, 47 ) { 48 _serde::__private::Ok(__val) => __val, 49 _serde::__private::Err(__err) => { 50 return _serde::__private::Err(__err); 51 } 52 }; 53 match _serde::ser::SerializeTupleVariant::serialize_field( 54 &mut __serde_state, 55 __field0, 56 ) { 57 _serde::__private::Ok(__val) => __val, 58 _serde::__private::Err(__err) => { 59 return _serde::__private::Err(__err); 60 } 61 }; 62 match _serde::ser::SerializeTupleVariant::serialize_field( 63 &mut __serde_state, 64 __field1, 65 ) { 66 _serde::__private::Ok(__val) => __val, 67 _serde::__private::Err(__err) => { 68 return _serde::__private::Err(__err); 69 } 70 }; 71 match _serde::ser::SerializeTupleVariant::serialize_field( 72 &mut __serde_state, 73 __field2, 74 ) { 75 _serde::__private::Ok(__val) => __val, 76 _serde::__private::Err(__err) => { 77 return _serde::__private::Err(__err); 78 } 79 }; 80 match _serde::ser::SerializeTupleVariant::serialize_field( 81 &mut __serde_state, 82 __field3, 83 ) { 84 _serde::__private::Ok(__val) => __val, 85 _serde::__private::Err(__err) => { 86 return _serde::__private::Err(__err); 87 } 88 }; 89 _serde::ser::SerializeTupleVariant::end(__serde_state) 90 } 91 SerEnum::Map { 92 ref a, 93 ref b, 94 ref c, 95 ref d, 96 } => { 97 let mut __serde_state = match _serde::Serializer::serialize_struct_variant( 98 __serializer, 99 "SerEnum", 100 2u32, 101 "Map", 102 0 + 1 + 1 + 1 + 1, 103 ) { 104 _serde::__private::Ok(__val) => __val, 105 _serde::__private::Err(__err) => { 106 return _serde::__private::Err(__err); 107 } 108 }; 109 match _serde::ser::SerializeStructVariant::serialize_field( 110 &mut __serde_state, 111 "a", 112 a, 113 ) { 114 _serde::__private::Ok(__val) => __val, 115 _serde::__private::Err(__err) => { 116 return _serde::__private::Err(__err); 117 } 118 }; 119 match _serde::ser::SerializeStructVariant::serialize_field( 120 &mut __serde_state, 121 "b", 122 b, 123 ) { 124 _serde::__private::Ok(__val) => __val, 125 _serde::__private::Err(__err) => { 126 return _serde::__private::Err(__err); 127 } 128 }; 129 match _serde::ser::SerializeStructVariant::serialize_field( 130 &mut __serde_state, 131 "c", 132 c, 133 ) { 134 _serde::__private::Ok(__val) => __val, 135 _serde::__private::Err(__err) => { 136 return _serde::__private::Err(__err); 137 } 138 }; 139 match _serde::ser::SerializeStructVariant::serialize_field( 140 &mut __serde_state, 141 "d", 142 d, 143 ) { 144 _serde::__private::Ok(__val) => __val, 145 _serde::__private::Err(__err) => { 146 return _serde::__private::Err(__err); 147 } 148 }; 149 _serde::ser::SerializeStructVariant::end(__serde_state) 150 } 151 SerEnum::_Unit2 => _serde::Serializer::serialize_unit_variant( 152 __serializer, 153 "SerEnum", 154 3u32, 155 "_Unit2", 156 ), 157 SerEnum::_Seq2(ref __field0, ref __field1, ref __field2, ref __field3) => { 158 let mut __serde_state = match _serde::Serializer::serialize_tuple_variant( 159 __serializer, 160 "SerEnum", 161 4u32, 162 "_Seq2", 163 0 + 1 + 1 + 1 + 1, 164 ) { 165 _serde::__private::Ok(__val) => __val, 166 _serde::__private::Err(__err) => { 167 return _serde::__private::Err(__err); 168 } 169 }; 170 match _serde::ser::SerializeTupleVariant::serialize_field( 171 &mut __serde_state, 172 __field0, 173 ) { 174 _serde::__private::Ok(__val) => __val, 175 _serde::__private::Err(__err) => { 176 return _serde::__private::Err(__err); 177 } 178 }; 179 match _serde::ser::SerializeTupleVariant::serialize_field( 180 &mut __serde_state, 181 __field1, 182 ) { 183 _serde::__private::Ok(__val) => __val, 184 _serde::__private::Err(__err) => { 185 return _serde::__private::Err(__err); 186 } 187 }; 188 match _serde::ser::SerializeTupleVariant::serialize_field( 189 &mut __serde_state, 190 __field2, 191 ) { 192 _serde::__private::Ok(__val) => __val, 193 _serde::__private::Err(__err) => { 194 return _serde::__private::Err(__err); 195 } 196 }; 197 match _serde::ser::SerializeTupleVariant::serialize_field( 198 &mut __serde_state, 199 __field3, 200 ) { 201 _serde::__private::Ok(__val) => __val, 202 _serde::__private::Err(__err) => { 203 return _serde::__private::Err(__err); 204 } 205 }; 206 _serde::ser::SerializeTupleVariant::end(__serde_state) 207 } 208 SerEnum::_Map2 { 209 ref a, 210 ref b, 211 ref c, 212 ref d, 213 } => { 214 let mut __serde_state = match _serde::Serializer::serialize_struct_variant( 215 __serializer, 216 "SerEnum", 217 5u32, 218 "_Map2", 219 0 + 1 + 1 + 1 + 1, 220 ) { 221 _serde::__private::Ok(__val) => __val, 222 _serde::__private::Err(__err) => { 223 return _serde::__private::Err(__err); 224 } 225 }; 226 match _serde::ser::SerializeStructVariant::serialize_field( 227 &mut __serde_state, 228 "a", 229 a, 230 ) { 231 _serde::__private::Ok(__val) => __val, 232 _serde::__private::Err(__err) => { 233 return _serde::__private::Err(__err); 234 } 235 }; 236 match _serde::ser::SerializeStructVariant::serialize_field( 237 &mut __serde_state, 238 "b", 239 b, 240 ) { 241 _serde::__private::Ok(__val) => __val, 242 _serde::__private::Err(__err) => { 243 return _serde::__private::Err(__err); 244 } 245 }; 246 match _serde::ser::SerializeStructVariant::serialize_field( 247 &mut __serde_state, 248 "c", 249 c, 250 ) { 251 _serde::__private::Ok(__val) => __val, 252 _serde::__private::Err(__err) => { 253 return _serde::__private::Err(__err); 254 } 255 }; 256 match _serde::ser::SerializeStructVariant::serialize_field( 257 &mut __serde_state, 258 "d", 259 d, 260 ) { 261 _serde::__private::Ok(__val) => __val, 262 _serde::__private::Err(__err) => { 263 return _serde::__private::Err(__err); 264 } 265 }; 266 _serde::ser::SerializeStructVariant::end(__serde_state) 267 } 268 } 269 } 270 } 271 }; 272