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