blob: 05a5f70ca5b4c3124ed70240e931c6878d4acd67 [file] [log] [blame]
David Tolnay3c3c7d12019-05-08 14:54:12 -07001// This file is @generated by syn-internal-codegen.
2// It is not intended for manual editing.
3
4use super::{Lite, RefCast};
5use std::fmt::{self, Debug};
6impl Debug for Lite<syn::Abi> {
7 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07008 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07009 let mut formatter = formatter.debug_struct("Abi");
David Tolnay5302f0e2019-05-08 23:26:18 -070010 if let Some(val) = &_val.name {
David Tolnay3c3c7d12019-05-08 14:54:12 -070011 #[derive(RefCast)]
12 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -070013 struct Print(syn::LitStr);
David Tolnay3c3c7d12019-05-08 14:54:12 -070014 impl Debug for Print {
15 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -070016 formatter.write_str("Some")?;
17 let _val = &self.0;
18 formatter.write_str("(")?;
19 Debug::fmt(Lite(_val), formatter)?;
20 formatter.write_str(")")?;
21 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -070022 }
23 }
David Tolnay644246b2019-05-08 23:02:46 -070024 formatter.field("name", Print::ref_cast(val));
25 }
David Tolnay3c3c7d12019-05-08 14:54:12 -070026 formatter.finish()
27 }
28}
29impl Debug for Lite<syn::AngleBracketedGenericArguments> {
30 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -070031 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -070032 let mut formatter = formatter.debug_struct("AngleBracketedGenericArguments");
David Tolnay5302f0e2019-05-08 23:26:18 -070033 if let Some(val) = &_val.colon2_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -070034 #[derive(RefCast)]
35 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -070036 struct Print(syn::token::Colon2);
David Tolnay3c3c7d12019-05-08 14:54:12 -070037 impl Debug for Print {
38 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -070039 formatter.write_str("Some")?;
40 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -070041 }
42 }
David Tolnay644246b2019-05-08 23:02:46 -070043 formatter.field("colon2_token", Print::ref_cast(val));
44 }
David Tolnaycaac6272019-05-09 11:26:37 -070045 if !_val.args.is_empty() {
46 formatter.field("args", Lite(&_val.args));
47 }
David Tolnay3c3c7d12019-05-08 14:54:12 -070048 formatter.finish()
49 }
50}
51impl Debug for Lite<syn::ArgCaptured> {
52 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -070053 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -070054 let mut formatter = formatter.debug_struct("ArgCaptured");
David Tolnay5302f0e2019-05-08 23:26:18 -070055 formatter.field("pat", Lite(&_val.pat));
56 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -070057 formatter.finish()
58 }
59}
60impl Debug for Lite<syn::ArgSelf> {
61 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -070062 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -070063 let mut formatter = formatter.debug_struct("ArgSelf");
David Tolnay5302f0e2019-05-08 23:26:18 -070064 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -070065 #[derive(RefCast)]
66 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -070067 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -070068 impl Debug for Print {
69 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -070070 formatter.write_str("Some")?;
71 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -070072 }
73 }
David Tolnay644246b2019-05-08 23:02:46 -070074 formatter.field("mutability", Print::ref_cast(val));
75 }
David Tolnay3c3c7d12019-05-08 14:54:12 -070076 formatter.finish()
77 }
78}
79impl Debug for Lite<syn::ArgSelfRef> {
80 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -070081 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -070082 let mut formatter = formatter.debug_struct("ArgSelfRef");
David Tolnay5302f0e2019-05-08 23:26:18 -070083 if let Some(val) = &_val.lifetime {
David Tolnay3c3c7d12019-05-08 14:54:12 -070084 #[derive(RefCast)]
85 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -070086 struct Print(syn::Lifetime);
David Tolnay3c3c7d12019-05-08 14:54:12 -070087 impl Debug for Print {
88 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -070089 formatter.write_str("Some")?;
90 let _val = &self.0;
91 formatter.write_str("(")?;
92 Debug::fmt(Lite(_val), formatter)?;
93 formatter.write_str(")")?;
94 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -070095 }
96 }
David Tolnay644246b2019-05-08 23:02:46 -070097 formatter.field("lifetime", Print::ref_cast(val));
98 }
David Tolnay5302f0e2019-05-08 23:26:18 -070099 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700100 #[derive(RefCast)]
101 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700102 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -0700103 impl Debug for Print {
104 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700105 formatter.write_str("Some")?;
106 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700107 }
108 }
David Tolnay644246b2019-05-08 23:02:46 -0700109 formatter.field("mutability", Print::ref_cast(val));
110 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700111 formatter.finish()
112 }
113}
114impl Debug for Lite<syn::Arm> {
115 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700116 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700117 let mut formatter = formatter.debug_struct("Arm");
David Tolnaycaac6272019-05-09 11:26:37 -0700118 if !_val.attrs.is_empty() {
119 formatter.field("attrs", Lite(&_val.attrs));
120 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700121 if let Some(val) = &_val.leading_vert {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700122 #[derive(RefCast)]
123 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700124 struct Print(syn::token::Or);
David Tolnay3c3c7d12019-05-08 14:54:12 -0700125 impl Debug for Print {
126 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700127 formatter.write_str("Some")?;
128 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700129 }
130 }
David Tolnay644246b2019-05-08 23:02:46 -0700131 formatter.field("leading_vert", Print::ref_cast(val));
132 }
David Tolnaycaac6272019-05-09 11:26:37 -0700133 if !_val.pats.is_empty() {
134 formatter.field("pats", Lite(&_val.pats));
135 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700136 if let Some(val) = &_val.guard {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700137 #[derive(RefCast)]
138 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700139 struct Print((syn::token::If, Box<syn::Expr>));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700140 impl Debug for Print {
141 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700142 formatter.write_str("Some")?;
143 let _val = &self.0;
144 formatter.write_str("(")?;
145 Debug::fmt(Lite(&_val.1), formatter)?;
146 formatter.write_str(")")?;
147 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700148 }
149 }
David Tolnay644246b2019-05-08 23:02:46 -0700150 formatter.field("guard", Print::ref_cast(val));
151 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700152 formatter.field("body", Lite(&_val.body));
153 if let Some(val) = &_val.comma {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700154 #[derive(RefCast)]
155 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700156 struct Print(syn::token::Comma);
David Tolnay3c3c7d12019-05-08 14:54:12 -0700157 impl Debug for Print {
158 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700159 formatter.write_str("Some")?;
160 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700161 }
162 }
David Tolnay644246b2019-05-08 23:02:46 -0700163 formatter.field("comma", Print::ref_cast(val));
164 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700165 formatter.finish()
166 }
167}
168impl Debug for Lite<syn::AttrStyle> {
169 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700170 let _val = &self.value;
171 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700172 syn::AttrStyle::Outer => formatter.write_str("Outer"),
173 syn::AttrStyle::Inner(_v0) => {
174 let mut formatter = formatter.debug_tuple("Inner");
175 formatter.finish()
176 }
177 }
178 }
179}
180impl Debug for Lite<syn::Attribute> {
181 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700182 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700183 let mut formatter = formatter.debug_struct("Attribute");
David Tolnay5302f0e2019-05-08 23:26:18 -0700184 formatter.field("style", Lite(&_val.style));
185 formatter.field("path", Lite(&_val.path));
186 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700187 formatter.finish()
188 }
189}
190impl Debug for Lite<syn::BareFnArg> {
191 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700192 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700193 let mut formatter = formatter.debug_struct("BareFnArg");
David Tolnay5302f0e2019-05-08 23:26:18 -0700194 if let Some(val) = &_val.name {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700195 #[derive(RefCast)]
196 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700197 struct Print((syn::BareFnArgName, syn::token::Colon));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700198 impl Debug for Print {
199 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700200 formatter.write_str("Some")?;
201 let _val = &self.0;
202 formatter.write_str("(")?;
203 Debug::fmt(Lite(&_val.0), formatter)?;
204 formatter.write_str(")")?;
205 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700206 }
207 }
David Tolnay644246b2019-05-08 23:02:46 -0700208 formatter.field("name", Print::ref_cast(val));
209 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700210 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700211 formatter.finish()
212 }
213}
214impl Debug for Lite<syn::BareFnArgName> {
215 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700216 let _val = &self.value;
217 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700218 syn::BareFnArgName::Named(_v0) => {
219 let mut formatter = formatter.debug_tuple("Named");
220 formatter.field(Lite(_v0));
221 formatter.finish()
222 }
223 syn::BareFnArgName::Wild(_v0) => {
224 let mut formatter = formatter.debug_tuple("Wild");
225 formatter.finish()
226 }
227 }
228 }
229}
230impl Debug for Lite<syn::BinOp> {
231 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700232 let _val = &self.value;
233 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700234 syn::BinOp::Add(_v0) => {
235 let mut formatter = formatter.debug_tuple("Add");
236 formatter.finish()
237 }
238 syn::BinOp::Sub(_v0) => {
239 let mut formatter = formatter.debug_tuple("Sub");
240 formatter.finish()
241 }
242 syn::BinOp::Mul(_v0) => {
243 let mut formatter = formatter.debug_tuple("Mul");
244 formatter.finish()
245 }
246 syn::BinOp::Div(_v0) => {
247 let mut formatter = formatter.debug_tuple("Div");
248 formatter.finish()
249 }
250 syn::BinOp::Rem(_v0) => {
251 let mut formatter = formatter.debug_tuple("Rem");
252 formatter.finish()
253 }
254 syn::BinOp::And(_v0) => {
255 let mut formatter = formatter.debug_tuple("And");
256 formatter.finish()
257 }
258 syn::BinOp::Or(_v0) => {
259 let mut formatter = formatter.debug_tuple("Or");
260 formatter.finish()
261 }
262 syn::BinOp::BitXor(_v0) => {
263 let mut formatter = formatter.debug_tuple("BitXor");
264 formatter.finish()
265 }
266 syn::BinOp::BitAnd(_v0) => {
267 let mut formatter = formatter.debug_tuple("BitAnd");
268 formatter.finish()
269 }
270 syn::BinOp::BitOr(_v0) => {
271 let mut formatter = formatter.debug_tuple("BitOr");
272 formatter.finish()
273 }
274 syn::BinOp::Shl(_v0) => {
275 let mut formatter = formatter.debug_tuple("Shl");
276 formatter.finish()
277 }
278 syn::BinOp::Shr(_v0) => {
279 let mut formatter = formatter.debug_tuple("Shr");
280 formatter.finish()
281 }
282 syn::BinOp::Eq(_v0) => {
283 let mut formatter = formatter.debug_tuple("Eq");
284 formatter.finish()
285 }
286 syn::BinOp::Lt(_v0) => {
287 let mut formatter = formatter.debug_tuple("Lt");
288 formatter.finish()
289 }
290 syn::BinOp::Le(_v0) => {
291 let mut formatter = formatter.debug_tuple("Le");
292 formatter.finish()
293 }
294 syn::BinOp::Ne(_v0) => {
295 let mut formatter = formatter.debug_tuple("Ne");
296 formatter.finish()
297 }
298 syn::BinOp::Ge(_v0) => {
299 let mut formatter = formatter.debug_tuple("Ge");
300 formatter.finish()
301 }
302 syn::BinOp::Gt(_v0) => {
303 let mut formatter = formatter.debug_tuple("Gt");
304 formatter.finish()
305 }
306 syn::BinOp::AddEq(_v0) => {
307 let mut formatter = formatter.debug_tuple("AddEq");
308 formatter.finish()
309 }
310 syn::BinOp::SubEq(_v0) => {
311 let mut formatter = formatter.debug_tuple("SubEq");
312 formatter.finish()
313 }
314 syn::BinOp::MulEq(_v0) => {
315 let mut formatter = formatter.debug_tuple("MulEq");
316 formatter.finish()
317 }
318 syn::BinOp::DivEq(_v0) => {
319 let mut formatter = formatter.debug_tuple("DivEq");
320 formatter.finish()
321 }
322 syn::BinOp::RemEq(_v0) => {
323 let mut formatter = formatter.debug_tuple("RemEq");
324 formatter.finish()
325 }
326 syn::BinOp::BitXorEq(_v0) => {
327 let mut formatter = formatter.debug_tuple("BitXorEq");
328 formatter.finish()
329 }
330 syn::BinOp::BitAndEq(_v0) => {
331 let mut formatter = formatter.debug_tuple("BitAndEq");
332 formatter.finish()
333 }
334 syn::BinOp::BitOrEq(_v0) => {
335 let mut formatter = formatter.debug_tuple("BitOrEq");
336 formatter.finish()
337 }
338 syn::BinOp::ShlEq(_v0) => {
339 let mut formatter = formatter.debug_tuple("ShlEq");
340 formatter.finish()
341 }
342 syn::BinOp::ShrEq(_v0) => {
343 let mut formatter = formatter.debug_tuple("ShrEq");
344 formatter.finish()
345 }
346 }
347 }
348}
349impl Debug for Lite<syn::Binding> {
350 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700351 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700352 let mut formatter = formatter.debug_struct("Binding");
David Tolnay5302f0e2019-05-08 23:26:18 -0700353 formatter.field("ident", Lite(&_val.ident));
354 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700355 formatter.finish()
356 }
357}
358impl Debug for Lite<syn::Block> {
359 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700360 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700361 let mut formatter = formatter.debug_struct("Block");
David Tolnaycaac6272019-05-09 11:26:37 -0700362 if !_val.stmts.is_empty() {
363 formatter.field("stmts", Lite(&_val.stmts));
364 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700365 formatter.finish()
366 }
367}
368impl Debug for Lite<syn::BoundLifetimes> {
369 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700370 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700371 let mut formatter = formatter.debug_struct("BoundLifetimes");
David Tolnaycaac6272019-05-09 11:26:37 -0700372 if !_val.lifetimes.is_empty() {
373 formatter.field("lifetimes", Lite(&_val.lifetimes));
374 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700375 formatter.finish()
376 }
377}
378impl Debug for Lite<syn::ConstParam> {
379 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700380 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700381 let mut formatter = formatter.debug_struct("ConstParam");
David Tolnaycaac6272019-05-09 11:26:37 -0700382 if !_val.attrs.is_empty() {
383 formatter.field("attrs", Lite(&_val.attrs));
384 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700385 formatter.field("ident", Lite(&_val.ident));
386 formatter.field("ty", Lite(&_val.ty));
387 if let Some(val) = &_val.eq_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700388 #[derive(RefCast)]
389 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700390 struct Print(syn::token::Eq);
David Tolnay3c3c7d12019-05-08 14:54:12 -0700391 impl Debug for Print {
392 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700393 formatter.write_str("Some")?;
394 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700395 }
396 }
David Tolnay644246b2019-05-08 23:02:46 -0700397 formatter.field("eq_token", Print::ref_cast(val));
398 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700399 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700400 #[derive(RefCast)]
401 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700402 struct Print(syn::Expr);
David Tolnay3c3c7d12019-05-08 14:54:12 -0700403 impl Debug for Print {
404 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700405 formatter.write_str("Some")?;
406 let _val = &self.0;
407 formatter.write_str("(")?;
408 Debug::fmt(Lite(_val), formatter)?;
409 formatter.write_str(")")?;
410 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700411 }
412 }
David Tolnay644246b2019-05-08 23:02:46 -0700413 formatter.field("default", Print::ref_cast(val));
414 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700415 formatter.finish()
416 }
417}
418impl Debug for Lite<syn::Constraint> {
419 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700420 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700421 let mut formatter = formatter.debug_struct("Constraint");
David Tolnay5302f0e2019-05-08 23:26:18 -0700422 formatter.field("ident", Lite(&_val.ident));
David Tolnaycaac6272019-05-09 11:26:37 -0700423 if !_val.bounds.is_empty() {
424 formatter.field("bounds", Lite(&_val.bounds));
425 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700426 formatter.finish()
427 }
428}
429impl Debug for Lite<syn::Data> {
430 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700431 let _val = &self.value;
432 match _val {
433 syn::Data::Struct(_val) => {
434 let mut formatter = formatter.debug_struct("Data::Struct");
435 formatter.field("fields", Lite(&_val.fields));
436 if let Some(val) = &_val.semi_token {
437 #[derive(RefCast)]
438 #[repr(transparent)]
439 struct Print(syn::token::Semi);
440 impl Debug for Print {
441 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
442 formatter.write_str("Some")?;
443 Ok(())
444 }
445 }
446 formatter.field("semi_token", Print::ref_cast(val));
447 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700448 formatter.finish()
449 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700450 syn::Data::Enum(_val) => {
451 let mut formatter = formatter.debug_struct("Data::Enum");
David Tolnaycaac6272019-05-09 11:26:37 -0700452 if !_val.variants.is_empty() {
453 formatter.field("variants", Lite(&_val.variants));
454 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700455 formatter.finish()
456 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700457 syn::Data::Union(_val) => {
458 let mut formatter = formatter.debug_struct("Data::Union");
459 formatter.field("fields", Lite(&_val.fields));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700460 formatter.finish()
461 }
462 }
463 }
464}
465impl Debug for Lite<syn::DataEnum> {
466 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700467 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700468 let mut formatter = formatter.debug_struct("DataEnum");
David Tolnaycaac6272019-05-09 11:26:37 -0700469 if !_val.variants.is_empty() {
470 formatter.field("variants", Lite(&_val.variants));
471 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700472 formatter.finish()
473 }
474}
475impl Debug for Lite<syn::DataStruct> {
476 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700477 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700478 let mut formatter = formatter.debug_struct("DataStruct");
David Tolnay5302f0e2019-05-08 23:26:18 -0700479 formatter.field("fields", Lite(&_val.fields));
480 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700481 #[derive(RefCast)]
482 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700483 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -0700484 impl Debug for Print {
485 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700486 formatter.write_str("Some")?;
487 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700488 }
489 }
David Tolnay644246b2019-05-08 23:02:46 -0700490 formatter.field("semi_token", Print::ref_cast(val));
491 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700492 formatter.finish()
493 }
494}
495impl Debug for Lite<syn::DataUnion> {
496 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700497 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700498 let mut formatter = formatter.debug_struct("DataUnion");
David Tolnay5302f0e2019-05-08 23:26:18 -0700499 formatter.field("fields", Lite(&_val.fields));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700500 formatter.finish()
501 }
502}
503impl Debug for Lite<syn::DeriveInput> {
504 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700505 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700506 let mut formatter = formatter.debug_struct("DeriveInput");
David Tolnaycaac6272019-05-09 11:26:37 -0700507 if !_val.attrs.is_empty() {
508 formatter.field("attrs", Lite(&_val.attrs));
509 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700510 formatter.field("vis", Lite(&_val.vis));
511 formatter.field("ident", Lite(&_val.ident));
512 formatter.field("generics", Lite(&_val.generics));
513 formatter.field("data", Lite(&_val.data));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700514 formatter.finish()
515 }
516}
517impl Debug for Lite<syn::Expr> {
518 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700519 let _val = &self.value;
520 match _val {
521 syn::Expr::Box(_val) => {
522 let mut formatter = formatter.debug_struct("Expr::Box");
David Tolnaycaac6272019-05-09 11:26:37 -0700523 if !_val.attrs.is_empty() {
524 formatter.field("attrs", Lite(&_val.attrs));
525 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700526 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700527 formatter.finish()
528 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700529 syn::Expr::InPlace(_val) => {
530 let mut formatter = formatter.debug_struct("Expr::InPlace");
David Tolnaycaac6272019-05-09 11:26:37 -0700531 if !_val.attrs.is_empty() {
532 formatter.field("attrs", Lite(&_val.attrs));
533 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700534 formatter.field("place", Lite(&_val.place));
535 formatter.field("value", Lite(&_val.value));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700536 formatter.finish()
537 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700538 syn::Expr::Array(_val) => {
539 let mut formatter = formatter.debug_struct("Expr::Array");
David Tolnaycaac6272019-05-09 11:26:37 -0700540 if !_val.attrs.is_empty() {
541 formatter.field("attrs", Lite(&_val.attrs));
542 }
543 if !_val.elems.is_empty() {
544 formatter.field("elems", Lite(&_val.elems));
545 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700546 formatter.finish()
547 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700548 syn::Expr::Call(_val) => {
549 let mut formatter = formatter.debug_struct("Expr::Call");
David Tolnaycaac6272019-05-09 11:26:37 -0700550 if !_val.attrs.is_empty() {
551 formatter.field("attrs", Lite(&_val.attrs));
552 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700553 formatter.field("func", Lite(&_val.func));
David Tolnaycaac6272019-05-09 11:26:37 -0700554 if !_val.args.is_empty() {
555 formatter.field("args", Lite(&_val.args));
556 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700557 formatter.finish()
558 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700559 syn::Expr::MethodCall(_val) => {
560 let mut formatter = formatter.debug_struct("Expr::MethodCall");
David Tolnaycaac6272019-05-09 11:26:37 -0700561 if !_val.attrs.is_empty() {
562 formatter.field("attrs", Lite(&_val.attrs));
563 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700564 formatter.field("receiver", Lite(&_val.receiver));
565 formatter.field("method", Lite(&_val.method));
566 if let Some(val) = &_val.turbofish {
567 #[derive(RefCast)]
568 #[repr(transparent)]
569 struct Print(syn::MethodTurbofish);
570 impl Debug for Print {
571 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
572 formatter.write_str("Some")?;
573 let _val = &self.0;
574 formatter.write_str("(")?;
575 Debug::fmt(Lite(_val), formatter)?;
576 formatter.write_str(")")?;
577 Ok(())
578 }
579 }
580 formatter.field("turbofish", Print::ref_cast(val));
581 }
David Tolnaycaac6272019-05-09 11:26:37 -0700582 if !_val.args.is_empty() {
583 formatter.field("args", Lite(&_val.args));
584 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700585 formatter.finish()
586 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700587 syn::Expr::Tuple(_val) => {
588 let mut formatter = formatter.debug_struct("Expr::Tuple");
David Tolnaycaac6272019-05-09 11:26:37 -0700589 if !_val.attrs.is_empty() {
590 formatter.field("attrs", Lite(&_val.attrs));
591 }
592 if !_val.elems.is_empty() {
593 formatter.field("elems", Lite(&_val.elems));
594 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700595 formatter.finish()
596 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700597 syn::Expr::Binary(_val) => {
598 let mut formatter = formatter.debug_struct("Expr::Binary");
David Tolnaycaac6272019-05-09 11:26:37 -0700599 if !_val.attrs.is_empty() {
600 formatter.field("attrs", Lite(&_val.attrs));
601 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700602 formatter.field("left", Lite(&_val.left));
603 formatter.field("op", Lite(&_val.op));
604 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700605 formatter.finish()
606 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700607 syn::Expr::Unary(_val) => {
608 let mut formatter = formatter.debug_struct("Expr::Unary");
David Tolnaycaac6272019-05-09 11:26:37 -0700609 if !_val.attrs.is_empty() {
610 formatter.field("attrs", Lite(&_val.attrs));
611 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700612 formatter.field("op", Lite(&_val.op));
613 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700614 formatter.finish()
615 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700616 syn::Expr::Lit(_val) => {
617 let mut formatter = formatter.debug_struct("Expr::Lit");
David Tolnaycaac6272019-05-09 11:26:37 -0700618 if !_val.attrs.is_empty() {
619 formatter.field("attrs", Lite(&_val.attrs));
620 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700621 formatter.field("lit", Lite(&_val.lit));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700622 formatter.finish()
623 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700624 syn::Expr::Cast(_val) => {
625 let mut formatter = formatter.debug_struct("Expr::Cast");
David Tolnaycaac6272019-05-09 11:26:37 -0700626 if !_val.attrs.is_empty() {
627 formatter.field("attrs", Lite(&_val.attrs));
628 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700629 formatter.field("expr", Lite(&_val.expr));
630 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700631 formatter.finish()
632 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700633 syn::Expr::Type(_val) => {
634 let mut formatter = formatter.debug_struct("Expr::Type");
David Tolnaycaac6272019-05-09 11:26:37 -0700635 if !_val.attrs.is_empty() {
636 formatter.field("attrs", Lite(&_val.attrs));
637 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700638 formatter.field("expr", Lite(&_val.expr));
639 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700640 formatter.finish()
641 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700642 syn::Expr::Let(_val) => {
643 let mut formatter = formatter.debug_struct("Expr::Let");
David Tolnaycaac6272019-05-09 11:26:37 -0700644 if !_val.attrs.is_empty() {
645 formatter.field("attrs", Lite(&_val.attrs));
646 }
647 if !_val.pats.is_empty() {
648 formatter.field("pats", Lite(&_val.pats));
649 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700650 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700651 formatter.finish()
652 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700653 syn::Expr::If(_val) => {
654 let mut formatter = formatter.debug_struct("Expr::If");
David Tolnaycaac6272019-05-09 11:26:37 -0700655 if !_val.attrs.is_empty() {
656 formatter.field("attrs", Lite(&_val.attrs));
657 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700658 formatter.field("cond", Lite(&_val.cond));
659 formatter.field("then_branch", Lite(&_val.then_branch));
660 if let Some(val) = &_val.else_branch {
661 #[derive(RefCast)]
662 #[repr(transparent)]
663 struct Print((syn::token::Else, Box<syn::Expr>));
664 impl Debug for Print {
665 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
666 formatter.write_str("Some")?;
667 let _val = &self.0;
668 formatter.write_str("(")?;
669 Debug::fmt(Lite(&_val.1), formatter)?;
670 formatter.write_str(")")?;
671 Ok(())
672 }
673 }
674 formatter.field("else_branch", Print::ref_cast(val));
675 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700676 formatter.finish()
677 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700678 syn::Expr::While(_val) => {
679 let mut formatter = formatter.debug_struct("Expr::While");
David Tolnaycaac6272019-05-09 11:26:37 -0700680 if !_val.attrs.is_empty() {
681 formatter.field("attrs", Lite(&_val.attrs));
682 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700683 if let Some(val) = &_val.label {
684 #[derive(RefCast)]
685 #[repr(transparent)]
686 struct Print(syn::Label);
687 impl Debug for Print {
688 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
689 formatter.write_str("Some")?;
690 let _val = &self.0;
691 formatter.write_str("(")?;
692 Debug::fmt(Lite(_val), formatter)?;
693 formatter.write_str(")")?;
694 Ok(())
695 }
696 }
697 formatter.field("label", Print::ref_cast(val));
698 }
699 formatter.field("cond", Lite(&_val.cond));
700 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700701 formatter.finish()
702 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700703 syn::Expr::ForLoop(_val) => {
704 let mut formatter = formatter.debug_struct("Expr::ForLoop");
David Tolnaycaac6272019-05-09 11:26:37 -0700705 if !_val.attrs.is_empty() {
706 formatter.field("attrs", Lite(&_val.attrs));
707 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700708 if let Some(val) = &_val.label {
709 #[derive(RefCast)]
710 #[repr(transparent)]
711 struct Print(syn::Label);
712 impl Debug for Print {
713 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
714 formatter.write_str("Some")?;
715 let _val = &self.0;
716 formatter.write_str("(")?;
717 Debug::fmt(Lite(_val), formatter)?;
718 formatter.write_str(")")?;
719 Ok(())
720 }
721 }
722 formatter.field("label", Print::ref_cast(val));
723 }
724 formatter.field("pat", Lite(&_val.pat));
725 formatter.field("expr", Lite(&_val.expr));
726 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700727 formatter.finish()
728 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700729 syn::Expr::Loop(_val) => {
730 let mut formatter = formatter.debug_struct("Expr::Loop");
David Tolnaycaac6272019-05-09 11:26:37 -0700731 if !_val.attrs.is_empty() {
732 formatter.field("attrs", Lite(&_val.attrs));
733 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700734 if let Some(val) = &_val.label {
735 #[derive(RefCast)]
736 #[repr(transparent)]
737 struct Print(syn::Label);
738 impl Debug for Print {
739 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
740 formatter.write_str("Some")?;
741 let _val = &self.0;
742 formatter.write_str("(")?;
743 Debug::fmt(Lite(_val), formatter)?;
744 formatter.write_str(")")?;
745 Ok(())
746 }
747 }
748 formatter.field("label", Print::ref_cast(val));
749 }
750 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700751 formatter.finish()
752 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700753 syn::Expr::Match(_val) => {
754 let mut formatter = formatter.debug_struct("Expr::Match");
David Tolnaycaac6272019-05-09 11:26:37 -0700755 if !_val.attrs.is_empty() {
756 formatter.field("attrs", Lite(&_val.attrs));
757 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700758 formatter.field("expr", Lite(&_val.expr));
David Tolnaycaac6272019-05-09 11:26:37 -0700759 if !_val.arms.is_empty() {
760 formatter.field("arms", Lite(&_val.arms));
761 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700762 formatter.finish()
763 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700764 syn::Expr::Closure(_val) => {
765 let mut formatter = formatter.debug_struct("Expr::Closure");
David Tolnaycaac6272019-05-09 11:26:37 -0700766 if !_val.attrs.is_empty() {
767 formatter.field("attrs", Lite(&_val.attrs));
768 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700769 if let Some(val) = &_val.asyncness {
770 #[derive(RefCast)]
771 #[repr(transparent)]
772 struct Print(syn::token::Async);
773 impl Debug for Print {
774 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
775 formatter.write_str("Some")?;
776 Ok(())
777 }
778 }
779 formatter.field("asyncness", Print::ref_cast(val));
780 }
781 if let Some(val) = &_val.movability {
782 #[derive(RefCast)]
783 #[repr(transparent)]
784 struct Print(syn::token::Static);
785 impl Debug for Print {
786 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
787 formatter.write_str("Some")?;
788 Ok(())
789 }
790 }
791 formatter.field("movability", Print::ref_cast(val));
792 }
793 if let Some(val) = &_val.capture {
794 #[derive(RefCast)]
795 #[repr(transparent)]
796 struct Print(syn::token::Move);
797 impl Debug for Print {
798 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
799 formatter.write_str("Some")?;
800 Ok(())
801 }
802 }
803 formatter.field("capture", Print::ref_cast(val));
804 }
David Tolnaycaac6272019-05-09 11:26:37 -0700805 if !_val.inputs.is_empty() {
806 formatter.field("inputs", Lite(&_val.inputs));
807 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700808 formatter.field("output", Lite(&_val.output));
809 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700810 formatter.finish()
811 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700812 syn::Expr::Unsafe(_val) => {
813 let mut formatter = formatter.debug_struct("Expr::Unsafe");
David Tolnaycaac6272019-05-09 11:26:37 -0700814 if !_val.attrs.is_empty() {
815 formatter.field("attrs", Lite(&_val.attrs));
816 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700817 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700818 formatter.finish()
819 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700820 syn::Expr::Block(_val) => {
821 let mut formatter = formatter.debug_struct("Expr::Block");
David Tolnaycaac6272019-05-09 11:26:37 -0700822 if !_val.attrs.is_empty() {
823 formatter.field("attrs", Lite(&_val.attrs));
824 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700825 if let Some(val) = &_val.label {
826 #[derive(RefCast)]
827 #[repr(transparent)]
828 struct Print(syn::Label);
829 impl Debug for Print {
830 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
831 formatter.write_str("Some")?;
832 let _val = &self.0;
833 formatter.write_str("(")?;
834 Debug::fmt(Lite(_val), formatter)?;
835 formatter.write_str(")")?;
836 Ok(())
837 }
838 }
839 formatter.field("label", Print::ref_cast(val));
840 }
841 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700842 formatter.finish()
843 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700844 syn::Expr::Assign(_val) => {
845 let mut formatter = formatter.debug_struct("Expr::Assign");
David Tolnaycaac6272019-05-09 11:26:37 -0700846 if !_val.attrs.is_empty() {
847 formatter.field("attrs", Lite(&_val.attrs));
848 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700849 formatter.field("left", Lite(&_val.left));
850 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700851 formatter.finish()
852 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700853 syn::Expr::AssignOp(_val) => {
854 let mut formatter = formatter.debug_struct("Expr::AssignOp");
David Tolnaycaac6272019-05-09 11:26:37 -0700855 if !_val.attrs.is_empty() {
856 formatter.field("attrs", Lite(&_val.attrs));
857 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700858 formatter.field("left", Lite(&_val.left));
859 formatter.field("op", Lite(&_val.op));
860 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700861 formatter.finish()
862 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700863 syn::Expr::Field(_val) => {
864 let mut formatter = formatter.debug_struct("Expr::Field");
David Tolnaycaac6272019-05-09 11:26:37 -0700865 if !_val.attrs.is_empty() {
866 formatter.field("attrs", Lite(&_val.attrs));
867 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700868 formatter.field("base", Lite(&_val.base));
869 formatter.field("member", Lite(&_val.member));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700870 formatter.finish()
871 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700872 syn::Expr::Index(_val) => {
873 let mut formatter = formatter.debug_struct("Expr::Index");
David Tolnaycaac6272019-05-09 11:26:37 -0700874 if !_val.attrs.is_empty() {
875 formatter.field("attrs", Lite(&_val.attrs));
876 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700877 formatter.field("expr", Lite(&_val.expr));
878 formatter.field("index", Lite(&_val.index));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700879 formatter.finish()
880 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700881 syn::Expr::Range(_val) => {
882 let mut formatter = formatter.debug_struct("Expr::Range");
David Tolnaycaac6272019-05-09 11:26:37 -0700883 if !_val.attrs.is_empty() {
884 formatter.field("attrs", Lite(&_val.attrs));
885 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700886 if let Some(val) = &_val.from {
887 #[derive(RefCast)]
888 #[repr(transparent)]
889 struct Print(Box<syn::Expr>);
890 impl Debug for Print {
891 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
892 formatter.write_str("Some")?;
893 let _val = &self.0;
894 formatter.write_str("(")?;
895 Debug::fmt(Lite(_val), formatter)?;
896 formatter.write_str(")")?;
897 Ok(())
898 }
899 }
900 formatter.field("from", Print::ref_cast(val));
901 }
902 formatter.field("limits", Lite(&_val.limits));
903 if let Some(val) = &_val.to {
904 #[derive(RefCast)]
905 #[repr(transparent)]
906 struct Print(Box<syn::Expr>);
907 impl Debug for Print {
908 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
909 formatter.write_str("Some")?;
910 let _val = &self.0;
911 formatter.write_str("(")?;
912 Debug::fmt(Lite(_val), formatter)?;
913 formatter.write_str(")")?;
914 Ok(())
915 }
916 }
917 formatter.field("to", Print::ref_cast(val));
918 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700919 formatter.finish()
920 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700921 syn::Expr::Path(_val) => {
922 let mut formatter = formatter.debug_struct("Expr::Path");
David Tolnaycaac6272019-05-09 11:26:37 -0700923 if !_val.attrs.is_empty() {
924 formatter.field("attrs", Lite(&_val.attrs));
925 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700926 if let Some(val) = &_val.qself {
927 #[derive(RefCast)]
928 #[repr(transparent)]
929 struct Print(syn::QSelf);
930 impl Debug for Print {
931 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
932 formatter.write_str("Some")?;
933 let _val = &self.0;
934 formatter.write_str("(")?;
935 Debug::fmt(Lite(_val), formatter)?;
936 formatter.write_str(")")?;
937 Ok(())
938 }
939 }
940 formatter.field("qself", Print::ref_cast(val));
941 }
942 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700943 formatter.finish()
944 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700945 syn::Expr::Reference(_val) => {
946 let mut formatter = formatter.debug_struct("Expr::Reference");
David Tolnaycaac6272019-05-09 11:26:37 -0700947 if !_val.attrs.is_empty() {
948 formatter.field("attrs", Lite(&_val.attrs));
949 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700950 if let Some(val) = &_val.mutability {
951 #[derive(RefCast)]
952 #[repr(transparent)]
953 struct Print(syn::token::Mut);
954 impl Debug for Print {
955 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
956 formatter.write_str("Some")?;
957 Ok(())
958 }
959 }
960 formatter.field("mutability", Print::ref_cast(val));
961 }
962 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700963 formatter.finish()
964 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700965 syn::Expr::Break(_val) => {
966 let mut formatter = formatter.debug_struct("Expr::Break");
David Tolnaycaac6272019-05-09 11:26:37 -0700967 if !_val.attrs.is_empty() {
968 formatter.field("attrs", Lite(&_val.attrs));
969 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700970 if let Some(val) = &_val.label {
971 #[derive(RefCast)]
972 #[repr(transparent)]
973 struct Print(syn::Lifetime);
974 impl Debug for Print {
975 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
976 formatter.write_str("Some")?;
977 let _val = &self.0;
978 formatter.write_str("(")?;
979 Debug::fmt(Lite(_val), formatter)?;
980 formatter.write_str(")")?;
981 Ok(())
982 }
983 }
984 formatter.field("label", Print::ref_cast(val));
985 }
986 if let Some(val) = &_val.expr {
987 #[derive(RefCast)]
988 #[repr(transparent)]
989 struct Print(Box<syn::Expr>);
990 impl Debug for Print {
991 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
992 formatter.write_str("Some")?;
993 let _val = &self.0;
994 formatter.write_str("(")?;
995 Debug::fmt(Lite(_val), formatter)?;
996 formatter.write_str(")")?;
997 Ok(())
998 }
999 }
1000 formatter.field("expr", Print::ref_cast(val));
1001 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001002 formatter.finish()
1003 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001004 syn::Expr::Continue(_val) => {
1005 let mut formatter = formatter.debug_struct("Expr::Continue");
David Tolnaycaac6272019-05-09 11:26:37 -07001006 if !_val.attrs.is_empty() {
1007 formatter.field("attrs", Lite(&_val.attrs));
1008 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001009 if let Some(val) = &_val.label {
1010 #[derive(RefCast)]
1011 #[repr(transparent)]
1012 struct Print(syn::Lifetime);
1013 impl Debug for Print {
1014 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1015 formatter.write_str("Some")?;
1016 let _val = &self.0;
1017 formatter.write_str("(")?;
1018 Debug::fmt(Lite(_val), formatter)?;
1019 formatter.write_str(")")?;
1020 Ok(())
1021 }
1022 }
1023 formatter.field("label", Print::ref_cast(val));
1024 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001025 formatter.finish()
1026 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001027 syn::Expr::Return(_val) => {
1028 let mut formatter = formatter.debug_struct("Expr::Return");
David Tolnaycaac6272019-05-09 11:26:37 -07001029 if !_val.attrs.is_empty() {
1030 formatter.field("attrs", Lite(&_val.attrs));
1031 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001032 if let Some(val) = &_val.expr {
1033 #[derive(RefCast)]
1034 #[repr(transparent)]
1035 struct Print(Box<syn::Expr>);
1036 impl Debug for Print {
1037 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1038 formatter.write_str("Some")?;
1039 let _val = &self.0;
1040 formatter.write_str("(")?;
1041 Debug::fmt(Lite(_val), formatter)?;
1042 formatter.write_str(")")?;
1043 Ok(())
1044 }
1045 }
1046 formatter.field("expr", Print::ref_cast(val));
1047 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001048 formatter.finish()
1049 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001050 syn::Expr::Macro(_val) => {
1051 let mut formatter = formatter.debug_struct("Expr::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07001052 if !_val.attrs.is_empty() {
1053 formatter.field("attrs", Lite(&_val.attrs));
1054 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001055 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001056 formatter.finish()
1057 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001058 syn::Expr::Struct(_val) => {
1059 let mut formatter = formatter.debug_struct("Expr::Struct");
David Tolnaycaac6272019-05-09 11:26:37 -07001060 if !_val.attrs.is_empty() {
1061 formatter.field("attrs", Lite(&_val.attrs));
1062 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001063 formatter.field("path", Lite(&_val.path));
David Tolnaycaac6272019-05-09 11:26:37 -07001064 if !_val.fields.is_empty() {
1065 formatter.field("fields", Lite(&_val.fields));
1066 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001067 if let Some(val) = &_val.dot2_token {
1068 #[derive(RefCast)]
1069 #[repr(transparent)]
1070 struct Print(syn::token::Dot2);
1071 impl Debug for Print {
1072 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1073 formatter.write_str("Some")?;
1074 Ok(())
1075 }
1076 }
1077 formatter.field("dot2_token", Print::ref_cast(val));
1078 }
1079 if let Some(val) = &_val.rest {
1080 #[derive(RefCast)]
1081 #[repr(transparent)]
1082 struct Print(Box<syn::Expr>);
1083 impl Debug for Print {
1084 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1085 formatter.write_str("Some")?;
1086 let _val = &self.0;
1087 formatter.write_str("(")?;
1088 Debug::fmt(Lite(_val), formatter)?;
1089 formatter.write_str(")")?;
1090 Ok(())
1091 }
1092 }
1093 formatter.field("rest", Print::ref_cast(val));
1094 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001095 formatter.finish()
1096 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001097 syn::Expr::Repeat(_val) => {
1098 let mut formatter = formatter.debug_struct("Expr::Repeat");
David Tolnaycaac6272019-05-09 11:26:37 -07001099 if !_val.attrs.is_empty() {
1100 formatter.field("attrs", Lite(&_val.attrs));
1101 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001102 formatter.field("expr", Lite(&_val.expr));
1103 formatter.field("len", Lite(&_val.len));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001104 formatter.finish()
1105 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001106 syn::Expr::Paren(_val) => {
1107 let mut formatter = formatter.debug_struct("Expr::Paren");
David Tolnaycaac6272019-05-09 11:26:37 -07001108 if !_val.attrs.is_empty() {
1109 formatter.field("attrs", Lite(&_val.attrs));
1110 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001111 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001112 formatter.finish()
1113 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001114 syn::Expr::Group(_val) => {
1115 let mut formatter = formatter.debug_struct("Expr::Group");
David Tolnaycaac6272019-05-09 11:26:37 -07001116 if !_val.attrs.is_empty() {
1117 formatter.field("attrs", Lite(&_val.attrs));
1118 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001119 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001120 formatter.finish()
1121 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001122 syn::Expr::Try(_val) => {
1123 let mut formatter = formatter.debug_struct("Expr::Try");
David Tolnaycaac6272019-05-09 11:26:37 -07001124 if !_val.attrs.is_empty() {
1125 formatter.field("attrs", Lite(&_val.attrs));
1126 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001127 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001128 formatter.finish()
1129 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001130 syn::Expr::Async(_val) => {
1131 let mut formatter = formatter.debug_struct("Expr::Async");
David Tolnaycaac6272019-05-09 11:26:37 -07001132 if !_val.attrs.is_empty() {
1133 formatter.field("attrs", Lite(&_val.attrs));
1134 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001135 if let Some(val) = &_val.capture {
1136 #[derive(RefCast)]
1137 #[repr(transparent)]
1138 struct Print(syn::token::Move);
1139 impl Debug for Print {
1140 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1141 formatter.write_str("Some")?;
1142 Ok(())
1143 }
1144 }
1145 formatter.field("capture", Print::ref_cast(val));
1146 }
1147 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001148 formatter.finish()
1149 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001150 syn::Expr::TryBlock(_val) => {
1151 let mut formatter = formatter.debug_struct("Expr::TryBlock");
David Tolnaycaac6272019-05-09 11:26:37 -07001152 if !_val.attrs.is_empty() {
1153 formatter.field("attrs", Lite(&_val.attrs));
1154 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001155 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001156 formatter.finish()
1157 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001158 syn::Expr::Yield(_val) => {
1159 let mut formatter = formatter.debug_struct("Expr::Yield");
David Tolnaycaac6272019-05-09 11:26:37 -07001160 if !_val.attrs.is_empty() {
1161 formatter.field("attrs", Lite(&_val.attrs));
1162 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001163 if let Some(val) = &_val.expr {
1164 #[derive(RefCast)]
1165 #[repr(transparent)]
1166 struct Print(Box<syn::Expr>);
1167 impl Debug for Print {
1168 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1169 formatter.write_str("Some")?;
1170 let _val = &self.0;
1171 formatter.write_str("(")?;
1172 Debug::fmt(Lite(_val), formatter)?;
1173 formatter.write_str(")")?;
1174 Ok(())
1175 }
1176 }
1177 formatter.field("expr", Print::ref_cast(val));
1178 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001179 formatter.finish()
1180 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001181 syn::Expr::Verbatim(_val) => {
1182 let mut formatter = formatter.debug_struct("Expr::Verbatim");
1183 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001184 formatter.finish()
1185 }
1186 }
1187 }
1188}
1189impl Debug for Lite<syn::ExprArray> {
1190 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001191 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001192 let mut formatter = formatter.debug_struct("ExprArray");
David Tolnaycaac6272019-05-09 11:26:37 -07001193 if !_val.attrs.is_empty() {
1194 formatter.field("attrs", Lite(&_val.attrs));
1195 }
1196 if !_val.elems.is_empty() {
1197 formatter.field("elems", Lite(&_val.elems));
1198 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001199 formatter.finish()
1200 }
1201}
1202impl Debug for Lite<syn::ExprAssign> {
1203 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001204 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001205 let mut formatter = formatter.debug_struct("ExprAssign");
David Tolnaycaac6272019-05-09 11:26:37 -07001206 if !_val.attrs.is_empty() {
1207 formatter.field("attrs", Lite(&_val.attrs));
1208 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001209 formatter.field("left", Lite(&_val.left));
1210 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001211 formatter.finish()
1212 }
1213}
1214impl Debug for Lite<syn::ExprAssignOp> {
1215 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001216 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001217 let mut formatter = formatter.debug_struct("ExprAssignOp");
David Tolnaycaac6272019-05-09 11:26:37 -07001218 if !_val.attrs.is_empty() {
1219 formatter.field("attrs", Lite(&_val.attrs));
1220 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001221 formatter.field("left", Lite(&_val.left));
1222 formatter.field("op", Lite(&_val.op));
1223 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001224 formatter.finish()
1225 }
1226}
1227impl Debug for Lite<syn::ExprAsync> {
1228 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001229 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001230 let mut formatter = formatter.debug_struct("ExprAsync");
David Tolnaycaac6272019-05-09 11:26:37 -07001231 if !_val.attrs.is_empty() {
1232 formatter.field("attrs", Lite(&_val.attrs));
1233 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001234 if let Some(val) = &_val.capture {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001235 #[derive(RefCast)]
1236 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001237 struct Print(syn::token::Move);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001238 impl Debug for Print {
1239 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001240 formatter.write_str("Some")?;
1241 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001242 }
1243 }
David Tolnay644246b2019-05-08 23:02:46 -07001244 formatter.field("capture", Print::ref_cast(val));
1245 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001246 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001247 formatter.finish()
1248 }
1249}
1250impl Debug for Lite<syn::ExprBinary> {
1251 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001252 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001253 let mut formatter = formatter.debug_struct("ExprBinary");
David Tolnaycaac6272019-05-09 11:26:37 -07001254 if !_val.attrs.is_empty() {
1255 formatter.field("attrs", Lite(&_val.attrs));
1256 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001257 formatter.field("left", Lite(&_val.left));
1258 formatter.field("op", Lite(&_val.op));
1259 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001260 formatter.finish()
1261 }
1262}
1263impl Debug for Lite<syn::ExprBlock> {
1264 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001265 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001266 let mut formatter = formatter.debug_struct("ExprBlock");
David Tolnaycaac6272019-05-09 11:26:37 -07001267 if !_val.attrs.is_empty() {
1268 formatter.field("attrs", Lite(&_val.attrs));
1269 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001270 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001271 #[derive(RefCast)]
1272 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001273 struct Print(syn::Label);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001274 impl Debug for Print {
1275 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001276 formatter.write_str("Some")?;
1277 let _val = &self.0;
1278 formatter.write_str("(")?;
1279 Debug::fmt(Lite(_val), formatter)?;
1280 formatter.write_str(")")?;
1281 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001282 }
1283 }
David Tolnay644246b2019-05-08 23:02:46 -07001284 formatter.field("label", Print::ref_cast(val));
1285 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001286 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001287 formatter.finish()
1288 }
1289}
1290impl Debug for Lite<syn::ExprBox> {
1291 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001292 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001293 let mut formatter = formatter.debug_struct("ExprBox");
David Tolnaycaac6272019-05-09 11:26:37 -07001294 if !_val.attrs.is_empty() {
1295 formatter.field("attrs", Lite(&_val.attrs));
1296 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001297 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001298 formatter.finish()
1299 }
1300}
1301impl Debug for Lite<syn::ExprBreak> {
1302 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001303 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001304 let mut formatter = formatter.debug_struct("ExprBreak");
David Tolnaycaac6272019-05-09 11:26:37 -07001305 if !_val.attrs.is_empty() {
1306 formatter.field("attrs", Lite(&_val.attrs));
1307 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001308 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001309 #[derive(RefCast)]
1310 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001311 struct Print(syn::Lifetime);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001312 impl Debug for Print {
1313 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001314 formatter.write_str("Some")?;
1315 let _val = &self.0;
1316 formatter.write_str("(")?;
1317 Debug::fmt(Lite(_val), formatter)?;
1318 formatter.write_str(")")?;
1319 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001320 }
1321 }
David Tolnay644246b2019-05-08 23:02:46 -07001322 formatter.field("label", Print::ref_cast(val));
1323 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001324 if let Some(val) = &_val.expr {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001325 #[derive(RefCast)]
1326 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001327 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001328 impl Debug for Print {
1329 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001330 formatter.write_str("Some")?;
1331 let _val = &self.0;
1332 formatter.write_str("(")?;
1333 Debug::fmt(Lite(_val), formatter)?;
1334 formatter.write_str(")")?;
1335 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001336 }
1337 }
David Tolnay644246b2019-05-08 23:02:46 -07001338 formatter.field("expr", Print::ref_cast(val));
1339 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001340 formatter.finish()
1341 }
1342}
1343impl Debug for Lite<syn::ExprCall> {
1344 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001345 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001346 let mut formatter = formatter.debug_struct("ExprCall");
David Tolnaycaac6272019-05-09 11:26:37 -07001347 if !_val.attrs.is_empty() {
1348 formatter.field("attrs", Lite(&_val.attrs));
1349 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001350 formatter.field("func", Lite(&_val.func));
David Tolnaycaac6272019-05-09 11:26:37 -07001351 if !_val.args.is_empty() {
1352 formatter.field("args", Lite(&_val.args));
1353 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001354 formatter.finish()
1355 }
1356}
1357impl Debug for Lite<syn::ExprCast> {
1358 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001359 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001360 let mut formatter = formatter.debug_struct("ExprCast");
David Tolnaycaac6272019-05-09 11:26:37 -07001361 if !_val.attrs.is_empty() {
1362 formatter.field("attrs", Lite(&_val.attrs));
1363 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001364 formatter.field("expr", Lite(&_val.expr));
1365 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001366 formatter.finish()
1367 }
1368}
1369impl Debug for Lite<syn::ExprClosure> {
1370 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001371 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001372 let mut formatter = formatter.debug_struct("ExprClosure");
David Tolnaycaac6272019-05-09 11:26:37 -07001373 if !_val.attrs.is_empty() {
1374 formatter.field("attrs", Lite(&_val.attrs));
1375 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001376 if let Some(val) = &_val.asyncness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001377 #[derive(RefCast)]
1378 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001379 struct Print(syn::token::Async);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001380 impl Debug for Print {
1381 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001382 formatter.write_str("Some")?;
1383 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001384 }
1385 }
David Tolnay644246b2019-05-08 23:02:46 -07001386 formatter.field("asyncness", Print::ref_cast(val));
1387 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001388 if let Some(val) = &_val.movability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001389 #[derive(RefCast)]
1390 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001391 struct Print(syn::token::Static);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001392 impl Debug for Print {
1393 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001394 formatter.write_str("Some")?;
1395 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001396 }
1397 }
David Tolnay644246b2019-05-08 23:02:46 -07001398 formatter.field("movability", Print::ref_cast(val));
1399 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001400 if let Some(val) = &_val.capture {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001401 #[derive(RefCast)]
1402 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001403 struct Print(syn::token::Move);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001404 impl Debug for Print {
1405 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001406 formatter.write_str("Some")?;
1407 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001408 }
1409 }
David Tolnay644246b2019-05-08 23:02:46 -07001410 formatter.field("capture", Print::ref_cast(val));
1411 }
David Tolnaycaac6272019-05-09 11:26:37 -07001412 if !_val.inputs.is_empty() {
1413 formatter.field("inputs", Lite(&_val.inputs));
1414 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001415 formatter.field("output", Lite(&_val.output));
1416 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001417 formatter.finish()
1418 }
1419}
1420impl Debug for Lite<syn::ExprContinue> {
1421 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001422 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001423 let mut formatter = formatter.debug_struct("ExprContinue");
David Tolnaycaac6272019-05-09 11:26:37 -07001424 if !_val.attrs.is_empty() {
1425 formatter.field("attrs", Lite(&_val.attrs));
1426 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001427 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001428 #[derive(RefCast)]
1429 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001430 struct Print(syn::Lifetime);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001431 impl Debug for Print {
1432 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001433 formatter.write_str("Some")?;
1434 let _val = &self.0;
1435 formatter.write_str("(")?;
1436 Debug::fmt(Lite(_val), formatter)?;
1437 formatter.write_str(")")?;
1438 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001439 }
1440 }
David Tolnay644246b2019-05-08 23:02:46 -07001441 formatter.field("label", Print::ref_cast(val));
1442 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001443 formatter.finish()
1444 }
1445}
1446impl Debug for Lite<syn::ExprField> {
1447 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001448 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001449 let mut formatter = formatter.debug_struct("ExprField");
David Tolnaycaac6272019-05-09 11:26:37 -07001450 if !_val.attrs.is_empty() {
1451 formatter.field("attrs", Lite(&_val.attrs));
1452 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001453 formatter.field("base", Lite(&_val.base));
1454 formatter.field("member", Lite(&_val.member));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001455 formatter.finish()
1456 }
1457}
1458impl Debug for Lite<syn::ExprForLoop> {
1459 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001460 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001461 let mut formatter = formatter.debug_struct("ExprForLoop");
David Tolnaycaac6272019-05-09 11:26:37 -07001462 if !_val.attrs.is_empty() {
1463 formatter.field("attrs", Lite(&_val.attrs));
1464 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001465 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001466 #[derive(RefCast)]
1467 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001468 struct Print(syn::Label);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001469 impl Debug for Print {
1470 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001471 formatter.write_str("Some")?;
1472 let _val = &self.0;
1473 formatter.write_str("(")?;
1474 Debug::fmt(Lite(_val), formatter)?;
1475 formatter.write_str(")")?;
1476 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001477 }
1478 }
David Tolnay644246b2019-05-08 23:02:46 -07001479 formatter.field("label", Print::ref_cast(val));
1480 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001481 formatter.field("pat", Lite(&_val.pat));
1482 formatter.field("expr", Lite(&_val.expr));
1483 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001484 formatter.finish()
1485 }
1486}
1487impl Debug for Lite<syn::ExprGroup> {
1488 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001489 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001490 let mut formatter = formatter.debug_struct("ExprGroup");
David Tolnaycaac6272019-05-09 11:26:37 -07001491 if !_val.attrs.is_empty() {
1492 formatter.field("attrs", Lite(&_val.attrs));
1493 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001494 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001495 formatter.finish()
1496 }
1497}
1498impl Debug for Lite<syn::ExprIf> {
1499 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001500 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001501 let mut formatter = formatter.debug_struct("ExprIf");
David Tolnaycaac6272019-05-09 11:26:37 -07001502 if !_val.attrs.is_empty() {
1503 formatter.field("attrs", Lite(&_val.attrs));
1504 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001505 formatter.field("cond", Lite(&_val.cond));
1506 formatter.field("then_branch", Lite(&_val.then_branch));
1507 if let Some(val) = &_val.else_branch {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001508 #[derive(RefCast)]
1509 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001510 struct Print((syn::token::Else, Box<syn::Expr>));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001511 impl Debug for Print {
1512 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001513 formatter.write_str("Some")?;
1514 let _val = &self.0;
1515 formatter.write_str("(")?;
1516 Debug::fmt(Lite(&_val.1), formatter)?;
1517 formatter.write_str(")")?;
1518 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001519 }
1520 }
David Tolnay644246b2019-05-08 23:02:46 -07001521 formatter.field("else_branch", Print::ref_cast(val));
1522 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001523 formatter.finish()
1524 }
1525}
1526impl Debug for Lite<syn::ExprInPlace> {
1527 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001528 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001529 let mut formatter = formatter.debug_struct("ExprInPlace");
David Tolnaycaac6272019-05-09 11:26:37 -07001530 if !_val.attrs.is_empty() {
1531 formatter.field("attrs", Lite(&_val.attrs));
1532 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001533 formatter.field("place", Lite(&_val.place));
1534 formatter.field("value", Lite(&_val.value));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001535 formatter.finish()
1536 }
1537}
1538impl Debug for Lite<syn::ExprIndex> {
1539 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001540 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001541 let mut formatter = formatter.debug_struct("ExprIndex");
David Tolnaycaac6272019-05-09 11:26:37 -07001542 if !_val.attrs.is_empty() {
1543 formatter.field("attrs", Lite(&_val.attrs));
1544 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001545 formatter.field("expr", Lite(&_val.expr));
1546 formatter.field("index", Lite(&_val.index));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001547 formatter.finish()
1548 }
1549}
1550impl Debug for Lite<syn::ExprLet> {
1551 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001552 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001553 let mut formatter = formatter.debug_struct("ExprLet");
David Tolnaycaac6272019-05-09 11:26:37 -07001554 if !_val.attrs.is_empty() {
1555 formatter.field("attrs", Lite(&_val.attrs));
1556 }
1557 if !_val.pats.is_empty() {
1558 formatter.field("pats", Lite(&_val.pats));
1559 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001560 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001561 formatter.finish()
1562 }
1563}
1564impl Debug for Lite<syn::ExprLit> {
1565 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001566 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001567 let mut formatter = formatter.debug_struct("ExprLit");
David Tolnaycaac6272019-05-09 11:26:37 -07001568 if !_val.attrs.is_empty() {
1569 formatter.field("attrs", Lite(&_val.attrs));
1570 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001571 formatter.field("lit", Lite(&_val.lit));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001572 formatter.finish()
1573 }
1574}
1575impl Debug for Lite<syn::ExprLoop> {
1576 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001577 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001578 let mut formatter = formatter.debug_struct("ExprLoop");
David Tolnaycaac6272019-05-09 11:26:37 -07001579 if !_val.attrs.is_empty() {
1580 formatter.field("attrs", Lite(&_val.attrs));
1581 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001582 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001583 #[derive(RefCast)]
1584 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001585 struct Print(syn::Label);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001586 impl Debug for Print {
1587 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001588 formatter.write_str("Some")?;
1589 let _val = &self.0;
1590 formatter.write_str("(")?;
1591 Debug::fmt(Lite(_val), formatter)?;
1592 formatter.write_str(")")?;
1593 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001594 }
1595 }
David Tolnay644246b2019-05-08 23:02:46 -07001596 formatter.field("label", Print::ref_cast(val));
1597 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001598 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001599 formatter.finish()
1600 }
1601}
1602impl Debug for Lite<syn::ExprMacro> {
1603 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001604 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001605 let mut formatter = formatter.debug_struct("ExprMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07001606 if !_val.attrs.is_empty() {
1607 formatter.field("attrs", Lite(&_val.attrs));
1608 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001609 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001610 formatter.finish()
1611 }
1612}
1613impl Debug for Lite<syn::ExprMatch> {
1614 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001615 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001616 let mut formatter = formatter.debug_struct("ExprMatch");
David Tolnaycaac6272019-05-09 11:26:37 -07001617 if !_val.attrs.is_empty() {
1618 formatter.field("attrs", Lite(&_val.attrs));
1619 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001620 formatter.field("expr", Lite(&_val.expr));
David Tolnaycaac6272019-05-09 11:26:37 -07001621 if !_val.arms.is_empty() {
1622 formatter.field("arms", Lite(&_val.arms));
1623 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001624 formatter.finish()
1625 }
1626}
1627impl Debug for Lite<syn::ExprMethodCall> {
1628 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001629 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001630 let mut formatter = formatter.debug_struct("ExprMethodCall");
David Tolnaycaac6272019-05-09 11:26:37 -07001631 if !_val.attrs.is_empty() {
1632 formatter.field("attrs", Lite(&_val.attrs));
1633 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001634 formatter.field("receiver", Lite(&_val.receiver));
1635 formatter.field("method", Lite(&_val.method));
1636 if let Some(val) = &_val.turbofish {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001637 #[derive(RefCast)]
1638 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001639 struct Print(syn::MethodTurbofish);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001640 impl Debug for Print {
1641 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001642 formatter.write_str("Some")?;
1643 let _val = &self.0;
1644 formatter.write_str("(")?;
1645 Debug::fmt(Lite(_val), formatter)?;
1646 formatter.write_str(")")?;
1647 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001648 }
1649 }
David Tolnay644246b2019-05-08 23:02:46 -07001650 formatter.field("turbofish", Print::ref_cast(val));
1651 }
David Tolnaycaac6272019-05-09 11:26:37 -07001652 if !_val.args.is_empty() {
1653 formatter.field("args", Lite(&_val.args));
1654 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001655 formatter.finish()
1656 }
1657}
1658impl Debug for Lite<syn::ExprParen> {
1659 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001660 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001661 let mut formatter = formatter.debug_struct("ExprParen");
David Tolnaycaac6272019-05-09 11:26:37 -07001662 if !_val.attrs.is_empty() {
1663 formatter.field("attrs", Lite(&_val.attrs));
1664 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001665 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001666 formatter.finish()
1667 }
1668}
1669impl Debug for Lite<syn::ExprPath> {
1670 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001671 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001672 let mut formatter = formatter.debug_struct("ExprPath");
David Tolnaycaac6272019-05-09 11:26:37 -07001673 if !_val.attrs.is_empty() {
1674 formatter.field("attrs", Lite(&_val.attrs));
1675 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001676 if let Some(val) = &_val.qself {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001677 #[derive(RefCast)]
1678 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001679 struct Print(syn::QSelf);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001680 impl Debug for Print {
1681 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001682 formatter.write_str("Some")?;
1683 let _val = &self.0;
1684 formatter.write_str("(")?;
1685 Debug::fmt(Lite(_val), formatter)?;
1686 formatter.write_str(")")?;
1687 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001688 }
1689 }
David Tolnay644246b2019-05-08 23:02:46 -07001690 formatter.field("qself", Print::ref_cast(val));
1691 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001692 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001693 formatter.finish()
1694 }
1695}
1696impl Debug for Lite<syn::ExprRange> {
1697 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001698 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001699 let mut formatter = formatter.debug_struct("ExprRange");
David Tolnaycaac6272019-05-09 11:26:37 -07001700 if !_val.attrs.is_empty() {
1701 formatter.field("attrs", Lite(&_val.attrs));
1702 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001703 if let Some(val) = &_val.from {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001704 #[derive(RefCast)]
1705 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001706 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001707 impl Debug for Print {
1708 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001709 formatter.write_str("Some")?;
1710 let _val = &self.0;
1711 formatter.write_str("(")?;
1712 Debug::fmt(Lite(_val), formatter)?;
1713 formatter.write_str(")")?;
1714 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001715 }
1716 }
David Tolnay644246b2019-05-08 23:02:46 -07001717 formatter.field("from", Print::ref_cast(val));
1718 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001719 formatter.field("limits", Lite(&_val.limits));
1720 if let Some(val) = &_val.to {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001721 #[derive(RefCast)]
1722 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001723 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001724 impl Debug for Print {
1725 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001726 formatter.write_str("Some")?;
1727 let _val = &self.0;
1728 formatter.write_str("(")?;
1729 Debug::fmt(Lite(_val), formatter)?;
1730 formatter.write_str(")")?;
1731 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001732 }
1733 }
David Tolnay644246b2019-05-08 23:02:46 -07001734 formatter.field("to", Print::ref_cast(val));
1735 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001736 formatter.finish()
1737 }
1738}
1739impl Debug for Lite<syn::ExprReference> {
1740 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001741 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001742 let mut formatter = formatter.debug_struct("ExprReference");
David Tolnaycaac6272019-05-09 11:26:37 -07001743 if !_val.attrs.is_empty() {
1744 formatter.field("attrs", Lite(&_val.attrs));
1745 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001746 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001747 #[derive(RefCast)]
1748 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001749 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001750 impl Debug for Print {
1751 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001752 formatter.write_str("Some")?;
1753 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001754 }
1755 }
David Tolnay644246b2019-05-08 23:02:46 -07001756 formatter.field("mutability", Print::ref_cast(val));
1757 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001758 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001759 formatter.finish()
1760 }
1761}
1762impl Debug for Lite<syn::ExprRepeat> {
1763 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001764 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001765 let mut formatter = formatter.debug_struct("ExprRepeat");
David Tolnaycaac6272019-05-09 11:26:37 -07001766 if !_val.attrs.is_empty() {
1767 formatter.field("attrs", Lite(&_val.attrs));
1768 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001769 formatter.field("expr", Lite(&_val.expr));
1770 formatter.field("len", Lite(&_val.len));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001771 formatter.finish()
1772 }
1773}
1774impl Debug for Lite<syn::ExprReturn> {
1775 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001776 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001777 let mut formatter = formatter.debug_struct("ExprReturn");
David Tolnaycaac6272019-05-09 11:26:37 -07001778 if !_val.attrs.is_empty() {
1779 formatter.field("attrs", Lite(&_val.attrs));
1780 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001781 if let Some(val) = &_val.expr {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001782 #[derive(RefCast)]
1783 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001784 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001785 impl Debug for Print {
1786 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001787 formatter.write_str("Some")?;
1788 let _val = &self.0;
1789 formatter.write_str("(")?;
1790 Debug::fmt(Lite(_val), formatter)?;
1791 formatter.write_str(")")?;
1792 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001793 }
1794 }
David Tolnay644246b2019-05-08 23:02:46 -07001795 formatter.field("expr", Print::ref_cast(val));
1796 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001797 formatter.finish()
1798 }
1799}
1800impl Debug for Lite<syn::ExprStruct> {
1801 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001802 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001803 let mut formatter = formatter.debug_struct("ExprStruct");
David Tolnaycaac6272019-05-09 11:26:37 -07001804 if !_val.attrs.is_empty() {
1805 formatter.field("attrs", Lite(&_val.attrs));
1806 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001807 formatter.field("path", Lite(&_val.path));
David Tolnaycaac6272019-05-09 11:26:37 -07001808 if !_val.fields.is_empty() {
1809 formatter.field("fields", Lite(&_val.fields));
1810 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001811 if let Some(val) = &_val.dot2_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001812 #[derive(RefCast)]
1813 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001814 struct Print(syn::token::Dot2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001815 impl Debug for Print {
1816 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001817 formatter.write_str("Some")?;
1818 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001819 }
1820 }
David Tolnay644246b2019-05-08 23:02:46 -07001821 formatter.field("dot2_token", Print::ref_cast(val));
1822 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001823 if let Some(val) = &_val.rest {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001824 #[derive(RefCast)]
1825 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001826 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001827 impl Debug for Print {
1828 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001829 formatter.write_str("Some")?;
1830 let _val = &self.0;
1831 formatter.write_str("(")?;
1832 Debug::fmt(Lite(_val), formatter)?;
1833 formatter.write_str(")")?;
1834 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001835 }
1836 }
David Tolnay644246b2019-05-08 23:02:46 -07001837 formatter.field("rest", Print::ref_cast(val));
1838 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001839 formatter.finish()
1840 }
1841}
1842impl Debug for Lite<syn::ExprTry> {
1843 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001844 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001845 let mut formatter = formatter.debug_struct("ExprTry");
David Tolnaycaac6272019-05-09 11:26:37 -07001846 if !_val.attrs.is_empty() {
1847 formatter.field("attrs", Lite(&_val.attrs));
1848 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001849 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001850 formatter.finish()
1851 }
1852}
1853impl Debug for Lite<syn::ExprTryBlock> {
1854 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001855 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001856 let mut formatter = formatter.debug_struct("ExprTryBlock");
David Tolnaycaac6272019-05-09 11:26:37 -07001857 if !_val.attrs.is_empty() {
1858 formatter.field("attrs", Lite(&_val.attrs));
1859 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001860 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001861 formatter.finish()
1862 }
1863}
1864impl Debug for Lite<syn::ExprTuple> {
1865 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001866 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001867 let mut formatter = formatter.debug_struct("ExprTuple");
David Tolnaycaac6272019-05-09 11:26:37 -07001868 if !_val.attrs.is_empty() {
1869 formatter.field("attrs", Lite(&_val.attrs));
1870 }
1871 if !_val.elems.is_empty() {
1872 formatter.field("elems", Lite(&_val.elems));
1873 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001874 formatter.finish()
1875 }
1876}
1877impl Debug for Lite<syn::ExprType> {
1878 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001879 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001880 let mut formatter = formatter.debug_struct("ExprType");
David Tolnaycaac6272019-05-09 11:26:37 -07001881 if !_val.attrs.is_empty() {
1882 formatter.field("attrs", Lite(&_val.attrs));
1883 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001884 formatter.field("expr", Lite(&_val.expr));
1885 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001886 formatter.finish()
1887 }
1888}
1889impl Debug for Lite<syn::ExprUnary> {
1890 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001891 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001892 let mut formatter = formatter.debug_struct("ExprUnary");
David Tolnaycaac6272019-05-09 11:26:37 -07001893 if !_val.attrs.is_empty() {
1894 formatter.field("attrs", Lite(&_val.attrs));
1895 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001896 formatter.field("op", Lite(&_val.op));
1897 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001898 formatter.finish()
1899 }
1900}
1901impl Debug for Lite<syn::ExprUnsafe> {
1902 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001903 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001904 let mut formatter = formatter.debug_struct("ExprUnsafe");
David Tolnaycaac6272019-05-09 11:26:37 -07001905 if !_val.attrs.is_empty() {
1906 formatter.field("attrs", Lite(&_val.attrs));
1907 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001908 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001909 formatter.finish()
1910 }
1911}
1912impl Debug for Lite<syn::ExprVerbatim> {
1913 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001914 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001915 let mut formatter = formatter.debug_struct("ExprVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07001916 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001917 formatter.finish()
1918 }
1919}
1920impl Debug for Lite<syn::ExprWhile> {
1921 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001922 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001923 let mut formatter = formatter.debug_struct("ExprWhile");
David Tolnaycaac6272019-05-09 11:26:37 -07001924 if !_val.attrs.is_empty() {
1925 formatter.field("attrs", Lite(&_val.attrs));
1926 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001927 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001928 #[derive(RefCast)]
1929 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001930 struct Print(syn::Label);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001931 impl Debug for Print {
1932 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001933 formatter.write_str("Some")?;
1934 let _val = &self.0;
1935 formatter.write_str("(")?;
1936 Debug::fmt(Lite(_val), formatter)?;
1937 formatter.write_str(")")?;
1938 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001939 }
1940 }
David Tolnay644246b2019-05-08 23:02:46 -07001941 formatter.field("label", Print::ref_cast(val));
1942 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001943 formatter.field("cond", Lite(&_val.cond));
1944 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001945 formatter.finish()
1946 }
1947}
1948impl Debug for Lite<syn::ExprYield> {
1949 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001950 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001951 let mut formatter = formatter.debug_struct("ExprYield");
David Tolnaycaac6272019-05-09 11:26:37 -07001952 if !_val.attrs.is_empty() {
1953 formatter.field("attrs", Lite(&_val.attrs));
1954 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001955 if let Some(val) = &_val.expr {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001956 #[derive(RefCast)]
1957 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001958 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001959 impl Debug for Print {
1960 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001961 formatter.write_str("Some")?;
1962 let _val = &self.0;
1963 formatter.write_str("(")?;
1964 Debug::fmt(Lite(_val), formatter)?;
1965 formatter.write_str(")")?;
1966 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001967 }
1968 }
David Tolnay644246b2019-05-08 23:02:46 -07001969 formatter.field("expr", Print::ref_cast(val));
1970 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001971 formatter.finish()
1972 }
1973}
1974impl Debug for Lite<syn::Field> {
1975 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001976 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001977 let mut formatter = formatter.debug_struct("Field");
David Tolnaycaac6272019-05-09 11:26:37 -07001978 if !_val.attrs.is_empty() {
1979 formatter.field("attrs", Lite(&_val.attrs));
1980 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001981 formatter.field("vis", Lite(&_val.vis));
1982 if let Some(val) = &_val.ident {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001983 #[derive(RefCast)]
1984 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001985 struct Print(proc_macro2::Ident);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001986 impl Debug for Print {
1987 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001988 formatter.write_str("Some")?;
1989 let _val = &self.0;
1990 formatter.write_str("(")?;
1991 Debug::fmt(Lite(_val), formatter)?;
1992 formatter.write_str(")")?;
1993 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001994 }
1995 }
David Tolnay644246b2019-05-08 23:02:46 -07001996 formatter.field("ident", Print::ref_cast(val));
1997 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001998 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001999 #[derive(RefCast)]
2000 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002001 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002002 impl Debug for Print {
2003 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002004 formatter.write_str("Some")?;
2005 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002006 }
2007 }
David Tolnay644246b2019-05-08 23:02:46 -07002008 formatter.field("colon_token", Print::ref_cast(val));
2009 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002010 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002011 formatter.finish()
2012 }
2013}
2014impl Debug for Lite<syn::FieldPat> {
2015 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002016 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002017 let mut formatter = formatter.debug_struct("FieldPat");
David Tolnaycaac6272019-05-09 11:26:37 -07002018 if !_val.attrs.is_empty() {
2019 formatter.field("attrs", Lite(&_val.attrs));
2020 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002021 formatter.field("member", Lite(&_val.member));
2022 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002023 #[derive(RefCast)]
2024 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002025 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002026 impl Debug for Print {
2027 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002028 formatter.write_str("Some")?;
2029 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002030 }
2031 }
David Tolnay644246b2019-05-08 23:02:46 -07002032 formatter.field("colon_token", Print::ref_cast(val));
2033 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002034 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002035 formatter.finish()
2036 }
2037}
2038impl Debug for Lite<syn::FieldValue> {
2039 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002040 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002041 let mut formatter = formatter.debug_struct("FieldValue");
David Tolnaycaac6272019-05-09 11:26:37 -07002042 if !_val.attrs.is_empty() {
2043 formatter.field("attrs", Lite(&_val.attrs));
2044 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002045 formatter.field("member", Lite(&_val.member));
2046 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002047 #[derive(RefCast)]
2048 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002049 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002050 impl Debug for Print {
2051 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002052 formatter.write_str("Some")?;
2053 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002054 }
2055 }
David Tolnay644246b2019-05-08 23:02:46 -07002056 formatter.field("colon_token", Print::ref_cast(val));
2057 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002058 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002059 formatter.finish()
2060 }
2061}
2062impl Debug for Lite<syn::Fields> {
2063 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002064 let _val = &self.value;
2065 match _val {
2066 syn::Fields::Named(_val) => {
2067 let mut formatter = formatter.debug_struct("Fields::Named");
David Tolnaycaac6272019-05-09 11:26:37 -07002068 if !_val.named.is_empty() {
2069 formatter.field("named", Lite(&_val.named));
2070 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002071 formatter.finish()
2072 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002073 syn::Fields::Unnamed(_val) => {
2074 let mut formatter = formatter.debug_struct("Fields::Unnamed");
David Tolnaycaac6272019-05-09 11:26:37 -07002075 if !_val.unnamed.is_empty() {
2076 formatter.field("unnamed", Lite(&_val.unnamed));
2077 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002078 formatter.finish()
2079 }
2080 syn::Fields::Unit => formatter.write_str("Unit"),
2081 }
2082 }
2083}
2084impl Debug for Lite<syn::FieldsNamed> {
2085 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002086 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002087 let mut formatter = formatter.debug_struct("FieldsNamed");
David Tolnaycaac6272019-05-09 11:26:37 -07002088 if !_val.named.is_empty() {
2089 formatter.field("named", Lite(&_val.named));
2090 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002091 formatter.finish()
2092 }
2093}
2094impl Debug for Lite<syn::FieldsUnnamed> {
2095 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002096 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002097 let mut formatter = formatter.debug_struct("FieldsUnnamed");
David Tolnaycaac6272019-05-09 11:26:37 -07002098 if !_val.unnamed.is_empty() {
2099 formatter.field("unnamed", Lite(&_val.unnamed));
2100 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002101 formatter.finish()
2102 }
2103}
2104impl Debug for Lite<syn::File> {
2105 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002106 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002107 let mut formatter = formatter.debug_struct("File");
David Tolnay5302f0e2019-05-08 23:26:18 -07002108 if let Some(val) = &_val.shebang {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002109 #[derive(RefCast)]
2110 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002111 struct Print(String);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002112 impl Debug for Print {
2113 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002114 formatter.write_str("Some")?;
2115 let _val = &self.0;
2116 formatter.write_str("(")?;
2117 Debug::fmt(Lite(_val), formatter)?;
2118 formatter.write_str(")")?;
2119 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002120 }
2121 }
David Tolnay644246b2019-05-08 23:02:46 -07002122 formatter.field("shebang", Print::ref_cast(val));
2123 }
David Tolnaycaac6272019-05-09 11:26:37 -07002124 if !_val.attrs.is_empty() {
2125 formatter.field("attrs", Lite(&_val.attrs));
2126 }
2127 if !_val.items.is_empty() {
2128 formatter.field("items", Lite(&_val.items));
2129 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002130 formatter.finish()
2131 }
2132}
2133impl Debug for Lite<syn::FnArg> {
2134 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002135 let _val = &self.value;
2136 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002137 syn::FnArg::SelfRef(_v0) => {
2138 let mut formatter = formatter.debug_tuple("SelfRef");
2139 formatter.field(Lite(_v0));
2140 formatter.finish()
2141 }
2142 syn::FnArg::SelfValue(_v0) => {
2143 let mut formatter = formatter.debug_tuple("SelfValue");
2144 formatter.field(Lite(_v0));
2145 formatter.finish()
2146 }
2147 syn::FnArg::Captured(_v0) => {
2148 let mut formatter = formatter.debug_tuple("Captured");
2149 formatter.field(Lite(_v0));
2150 formatter.finish()
2151 }
2152 syn::FnArg::Inferred(_v0) => {
2153 let mut formatter = formatter.debug_tuple("Inferred");
2154 formatter.field(Lite(_v0));
2155 formatter.finish()
2156 }
2157 syn::FnArg::Ignored(_v0) => {
2158 let mut formatter = formatter.debug_tuple("Ignored");
2159 formatter.field(Lite(_v0));
2160 formatter.finish()
2161 }
2162 }
2163 }
2164}
2165impl Debug for Lite<syn::FnDecl> {
2166 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002167 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002168 let mut formatter = formatter.debug_struct("FnDecl");
David Tolnay5302f0e2019-05-08 23:26:18 -07002169 formatter.field("generics", Lite(&_val.generics));
David Tolnaycaac6272019-05-09 11:26:37 -07002170 if !_val.inputs.is_empty() {
2171 formatter.field("inputs", Lite(&_val.inputs));
2172 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002173 if let Some(val) = &_val.variadic {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002174 #[derive(RefCast)]
2175 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002176 struct Print(syn::token::Dot3);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002177 impl Debug for Print {
2178 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002179 formatter.write_str("Some")?;
2180 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002181 }
2182 }
David Tolnay644246b2019-05-08 23:02:46 -07002183 formatter.field("variadic", Print::ref_cast(val));
2184 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002185 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002186 formatter.finish()
2187 }
2188}
2189impl Debug for Lite<syn::ForeignItem> {
2190 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002191 let _val = &self.value;
2192 match _val {
2193 syn::ForeignItem::Fn(_val) => {
2194 let mut formatter = formatter.debug_struct("ForeignItem::Fn");
David Tolnaycaac6272019-05-09 11:26:37 -07002195 if !_val.attrs.is_empty() {
2196 formatter.field("attrs", Lite(&_val.attrs));
2197 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002198 formatter.field("vis", Lite(&_val.vis));
2199 formatter.field("ident", Lite(&_val.ident));
2200 formatter.field("decl", Lite(&_val.decl));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002201 formatter.finish()
2202 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002203 syn::ForeignItem::Static(_val) => {
2204 let mut formatter = formatter.debug_struct("ForeignItem::Static");
David Tolnaycaac6272019-05-09 11:26:37 -07002205 if !_val.attrs.is_empty() {
2206 formatter.field("attrs", Lite(&_val.attrs));
2207 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002208 formatter.field("vis", Lite(&_val.vis));
2209 if let Some(val) = &_val.mutability {
2210 #[derive(RefCast)]
2211 #[repr(transparent)]
2212 struct Print(syn::token::Mut);
2213 impl Debug for Print {
2214 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2215 formatter.write_str("Some")?;
2216 Ok(())
2217 }
2218 }
2219 formatter.field("mutability", Print::ref_cast(val));
2220 }
2221 formatter.field("ident", Lite(&_val.ident));
2222 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002223 formatter.finish()
2224 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002225 syn::ForeignItem::Type(_val) => {
2226 let mut formatter = formatter.debug_struct("ForeignItem::Type");
David Tolnaycaac6272019-05-09 11:26:37 -07002227 if !_val.attrs.is_empty() {
2228 formatter.field("attrs", Lite(&_val.attrs));
2229 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002230 formatter.field("vis", Lite(&_val.vis));
2231 formatter.field("ident", Lite(&_val.ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002232 formatter.finish()
2233 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002234 syn::ForeignItem::Macro(_val) => {
2235 let mut formatter = formatter.debug_struct("ForeignItem::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07002236 if !_val.attrs.is_empty() {
2237 formatter.field("attrs", Lite(&_val.attrs));
2238 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002239 formatter.field("mac", Lite(&_val.mac));
2240 if let Some(val) = &_val.semi_token {
2241 #[derive(RefCast)]
2242 #[repr(transparent)]
2243 struct Print(syn::token::Semi);
2244 impl Debug for Print {
2245 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2246 formatter.write_str("Some")?;
2247 Ok(())
2248 }
2249 }
2250 formatter.field("semi_token", Print::ref_cast(val));
2251 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002252 formatter.finish()
2253 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002254 syn::ForeignItem::Verbatim(_val) => {
2255 let mut formatter = formatter.debug_struct("ForeignItem::Verbatim");
2256 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002257 formatter.finish()
2258 }
2259 }
2260 }
2261}
2262impl Debug for Lite<syn::ForeignItemFn> {
2263 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002264 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002265 let mut formatter = formatter.debug_struct("ForeignItemFn");
David Tolnaycaac6272019-05-09 11:26:37 -07002266 if !_val.attrs.is_empty() {
2267 formatter.field("attrs", Lite(&_val.attrs));
2268 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002269 formatter.field("vis", Lite(&_val.vis));
2270 formatter.field("ident", Lite(&_val.ident));
2271 formatter.field("decl", Lite(&_val.decl));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002272 formatter.finish()
2273 }
2274}
2275impl Debug for Lite<syn::ForeignItemMacro> {
2276 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002277 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002278 let mut formatter = formatter.debug_struct("ForeignItemMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07002279 if !_val.attrs.is_empty() {
2280 formatter.field("attrs", Lite(&_val.attrs));
2281 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002282 formatter.field("mac", Lite(&_val.mac));
2283 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002284 #[derive(RefCast)]
2285 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002286 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002287 impl Debug for Print {
2288 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002289 formatter.write_str("Some")?;
2290 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002291 }
2292 }
David Tolnay644246b2019-05-08 23:02:46 -07002293 formatter.field("semi_token", Print::ref_cast(val));
2294 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002295 formatter.finish()
2296 }
2297}
2298impl Debug for Lite<syn::ForeignItemStatic> {
2299 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002300 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002301 let mut formatter = formatter.debug_struct("ForeignItemStatic");
David Tolnaycaac6272019-05-09 11:26:37 -07002302 if !_val.attrs.is_empty() {
2303 formatter.field("attrs", Lite(&_val.attrs));
2304 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002305 formatter.field("vis", Lite(&_val.vis));
2306 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002307 #[derive(RefCast)]
2308 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002309 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002310 impl Debug for Print {
2311 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002312 formatter.write_str("Some")?;
2313 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002314 }
2315 }
David Tolnay644246b2019-05-08 23:02:46 -07002316 formatter.field("mutability", Print::ref_cast(val));
2317 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002318 formatter.field("ident", Lite(&_val.ident));
2319 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002320 formatter.finish()
2321 }
2322}
2323impl Debug for Lite<syn::ForeignItemType> {
2324 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002325 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002326 let mut formatter = formatter.debug_struct("ForeignItemType");
David Tolnaycaac6272019-05-09 11:26:37 -07002327 if !_val.attrs.is_empty() {
2328 formatter.field("attrs", Lite(&_val.attrs));
2329 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002330 formatter.field("vis", Lite(&_val.vis));
2331 formatter.field("ident", Lite(&_val.ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002332 formatter.finish()
2333 }
2334}
2335impl Debug for Lite<syn::ForeignItemVerbatim> {
2336 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002337 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002338 let mut formatter = formatter.debug_struct("ForeignItemVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07002339 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002340 formatter.finish()
2341 }
2342}
2343impl Debug for Lite<syn::GenericArgument> {
2344 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002345 let _val = &self.value;
2346 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002347 syn::GenericArgument::Lifetime(_v0) => {
2348 let mut formatter = formatter.debug_tuple("Lifetime");
2349 formatter.field(Lite(_v0));
2350 formatter.finish()
2351 }
2352 syn::GenericArgument::Type(_v0) => {
2353 let mut formatter = formatter.debug_tuple("Type");
2354 formatter.field(Lite(_v0));
2355 formatter.finish()
2356 }
2357 syn::GenericArgument::Binding(_v0) => {
2358 let mut formatter = formatter.debug_tuple("Binding");
2359 formatter.field(Lite(_v0));
2360 formatter.finish()
2361 }
2362 syn::GenericArgument::Constraint(_v0) => {
2363 let mut formatter = formatter.debug_tuple("Constraint");
2364 formatter.field(Lite(_v0));
2365 formatter.finish()
2366 }
2367 syn::GenericArgument::Const(_v0) => {
2368 let mut formatter = formatter.debug_tuple("Const");
2369 formatter.field(Lite(_v0));
2370 formatter.finish()
2371 }
2372 }
2373 }
2374}
2375impl Debug for Lite<syn::GenericMethodArgument> {
2376 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002377 let _val = &self.value;
2378 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002379 syn::GenericMethodArgument::Type(_v0) => {
2380 let mut formatter = formatter.debug_tuple("Type");
2381 formatter.field(Lite(_v0));
2382 formatter.finish()
2383 }
2384 syn::GenericMethodArgument::Const(_v0) => {
2385 let mut formatter = formatter.debug_tuple("Const");
2386 formatter.field(Lite(_v0));
2387 formatter.finish()
2388 }
2389 }
2390 }
2391}
2392impl Debug for Lite<syn::GenericParam> {
2393 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002394 let _val = &self.value;
2395 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002396 syn::GenericParam::Type(_v0) => {
2397 let mut formatter = formatter.debug_tuple("Type");
2398 formatter.field(Lite(_v0));
2399 formatter.finish()
2400 }
2401 syn::GenericParam::Lifetime(_v0) => {
2402 let mut formatter = formatter.debug_tuple("Lifetime");
2403 formatter.field(Lite(_v0));
2404 formatter.finish()
2405 }
2406 syn::GenericParam::Const(_v0) => {
2407 let mut formatter = formatter.debug_tuple("Const");
2408 formatter.field(Lite(_v0));
2409 formatter.finish()
2410 }
2411 }
2412 }
2413}
2414impl Debug for Lite<syn::Generics> {
2415 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002416 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002417 let mut formatter = formatter.debug_struct("Generics");
David Tolnay5302f0e2019-05-08 23:26:18 -07002418 if let Some(val) = &_val.lt_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002419 #[derive(RefCast)]
2420 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002421 struct Print(syn::token::Lt);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002422 impl Debug for Print {
2423 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002424 formatter.write_str("Some")?;
2425 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002426 }
2427 }
David Tolnay644246b2019-05-08 23:02:46 -07002428 formatter.field("lt_token", Print::ref_cast(val));
2429 }
David Tolnaycaac6272019-05-09 11:26:37 -07002430 if !_val.params.is_empty() {
2431 formatter.field("params", Lite(&_val.params));
2432 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002433 if let Some(val) = &_val.gt_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002434 #[derive(RefCast)]
2435 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002436 struct Print(syn::token::Gt);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002437 impl Debug for Print {
2438 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002439 formatter.write_str("Some")?;
2440 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002441 }
2442 }
David Tolnay644246b2019-05-08 23:02:46 -07002443 formatter.field("gt_token", Print::ref_cast(val));
2444 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002445 if let Some(val) = &_val.where_clause {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002446 #[derive(RefCast)]
2447 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002448 struct Print(syn::WhereClause);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002449 impl Debug for Print {
2450 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002451 formatter.write_str("Some")?;
2452 let _val = &self.0;
2453 formatter.write_str("(")?;
2454 Debug::fmt(Lite(_val), formatter)?;
2455 formatter.write_str(")")?;
2456 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002457 }
2458 }
David Tolnay644246b2019-05-08 23:02:46 -07002459 formatter.field("where_clause", Print::ref_cast(val));
2460 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002461 formatter.finish()
2462 }
2463}
2464impl Debug for Lite<syn::ImplItem> {
2465 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002466 let _val = &self.value;
2467 match _val {
2468 syn::ImplItem::Const(_val) => {
2469 let mut formatter = formatter.debug_struct("ImplItem::Const");
David Tolnaycaac6272019-05-09 11:26:37 -07002470 if !_val.attrs.is_empty() {
2471 formatter.field("attrs", Lite(&_val.attrs));
2472 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002473 formatter.field("vis", Lite(&_val.vis));
2474 if let Some(val) = &_val.defaultness {
2475 #[derive(RefCast)]
2476 #[repr(transparent)]
2477 struct Print(syn::token::Default);
2478 impl Debug for Print {
2479 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2480 formatter.write_str("Some")?;
2481 Ok(())
2482 }
2483 }
2484 formatter.field("defaultness", Print::ref_cast(val));
2485 }
2486 formatter.field("ident", Lite(&_val.ident));
2487 formatter.field("ty", Lite(&_val.ty));
2488 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002489 formatter.finish()
2490 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002491 syn::ImplItem::Method(_val) => {
2492 let mut formatter = formatter.debug_struct("ImplItem::Method");
David Tolnaycaac6272019-05-09 11:26:37 -07002493 if !_val.attrs.is_empty() {
2494 formatter.field("attrs", Lite(&_val.attrs));
2495 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002496 formatter.field("vis", Lite(&_val.vis));
2497 if let Some(val) = &_val.defaultness {
2498 #[derive(RefCast)]
2499 #[repr(transparent)]
2500 struct Print(syn::token::Default);
2501 impl Debug for Print {
2502 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2503 formatter.write_str("Some")?;
2504 Ok(())
2505 }
2506 }
2507 formatter.field("defaultness", Print::ref_cast(val));
2508 }
2509 formatter.field("sig", Lite(&_val.sig));
2510 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002511 formatter.finish()
2512 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002513 syn::ImplItem::Type(_val) => {
2514 let mut formatter = formatter.debug_struct("ImplItem::Type");
David Tolnaycaac6272019-05-09 11:26:37 -07002515 if !_val.attrs.is_empty() {
2516 formatter.field("attrs", Lite(&_val.attrs));
2517 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002518 formatter.field("vis", Lite(&_val.vis));
2519 if let Some(val) = &_val.defaultness {
2520 #[derive(RefCast)]
2521 #[repr(transparent)]
2522 struct Print(syn::token::Default);
2523 impl Debug for Print {
2524 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2525 formatter.write_str("Some")?;
2526 Ok(())
2527 }
2528 }
2529 formatter.field("defaultness", Print::ref_cast(val));
2530 }
2531 formatter.field("ident", Lite(&_val.ident));
2532 formatter.field("generics", Lite(&_val.generics));
2533 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002534 formatter.finish()
2535 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002536 syn::ImplItem::Existential(_val) => {
2537 let mut formatter = formatter.debug_struct("ImplItem::Existential");
David Tolnaycaac6272019-05-09 11:26:37 -07002538 if !_val.attrs.is_empty() {
2539 formatter.field("attrs", Lite(&_val.attrs));
2540 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002541 formatter.field("ident", Lite(&_val.ident));
2542 formatter.field("generics", Lite(&_val.generics));
2543 if let Some(val) = &_val.colon_token {
2544 #[derive(RefCast)]
2545 #[repr(transparent)]
2546 struct Print(syn::token::Colon);
2547 impl Debug for Print {
2548 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2549 formatter.write_str("Some")?;
2550 Ok(())
2551 }
2552 }
2553 formatter.field("colon_token", Print::ref_cast(val));
2554 }
David Tolnaycaac6272019-05-09 11:26:37 -07002555 if !_val.bounds.is_empty() {
2556 formatter.field("bounds", Lite(&_val.bounds));
2557 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002558 formatter.finish()
2559 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002560 syn::ImplItem::Macro(_val) => {
2561 let mut formatter = formatter.debug_struct("ImplItem::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07002562 if !_val.attrs.is_empty() {
2563 formatter.field("attrs", Lite(&_val.attrs));
2564 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002565 formatter.field("mac", Lite(&_val.mac));
2566 if let Some(val) = &_val.semi_token {
2567 #[derive(RefCast)]
2568 #[repr(transparent)]
2569 struct Print(syn::token::Semi);
2570 impl Debug for Print {
2571 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2572 formatter.write_str("Some")?;
2573 Ok(())
2574 }
2575 }
2576 formatter.field("semi_token", Print::ref_cast(val));
2577 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002578 formatter.finish()
2579 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002580 syn::ImplItem::Verbatim(_val) => {
2581 let mut formatter = formatter.debug_struct("ImplItem::Verbatim");
2582 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002583 formatter.finish()
2584 }
2585 }
2586 }
2587}
2588impl Debug for Lite<syn::ImplItemConst> {
2589 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002590 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002591 let mut formatter = formatter.debug_struct("ImplItemConst");
David Tolnaycaac6272019-05-09 11:26:37 -07002592 if !_val.attrs.is_empty() {
2593 formatter.field("attrs", Lite(&_val.attrs));
2594 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002595 formatter.field("vis", Lite(&_val.vis));
2596 if let Some(val) = &_val.defaultness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002597 #[derive(RefCast)]
2598 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002599 struct Print(syn::token::Default);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002600 impl Debug for Print {
2601 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002602 formatter.write_str("Some")?;
2603 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002604 }
2605 }
David Tolnay644246b2019-05-08 23:02:46 -07002606 formatter.field("defaultness", Print::ref_cast(val));
2607 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002608 formatter.field("ident", Lite(&_val.ident));
2609 formatter.field("ty", Lite(&_val.ty));
2610 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002611 formatter.finish()
2612 }
2613}
2614impl Debug for Lite<syn::ImplItemExistential> {
2615 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002616 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002617 let mut formatter = formatter.debug_struct("ImplItemExistential");
David Tolnaycaac6272019-05-09 11:26:37 -07002618 if !_val.attrs.is_empty() {
2619 formatter.field("attrs", Lite(&_val.attrs));
2620 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002621 formatter.field("ident", Lite(&_val.ident));
2622 formatter.field("generics", Lite(&_val.generics));
2623 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002624 #[derive(RefCast)]
2625 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002626 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002627 impl Debug for Print {
2628 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002629 formatter.write_str("Some")?;
2630 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002631 }
2632 }
David Tolnay644246b2019-05-08 23:02:46 -07002633 formatter.field("colon_token", Print::ref_cast(val));
2634 }
David Tolnaycaac6272019-05-09 11:26:37 -07002635 if !_val.bounds.is_empty() {
2636 formatter.field("bounds", Lite(&_val.bounds));
2637 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002638 formatter.finish()
2639 }
2640}
2641impl Debug for Lite<syn::ImplItemMacro> {
2642 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002643 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002644 let mut formatter = formatter.debug_struct("ImplItemMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07002645 if !_val.attrs.is_empty() {
2646 formatter.field("attrs", Lite(&_val.attrs));
2647 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002648 formatter.field("mac", Lite(&_val.mac));
2649 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002650 #[derive(RefCast)]
2651 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002652 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002653 impl Debug for Print {
2654 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002655 formatter.write_str("Some")?;
2656 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002657 }
2658 }
David Tolnay644246b2019-05-08 23:02:46 -07002659 formatter.field("semi_token", Print::ref_cast(val));
2660 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002661 formatter.finish()
2662 }
2663}
2664impl Debug for Lite<syn::ImplItemMethod> {
2665 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002666 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002667 let mut formatter = formatter.debug_struct("ImplItemMethod");
David Tolnaycaac6272019-05-09 11:26:37 -07002668 if !_val.attrs.is_empty() {
2669 formatter.field("attrs", Lite(&_val.attrs));
2670 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002671 formatter.field("vis", Lite(&_val.vis));
2672 if let Some(val) = &_val.defaultness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002673 #[derive(RefCast)]
2674 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002675 struct Print(syn::token::Default);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002676 impl Debug for Print {
2677 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002678 formatter.write_str("Some")?;
2679 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002680 }
2681 }
David Tolnay644246b2019-05-08 23:02:46 -07002682 formatter.field("defaultness", Print::ref_cast(val));
2683 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002684 formatter.field("sig", Lite(&_val.sig));
2685 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002686 formatter.finish()
2687 }
2688}
2689impl Debug for Lite<syn::ImplItemType> {
2690 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002691 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002692 let mut formatter = formatter.debug_struct("ImplItemType");
David Tolnaycaac6272019-05-09 11:26:37 -07002693 if !_val.attrs.is_empty() {
2694 formatter.field("attrs", Lite(&_val.attrs));
2695 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002696 formatter.field("vis", Lite(&_val.vis));
2697 if let Some(val) = &_val.defaultness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002698 #[derive(RefCast)]
2699 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002700 struct Print(syn::token::Default);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002701 impl Debug for Print {
2702 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002703 formatter.write_str("Some")?;
2704 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002705 }
2706 }
David Tolnay644246b2019-05-08 23:02:46 -07002707 formatter.field("defaultness", Print::ref_cast(val));
2708 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002709 formatter.field("ident", Lite(&_val.ident));
2710 formatter.field("generics", Lite(&_val.generics));
2711 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002712 formatter.finish()
2713 }
2714}
2715impl Debug for Lite<syn::ImplItemVerbatim> {
2716 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002717 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002718 let mut formatter = formatter.debug_struct("ImplItemVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07002719 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002720 formatter.finish()
2721 }
2722}
2723impl Debug for Lite<syn::Index> {
2724 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002725 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002726 let mut formatter = formatter.debug_struct("Index");
David Tolnay5302f0e2019-05-08 23:26:18 -07002727 formatter.field("index", Lite(&_val.index));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002728 formatter.finish()
2729 }
2730}
2731impl Debug for Lite<syn::Item> {
2732 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002733 let _val = &self.value;
2734 match _val {
2735 syn::Item::ExternCrate(_val) => {
2736 let mut formatter = formatter.debug_struct("Item::ExternCrate");
David Tolnaycaac6272019-05-09 11:26:37 -07002737 if !_val.attrs.is_empty() {
2738 formatter.field("attrs", Lite(&_val.attrs));
2739 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002740 formatter.field("vis", Lite(&_val.vis));
2741 formatter.field("ident", Lite(&_val.ident));
2742 if let Some(val) = &_val.rename {
2743 #[derive(RefCast)]
2744 #[repr(transparent)]
2745 struct Print((syn::token::As, proc_macro2::Ident));
2746 impl Debug for Print {
2747 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2748 formatter.write_str("Some")?;
2749 let _val = &self.0;
2750 formatter.write_str("(")?;
2751 Debug::fmt(Lite(&_val.1), formatter)?;
2752 formatter.write_str(")")?;
2753 Ok(())
2754 }
2755 }
2756 formatter.field("rename", Print::ref_cast(val));
2757 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002758 formatter.finish()
2759 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002760 syn::Item::Use(_val) => {
2761 let mut formatter = formatter.debug_struct("Item::Use");
David Tolnaycaac6272019-05-09 11:26:37 -07002762 if !_val.attrs.is_empty() {
2763 formatter.field("attrs", Lite(&_val.attrs));
2764 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002765 formatter.field("vis", Lite(&_val.vis));
2766 if let Some(val) = &_val.leading_colon {
2767 #[derive(RefCast)]
2768 #[repr(transparent)]
2769 struct Print(syn::token::Colon2);
2770 impl Debug for Print {
2771 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2772 formatter.write_str("Some")?;
2773 Ok(())
2774 }
2775 }
2776 formatter.field("leading_colon", Print::ref_cast(val));
2777 }
2778 formatter.field("tree", Lite(&_val.tree));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002779 formatter.finish()
2780 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002781 syn::Item::Static(_val) => {
2782 let mut formatter = formatter.debug_struct("Item::Static");
David Tolnaycaac6272019-05-09 11:26:37 -07002783 if !_val.attrs.is_empty() {
2784 formatter.field("attrs", Lite(&_val.attrs));
2785 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002786 formatter.field("vis", Lite(&_val.vis));
2787 if let Some(val) = &_val.mutability {
2788 #[derive(RefCast)]
2789 #[repr(transparent)]
2790 struct Print(syn::token::Mut);
2791 impl Debug for Print {
2792 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2793 formatter.write_str("Some")?;
2794 Ok(())
2795 }
2796 }
2797 formatter.field("mutability", Print::ref_cast(val));
2798 }
2799 formatter.field("ident", Lite(&_val.ident));
2800 formatter.field("ty", Lite(&_val.ty));
2801 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002802 formatter.finish()
2803 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002804 syn::Item::Const(_val) => {
2805 let mut formatter = formatter.debug_struct("Item::Const");
David Tolnaycaac6272019-05-09 11:26:37 -07002806 if !_val.attrs.is_empty() {
2807 formatter.field("attrs", Lite(&_val.attrs));
2808 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002809 formatter.field("vis", Lite(&_val.vis));
2810 formatter.field("ident", Lite(&_val.ident));
2811 formatter.field("ty", Lite(&_val.ty));
2812 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002813 formatter.finish()
2814 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002815 syn::Item::Fn(_val) => {
2816 let mut formatter = formatter.debug_struct("Item::Fn");
David Tolnaycaac6272019-05-09 11:26:37 -07002817 if !_val.attrs.is_empty() {
2818 formatter.field("attrs", Lite(&_val.attrs));
2819 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002820 formatter.field("vis", Lite(&_val.vis));
2821 if let Some(val) = &_val.constness {
2822 #[derive(RefCast)]
2823 #[repr(transparent)]
2824 struct Print(syn::token::Const);
2825 impl Debug for Print {
2826 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2827 formatter.write_str("Some")?;
2828 Ok(())
2829 }
2830 }
2831 formatter.field("constness", Print::ref_cast(val));
2832 }
2833 if let Some(val) = &_val.unsafety {
2834 #[derive(RefCast)]
2835 #[repr(transparent)]
2836 struct Print(syn::token::Unsafe);
2837 impl Debug for Print {
2838 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2839 formatter.write_str("Some")?;
2840 Ok(())
2841 }
2842 }
2843 formatter.field("unsafety", Print::ref_cast(val));
2844 }
2845 if let Some(val) = &_val.asyncness {
2846 #[derive(RefCast)]
2847 #[repr(transparent)]
2848 struct Print(syn::token::Async);
2849 impl Debug for Print {
2850 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2851 formatter.write_str("Some")?;
2852 Ok(())
2853 }
2854 }
2855 formatter.field("asyncness", Print::ref_cast(val));
2856 }
2857 if let Some(val) = &_val.abi {
2858 #[derive(RefCast)]
2859 #[repr(transparent)]
2860 struct Print(syn::Abi);
2861 impl Debug for Print {
2862 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2863 formatter.write_str("Some")?;
2864 let _val = &self.0;
2865 formatter.write_str("(")?;
2866 Debug::fmt(Lite(_val), formatter)?;
2867 formatter.write_str(")")?;
2868 Ok(())
2869 }
2870 }
2871 formatter.field("abi", Print::ref_cast(val));
2872 }
2873 formatter.field("ident", Lite(&_val.ident));
2874 formatter.field("decl", Lite(&_val.decl));
2875 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002876 formatter.finish()
2877 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002878 syn::Item::Mod(_val) => {
2879 let mut formatter = formatter.debug_struct("Item::Mod");
David Tolnaycaac6272019-05-09 11:26:37 -07002880 if !_val.attrs.is_empty() {
2881 formatter.field("attrs", Lite(&_val.attrs));
2882 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002883 formatter.field("vis", Lite(&_val.vis));
2884 formatter.field("ident", Lite(&_val.ident));
2885 if let Some(val) = &_val.content {
2886 #[derive(RefCast)]
2887 #[repr(transparent)]
2888 struct Print((syn::token::Brace, Vec<syn::Item>));
2889 impl Debug for Print {
2890 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2891 formatter.write_str("Some")?;
2892 let _val = &self.0;
2893 formatter.write_str("(")?;
2894 Debug::fmt(Lite(&_val.1), formatter)?;
2895 formatter.write_str(")")?;
2896 Ok(())
2897 }
2898 }
2899 formatter.field("content", Print::ref_cast(val));
2900 }
2901 if let Some(val) = &_val.semi {
2902 #[derive(RefCast)]
2903 #[repr(transparent)]
2904 struct Print(syn::token::Semi);
2905 impl Debug for Print {
2906 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2907 formatter.write_str("Some")?;
2908 Ok(())
2909 }
2910 }
2911 formatter.field("semi", Print::ref_cast(val));
2912 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002913 formatter.finish()
2914 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002915 syn::Item::ForeignMod(_val) => {
2916 let mut formatter = formatter.debug_struct("Item::ForeignMod");
David Tolnaycaac6272019-05-09 11:26:37 -07002917 if !_val.attrs.is_empty() {
2918 formatter.field("attrs", Lite(&_val.attrs));
2919 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002920 formatter.field("abi", Lite(&_val.abi));
David Tolnaycaac6272019-05-09 11:26:37 -07002921 if !_val.items.is_empty() {
2922 formatter.field("items", Lite(&_val.items));
2923 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002924 formatter.finish()
2925 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002926 syn::Item::Type(_val) => {
2927 let mut formatter = formatter.debug_struct("Item::Type");
David Tolnaycaac6272019-05-09 11:26:37 -07002928 if !_val.attrs.is_empty() {
2929 formatter.field("attrs", Lite(&_val.attrs));
2930 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002931 formatter.field("vis", Lite(&_val.vis));
2932 formatter.field("ident", Lite(&_val.ident));
2933 formatter.field("generics", Lite(&_val.generics));
2934 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002935 formatter.finish()
2936 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002937 syn::Item::Existential(_val) => {
2938 let mut formatter = formatter.debug_struct("Item::Existential");
David Tolnaycaac6272019-05-09 11:26:37 -07002939 if !_val.attrs.is_empty() {
2940 formatter.field("attrs", Lite(&_val.attrs));
2941 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002942 formatter.field("vis", Lite(&_val.vis));
2943 formatter.field("ident", Lite(&_val.ident));
2944 formatter.field("generics", Lite(&_val.generics));
2945 if let Some(val) = &_val.colon_token {
2946 #[derive(RefCast)]
2947 #[repr(transparent)]
2948 struct Print(syn::token::Colon);
2949 impl Debug for Print {
2950 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2951 formatter.write_str("Some")?;
2952 Ok(())
2953 }
2954 }
2955 formatter.field("colon_token", Print::ref_cast(val));
2956 }
David Tolnaycaac6272019-05-09 11:26:37 -07002957 if !_val.bounds.is_empty() {
2958 formatter.field("bounds", Lite(&_val.bounds));
2959 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002960 formatter.finish()
2961 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002962 syn::Item::Struct(_val) => {
2963 let mut formatter = formatter.debug_struct("Item::Struct");
David Tolnaycaac6272019-05-09 11:26:37 -07002964 if !_val.attrs.is_empty() {
2965 formatter.field("attrs", Lite(&_val.attrs));
2966 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002967 formatter.field("vis", Lite(&_val.vis));
2968 formatter.field("ident", Lite(&_val.ident));
2969 formatter.field("generics", Lite(&_val.generics));
2970 formatter.field("fields", Lite(&_val.fields));
2971 if let Some(val) = &_val.semi_token {
2972 #[derive(RefCast)]
2973 #[repr(transparent)]
2974 struct Print(syn::token::Semi);
2975 impl Debug for Print {
2976 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2977 formatter.write_str("Some")?;
2978 Ok(())
2979 }
2980 }
2981 formatter.field("semi_token", Print::ref_cast(val));
2982 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002983 formatter.finish()
2984 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002985 syn::Item::Enum(_val) => {
2986 let mut formatter = formatter.debug_struct("Item::Enum");
David Tolnaycaac6272019-05-09 11:26:37 -07002987 if !_val.attrs.is_empty() {
2988 formatter.field("attrs", Lite(&_val.attrs));
2989 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002990 formatter.field("vis", Lite(&_val.vis));
2991 formatter.field("ident", Lite(&_val.ident));
2992 formatter.field("generics", Lite(&_val.generics));
David Tolnaycaac6272019-05-09 11:26:37 -07002993 if !_val.variants.is_empty() {
2994 formatter.field("variants", Lite(&_val.variants));
2995 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002996 formatter.finish()
2997 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002998 syn::Item::Union(_val) => {
2999 let mut formatter = formatter.debug_struct("Item::Union");
David Tolnaycaac6272019-05-09 11:26:37 -07003000 if !_val.attrs.is_empty() {
3001 formatter.field("attrs", Lite(&_val.attrs));
3002 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003003 formatter.field("vis", Lite(&_val.vis));
3004 formatter.field("ident", Lite(&_val.ident));
3005 formatter.field("generics", Lite(&_val.generics));
3006 formatter.field("fields", Lite(&_val.fields));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003007 formatter.finish()
3008 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003009 syn::Item::Trait(_val) => {
3010 let mut formatter = formatter.debug_struct("Item::Trait");
David Tolnaycaac6272019-05-09 11:26:37 -07003011 if !_val.attrs.is_empty() {
3012 formatter.field("attrs", Lite(&_val.attrs));
3013 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003014 formatter.field("vis", Lite(&_val.vis));
3015 if let Some(val) = &_val.unsafety {
3016 #[derive(RefCast)]
3017 #[repr(transparent)]
3018 struct Print(syn::token::Unsafe);
3019 impl Debug for Print {
3020 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3021 formatter.write_str("Some")?;
3022 Ok(())
3023 }
3024 }
3025 formatter.field("unsafety", Print::ref_cast(val));
3026 }
3027 if let Some(val) = &_val.auto_token {
3028 #[derive(RefCast)]
3029 #[repr(transparent)]
3030 struct Print(syn::token::Auto);
3031 impl Debug for Print {
3032 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3033 formatter.write_str("Some")?;
3034 Ok(())
3035 }
3036 }
3037 formatter.field("auto_token", Print::ref_cast(val));
3038 }
3039 formatter.field("ident", Lite(&_val.ident));
3040 formatter.field("generics", Lite(&_val.generics));
3041 if let Some(val) = &_val.colon_token {
3042 #[derive(RefCast)]
3043 #[repr(transparent)]
3044 struct Print(syn::token::Colon);
3045 impl Debug for Print {
3046 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3047 formatter.write_str("Some")?;
3048 Ok(())
3049 }
3050 }
3051 formatter.field("colon_token", Print::ref_cast(val));
3052 }
David Tolnaycaac6272019-05-09 11:26:37 -07003053 if !_val.supertraits.is_empty() {
3054 formatter.field("supertraits", Lite(&_val.supertraits));
3055 }
3056 if !_val.items.is_empty() {
3057 formatter.field("items", Lite(&_val.items));
3058 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003059 formatter.finish()
3060 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003061 syn::Item::TraitAlias(_val) => {
3062 let mut formatter = formatter.debug_struct("Item::TraitAlias");
David Tolnaycaac6272019-05-09 11:26:37 -07003063 if !_val.attrs.is_empty() {
3064 formatter.field("attrs", Lite(&_val.attrs));
3065 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003066 formatter.field("vis", Lite(&_val.vis));
3067 formatter.field("ident", Lite(&_val.ident));
3068 formatter.field("generics", Lite(&_val.generics));
David Tolnaycaac6272019-05-09 11:26:37 -07003069 if !_val.bounds.is_empty() {
3070 formatter.field("bounds", Lite(&_val.bounds));
3071 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003072 formatter.finish()
3073 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003074 syn::Item::Impl(_val) => {
3075 let mut formatter = formatter.debug_struct("Item::Impl");
David Tolnaycaac6272019-05-09 11:26:37 -07003076 if !_val.attrs.is_empty() {
3077 formatter.field("attrs", Lite(&_val.attrs));
3078 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003079 if let Some(val) = &_val.defaultness {
3080 #[derive(RefCast)]
3081 #[repr(transparent)]
3082 struct Print(syn::token::Default);
3083 impl Debug for Print {
3084 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3085 formatter.write_str("Some")?;
3086 Ok(())
3087 }
3088 }
3089 formatter.field("defaultness", Print::ref_cast(val));
3090 }
3091 if let Some(val) = &_val.unsafety {
3092 #[derive(RefCast)]
3093 #[repr(transparent)]
3094 struct Print(syn::token::Unsafe);
3095 impl Debug for Print {
3096 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3097 formatter.write_str("Some")?;
3098 Ok(())
3099 }
3100 }
3101 formatter.field("unsafety", Print::ref_cast(val));
3102 }
3103 formatter.field("generics", Lite(&_val.generics));
3104 if let Some(val) = &_val.trait_ {
3105 #[derive(RefCast)]
3106 #[repr(transparent)]
3107 struct Print((Option<syn::token::Bang>, syn::Path, syn::token::For));
3108 impl Debug for Print {
3109 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3110 formatter.write_str("Some")?;
3111 let _val = &self.0;
3112 formatter.write_str("(")?;
3113 Debug::fmt(
3114 &(
3115 {
3116 #[derive(RefCast)]
3117 #[repr(transparent)]
3118 struct Print(Option<syn::token::Bang>);
3119 impl Debug for Print {
3120 fn fmt(
3121 &self,
3122 formatter: &mut fmt::Formatter,
3123 ) -> fmt::Result
3124 {
3125 match &self.0 {
3126 Some(_val) => {
3127 formatter.write_str("Some")?;
3128 Ok(())
3129 }
3130 None => formatter.write_str("None"),
3131 }
3132 }
3133 }
3134 Print::ref_cast(&_val.0)
3135 },
3136 Lite(&_val.1),
3137 ),
3138 formatter,
3139 )?;
3140 formatter.write_str(")")?;
3141 Ok(())
3142 }
3143 }
3144 formatter.field("trait_", Print::ref_cast(val));
3145 }
3146 formatter.field("self_ty", Lite(&_val.self_ty));
David Tolnaycaac6272019-05-09 11:26:37 -07003147 if !_val.items.is_empty() {
3148 formatter.field("items", Lite(&_val.items));
3149 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003150 formatter.finish()
3151 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003152 syn::Item::Macro(_val) => {
3153 let mut formatter = formatter.debug_struct("Item::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07003154 if !_val.attrs.is_empty() {
3155 formatter.field("attrs", Lite(&_val.attrs));
3156 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003157 if let Some(val) = &_val.ident {
3158 #[derive(RefCast)]
3159 #[repr(transparent)]
3160 struct Print(proc_macro2::Ident);
3161 impl Debug for Print {
3162 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3163 formatter.write_str("Some")?;
3164 let _val = &self.0;
3165 formatter.write_str("(")?;
3166 Debug::fmt(Lite(_val), formatter)?;
3167 formatter.write_str(")")?;
3168 Ok(())
3169 }
3170 }
3171 formatter.field("ident", Print::ref_cast(val));
3172 }
3173 formatter.field("mac", Lite(&_val.mac));
3174 if let Some(val) = &_val.semi_token {
3175 #[derive(RefCast)]
3176 #[repr(transparent)]
3177 struct Print(syn::token::Semi);
3178 impl Debug for Print {
3179 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3180 formatter.write_str("Some")?;
3181 Ok(())
3182 }
3183 }
3184 formatter.field("semi_token", Print::ref_cast(val));
3185 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003186 formatter.finish()
3187 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003188 syn::Item::Macro2(_val) => {
3189 let mut formatter = formatter.debug_struct("Item::Macro2");
David Tolnaycaac6272019-05-09 11:26:37 -07003190 if !_val.attrs.is_empty() {
3191 formatter.field("attrs", Lite(&_val.attrs));
3192 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003193 formatter.field("vis", Lite(&_val.vis));
3194 formatter.field("ident", Lite(&_val.ident));
3195 formatter.field("args", Lite(&_val.args));
3196 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003197 formatter.finish()
3198 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003199 syn::Item::Verbatim(_val) => {
3200 let mut formatter = formatter.debug_struct("Item::Verbatim");
3201 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003202 formatter.finish()
3203 }
3204 }
3205 }
3206}
3207impl Debug for Lite<syn::ItemConst> {
3208 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003209 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003210 let mut formatter = formatter.debug_struct("ItemConst");
David Tolnaycaac6272019-05-09 11:26:37 -07003211 if !_val.attrs.is_empty() {
3212 formatter.field("attrs", Lite(&_val.attrs));
3213 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003214 formatter.field("vis", Lite(&_val.vis));
3215 formatter.field("ident", Lite(&_val.ident));
3216 formatter.field("ty", Lite(&_val.ty));
3217 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003218 formatter.finish()
3219 }
3220}
3221impl Debug for Lite<syn::ItemEnum> {
3222 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003223 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003224 let mut formatter = formatter.debug_struct("ItemEnum");
David Tolnaycaac6272019-05-09 11:26:37 -07003225 if !_val.attrs.is_empty() {
3226 formatter.field("attrs", Lite(&_val.attrs));
3227 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003228 formatter.field("vis", Lite(&_val.vis));
3229 formatter.field("ident", Lite(&_val.ident));
3230 formatter.field("generics", Lite(&_val.generics));
David Tolnaycaac6272019-05-09 11:26:37 -07003231 if !_val.variants.is_empty() {
3232 formatter.field("variants", Lite(&_val.variants));
3233 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003234 formatter.finish()
3235 }
3236}
3237impl Debug for Lite<syn::ItemExistential> {
3238 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003239 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003240 let mut formatter = formatter.debug_struct("ItemExistential");
David Tolnaycaac6272019-05-09 11:26:37 -07003241 if !_val.attrs.is_empty() {
3242 formatter.field("attrs", Lite(&_val.attrs));
3243 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003244 formatter.field("vis", Lite(&_val.vis));
3245 formatter.field("ident", Lite(&_val.ident));
3246 formatter.field("generics", Lite(&_val.generics));
3247 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003248 #[derive(RefCast)]
3249 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003250 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003251 impl Debug for Print {
3252 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003253 formatter.write_str("Some")?;
3254 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003255 }
3256 }
David Tolnay644246b2019-05-08 23:02:46 -07003257 formatter.field("colon_token", Print::ref_cast(val));
3258 }
David Tolnaycaac6272019-05-09 11:26:37 -07003259 if !_val.bounds.is_empty() {
3260 formatter.field("bounds", Lite(&_val.bounds));
3261 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003262 formatter.finish()
3263 }
3264}
3265impl Debug for Lite<syn::ItemExternCrate> {
3266 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003267 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003268 let mut formatter = formatter.debug_struct("ItemExternCrate");
David Tolnaycaac6272019-05-09 11:26:37 -07003269 if !_val.attrs.is_empty() {
3270 formatter.field("attrs", Lite(&_val.attrs));
3271 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003272 formatter.field("vis", Lite(&_val.vis));
3273 formatter.field("ident", Lite(&_val.ident));
3274 if let Some(val) = &_val.rename {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003275 #[derive(RefCast)]
3276 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003277 struct Print((syn::token::As, proc_macro2::Ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003278 impl Debug for Print {
3279 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003280 formatter.write_str("Some")?;
3281 let _val = &self.0;
3282 formatter.write_str("(")?;
3283 Debug::fmt(Lite(&_val.1), formatter)?;
3284 formatter.write_str(")")?;
3285 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003286 }
3287 }
David Tolnay644246b2019-05-08 23:02:46 -07003288 formatter.field("rename", Print::ref_cast(val));
3289 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003290 formatter.finish()
3291 }
3292}
3293impl Debug for Lite<syn::ItemFn> {
3294 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003295 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003296 let mut formatter = formatter.debug_struct("ItemFn");
David Tolnaycaac6272019-05-09 11:26:37 -07003297 if !_val.attrs.is_empty() {
3298 formatter.field("attrs", Lite(&_val.attrs));
3299 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003300 formatter.field("vis", Lite(&_val.vis));
3301 if let Some(val) = &_val.constness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003302 #[derive(RefCast)]
3303 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003304 struct Print(syn::token::Const);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003305 impl Debug for Print {
3306 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003307 formatter.write_str("Some")?;
3308 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003309 }
3310 }
David Tolnay644246b2019-05-08 23:02:46 -07003311 formatter.field("constness", Print::ref_cast(val));
3312 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003313 if let Some(val) = &_val.unsafety {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003314 #[derive(RefCast)]
3315 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003316 struct Print(syn::token::Unsafe);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003317 impl Debug for Print {
3318 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003319 formatter.write_str("Some")?;
3320 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003321 }
3322 }
David Tolnay644246b2019-05-08 23:02:46 -07003323 formatter.field("unsafety", Print::ref_cast(val));
3324 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003325 if let Some(val) = &_val.asyncness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003326 #[derive(RefCast)]
3327 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003328 struct Print(syn::token::Async);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003329 impl Debug for Print {
3330 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003331 formatter.write_str("Some")?;
3332 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003333 }
3334 }
David Tolnay644246b2019-05-08 23:02:46 -07003335 formatter.field("asyncness", Print::ref_cast(val));
3336 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003337 if let Some(val) = &_val.abi {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003338 #[derive(RefCast)]
3339 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003340 struct Print(syn::Abi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003341 impl Debug for Print {
3342 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003343 formatter.write_str("Some")?;
3344 let _val = &self.0;
3345 formatter.write_str("(")?;
3346 Debug::fmt(Lite(_val), formatter)?;
3347 formatter.write_str(")")?;
3348 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003349 }
3350 }
David Tolnay644246b2019-05-08 23:02:46 -07003351 formatter.field("abi", Print::ref_cast(val));
3352 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003353 formatter.field("ident", Lite(&_val.ident));
3354 formatter.field("decl", Lite(&_val.decl));
3355 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003356 formatter.finish()
3357 }
3358}
3359impl Debug for Lite<syn::ItemForeignMod> {
3360 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003361 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003362 let mut formatter = formatter.debug_struct("ItemForeignMod");
David Tolnaycaac6272019-05-09 11:26:37 -07003363 if !_val.attrs.is_empty() {
3364 formatter.field("attrs", Lite(&_val.attrs));
3365 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003366 formatter.field("abi", Lite(&_val.abi));
David Tolnaycaac6272019-05-09 11:26:37 -07003367 if !_val.items.is_empty() {
3368 formatter.field("items", Lite(&_val.items));
3369 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003370 formatter.finish()
3371 }
3372}
3373impl Debug for Lite<syn::ItemImpl> {
3374 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003375 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003376 let mut formatter = formatter.debug_struct("ItemImpl");
David Tolnaycaac6272019-05-09 11:26:37 -07003377 if !_val.attrs.is_empty() {
3378 formatter.field("attrs", Lite(&_val.attrs));
3379 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003380 if let Some(val) = &_val.defaultness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003381 #[derive(RefCast)]
3382 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003383 struct Print(syn::token::Default);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003384 impl Debug for Print {
3385 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003386 formatter.write_str("Some")?;
3387 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003388 }
3389 }
David Tolnay644246b2019-05-08 23:02:46 -07003390 formatter.field("defaultness", Print::ref_cast(val));
3391 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003392 if let Some(val) = &_val.unsafety {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003393 #[derive(RefCast)]
3394 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003395 struct Print(syn::token::Unsafe);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003396 impl Debug for Print {
3397 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003398 formatter.write_str("Some")?;
3399 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003400 }
3401 }
David Tolnay644246b2019-05-08 23:02:46 -07003402 formatter.field("unsafety", Print::ref_cast(val));
3403 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003404 formatter.field("generics", Lite(&_val.generics));
3405 if let Some(val) = &_val.trait_ {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003406 #[derive(RefCast)]
3407 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003408 struct Print((Option<syn::token::Bang>, syn::Path, syn::token::For));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003409 impl Debug for Print {
3410 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003411 formatter.write_str("Some")?;
3412 let _val = &self.0;
3413 formatter.write_str("(")?;
3414 Debug::fmt(
3415 &(
3416 {
3417 #[derive(RefCast)]
3418 #[repr(transparent)]
3419 struct Print(Option<syn::token::Bang>);
3420 impl Debug for Print {
3421 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3422 match &self.0 {
3423 Some(_val) => {
3424 formatter.write_str("Some")?;
3425 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003426 }
David Tolnay644246b2019-05-08 23:02:46 -07003427 None => formatter.write_str("None"),
David Tolnay3c3c7d12019-05-08 14:54:12 -07003428 }
David Tolnay644246b2019-05-08 23:02:46 -07003429 }
3430 }
3431 Print::ref_cast(&_val.0)
3432 },
3433 Lite(&_val.1),
3434 ),
3435 formatter,
3436 )?;
3437 formatter.write_str(")")?;
3438 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003439 }
3440 }
David Tolnay644246b2019-05-08 23:02:46 -07003441 formatter.field("trait_", Print::ref_cast(val));
3442 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003443 formatter.field("self_ty", Lite(&_val.self_ty));
David Tolnaycaac6272019-05-09 11:26:37 -07003444 if !_val.items.is_empty() {
3445 formatter.field("items", Lite(&_val.items));
3446 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003447 formatter.finish()
3448 }
3449}
3450impl Debug for Lite<syn::ItemMacro> {
3451 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003452 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003453 let mut formatter = formatter.debug_struct("ItemMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07003454 if !_val.attrs.is_empty() {
3455 formatter.field("attrs", Lite(&_val.attrs));
3456 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003457 if let Some(val) = &_val.ident {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003458 #[derive(RefCast)]
3459 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003460 struct Print(proc_macro2::Ident);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003461 impl Debug for Print {
3462 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003463 formatter.write_str("Some")?;
3464 let _val = &self.0;
3465 formatter.write_str("(")?;
3466 Debug::fmt(Lite(_val), formatter)?;
3467 formatter.write_str(")")?;
3468 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003469 }
3470 }
David Tolnay644246b2019-05-08 23:02:46 -07003471 formatter.field("ident", Print::ref_cast(val));
3472 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003473 formatter.field("mac", Lite(&_val.mac));
3474 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003475 #[derive(RefCast)]
3476 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003477 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003478 impl Debug for Print {
3479 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003480 formatter.write_str("Some")?;
3481 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003482 }
3483 }
David Tolnay644246b2019-05-08 23:02:46 -07003484 formatter.field("semi_token", Print::ref_cast(val));
3485 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003486 formatter.finish()
3487 }
3488}
3489impl Debug for Lite<syn::ItemMacro2> {
3490 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003491 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003492 let mut formatter = formatter.debug_struct("ItemMacro2");
David Tolnaycaac6272019-05-09 11:26:37 -07003493 if !_val.attrs.is_empty() {
3494 formatter.field("attrs", Lite(&_val.attrs));
3495 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003496 formatter.field("vis", Lite(&_val.vis));
3497 formatter.field("ident", Lite(&_val.ident));
3498 formatter.field("args", Lite(&_val.args));
3499 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003500 formatter.finish()
3501 }
3502}
3503impl Debug for Lite<syn::ItemMod> {
3504 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003505 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003506 let mut formatter = formatter.debug_struct("ItemMod");
David Tolnaycaac6272019-05-09 11:26:37 -07003507 if !_val.attrs.is_empty() {
3508 formatter.field("attrs", Lite(&_val.attrs));
3509 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003510 formatter.field("vis", Lite(&_val.vis));
3511 formatter.field("ident", Lite(&_val.ident));
3512 if let Some(val) = &_val.content {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003513 #[derive(RefCast)]
3514 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003515 struct Print((syn::token::Brace, Vec<syn::Item>));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003516 impl Debug for Print {
3517 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003518 formatter.write_str("Some")?;
3519 let _val = &self.0;
3520 formatter.write_str("(")?;
3521 Debug::fmt(Lite(&_val.1), formatter)?;
3522 formatter.write_str(")")?;
3523 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003524 }
3525 }
David Tolnay644246b2019-05-08 23:02:46 -07003526 formatter.field("content", Print::ref_cast(val));
3527 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003528 if let Some(val) = &_val.semi {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003529 #[derive(RefCast)]
3530 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003531 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003532 impl Debug for Print {
3533 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003534 formatter.write_str("Some")?;
3535 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003536 }
3537 }
David Tolnay644246b2019-05-08 23:02:46 -07003538 formatter.field("semi", Print::ref_cast(val));
3539 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003540 formatter.finish()
3541 }
3542}
3543impl Debug for Lite<syn::ItemStatic> {
3544 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003545 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003546 let mut formatter = formatter.debug_struct("ItemStatic");
David Tolnaycaac6272019-05-09 11:26:37 -07003547 if !_val.attrs.is_empty() {
3548 formatter.field("attrs", Lite(&_val.attrs));
3549 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003550 formatter.field("vis", Lite(&_val.vis));
3551 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003552 #[derive(RefCast)]
3553 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003554 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003555 impl Debug for Print {
3556 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003557 formatter.write_str("Some")?;
3558 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003559 }
3560 }
David Tolnay644246b2019-05-08 23:02:46 -07003561 formatter.field("mutability", Print::ref_cast(val));
3562 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003563 formatter.field("ident", Lite(&_val.ident));
3564 formatter.field("ty", Lite(&_val.ty));
3565 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003566 formatter.finish()
3567 }
3568}
3569impl Debug for Lite<syn::ItemStruct> {
3570 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003571 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003572 let mut formatter = formatter.debug_struct("ItemStruct");
David Tolnaycaac6272019-05-09 11:26:37 -07003573 if !_val.attrs.is_empty() {
3574 formatter.field("attrs", Lite(&_val.attrs));
3575 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003576 formatter.field("vis", Lite(&_val.vis));
3577 formatter.field("ident", Lite(&_val.ident));
3578 formatter.field("generics", Lite(&_val.generics));
3579 formatter.field("fields", Lite(&_val.fields));
3580 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003581 #[derive(RefCast)]
3582 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003583 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003584 impl Debug for Print {
3585 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003586 formatter.write_str("Some")?;
3587 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003588 }
3589 }
David Tolnay644246b2019-05-08 23:02:46 -07003590 formatter.field("semi_token", Print::ref_cast(val));
3591 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003592 formatter.finish()
3593 }
3594}
3595impl Debug for Lite<syn::ItemTrait> {
3596 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003597 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003598 let mut formatter = formatter.debug_struct("ItemTrait");
David Tolnaycaac6272019-05-09 11:26:37 -07003599 if !_val.attrs.is_empty() {
3600 formatter.field("attrs", Lite(&_val.attrs));
3601 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003602 formatter.field("vis", Lite(&_val.vis));
3603 if let Some(val) = &_val.unsafety {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003604 #[derive(RefCast)]
3605 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003606 struct Print(syn::token::Unsafe);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003607 impl Debug for Print {
3608 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003609 formatter.write_str("Some")?;
3610 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003611 }
3612 }
David Tolnay644246b2019-05-08 23:02:46 -07003613 formatter.field("unsafety", Print::ref_cast(val));
3614 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003615 if let Some(val) = &_val.auto_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003616 #[derive(RefCast)]
3617 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003618 struct Print(syn::token::Auto);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003619 impl Debug for Print {
3620 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003621 formatter.write_str("Some")?;
3622 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003623 }
3624 }
David Tolnay644246b2019-05-08 23:02:46 -07003625 formatter.field("auto_token", Print::ref_cast(val));
3626 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003627 formatter.field("ident", Lite(&_val.ident));
3628 formatter.field("generics", Lite(&_val.generics));
3629 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003630 #[derive(RefCast)]
3631 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003632 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003633 impl Debug for Print {
3634 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003635 formatter.write_str("Some")?;
3636 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003637 }
3638 }
David Tolnay644246b2019-05-08 23:02:46 -07003639 formatter.field("colon_token", Print::ref_cast(val));
3640 }
David Tolnaycaac6272019-05-09 11:26:37 -07003641 if !_val.supertraits.is_empty() {
3642 formatter.field("supertraits", Lite(&_val.supertraits));
3643 }
3644 if !_val.items.is_empty() {
3645 formatter.field("items", Lite(&_val.items));
3646 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003647 formatter.finish()
3648 }
3649}
3650impl Debug for Lite<syn::ItemTraitAlias> {
3651 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003652 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003653 let mut formatter = formatter.debug_struct("ItemTraitAlias");
David Tolnaycaac6272019-05-09 11:26:37 -07003654 if !_val.attrs.is_empty() {
3655 formatter.field("attrs", Lite(&_val.attrs));
3656 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003657 formatter.field("vis", Lite(&_val.vis));
3658 formatter.field("ident", Lite(&_val.ident));
3659 formatter.field("generics", Lite(&_val.generics));
David Tolnaycaac6272019-05-09 11:26:37 -07003660 if !_val.bounds.is_empty() {
3661 formatter.field("bounds", Lite(&_val.bounds));
3662 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003663 formatter.finish()
3664 }
3665}
3666impl Debug for Lite<syn::ItemType> {
3667 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003668 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003669 let mut formatter = formatter.debug_struct("ItemType");
David Tolnaycaac6272019-05-09 11:26:37 -07003670 if !_val.attrs.is_empty() {
3671 formatter.field("attrs", Lite(&_val.attrs));
3672 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003673 formatter.field("vis", Lite(&_val.vis));
3674 formatter.field("ident", Lite(&_val.ident));
3675 formatter.field("generics", Lite(&_val.generics));
3676 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003677 formatter.finish()
3678 }
3679}
3680impl Debug for Lite<syn::ItemUnion> {
3681 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003682 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003683 let mut formatter = formatter.debug_struct("ItemUnion");
David Tolnaycaac6272019-05-09 11:26:37 -07003684 if !_val.attrs.is_empty() {
3685 formatter.field("attrs", Lite(&_val.attrs));
3686 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003687 formatter.field("vis", Lite(&_val.vis));
3688 formatter.field("ident", Lite(&_val.ident));
3689 formatter.field("generics", Lite(&_val.generics));
3690 formatter.field("fields", Lite(&_val.fields));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003691 formatter.finish()
3692 }
3693}
3694impl Debug for Lite<syn::ItemUse> {
3695 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003696 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003697 let mut formatter = formatter.debug_struct("ItemUse");
David Tolnaycaac6272019-05-09 11:26:37 -07003698 if !_val.attrs.is_empty() {
3699 formatter.field("attrs", Lite(&_val.attrs));
3700 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003701 formatter.field("vis", Lite(&_val.vis));
3702 if let Some(val) = &_val.leading_colon {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003703 #[derive(RefCast)]
3704 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003705 struct Print(syn::token::Colon2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003706 impl Debug for Print {
3707 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003708 formatter.write_str("Some")?;
3709 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003710 }
3711 }
David Tolnay644246b2019-05-08 23:02:46 -07003712 formatter.field("leading_colon", Print::ref_cast(val));
3713 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003714 formatter.field("tree", Lite(&_val.tree));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003715 formatter.finish()
3716 }
3717}
3718impl Debug for Lite<syn::ItemVerbatim> {
3719 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003720 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003721 let mut formatter = formatter.debug_struct("ItemVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07003722 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003723 formatter.finish()
3724 }
3725}
3726impl Debug for Lite<syn::Label> {
3727 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003728 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003729 let mut formatter = formatter.debug_struct("Label");
David Tolnay5302f0e2019-05-08 23:26:18 -07003730 formatter.field("name", Lite(&_val.name));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003731 formatter.finish()
3732 }
3733}
3734impl Debug for Lite<syn::Lifetime> {
3735 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003736 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003737 let mut formatter = formatter.debug_struct("Lifetime");
David Tolnay5302f0e2019-05-08 23:26:18 -07003738 formatter.field("ident", Lite(&_val.ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003739 formatter.finish()
3740 }
3741}
3742impl Debug for Lite<syn::LifetimeDef> {
3743 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003744 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003745 let mut formatter = formatter.debug_struct("LifetimeDef");
David Tolnaycaac6272019-05-09 11:26:37 -07003746 if !_val.attrs.is_empty() {
3747 formatter.field("attrs", Lite(&_val.attrs));
3748 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003749 formatter.field("lifetime", Lite(&_val.lifetime));
3750 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003751 #[derive(RefCast)]
3752 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003753 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003754 impl Debug for Print {
3755 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003756 formatter.write_str("Some")?;
3757 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003758 }
3759 }
David Tolnay644246b2019-05-08 23:02:46 -07003760 formatter.field("colon_token", Print::ref_cast(val));
3761 }
David Tolnaycaac6272019-05-09 11:26:37 -07003762 if !_val.bounds.is_empty() {
3763 formatter.field("bounds", Lite(&_val.bounds));
3764 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003765 formatter.finish()
3766 }
3767}
3768impl Debug for Lite<syn::Lit> {
3769 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003770 let _val = &self.value;
3771 match _val {
3772 syn::Lit::Str(_val) => write!(formatter, "{:?}", _val.value()),
3773 syn::Lit::ByteStr(_val) => write!(formatter, "{:?}", _val.value()),
3774 syn::Lit::Byte(_val) => write!(formatter, "{:?}", _val.value()),
3775 syn::Lit::Char(_val) => write!(formatter, "{:?}", _val.value()),
3776 syn::Lit::Int(_val) => write!(formatter, "{:?}", _val.value()),
3777 syn::Lit::Float(_val) => write!(formatter, "{:?}", _val.value()),
3778 syn::Lit::Bool(_val) => {
3779 let mut formatter = formatter.debug_struct("Lit::Bool");
3780 formatter.field("value", Lite(&_val.value));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003781 formatter.finish()
3782 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003783 syn::Lit::Verbatim(_val) => {
3784 let mut formatter = formatter.debug_struct("Lit::Verbatim");
3785 formatter.field("token", Lite(&_val.token));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003786 formatter.finish()
3787 }
3788 }
3789 }
3790}
3791impl Debug for Lite<syn::LitBool> {
3792 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003793 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003794 let mut formatter = formatter.debug_struct("LitBool");
David Tolnay5302f0e2019-05-08 23:26:18 -07003795 formatter.field("value", Lite(&_val.value));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003796 formatter.finish()
3797 }
3798}
3799impl Debug for Lite<syn::LitByte> {
3800 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003801 let _val = &self.value;
3802 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003803 }
3804}
3805impl Debug for Lite<syn::LitByteStr> {
3806 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003807 let _val = &self.value;
3808 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003809 }
3810}
3811impl Debug for Lite<syn::LitChar> {
3812 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003813 let _val = &self.value;
3814 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003815 }
3816}
3817impl Debug for Lite<syn::LitFloat> {
3818 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003819 let _val = &self.value;
3820 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003821 }
3822}
3823impl Debug for Lite<syn::LitInt> {
3824 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003825 let _val = &self.value;
3826 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003827 }
3828}
3829impl Debug for Lite<syn::LitStr> {
3830 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003831 let _val = &self.value;
3832 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003833 }
3834}
3835impl Debug for Lite<syn::LitVerbatim> {
3836 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003837 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003838 let mut formatter = formatter.debug_struct("LitVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07003839 formatter.field("token", Lite(&_val.token));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003840 formatter.finish()
3841 }
3842}
3843impl Debug for Lite<syn::Local> {
3844 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003845 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003846 let mut formatter = formatter.debug_struct("Local");
David Tolnaycaac6272019-05-09 11:26:37 -07003847 if !_val.attrs.is_empty() {
3848 formatter.field("attrs", Lite(&_val.attrs));
3849 }
3850 if !_val.pats.is_empty() {
3851 formatter.field("pats", Lite(&_val.pats));
3852 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003853 if let Some(val) = &_val.ty {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003854 #[derive(RefCast)]
3855 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003856 struct Print((syn::token::Colon, Box<syn::Type>));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003857 impl Debug for Print {
3858 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003859 formatter.write_str("Some")?;
3860 let _val = &self.0;
3861 formatter.write_str("(")?;
3862 Debug::fmt(Lite(&_val.1), formatter)?;
3863 formatter.write_str(")")?;
3864 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003865 }
3866 }
David Tolnay644246b2019-05-08 23:02:46 -07003867 formatter.field("ty", Print::ref_cast(val));
3868 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003869 if let Some(val) = &_val.init {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003870 #[derive(RefCast)]
3871 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003872 struct Print((syn::token::Eq, Box<syn::Expr>));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003873 impl Debug for Print {
3874 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003875 formatter.write_str("Some")?;
3876 let _val = &self.0;
3877 formatter.write_str("(")?;
3878 Debug::fmt(Lite(&_val.1), formatter)?;
3879 formatter.write_str(")")?;
3880 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003881 }
3882 }
David Tolnay644246b2019-05-08 23:02:46 -07003883 formatter.field("init", Print::ref_cast(val));
3884 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003885 formatter.finish()
3886 }
3887}
3888impl Debug for Lite<syn::Macro> {
3889 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003890 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003891 let mut formatter = formatter.debug_struct("Macro");
David Tolnay5302f0e2019-05-08 23:26:18 -07003892 formatter.field("path", Lite(&_val.path));
3893 formatter.field("delimiter", Lite(&_val.delimiter));
3894 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003895 formatter.finish()
3896 }
3897}
3898impl Debug for Lite<syn::MacroDelimiter> {
3899 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003900 let _val = &self.value;
3901 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003902 syn::MacroDelimiter::Paren(_v0) => {
3903 let mut formatter = formatter.debug_tuple("Paren");
3904 formatter.finish()
3905 }
3906 syn::MacroDelimiter::Brace(_v0) => {
3907 let mut formatter = formatter.debug_tuple("Brace");
3908 formatter.finish()
3909 }
3910 syn::MacroDelimiter::Bracket(_v0) => {
3911 let mut formatter = formatter.debug_tuple("Bracket");
3912 formatter.finish()
3913 }
3914 }
3915 }
3916}
3917impl Debug for Lite<syn::Member> {
3918 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003919 let _val = &self.value;
3920 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003921 syn::Member::Named(_v0) => {
3922 let mut formatter = formatter.debug_tuple("Named");
3923 formatter.field(Lite(_v0));
3924 formatter.finish()
3925 }
3926 syn::Member::Unnamed(_v0) => {
3927 let mut formatter = formatter.debug_tuple("Unnamed");
3928 formatter.field(Lite(_v0));
3929 formatter.finish()
3930 }
3931 }
3932 }
3933}
3934impl Debug for Lite<syn::Meta> {
3935 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003936 let _val = &self.value;
3937 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003938 syn::Meta::Word(_v0) => {
3939 let mut formatter = formatter.debug_tuple("Word");
3940 formatter.field(Lite(_v0));
3941 formatter.finish()
3942 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003943 syn::Meta::List(_val) => {
3944 let mut formatter = formatter.debug_struct("Meta::List");
3945 formatter.field("ident", Lite(&_val.ident));
David Tolnaycaac6272019-05-09 11:26:37 -07003946 if !_val.nested.is_empty() {
3947 formatter.field("nested", Lite(&_val.nested));
3948 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003949 formatter.finish()
3950 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003951 syn::Meta::NameValue(_val) => {
3952 let mut formatter = formatter.debug_struct("Meta::NameValue");
3953 formatter.field("ident", Lite(&_val.ident));
3954 formatter.field("lit", Lite(&_val.lit));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003955 formatter.finish()
3956 }
3957 }
3958 }
3959}
3960impl Debug for Lite<syn::MetaList> {
3961 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003962 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003963 let mut formatter = formatter.debug_struct("MetaList");
David Tolnay5302f0e2019-05-08 23:26:18 -07003964 formatter.field("ident", Lite(&_val.ident));
David Tolnaycaac6272019-05-09 11:26:37 -07003965 if !_val.nested.is_empty() {
3966 formatter.field("nested", Lite(&_val.nested));
3967 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003968 formatter.finish()
3969 }
3970}
3971impl Debug for Lite<syn::MetaNameValue> {
3972 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003973 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003974 let mut formatter = formatter.debug_struct("MetaNameValue");
David Tolnay5302f0e2019-05-08 23:26:18 -07003975 formatter.field("ident", Lite(&_val.ident));
3976 formatter.field("lit", Lite(&_val.lit));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003977 formatter.finish()
3978 }
3979}
3980impl Debug for Lite<syn::MethodSig> {
3981 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003982 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003983 let mut formatter = formatter.debug_struct("MethodSig");
David Tolnay5302f0e2019-05-08 23:26:18 -07003984 if let Some(val) = &_val.constness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003985 #[derive(RefCast)]
3986 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003987 struct Print(syn::token::Const);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003988 impl Debug for Print {
3989 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003990 formatter.write_str("Some")?;
3991 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003992 }
3993 }
David Tolnay644246b2019-05-08 23:02:46 -07003994 formatter.field("constness", Print::ref_cast(val));
3995 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003996 if let Some(val) = &_val.unsafety {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003997 #[derive(RefCast)]
3998 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003999 struct Print(syn::token::Unsafe);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004000 impl Debug for Print {
4001 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004002 formatter.write_str("Some")?;
4003 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004004 }
4005 }
David Tolnay644246b2019-05-08 23:02:46 -07004006 formatter.field("unsafety", Print::ref_cast(val));
4007 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004008 if let Some(val) = &_val.asyncness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004009 #[derive(RefCast)]
4010 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004011 struct Print(syn::token::Async);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004012 impl Debug for Print {
4013 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004014 formatter.write_str("Some")?;
4015 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004016 }
4017 }
David Tolnay644246b2019-05-08 23:02:46 -07004018 formatter.field("asyncness", Print::ref_cast(val));
4019 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004020 if let Some(val) = &_val.abi {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004021 #[derive(RefCast)]
4022 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004023 struct Print(syn::Abi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004024 impl Debug for Print {
4025 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004026 formatter.write_str("Some")?;
4027 let _val = &self.0;
4028 formatter.write_str("(")?;
4029 Debug::fmt(Lite(_val), formatter)?;
4030 formatter.write_str(")")?;
4031 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004032 }
4033 }
David Tolnay644246b2019-05-08 23:02:46 -07004034 formatter.field("abi", Print::ref_cast(val));
4035 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004036 formatter.field("ident", Lite(&_val.ident));
4037 formatter.field("decl", Lite(&_val.decl));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004038 formatter.finish()
4039 }
4040}
4041impl Debug for Lite<syn::MethodTurbofish> {
4042 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004043 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004044 let mut formatter = formatter.debug_struct("MethodTurbofish");
David Tolnaycaac6272019-05-09 11:26:37 -07004045 if !_val.args.is_empty() {
4046 formatter.field("args", Lite(&_val.args));
4047 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004048 formatter.finish()
4049 }
4050}
4051impl Debug for Lite<syn::NestedMeta> {
4052 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004053 let _val = &self.value;
4054 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004055 syn::NestedMeta::Meta(_v0) => {
4056 let mut formatter = formatter.debug_tuple("Meta");
4057 formatter.field(Lite(_v0));
4058 formatter.finish()
4059 }
4060 syn::NestedMeta::Literal(_v0) => {
4061 let mut formatter = formatter.debug_tuple("Literal");
4062 formatter.field(Lite(_v0));
4063 formatter.finish()
4064 }
4065 }
4066 }
4067}
4068impl Debug for Lite<syn::ParenthesizedGenericArguments> {
4069 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004070 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004071 let mut formatter = formatter.debug_struct("ParenthesizedGenericArguments");
David Tolnaycaac6272019-05-09 11:26:37 -07004072 if !_val.inputs.is_empty() {
4073 formatter.field("inputs", Lite(&_val.inputs));
4074 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004075 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004076 formatter.finish()
4077 }
4078}
4079impl Debug for Lite<syn::Pat> {
4080 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004081 let _val = &self.value;
4082 match _val {
4083 syn::Pat::Wild(_val) => {
4084 let mut formatter = formatter.debug_struct("Pat::Wild");
David Tolnay3c3c7d12019-05-08 14:54:12 -07004085 formatter.finish()
4086 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004087 syn::Pat::Ident(_val) => {
4088 let mut formatter = formatter.debug_struct("Pat::Ident");
4089 if let Some(val) = &_val.by_ref {
4090 #[derive(RefCast)]
4091 #[repr(transparent)]
4092 struct Print(syn::token::Ref);
4093 impl Debug for Print {
4094 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4095 formatter.write_str("Some")?;
4096 Ok(())
4097 }
4098 }
4099 formatter.field("by_ref", Print::ref_cast(val));
4100 }
4101 if let Some(val) = &_val.mutability {
4102 #[derive(RefCast)]
4103 #[repr(transparent)]
4104 struct Print(syn::token::Mut);
4105 impl Debug for Print {
4106 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4107 formatter.write_str("Some")?;
4108 Ok(())
4109 }
4110 }
4111 formatter.field("mutability", Print::ref_cast(val));
4112 }
4113 formatter.field("ident", Lite(&_val.ident));
4114 if let Some(val) = &_val.subpat {
4115 #[derive(RefCast)]
4116 #[repr(transparent)]
4117 struct Print((syn::token::At, Box<syn::Pat>));
4118 impl Debug for Print {
4119 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4120 formatter.write_str("Some")?;
4121 let _val = &self.0;
4122 formatter.write_str("(")?;
4123 Debug::fmt(Lite(&_val.1), formatter)?;
4124 formatter.write_str(")")?;
4125 Ok(())
4126 }
4127 }
4128 formatter.field("subpat", Print::ref_cast(val));
4129 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004130 formatter.finish()
4131 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004132 syn::Pat::Struct(_val) => {
4133 let mut formatter = formatter.debug_struct("Pat::Struct");
4134 formatter.field("path", Lite(&_val.path));
David Tolnaycaac6272019-05-09 11:26:37 -07004135 if !_val.fields.is_empty() {
4136 formatter.field("fields", Lite(&_val.fields));
4137 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004138 if let Some(val) = &_val.dot2_token {
4139 #[derive(RefCast)]
4140 #[repr(transparent)]
4141 struct Print(syn::token::Dot2);
4142 impl Debug for Print {
4143 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4144 formatter.write_str("Some")?;
4145 Ok(())
4146 }
4147 }
4148 formatter.field("dot2_token", Print::ref_cast(val));
4149 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004150 formatter.finish()
4151 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004152 syn::Pat::TupleStruct(_val) => {
4153 let mut formatter = formatter.debug_struct("Pat::TupleStruct");
4154 formatter.field("path", Lite(&_val.path));
4155 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004156 formatter.finish()
4157 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004158 syn::Pat::Path(_val) => {
4159 let mut formatter = formatter.debug_struct("Pat::Path");
4160 if let Some(val) = &_val.qself {
4161 #[derive(RefCast)]
4162 #[repr(transparent)]
4163 struct Print(syn::QSelf);
4164 impl Debug for Print {
4165 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4166 formatter.write_str("Some")?;
4167 let _val = &self.0;
4168 formatter.write_str("(")?;
4169 Debug::fmt(Lite(_val), formatter)?;
4170 formatter.write_str(")")?;
4171 Ok(())
4172 }
4173 }
4174 formatter.field("qself", Print::ref_cast(val));
4175 }
4176 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004177 formatter.finish()
4178 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004179 syn::Pat::Tuple(_val) => {
4180 let mut formatter = formatter.debug_struct("Pat::Tuple");
David Tolnaycaac6272019-05-09 11:26:37 -07004181 if !_val.front.is_empty() {
4182 formatter.field("front", Lite(&_val.front));
4183 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004184 if let Some(val) = &_val.dot2_token {
4185 #[derive(RefCast)]
4186 #[repr(transparent)]
4187 struct Print(syn::token::Dot2);
4188 impl Debug for Print {
4189 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4190 formatter.write_str("Some")?;
4191 Ok(())
4192 }
4193 }
4194 formatter.field("dot2_token", Print::ref_cast(val));
4195 }
4196 if let Some(val) = &_val.comma_token {
4197 #[derive(RefCast)]
4198 #[repr(transparent)]
4199 struct Print(syn::token::Comma);
4200 impl Debug for Print {
4201 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4202 formatter.write_str("Some")?;
4203 Ok(())
4204 }
4205 }
4206 formatter.field("comma_token", Print::ref_cast(val));
4207 }
David Tolnaycaac6272019-05-09 11:26:37 -07004208 if !_val.back.is_empty() {
4209 formatter.field("back", Lite(&_val.back));
4210 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004211 formatter.finish()
4212 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004213 syn::Pat::Box(_val) => {
4214 let mut formatter = formatter.debug_struct("Pat::Box");
4215 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004216 formatter.finish()
4217 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004218 syn::Pat::Ref(_val) => {
4219 let mut formatter = formatter.debug_struct("Pat::Ref");
4220 if let Some(val) = &_val.mutability {
4221 #[derive(RefCast)]
4222 #[repr(transparent)]
4223 struct Print(syn::token::Mut);
4224 impl Debug for Print {
4225 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4226 formatter.write_str("Some")?;
4227 Ok(())
4228 }
4229 }
4230 formatter.field("mutability", Print::ref_cast(val));
4231 }
4232 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004233 formatter.finish()
4234 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004235 syn::Pat::Lit(_val) => {
4236 let mut formatter = formatter.debug_struct("Pat::Lit");
4237 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004238 formatter.finish()
4239 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004240 syn::Pat::Range(_val) => {
4241 let mut formatter = formatter.debug_struct("Pat::Range");
4242 formatter.field("lo", Lite(&_val.lo));
4243 formatter.field("limits", Lite(&_val.limits));
4244 formatter.field("hi", Lite(&_val.hi));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004245 formatter.finish()
4246 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004247 syn::Pat::Slice(_val) => {
4248 let mut formatter = formatter.debug_struct("Pat::Slice");
David Tolnaycaac6272019-05-09 11:26:37 -07004249 if !_val.front.is_empty() {
4250 formatter.field("front", Lite(&_val.front));
4251 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004252 if let Some(val) = &_val.middle {
4253 #[derive(RefCast)]
4254 #[repr(transparent)]
4255 struct Print(Box<syn::Pat>);
4256 impl Debug for Print {
4257 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4258 formatter.write_str("Some")?;
4259 let _val = &self.0;
4260 formatter.write_str("(")?;
4261 Debug::fmt(Lite(_val), formatter)?;
4262 formatter.write_str(")")?;
4263 Ok(())
4264 }
4265 }
4266 formatter.field("middle", Print::ref_cast(val));
4267 }
4268 if let Some(val) = &_val.dot2_token {
4269 #[derive(RefCast)]
4270 #[repr(transparent)]
4271 struct Print(syn::token::Dot2);
4272 impl Debug for Print {
4273 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4274 formatter.write_str("Some")?;
4275 Ok(())
4276 }
4277 }
4278 formatter.field("dot2_token", Print::ref_cast(val));
4279 }
4280 if let Some(val) = &_val.comma_token {
4281 #[derive(RefCast)]
4282 #[repr(transparent)]
4283 struct Print(syn::token::Comma);
4284 impl Debug for Print {
4285 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4286 formatter.write_str("Some")?;
4287 Ok(())
4288 }
4289 }
4290 formatter.field("comma_token", Print::ref_cast(val));
4291 }
David Tolnaycaac6272019-05-09 11:26:37 -07004292 if !_val.back.is_empty() {
4293 formatter.field("back", Lite(&_val.back));
4294 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004295 formatter.finish()
4296 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004297 syn::Pat::Macro(_val) => {
4298 let mut formatter = formatter.debug_struct("Pat::Macro");
4299 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004300 formatter.finish()
4301 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004302 syn::Pat::Verbatim(_val) => {
4303 let mut formatter = formatter.debug_struct("Pat::Verbatim");
4304 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004305 formatter.finish()
4306 }
4307 }
4308 }
4309}
4310impl Debug for Lite<syn::PatBox> {
4311 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004312 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004313 let mut formatter = formatter.debug_struct("PatBox");
David Tolnay5302f0e2019-05-08 23:26:18 -07004314 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004315 formatter.finish()
4316 }
4317}
4318impl Debug for Lite<syn::PatIdent> {
4319 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004320 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004321 let mut formatter = formatter.debug_struct("PatIdent");
David Tolnay5302f0e2019-05-08 23:26:18 -07004322 if let Some(val) = &_val.by_ref {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004323 #[derive(RefCast)]
4324 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004325 struct Print(syn::token::Ref);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004326 impl Debug for Print {
4327 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004328 formatter.write_str("Some")?;
4329 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004330 }
4331 }
David Tolnay644246b2019-05-08 23:02:46 -07004332 formatter.field("by_ref", Print::ref_cast(val));
4333 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004334 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004335 #[derive(RefCast)]
4336 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004337 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004338 impl Debug for Print {
4339 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004340 formatter.write_str("Some")?;
4341 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004342 }
4343 }
David Tolnay644246b2019-05-08 23:02:46 -07004344 formatter.field("mutability", Print::ref_cast(val));
4345 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004346 formatter.field("ident", Lite(&_val.ident));
4347 if let Some(val) = &_val.subpat {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004348 #[derive(RefCast)]
4349 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004350 struct Print((syn::token::At, Box<syn::Pat>));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004351 impl Debug for Print {
4352 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004353 formatter.write_str("Some")?;
4354 let _val = &self.0;
4355 formatter.write_str("(")?;
4356 Debug::fmt(Lite(&_val.1), formatter)?;
4357 formatter.write_str(")")?;
4358 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004359 }
4360 }
David Tolnay644246b2019-05-08 23:02:46 -07004361 formatter.field("subpat", Print::ref_cast(val));
4362 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004363 formatter.finish()
4364 }
4365}
4366impl Debug for Lite<syn::PatLit> {
4367 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004368 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004369 let mut formatter = formatter.debug_struct("PatLit");
David Tolnay5302f0e2019-05-08 23:26:18 -07004370 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004371 formatter.finish()
4372 }
4373}
4374impl Debug for Lite<syn::PatMacro> {
4375 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004376 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004377 let mut formatter = formatter.debug_struct("PatMacro");
David Tolnay5302f0e2019-05-08 23:26:18 -07004378 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004379 formatter.finish()
4380 }
4381}
4382impl Debug for Lite<syn::PatPath> {
4383 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004384 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004385 let mut formatter = formatter.debug_struct("PatPath");
David Tolnay5302f0e2019-05-08 23:26:18 -07004386 if let Some(val) = &_val.qself {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004387 #[derive(RefCast)]
4388 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004389 struct Print(syn::QSelf);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004390 impl Debug for Print {
4391 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004392 formatter.write_str("Some")?;
4393 let _val = &self.0;
4394 formatter.write_str("(")?;
4395 Debug::fmt(Lite(_val), formatter)?;
4396 formatter.write_str(")")?;
4397 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004398 }
4399 }
David Tolnay644246b2019-05-08 23:02:46 -07004400 formatter.field("qself", Print::ref_cast(val));
4401 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004402 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004403 formatter.finish()
4404 }
4405}
4406impl Debug for Lite<syn::PatRange> {
4407 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004408 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004409 let mut formatter = formatter.debug_struct("PatRange");
David Tolnay5302f0e2019-05-08 23:26:18 -07004410 formatter.field("lo", Lite(&_val.lo));
4411 formatter.field("limits", Lite(&_val.limits));
4412 formatter.field("hi", Lite(&_val.hi));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004413 formatter.finish()
4414 }
4415}
4416impl Debug for Lite<syn::PatRef> {
4417 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004418 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004419 let mut formatter = formatter.debug_struct("PatRef");
David Tolnay5302f0e2019-05-08 23:26:18 -07004420 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004421 #[derive(RefCast)]
4422 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004423 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004424 impl Debug for Print {
4425 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004426 formatter.write_str("Some")?;
4427 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004428 }
4429 }
David Tolnay644246b2019-05-08 23:02:46 -07004430 formatter.field("mutability", Print::ref_cast(val));
4431 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004432 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004433 formatter.finish()
4434 }
4435}
4436impl Debug for Lite<syn::PatSlice> {
4437 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004438 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004439 let mut formatter = formatter.debug_struct("PatSlice");
David Tolnaycaac6272019-05-09 11:26:37 -07004440 if !_val.front.is_empty() {
4441 formatter.field("front", Lite(&_val.front));
4442 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004443 if let Some(val) = &_val.middle {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004444 #[derive(RefCast)]
4445 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004446 struct Print(Box<syn::Pat>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004447 impl Debug for Print {
4448 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004449 formatter.write_str("Some")?;
4450 let _val = &self.0;
4451 formatter.write_str("(")?;
4452 Debug::fmt(Lite(_val), formatter)?;
4453 formatter.write_str(")")?;
4454 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004455 }
4456 }
David Tolnay644246b2019-05-08 23:02:46 -07004457 formatter.field("middle", Print::ref_cast(val));
4458 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004459 if let Some(val) = &_val.dot2_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004460 #[derive(RefCast)]
4461 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004462 struct Print(syn::token::Dot2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004463 impl Debug for Print {
4464 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004465 formatter.write_str("Some")?;
4466 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004467 }
4468 }
David Tolnay644246b2019-05-08 23:02:46 -07004469 formatter.field("dot2_token", Print::ref_cast(val));
4470 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004471 if let Some(val) = &_val.comma_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004472 #[derive(RefCast)]
4473 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004474 struct Print(syn::token::Comma);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004475 impl Debug for Print {
4476 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004477 formatter.write_str("Some")?;
4478 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004479 }
4480 }
David Tolnay644246b2019-05-08 23:02:46 -07004481 formatter.field("comma_token", Print::ref_cast(val));
4482 }
David Tolnaycaac6272019-05-09 11:26:37 -07004483 if !_val.back.is_empty() {
4484 formatter.field("back", Lite(&_val.back));
4485 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004486 formatter.finish()
4487 }
4488}
4489impl Debug for Lite<syn::PatStruct> {
4490 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004491 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004492 let mut formatter = formatter.debug_struct("PatStruct");
David Tolnay5302f0e2019-05-08 23:26:18 -07004493 formatter.field("path", Lite(&_val.path));
David Tolnaycaac6272019-05-09 11:26:37 -07004494 if !_val.fields.is_empty() {
4495 formatter.field("fields", Lite(&_val.fields));
4496 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004497 if let Some(val) = &_val.dot2_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004498 #[derive(RefCast)]
4499 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004500 struct Print(syn::token::Dot2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004501 impl Debug for Print {
4502 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004503 formatter.write_str("Some")?;
4504 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004505 }
4506 }
David Tolnay644246b2019-05-08 23:02:46 -07004507 formatter.field("dot2_token", Print::ref_cast(val));
4508 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004509 formatter.finish()
4510 }
4511}
4512impl Debug for Lite<syn::PatTuple> {
4513 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004514 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004515 let mut formatter = formatter.debug_struct("PatTuple");
David Tolnaycaac6272019-05-09 11:26:37 -07004516 if !_val.front.is_empty() {
4517 formatter.field("front", Lite(&_val.front));
4518 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004519 if let Some(val) = &_val.dot2_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004520 #[derive(RefCast)]
4521 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004522 struct Print(syn::token::Dot2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004523 impl Debug for Print {
4524 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004525 formatter.write_str("Some")?;
4526 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004527 }
4528 }
David Tolnay644246b2019-05-08 23:02:46 -07004529 formatter.field("dot2_token", Print::ref_cast(val));
4530 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004531 if let Some(val) = &_val.comma_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004532 #[derive(RefCast)]
4533 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004534 struct Print(syn::token::Comma);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004535 impl Debug for Print {
4536 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004537 formatter.write_str("Some")?;
4538 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004539 }
4540 }
David Tolnay644246b2019-05-08 23:02:46 -07004541 formatter.field("comma_token", Print::ref_cast(val));
4542 }
David Tolnaycaac6272019-05-09 11:26:37 -07004543 if !_val.back.is_empty() {
4544 formatter.field("back", Lite(&_val.back));
4545 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004546 formatter.finish()
4547 }
4548}
4549impl Debug for Lite<syn::PatTupleStruct> {
4550 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004551 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004552 let mut formatter = formatter.debug_struct("PatTupleStruct");
David Tolnay5302f0e2019-05-08 23:26:18 -07004553 formatter.field("path", Lite(&_val.path));
4554 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004555 formatter.finish()
4556 }
4557}
4558impl Debug for Lite<syn::PatVerbatim> {
4559 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004560 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004561 let mut formatter = formatter.debug_struct("PatVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07004562 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004563 formatter.finish()
4564 }
4565}
4566impl Debug for Lite<syn::PatWild> {
4567 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004568 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004569 let mut formatter = formatter.debug_struct("PatWild");
4570 formatter.finish()
4571 }
4572}
4573impl Debug for Lite<syn::Path> {
4574 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004575 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004576 let mut formatter = formatter.debug_struct("Path");
David Tolnay5302f0e2019-05-08 23:26:18 -07004577 if let Some(val) = &_val.leading_colon {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004578 #[derive(RefCast)]
4579 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004580 struct Print(syn::token::Colon2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004581 impl Debug for Print {
4582 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004583 formatter.write_str("Some")?;
4584 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004585 }
4586 }
David Tolnay644246b2019-05-08 23:02:46 -07004587 formatter.field("leading_colon", Print::ref_cast(val));
4588 }
David Tolnaycaac6272019-05-09 11:26:37 -07004589 if !_val.segments.is_empty() {
4590 formatter.field("segments", Lite(&_val.segments));
4591 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004592 formatter.finish()
4593 }
4594}
4595impl Debug for Lite<syn::PathArguments> {
4596 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004597 let _val = &self.value;
4598 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004599 syn::PathArguments::None => formatter.write_str("None"),
4600 syn::PathArguments::AngleBracketed(_v0) => {
4601 let mut formatter = formatter.debug_tuple("AngleBracketed");
4602 formatter.field(Lite(_v0));
4603 formatter.finish()
4604 }
4605 syn::PathArguments::Parenthesized(_v0) => {
4606 let mut formatter = formatter.debug_tuple("Parenthesized");
4607 formatter.field(Lite(_v0));
4608 formatter.finish()
4609 }
4610 }
4611 }
4612}
4613impl Debug for Lite<syn::PathSegment> {
4614 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004615 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004616 let mut formatter = formatter.debug_struct("PathSegment");
David Tolnay5302f0e2019-05-08 23:26:18 -07004617 formatter.field("ident", Lite(&_val.ident));
4618 formatter.field("arguments", Lite(&_val.arguments));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004619 formatter.finish()
4620 }
4621}
4622impl Debug for Lite<syn::PredicateEq> {
4623 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004624 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004625 let mut formatter = formatter.debug_struct("PredicateEq");
David Tolnay5302f0e2019-05-08 23:26:18 -07004626 formatter.field("lhs_ty", Lite(&_val.lhs_ty));
4627 formatter.field("rhs_ty", Lite(&_val.rhs_ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004628 formatter.finish()
4629 }
4630}
4631impl Debug for Lite<syn::PredicateLifetime> {
4632 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004633 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004634 let mut formatter = formatter.debug_struct("PredicateLifetime");
David Tolnay5302f0e2019-05-08 23:26:18 -07004635 formatter.field("lifetime", Lite(&_val.lifetime));
David Tolnaycaac6272019-05-09 11:26:37 -07004636 if !_val.bounds.is_empty() {
4637 formatter.field("bounds", Lite(&_val.bounds));
4638 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004639 formatter.finish()
4640 }
4641}
4642impl Debug for Lite<syn::PredicateType> {
4643 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004644 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004645 let mut formatter = formatter.debug_struct("PredicateType");
David Tolnay5302f0e2019-05-08 23:26:18 -07004646 if let Some(val) = &_val.lifetimes {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004647 #[derive(RefCast)]
4648 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004649 struct Print(syn::BoundLifetimes);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004650 impl Debug for Print {
4651 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004652 formatter.write_str("Some")?;
4653 let _val = &self.0;
4654 formatter.write_str("(")?;
4655 Debug::fmt(Lite(_val), formatter)?;
4656 formatter.write_str(")")?;
4657 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004658 }
4659 }
David Tolnay644246b2019-05-08 23:02:46 -07004660 formatter.field("lifetimes", Print::ref_cast(val));
4661 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004662 formatter.field("bounded_ty", Lite(&_val.bounded_ty));
David Tolnaycaac6272019-05-09 11:26:37 -07004663 if !_val.bounds.is_empty() {
4664 formatter.field("bounds", Lite(&_val.bounds));
4665 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004666 formatter.finish()
4667 }
4668}
4669impl Debug for Lite<syn::QSelf> {
4670 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004671 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004672 let mut formatter = formatter.debug_struct("QSelf");
David Tolnay5302f0e2019-05-08 23:26:18 -07004673 formatter.field("ty", Lite(&_val.ty));
4674 formatter.field("position", Lite(&_val.position));
4675 if let Some(val) = &_val.as_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004676 #[derive(RefCast)]
4677 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004678 struct Print(syn::token::As);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004679 impl Debug for Print {
4680 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004681 formatter.write_str("Some")?;
4682 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004683 }
4684 }
David Tolnay644246b2019-05-08 23:02:46 -07004685 formatter.field("as_token", Print::ref_cast(val));
4686 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004687 formatter.finish()
4688 }
4689}
4690impl Debug for Lite<syn::RangeLimits> {
4691 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004692 let _val = &self.value;
4693 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004694 syn::RangeLimits::HalfOpen(_v0) => {
4695 let mut formatter = formatter.debug_tuple("HalfOpen");
4696 formatter.finish()
4697 }
4698 syn::RangeLimits::Closed(_v0) => {
4699 let mut formatter = formatter.debug_tuple("Closed");
4700 formatter.finish()
4701 }
4702 }
4703 }
4704}
4705impl Debug for Lite<syn::ReturnType> {
4706 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004707 let _val = &self.value;
4708 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004709 syn::ReturnType::Default => formatter.write_str("Default"),
4710 syn::ReturnType::Type(_v0, _v1) => {
4711 let mut formatter = formatter.debug_tuple("Type");
4712 formatter.field(Lite(_v1));
4713 formatter.finish()
4714 }
4715 }
4716 }
4717}
4718impl Debug for Lite<syn::Stmt> {
4719 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004720 let _val = &self.value;
4721 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004722 syn::Stmt::Local(_v0) => {
4723 let mut formatter = formatter.debug_tuple("Local");
4724 formatter.field(Lite(_v0));
4725 formatter.finish()
4726 }
4727 syn::Stmt::Item(_v0) => {
4728 let mut formatter = formatter.debug_tuple("Item");
4729 formatter.field(Lite(_v0));
4730 formatter.finish()
4731 }
4732 syn::Stmt::Expr(_v0) => {
4733 let mut formatter = formatter.debug_tuple("Expr");
4734 formatter.field(Lite(_v0));
4735 formatter.finish()
4736 }
4737 syn::Stmt::Semi(_v0, _v1) => {
4738 let mut formatter = formatter.debug_tuple("Semi");
4739 formatter.field(Lite(_v0));
4740 formatter.finish()
4741 }
4742 }
4743 }
4744}
4745impl Debug for Lite<syn::TraitBound> {
4746 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004747 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004748 let mut formatter = formatter.debug_struct("TraitBound");
David Tolnay5302f0e2019-05-08 23:26:18 -07004749 if let Some(val) = &_val.paren_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004750 #[derive(RefCast)]
4751 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004752 struct Print(syn::token::Paren);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004753 impl Debug for Print {
4754 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004755 formatter.write_str("Some")?;
4756 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004757 }
4758 }
David Tolnay644246b2019-05-08 23:02:46 -07004759 formatter.field("paren_token", Print::ref_cast(val));
4760 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004761 formatter.field("modifier", Lite(&_val.modifier));
4762 if let Some(val) = &_val.lifetimes {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004763 #[derive(RefCast)]
4764 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004765 struct Print(syn::BoundLifetimes);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004766 impl Debug for Print {
4767 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004768 formatter.write_str("Some")?;
4769 let _val = &self.0;
4770 formatter.write_str("(")?;
4771 Debug::fmt(Lite(_val), formatter)?;
4772 formatter.write_str(")")?;
4773 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004774 }
4775 }
David Tolnay644246b2019-05-08 23:02:46 -07004776 formatter.field("lifetimes", Print::ref_cast(val));
4777 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004778 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004779 formatter.finish()
4780 }
4781}
4782impl Debug for Lite<syn::TraitBoundModifier> {
4783 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004784 let _val = &self.value;
4785 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004786 syn::TraitBoundModifier::None => formatter.write_str("None"),
4787 syn::TraitBoundModifier::Maybe(_v0) => {
4788 let mut formatter = formatter.debug_tuple("Maybe");
4789 formatter.finish()
4790 }
4791 }
4792 }
4793}
4794impl Debug for Lite<syn::TraitItem> {
4795 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004796 let _val = &self.value;
4797 match _val {
4798 syn::TraitItem::Const(_val) => {
4799 let mut formatter = formatter.debug_struct("TraitItem::Const");
David Tolnaycaac6272019-05-09 11:26:37 -07004800 if !_val.attrs.is_empty() {
4801 formatter.field("attrs", Lite(&_val.attrs));
4802 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004803 formatter.field("ident", Lite(&_val.ident));
4804 formatter.field("ty", Lite(&_val.ty));
4805 if let Some(val) = &_val.default {
4806 #[derive(RefCast)]
4807 #[repr(transparent)]
4808 struct Print((syn::token::Eq, syn::Expr));
4809 impl Debug for Print {
4810 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4811 formatter.write_str("Some")?;
4812 let _val = &self.0;
4813 formatter.write_str("(")?;
4814 Debug::fmt(Lite(&_val.1), formatter)?;
4815 formatter.write_str(")")?;
4816 Ok(())
4817 }
4818 }
4819 formatter.field("default", Print::ref_cast(val));
4820 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004821 formatter.finish()
4822 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004823 syn::TraitItem::Method(_val) => {
4824 let mut formatter = formatter.debug_struct("TraitItem::Method");
David Tolnaycaac6272019-05-09 11:26:37 -07004825 if !_val.attrs.is_empty() {
4826 formatter.field("attrs", Lite(&_val.attrs));
4827 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004828 formatter.field("sig", Lite(&_val.sig));
4829 if let Some(val) = &_val.default {
4830 #[derive(RefCast)]
4831 #[repr(transparent)]
4832 struct Print(syn::Block);
4833 impl Debug for Print {
4834 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4835 formatter.write_str("Some")?;
4836 let _val = &self.0;
4837 formatter.write_str("(")?;
4838 Debug::fmt(Lite(_val), formatter)?;
4839 formatter.write_str(")")?;
4840 Ok(())
4841 }
4842 }
4843 formatter.field("default", Print::ref_cast(val));
4844 }
4845 if let Some(val) = &_val.semi_token {
4846 #[derive(RefCast)]
4847 #[repr(transparent)]
4848 struct Print(syn::token::Semi);
4849 impl Debug for Print {
4850 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4851 formatter.write_str("Some")?;
4852 Ok(())
4853 }
4854 }
4855 formatter.field("semi_token", Print::ref_cast(val));
4856 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004857 formatter.finish()
4858 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004859 syn::TraitItem::Type(_val) => {
4860 let mut formatter = formatter.debug_struct("TraitItem::Type");
David Tolnaycaac6272019-05-09 11:26:37 -07004861 if !_val.attrs.is_empty() {
4862 formatter.field("attrs", Lite(&_val.attrs));
4863 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004864 formatter.field("ident", Lite(&_val.ident));
4865 formatter.field("generics", Lite(&_val.generics));
4866 if let Some(val) = &_val.colon_token {
4867 #[derive(RefCast)]
4868 #[repr(transparent)]
4869 struct Print(syn::token::Colon);
4870 impl Debug for Print {
4871 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4872 formatter.write_str("Some")?;
4873 Ok(())
4874 }
4875 }
4876 formatter.field("colon_token", Print::ref_cast(val));
4877 }
David Tolnaycaac6272019-05-09 11:26:37 -07004878 if !_val.bounds.is_empty() {
4879 formatter.field("bounds", Lite(&_val.bounds));
4880 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004881 if let Some(val) = &_val.default {
4882 #[derive(RefCast)]
4883 #[repr(transparent)]
4884 struct Print((syn::token::Eq, syn::Type));
4885 impl Debug for Print {
4886 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4887 formatter.write_str("Some")?;
4888 let _val = &self.0;
4889 formatter.write_str("(")?;
4890 Debug::fmt(Lite(&_val.1), formatter)?;
4891 formatter.write_str(")")?;
4892 Ok(())
4893 }
4894 }
4895 formatter.field("default", Print::ref_cast(val));
4896 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004897 formatter.finish()
4898 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004899 syn::TraitItem::Macro(_val) => {
4900 let mut formatter = formatter.debug_struct("TraitItem::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07004901 if !_val.attrs.is_empty() {
4902 formatter.field("attrs", Lite(&_val.attrs));
4903 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004904 formatter.field("mac", Lite(&_val.mac));
4905 if let Some(val) = &_val.semi_token {
4906 #[derive(RefCast)]
4907 #[repr(transparent)]
4908 struct Print(syn::token::Semi);
4909 impl Debug for Print {
4910 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4911 formatter.write_str("Some")?;
4912 Ok(())
4913 }
4914 }
4915 formatter.field("semi_token", Print::ref_cast(val));
4916 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004917 formatter.finish()
4918 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004919 syn::TraitItem::Verbatim(_val) => {
4920 let mut formatter = formatter.debug_struct("TraitItem::Verbatim");
4921 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004922 formatter.finish()
4923 }
4924 }
4925 }
4926}
4927impl Debug for Lite<syn::TraitItemConst> {
4928 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004929 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004930 let mut formatter = formatter.debug_struct("TraitItemConst");
David Tolnaycaac6272019-05-09 11:26:37 -07004931 if !_val.attrs.is_empty() {
4932 formatter.field("attrs", Lite(&_val.attrs));
4933 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004934 formatter.field("ident", Lite(&_val.ident));
4935 formatter.field("ty", Lite(&_val.ty));
4936 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004937 #[derive(RefCast)]
4938 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004939 struct Print((syn::token::Eq, syn::Expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004940 impl Debug for Print {
4941 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004942 formatter.write_str("Some")?;
4943 let _val = &self.0;
4944 formatter.write_str("(")?;
4945 Debug::fmt(Lite(&_val.1), formatter)?;
4946 formatter.write_str(")")?;
4947 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004948 }
4949 }
David Tolnay644246b2019-05-08 23:02:46 -07004950 formatter.field("default", Print::ref_cast(val));
4951 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004952 formatter.finish()
4953 }
4954}
4955impl Debug for Lite<syn::TraitItemMacro> {
4956 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004957 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004958 let mut formatter = formatter.debug_struct("TraitItemMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07004959 if !_val.attrs.is_empty() {
4960 formatter.field("attrs", Lite(&_val.attrs));
4961 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004962 formatter.field("mac", Lite(&_val.mac));
4963 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004964 #[derive(RefCast)]
4965 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004966 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004967 impl Debug for Print {
4968 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004969 formatter.write_str("Some")?;
4970 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004971 }
4972 }
David Tolnay644246b2019-05-08 23:02:46 -07004973 formatter.field("semi_token", Print::ref_cast(val));
4974 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004975 formatter.finish()
4976 }
4977}
4978impl Debug for Lite<syn::TraitItemMethod> {
4979 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004980 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004981 let mut formatter = formatter.debug_struct("TraitItemMethod");
David Tolnaycaac6272019-05-09 11:26:37 -07004982 if !_val.attrs.is_empty() {
4983 formatter.field("attrs", Lite(&_val.attrs));
4984 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004985 formatter.field("sig", Lite(&_val.sig));
4986 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004987 #[derive(RefCast)]
4988 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004989 struct Print(syn::Block);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004990 impl Debug for Print {
4991 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004992 formatter.write_str("Some")?;
4993 let _val = &self.0;
4994 formatter.write_str("(")?;
4995 Debug::fmt(Lite(_val), formatter)?;
4996 formatter.write_str(")")?;
4997 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004998 }
4999 }
David Tolnay644246b2019-05-08 23:02:46 -07005000 formatter.field("default", Print::ref_cast(val));
5001 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005002 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005003 #[derive(RefCast)]
5004 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005005 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005006 impl Debug for Print {
5007 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005008 formatter.write_str("Some")?;
5009 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005010 }
5011 }
David Tolnay644246b2019-05-08 23:02:46 -07005012 formatter.field("semi_token", Print::ref_cast(val));
5013 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005014 formatter.finish()
5015 }
5016}
5017impl Debug for Lite<syn::TraitItemType> {
5018 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005019 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005020 let mut formatter = formatter.debug_struct("TraitItemType");
David Tolnaycaac6272019-05-09 11:26:37 -07005021 if !_val.attrs.is_empty() {
5022 formatter.field("attrs", Lite(&_val.attrs));
5023 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005024 formatter.field("ident", Lite(&_val.ident));
5025 formatter.field("generics", Lite(&_val.generics));
5026 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005027 #[derive(RefCast)]
5028 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005029 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005030 impl Debug for Print {
5031 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005032 formatter.write_str("Some")?;
5033 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005034 }
5035 }
David Tolnay644246b2019-05-08 23:02:46 -07005036 formatter.field("colon_token", Print::ref_cast(val));
5037 }
David Tolnaycaac6272019-05-09 11:26:37 -07005038 if !_val.bounds.is_empty() {
5039 formatter.field("bounds", Lite(&_val.bounds));
5040 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005041 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005042 #[derive(RefCast)]
5043 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005044 struct Print((syn::token::Eq, syn::Type));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005045 impl Debug for Print {
5046 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005047 formatter.write_str("Some")?;
5048 let _val = &self.0;
5049 formatter.write_str("(")?;
5050 Debug::fmt(Lite(&_val.1), formatter)?;
5051 formatter.write_str(")")?;
5052 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005053 }
5054 }
David Tolnay644246b2019-05-08 23:02:46 -07005055 formatter.field("default", Print::ref_cast(val));
5056 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005057 formatter.finish()
5058 }
5059}
5060impl Debug for Lite<syn::TraitItemVerbatim> {
5061 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005062 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005063 let mut formatter = formatter.debug_struct("TraitItemVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07005064 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005065 formatter.finish()
5066 }
5067}
5068impl Debug for Lite<syn::Type> {
5069 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005070 let _val = &self.value;
5071 match _val {
5072 syn::Type::Slice(_val) => {
5073 let mut formatter = formatter.debug_struct("Type::Slice");
5074 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005075 formatter.finish()
5076 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005077 syn::Type::Array(_val) => {
5078 let mut formatter = formatter.debug_struct("Type::Array");
5079 formatter.field("elem", Lite(&_val.elem));
5080 formatter.field("len", Lite(&_val.len));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005081 formatter.finish()
5082 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005083 syn::Type::Ptr(_val) => {
5084 let mut formatter = formatter.debug_struct("Type::Ptr");
5085 if let Some(val) = &_val.const_token {
5086 #[derive(RefCast)]
5087 #[repr(transparent)]
5088 struct Print(syn::token::Const);
5089 impl Debug for Print {
5090 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5091 formatter.write_str("Some")?;
5092 Ok(())
5093 }
5094 }
5095 formatter.field("const_token", Print::ref_cast(val));
5096 }
5097 if let Some(val) = &_val.mutability {
5098 #[derive(RefCast)]
5099 #[repr(transparent)]
5100 struct Print(syn::token::Mut);
5101 impl Debug for Print {
5102 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5103 formatter.write_str("Some")?;
5104 Ok(())
5105 }
5106 }
5107 formatter.field("mutability", Print::ref_cast(val));
5108 }
5109 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005110 formatter.finish()
5111 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005112 syn::Type::Reference(_val) => {
5113 let mut formatter = formatter.debug_struct("Type::Reference");
5114 if let Some(val) = &_val.lifetime {
5115 #[derive(RefCast)]
5116 #[repr(transparent)]
5117 struct Print(syn::Lifetime);
5118 impl Debug for Print {
5119 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5120 formatter.write_str("Some")?;
5121 let _val = &self.0;
5122 formatter.write_str("(")?;
5123 Debug::fmt(Lite(_val), formatter)?;
5124 formatter.write_str(")")?;
5125 Ok(())
5126 }
5127 }
5128 formatter.field("lifetime", Print::ref_cast(val));
5129 }
5130 if let Some(val) = &_val.mutability {
5131 #[derive(RefCast)]
5132 #[repr(transparent)]
5133 struct Print(syn::token::Mut);
5134 impl Debug for Print {
5135 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5136 formatter.write_str("Some")?;
5137 Ok(())
5138 }
5139 }
5140 formatter.field("mutability", Print::ref_cast(val));
5141 }
5142 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005143 formatter.finish()
5144 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005145 syn::Type::BareFn(_val) => {
5146 let mut formatter = formatter.debug_struct("Type::BareFn");
5147 if let Some(val) = &_val.lifetimes {
5148 #[derive(RefCast)]
5149 #[repr(transparent)]
5150 struct Print(syn::BoundLifetimes);
5151 impl Debug for Print {
5152 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5153 formatter.write_str("Some")?;
5154 let _val = &self.0;
5155 formatter.write_str("(")?;
5156 Debug::fmt(Lite(_val), formatter)?;
5157 formatter.write_str(")")?;
5158 Ok(())
5159 }
5160 }
5161 formatter.field("lifetimes", Print::ref_cast(val));
5162 }
5163 if let Some(val) = &_val.unsafety {
5164 #[derive(RefCast)]
5165 #[repr(transparent)]
5166 struct Print(syn::token::Unsafe);
5167 impl Debug for Print {
5168 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5169 formatter.write_str("Some")?;
5170 Ok(())
5171 }
5172 }
5173 formatter.field("unsafety", Print::ref_cast(val));
5174 }
5175 if let Some(val) = &_val.abi {
5176 #[derive(RefCast)]
5177 #[repr(transparent)]
5178 struct Print(syn::Abi);
5179 impl Debug for Print {
5180 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5181 formatter.write_str("Some")?;
5182 let _val = &self.0;
5183 formatter.write_str("(")?;
5184 Debug::fmt(Lite(_val), formatter)?;
5185 formatter.write_str(")")?;
5186 Ok(())
5187 }
5188 }
5189 formatter.field("abi", Print::ref_cast(val));
5190 }
David Tolnaycaac6272019-05-09 11:26:37 -07005191 if !_val.inputs.is_empty() {
5192 formatter.field("inputs", Lite(&_val.inputs));
5193 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005194 if let Some(val) = &_val.variadic {
5195 #[derive(RefCast)]
5196 #[repr(transparent)]
5197 struct Print(syn::token::Dot3);
5198 impl Debug for Print {
5199 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5200 formatter.write_str("Some")?;
5201 Ok(())
5202 }
5203 }
5204 formatter.field("variadic", Print::ref_cast(val));
5205 }
5206 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005207 formatter.finish()
5208 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005209 syn::Type::Never(_val) => {
5210 let mut formatter = formatter.debug_struct("Type::Never");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005211 formatter.finish()
5212 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005213 syn::Type::Tuple(_val) => {
5214 let mut formatter = formatter.debug_struct("Type::Tuple");
David Tolnaycaac6272019-05-09 11:26:37 -07005215 if !_val.elems.is_empty() {
5216 formatter.field("elems", Lite(&_val.elems));
5217 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005218 formatter.finish()
5219 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005220 syn::Type::Path(_val) => {
5221 let mut formatter = formatter.debug_struct("Type::Path");
5222 if let Some(val) = &_val.qself {
5223 #[derive(RefCast)]
5224 #[repr(transparent)]
5225 struct Print(syn::QSelf);
5226 impl Debug for Print {
5227 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5228 formatter.write_str("Some")?;
5229 let _val = &self.0;
5230 formatter.write_str("(")?;
5231 Debug::fmt(Lite(_val), formatter)?;
5232 formatter.write_str(")")?;
5233 Ok(())
5234 }
5235 }
5236 formatter.field("qself", Print::ref_cast(val));
5237 }
5238 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005239 formatter.finish()
5240 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005241 syn::Type::TraitObject(_val) => {
5242 let mut formatter = formatter.debug_struct("Type::TraitObject");
5243 if let Some(val) = &_val.dyn_token {
5244 #[derive(RefCast)]
5245 #[repr(transparent)]
5246 struct Print(syn::token::Dyn);
5247 impl Debug for Print {
5248 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5249 formatter.write_str("Some")?;
5250 Ok(())
5251 }
5252 }
5253 formatter.field("dyn_token", Print::ref_cast(val));
5254 }
David Tolnaycaac6272019-05-09 11:26:37 -07005255 if !_val.bounds.is_empty() {
5256 formatter.field("bounds", Lite(&_val.bounds));
5257 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005258 formatter.finish()
5259 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005260 syn::Type::ImplTrait(_val) => {
5261 let mut formatter = formatter.debug_struct("Type::ImplTrait");
David Tolnaycaac6272019-05-09 11:26:37 -07005262 if !_val.bounds.is_empty() {
5263 formatter.field("bounds", Lite(&_val.bounds));
5264 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005265 formatter.finish()
5266 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005267 syn::Type::Paren(_val) => {
5268 let mut formatter = formatter.debug_struct("Type::Paren");
5269 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005270 formatter.finish()
5271 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005272 syn::Type::Group(_val) => {
5273 let mut formatter = formatter.debug_struct("Type::Group");
5274 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005275 formatter.finish()
5276 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005277 syn::Type::Infer(_val) => {
5278 let mut formatter = formatter.debug_struct("Type::Infer");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005279 formatter.finish()
5280 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005281 syn::Type::Macro(_val) => {
5282 let mut formatter = formatter.debug_struct("Type::Macro");
5283 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005284 formatter.finish()
5285 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005286 syn::Type::Verbatim(_val) => {
5287 let mut formatter = formatter.debug_struct("Type::Verbatim");
5288 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005289 formatter.finish()
5290 }
5291 }
5292 }
5293}
5294impl Debug for Lite<syn::TypeArray> {
5295 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005296 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005297 let mut formatter = formatter.debug_struct("TypeArray");
David Tolnay5302f0e2019-05-08 23:26:18 -07005298 formatter.field("elem", Lite(&_val.elem));
5299 formatter.field("len", Lite(&_val.len));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005300 formatter.finish()
5301 }
5302}
5303impl Debug for Lite<syn::TypeBareFn> {
5304 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005305 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005306 let mut formatter = formatter.debug_struct("TypeBareFn");
David Tolnay5302f0e2019-05-08 23:26:18 -07005307 if let Some(val) = &_val.lifetimes {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005308 #[derive(RefCast)]
5309 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005310 struct Print(syn::BoundLifetimes);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005311 impl Debug for Print {
5312 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005313 formatter.write_str("Some")?;
5314 let _val = &self.0;
5315 formatter.write_str("(")?;
5316 Debug::fmt(Lite(_val), formatter)?;
5317 formatter.write_str(")")?;
5318 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005319 }
5320 }
David Tolnay644246b2019-05-08 23:02:46 -07005321 formatter.field("lifetimes", Print::ref_cast(val));
5322 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005323 if let Some(val) = &_val.unsafety {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005324 #[derive(RefCast)]
5325 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005326 struct Print(syn::token::Unsafe);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005327 impl Debug for Print {
5328 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005329 formatter.write_str("Some")?;
5330 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005331 }
5332 }
David Tolnay644246b2019-05-08 23:02:46 -07005333 formatter.field("unsafety", Print::ref_cast(val));
5334 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005335 if let Some(val) = &_val.abi {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005336 #[derive(RefCast)]
5337 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005338 struct Print(syn::Abi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005339 impl Debug for Print {
5340 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005341 formatter.write_str("Some")?;
5342 let _val = &self.0;
5343 formatter.write_str("(")?;
5344 Debug::fmt(Lite(_val), formatter)?;
5345 formatter.write_str(")")?;
5346 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005347 }
5348 }
David Tolnay644246b2019-05-08 23:02:46 -07005349 formatter.field("abi", Print::ref_cast(val));
5350 }
David Tolnaycaac6272019-05-09 11:26:37 -07005351 if !_val.inputs.is_empty() {
5352 formatter.field("inputs", Lite(&_val.inputs));
5353 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005354 if let Some(val) = &_val.variadic {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005355 #[derive(RefCast)]
5356 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005357 struct Print(syn::token::Dot3);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005358 impl Debug for Print {
5359 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005360 formatter.write_str("Some")?;
5361 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005362 }
5363 }
David Tolnay644246b2019-05-08 23:02:46 -07005364 formatter.field("variadic", Print::ref_cast(val));
5365 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005366 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005367 formatter.finish()
5368 }
5369}
5370impl Debug for Lite<syn::TypeGroup> {
5371 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005372 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005373 let mut formatter = formatter.debug_struct("TypeGroup");
David Tolnay5302f0e2019-05-08 23:26:18 -07005374 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005375 formatter.finish()
5376 }
5377}
5378impl Debug for Lite<syn::TypeImplTrait> {
5379 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005380 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005381 let mut formatter = formatter.debug_struct("TypeImplTrait");
David Tolnaycaac6272019-05-09 11:26:37 -07005382 if !_val.bounds.is_empty() {
5383 formatter.field("bounds", Lite(&_val.bounds));
5384 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005385 formatter.finish()
5386 }
5387}
5388impl Debug for Lite<syn::TypeInfer> {
5389 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005390 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005391 let mut formatter = formatter.debug_struct("TypeInfer");
5392 formatter.finish()
5393 }
5394}
5395impl Debug for Lite<syn::TypeMacro> {
5396 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005397 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005398 let mut formatter = formatter.debug_struct("TypeMacro");
David Tolnay5302f0e2019-05-08 23:26:18 -07005399 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005400 formatter.finish()
5401 }
5402}
5403impl Debug for Lite<syn::TypeNever> {
5404 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005405 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005406 let mut formatter = formatter.debug_struct("TypeNever");
5407 formatter.finish()
5408 }
5409}
5410impl Debug for Lite<syn::TypeParam> {
5411 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005412 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005413 let mut formatter = formatter.debug_struct("TypeParam");
David Tolnaycaac6272019-05-09 11:26:37 -07005414 if !_val.attrs.is_empty() {
5415 formatter.field("attrs", Lite(&_val.attrs));
5416 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005417 formatter.field("ident", Lite(&_val.ident));
5418 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005419 #[derive(RefCast)]
5420 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005421 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005422 impl Debug for Print {
5423 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005424 formatter.write_str("Some")?;
5425 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005426 }
5427 }
David Tolnay644246b2019-05-08 23:02:46 -07005428 formatter.field("colon_token", Print::ref_cast(val));
5429 }
David Tolnaycaac6272019-05-09 11:26:37 -07005430 if !_val.bounds.is_empty() {
5431 formatter.field("bounds", Lite(&_val.bounds));
5432 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005433 if let Some(val) = &_val.eq_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005434 #[derive(RefCast)]
5435 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005436 struct Print(syn::token::Eq);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005437 impl Debug for Print {
5438 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005439 formatter.write_str("Some")?;
5440 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005441 }
5442 }
David Tolnay644246b2019-05-08 23:02:46 -07005443 formatter.field("eq_token", Print::ref_cast(val));
5444 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005445 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005446 #[derive(RefCast)]
5447 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005448 struct Print(syn::Type);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005449 impl Debug for Print {
5450 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005451 formatter.write_str("Some")?;
5452 let _val = &self.0;
5453 formatter.write_str("(")?;
5454 Debug::fmt(Lite(_val), formatter)?;
5455 formatter.write_str(")")?;
5456 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005457 }
5458 }
David Tolnay644246b2019-05-08 23:02:46 -07005459 formatter.field("default", Print::ref_cast(val));
5460 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005461 formatter.finish()
5462 }
5463}
5464impl Debug for Lite<syn::TypeParamBound> {
5465 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005466 let _val = &self.value;
5467 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005468 syn::TypeParamBound::Trait(_v0) => {
5469 let mut formatter = formatter.debug_tuple("Trait");
5470 formatter.field(Lite(_v0));
5471 formatter.finish()
5472 }
5473 syn::TypeParamBound::Lifetime(_v0) => {
5474 let mut formatter = formatter.debug_tuple("Lifetime");
5475 formatter.field(Lite(_v0));
5476 formatter.finish()
5477 }
5478 }
5479 }
5480}
5481impl Debug for Lite<syn::TypeParen> {
5482 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005483 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005484 let mut formatter = formatter.debug_struct("TypeParen");
David Tolnay5302f0e2019-05-08 23:26:18 -07005485 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005486 formatter.finish()
5487 }
5488}
5489impl Debug for Lite<syn::TypePath> {
5490 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005491 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005492 let mut formatter = formatter.debug_struct("TypePath");
David Tolnay5302f0e2019-05-08 23:26:18 -07005493 if let Some(val) = &_val.qself {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005494 #[derive(RefCast)]
5495 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005496 struct Print(syn::QSelf);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005497 impl Debug for Print {
5498 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005499 formatter.write_str("Some")?;
5500 let _val = &self.0;
5501 formatter.write_str("(")?;
5502 Debug::fmt(Lite(_val), formatter)?;
5503 formatter.write_str(")")?;
5504 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005505 }
5506 }
David Tolnay644246b2019-05-08 23:02:46 -07005507 formatter.field("qself", Print::ref_cast(val));
5508 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005509 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005510 formatter.finish()
5511 }
5512}
5513impl Debug for Lite<syn::TypePtr> {
5514 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005515 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005516 let mut formatter = formatter.debug_struct("TypePtr");
David Tolnay5302f0e2019-05-08 23:26:18 -07005517 if let Some(val) = &_val.const_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005518 #[derive(RefCast)]
5519 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005520 struct Print(syn::token::Const);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005521 impl Debug for Print {
5522 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005523 formatter.write_str("Some")?;
5524 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005525 }
5526 }
David Tolnay644246b2019-05-08 23:02:46 -07005527 formatter.field("const_token", Print::ref_cast(val));
5528 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005529 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005530 #[derive(RefCast)]
5531 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005532 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005533 impl Debug for Print {
5534 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005535 formatter.write_str("Some")?;
5536 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005537 }
5538 }
David Tolnay644246b2019-05-08 23:02:46 -07005539 formatter.field("mutability", Print::ref_cast(val));
5540 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005541 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005542 formatter.finish()
5543 }
5544}
5545impl Debug for Lite<syn::TypeReference> {
5546 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005547 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005548 let mut formatter = formatter.debug_struct("TypeReference");
David Tolnay5302f0e2019-05-08 23:26:18 -07005549 if let Some(val) = &_val.lifetime {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005550 #[derive(RefCast)]
5551 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005552 struct Print(syn::Lifetime);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005553 impl Debug for Print {
5554 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005555 formatter.write_str("Some")?;
5556 let _val = &self.0;
5557 formatter.write_str("(")?;
5558 Debug::fmt(Lite(_val), formatter)?;
5559 formatter.write_str(")")?;
5560 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005561 }
5562 }
David Tolnay644246b2019-05-08 23:02:46 -07005563 formatter.field("lifetime", Print::ref_cast(val));
5564 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005565 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005566 #[derive(RefCast)]
5567 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005568 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005569 impl Debug for Print {
5570 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005571 formatter.write_str("Some")?;
5572 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005573 }
5574 }
David Tolnay644246b2019-05-08 23:02:46 -07005575 formatter.field("mutability", Print::ref_cast(val));
5576 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005577 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005578 formatter.finish()
5579 }
5580}
5581impl Debug for Lite<syn::TypeSlice> {
5582 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005583 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005584 let mut formatter = formatter.debug_struct("TypeSlice");
David Tolnay5302f0e2019-05-08 23:26:18 -07005585 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005586 formatter.finish()
5587 }
5588}
5589impl Debug for Lite<syn::TypeTraitObject> {
5590 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005591 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005592 let mut formatter = formatter.debug_struct("TypeTraitObject");
David Tolnay5302f0e2019-05-08 23:26:18 -07005593 if let Some(val) = &_val.dyn_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005594 #[derive(RefCast)]
5595 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005596 struct Print(syn::token::Dyn);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005597 impl Debug for Print {
5598 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005599 formatter.write_str("Some")?;
5600 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005601 }
5602 }
David Tolnay644246b2019-05-08 23:02:46 -07005603 formatter.field("dyn_token", Print::ref_cast(val));
5604 }
David Tolnaycaac6272019-05-09 11:26:37 -07005605 if !_val.bounds.is_empty() {
5606 formatter.field("bounds", Lite(&_val.bounds));
5607 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005608 formatter.finish()
5609 }
5610}
5611impl Debug for Lite<syn::TypeTuple> {
5612 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005613 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005614 let mut formatter = formatter.debug_struct("TypeTuple");
David Tolnaycaac6272019-05-09 11:26:37 -07005615 if !_val.elems.is_empty() {
5616 formatter.field("elems", Lite(&_val.elems));
5617 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005618 formatter.finish()
5619 }
5620}
5621impl Debug for Lite<syn::TypeVerbatim> {
5622 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005623 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005624 let mut formatter = formatter.debug_struct("TypeVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07005625 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005626 formatter.finish()
5627 }
5628}
5629impl Debug for Lite<syn::UnOp> {
5630 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005631 let _val = &self.value;
5632 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005633 syn::UnOp::Deref(_v0) => {
5634 let mut formatter = formatter.debug_tuple("Deref");
5635 formatter.finish()
5636 }
5637 syn::UnOp::Not(_v0) => {
5638 let mut formatter = formatter.debug_tuple("Not");
5639 formatter.finish()
5640 }
5641 syn::UnOp::Neg(_v0) => {
5642 let mut formatter = formatter.debug_tuple("Neg");
5643 formatter.finish()
5644 }
5645 }
5646 }
5647}
5648impl Debug for Lite<syn::UseGlob> {
5649 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005650 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005651 let mut formatter = formatter.debug_struct("UseGlob");
5652 formatter.finish()
5653 }
5654}
5655impl Debug for Lite<syn::UseGroup> {
5656 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005657 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005658 let mut formatter = formatter.debug_struct("UseGroup");
David Tolnaycaac6272019-05-09 11:26:37 -07005659 if !_val.items.is_empty() {
5660 formatter.field("items", Lite(&_val.items));
5661 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005662 formatter.finish()
5663 }
5664}
5665impl Debug for Lite<syn::UseName> {
5666 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005667 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005668 let mut formatter = formatter.debug_struct("UseName");
David Tolnay5302f0e2019-05-08 23:26:18 -07005669 formatter.field("ident", Lite(&_val.ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005670 formatter.finish()
5671 }
5672}
5673impl Debug for Lite<syn::UsePath> {
5674 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005675 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005676 let mut formatter = formatter.debug_struct("UsePath");
David Tolnay5302f0e2019-05-08 23:26:18 -07005677 formatter.field("ident", Lite(&_val.ident));
5678 formatter.field("tree", Lite(&_val.tree));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005679 formatter.finish()
5680 }
5681}
5682impl Debug for Lite<syn::UseRename> {
5683 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005684 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005685 let mut formatter = formatter.debug_struct("UseRename");
David Tolnay5302f0e2019-05-08 23:26:18 -07005686 formatter.field("ident", Lite(&_val.ident));
5687 formatter.field("rename", Lite(&_val.rename));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005688 formatter.finish()
5689 }
5690}
5691impl Debug for Lite<syn::UseTree> {
5692 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005693 let _val = &self.value;
5694 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005695 syn::UseTree::Path(_v0) => {
5696 let mut formatter = formatter.debug_tuple("Path");
5697 formatter.field(Lite(_v0));
5698 formatter.finish()
5699 }
5700 syn::UseTree::Name(_v0) => {
5701 let mut formatter = formatter.debug_tuple("Name");
5702 formatter.field(Lite(_v0));
5703 formatter.finish()
5704 }
5705 syn::UseTree::Rename(_v0) => {
5706 let mut formatter = formatter.debug_tuple("Rename");
5707 formatter.field(Lite(_v0));
5708 formatter.finish()
5709 }
5710 syn::UseTree::Glob(_v0) => {
5711 let mut formatter = formatter.debug_tuple("Glob");
5712 formatter.field(Lite(_v0));
5713 formatter.finish()
5714 }
5715 syn::UseTree::Group(_v0) => {
5716 let mut formatter = formatter.debug_tuple("Group");
5717 formatter.field(Lite(_v0));
5718 formatter.finish()
5719 }
5720 }
5721 }
5722}
5723impl Debug for Lite<syn::Variant> {
5724 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005725 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005726 let mut formatter = formatter.debug_struct("Variant");
David Tolnaycaac6272019-05-09 11:26:37 -07005727 if !_val.attrs.is_empty() {
5728 formatter.field("attrs", Lite(&_val.attrs));
5729 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005730 formatter.field("ident", Lite(&_val.ident));
5731 formatter.field("fields", Lite(&_val.fields));
5732 if let Some(val) = &_val.discriminant {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005733 #[derive(RefCast)]
5734 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005735 struct Print((syn::token::Eq, syn::Expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005736 impl Debug for Print {
5737 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005738 formatter.write_str("Some")?;
5739 let _val = &self.0;
5740 formatter.write_str("(")?;
5741 Debug::fmt(Lite(&_val.1), formatter)?;
5742 formatter.write_str(")")?;
5743 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005744 }
5745 }
David Tolnay644246b2019-05-08 23:02:46 -07005746 formatter.field("discriminant", Print::ref_cast(val));
5747 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005748 formatter.finish()
5749 }
5750}
5751impl Debug for Lite<syn::VisCrate> {
5752 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005753 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005754 let mut formatter = formatter.debug_struct("VisCrate");
5755 formatter.finish()
5756 }
5757}
5758impl Debug for Lite<syn::VisPublic> {
5759 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005760 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005761 let mut formatter = formatter.debug_struct("VisPublic");
5762 formatter.finish()
5763 }
5764}
5765impl Debug for Lite<syn::VisRestricted> {
5766 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005767 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005768 let mut formatter = formatter.debug_struct("VisRestricted");
David Tolnay5302f0e2019-05-08 23:26:18 -07005769 if let Some(val) = &_val.in_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005770 #[derive(RefCast)]
5771 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005772 struct Print(syn::token::In);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005773 impl Debug for Print {
5774 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005775 formatter.write_str("Some")?;
5776 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005777 }
5778 }
David Tolnay644246b2019-05-08 23:02:46 -07005779 formatter.field("in_token", Print::ref_cast(val));
5780 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005781 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005782 formatter.finish()
5783 }
5784}
5785impl Debug for Lite<syn::Visibility> {
5786 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005787 let _val = &self.value;
5788 match _val {
David Tolnayabfc2b42019-05-09 12:07:47 -07005789 syn::Visibility::Public(_val) => {
5790 let mut formatter = formatter.debug_struct("Visibility::Public");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005791 formatter.finish()
5792 }
David Tolnayabfc2b42019-05-09 12:07:47 -07005793 syn::Visibility::Crate(_val) => {
5794 let mut formatter = formatter.debug_struct("Visibility::Crate");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005795 formatter.finish()
5796 }
David Tolnayabfc2b42019-05-09 12:07:47 -07005797 syn::Visibility::Restricted(_val) => {
5798 let mut formatter = formatter.debug_struct("Visibility::Restricted");
5799 if let Some(val) = &_val.in_token {
5800 #[derive(RefCast)]
5801 #[repr(transparent)]
5802 struct Print(syn::token::In);
5803 impl Debug for Print {
5804 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5805 formatter.write_str("Some")?;
5806 Ok(())
5807 }
5808 }
5809 formatter.field("in_token", Print::ref_cast(val));
5810 }
5811 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005812 formatter.finish()
5813 }
5814 syn::Visibility::Inherited => formatter.write_str("Inherited"),
5815 }
5816 }
5817}
5818impl Debug for Lite<syn::WhereClause> {
5819 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005820 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005821 let mut formatter = formatter.debug_struct("WhereClause");
David Tolnaycaac6272019-05-09 11:26:37 -07005822 if !_val.predicates.is_empty() {
5823 formatter.field("predicates", Lite(&_val.predicates));
5824 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005825 formatter.finish()
5826 }
5827}
5828impl Debug for Lite<syn::WherePredicate> {
5829 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005830 let _val = &self.value;
5831 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005832 syn::WherePredicate::Type(_v0) => {
5833 let mut formatter = formatter.debug_tuple("Type");
5834 formatter.field(Lite(_v0));
5835 formatter.finish()
5836 }
5837 syn::WherePredicate::Lifetime(_v0) => {
5838 let mut formatter = formatter.debug_tuple("Lifetime");
5839 formatter.field(Lite(_v0));
5840 formatter.finish()
5841 }
5842 syn::WherePredicate::Eq(_v0) => {
5843 let mut formatter = formatter.debug_tuple("Eq");
5844 formatter.field(Lite(_v0));
5845 formatter.finish()
5846 }
5847 }
5848 }
5849}