blob: 5cddc8f8061a245e9e47723abb06ca6bfbd7c859 [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"),
David Tolnay6d16fa82019-05-09 12:17:19 -07004600 syn::PathArguments::AngleBracketed(_val) => {
4601 let mut formatter = formatter.debug_struct("PathArguments::AngleBracketed");
4602 if let Some(val) = &_val.colon2_token {
4603 #[derive(RefCast)]
4604 #[repr(transparent)]
4605 struct Print(syn::token::Colon2);
4606 impl Debug for Print {
4607 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4608 formatter.write_str("Some")?;
4609 Ok(())
4610 }
4611 }
4612 formatter.field("colon2_token", Print::ref_cast(val));
4613 }
4614 if !_val.args.is_empty() {
4615 formatter.field("args", Lite(&_val.args));
4616 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004617 formatter.finish()
4618 }
David Tolnay6d16fa82019-05-09 12:17:19 -07004619 syn::PathArguments::Parenthesized(_val) => {
4620 let mut formatter = formatter.debug_struct("PathArguments::Parenthesized");
4621 if !_val.inputs.is_empty() {
4622 formatter.field("inputs", Lite(&_val.inputs));
4623 }
4624 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004625 formatter.finish()
4626 }
4627 }
4628 }
4629}
4630impl Debug for Lite<syn::PathSegment> {
4631 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004632 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004633 let mut formatter = formatter.debug_struct("PathSegment");
David Tolnay5302f0e2019-05-08 23:26:18 -07004634 formatter.field("ident", Lite(&_val.ident));
4635 formatter.field("arguments", Lite(&_val.arguments));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004636 formatter.finish()
4637 }
4638}
4639impl Debug for Lite<syn::PredicateEq> {
4640 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004641 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004642 let mut formatter = formatter.debug_struct("PredicateEq");
David Tolnay5302f0e2019-05-08 23:26:18 -07004643 formatter.field("lhs_ty", Lite(&_val.lhs_ty));
4644 formatter.field("rhs_ty", Lite(&_val.rhs_ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004645 formatter.finish()
4646 }
4647}
4648impl Debug for Lite<syn::PredicateLifetime> {
4649 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004650 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004651 let mut formatter = formatter.debug_struct("PredicateLifetime");
David Tolnay5302f0e2019-05-08 23:26:18 -07004652 formatter.field("lifetime", Lite(&_val.lifetime));
David Tolnaycaac6272019-05-09 11:26:37 -07004653 if !_val.bounds.is_empty() {
4654 formatter.field("bounds", Lite(&_val.bounds));
4655 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004656 formatter.finish()
4657 }
4658}
4659impl Debug for Lite<syn::PredicateType> {
4660 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004661 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004662 let mut formatter = formatter.debug_struct("PredicateType");
David Tolnay5302f0e2019-05-08 23:26:18 -07004663 if let Some(val) = &_val.lifetimes {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004664 #[derive(RefCast)]
4665 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004666 struct Print(syn::BoundLifetimes);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004667 impl Debug for Print {
4668 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004669 formatter.write_str("Some")?;
4670 let _val = &self.0;
4671 formatter.write_str("(")?;
4672 Debug::fmt(Lite(_val), formatter)?;
4673 formatter.write_str(")")?;
4674 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004675 }
4676 }
David Tolnay644246b2019-05-08 23:02:46 -07004677 formatter.field("lifetimes", Print::ref_cast(val));
4678 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004679 formatter.field("bounded_ty", Lite(&_val.bounded_ty));
David Tolnaycaac6272019-05-09 11:26:37 -07004680 if !_val.bounds.is_empty() {
4681 formatter.field("bounds", Lite(&_val.bounds));
4682 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004683 formatter.finish()
4684 }
4685}
4686impl Debug for Lite<syn::QSelf> {
4687 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004688 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004689 let mut formatter = formatter.debug_struct("QSelf");
David Tolnay5302f0e2019-05-08 23:26:18 -07004690 formatter.field("ty", Lite(&_val.ty));
4691 formatter.field("position", Lite(&_val.position));
4692 if let Some(val) = &_val.as_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004693 #[derive(RefCast)]
4694 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004695 struct Print(syn::token::As);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004696 impl Debug for Print {
4697 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004698 formatter.write_str("Some")?;
4699 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004700 }
4701 }
David Tolnay644246b2019-05-08 23:02:46 -07004702 formatter.field("as_token", Print::ref_cast(val));
4703 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004704 formatter.finish()
4705 }
4706}
4707impl Debug for Lite<syn::RangeLimits> {
4708 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004709 let _val = &self.value;
4710 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004711 syn::RangeLimits::HalfOpen(_v0) => {
4712 let mut formatter = formatter.debug_tuple("HalfOpen");
4713 formatter.finish()
4714 }
4715 syn::RangeLimits::Closed(_v0) => {
4716 let mut formatter = formatter.debug_tuple("Closed");
4717 formatter.finish()
4718 }
4719 }
4720 }
4721}
4722impl Debug for Lite<syn::ReturnType> {
4723 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004724 let _val = &self.value;
4725 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004726 syn::ReturnType::Default => formatter.write_str("Default"),
4727 syn::ReturnType::Type(_v0, _v1) => {
4728 let mut formatter = formatter.debug_tuple("Type");
4729 formatter.field(Lite(_v1));
4730 formatter.finish()
4731 }
4732 }
4733 }
4734}
4735impl Debug for Lite<syn::Stmt> {
4736 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004737 let _val = &self.value;
4738 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004739 syn::Stmt::Local(_v0) => {
4740 let mut formatter = formatter.debug_tuple("Local");
4741 formatter.field(Lite(_v0));
4742 formatter.finish()
4743 }
4744 syn::Stmt::Item(_v0) => {
4745 let mut formatter = formatter.debug_tuple("Item");
4746 formatter.field(Lite(_v0));
4747 formatter.finish()
4748 }
4749 syn::Stmt::Expr(_v0) => {
4750 let mut formatter = formatter.debug_tuple("Expr");
4751 formatter.field(Lite(_v0));
4752 formatter.finish()
4753 }
4754 syn::Stmt::Semi(_v0, _v1) => {
4755 let mut formatter = formatter.debug_tuple("Semi");
4756 formatter.field(Lite(_v0));
4757 formatter.finish()
4758 }
4759 }
4760 }
4761}
4762impl Debug for Lite<syn::TraitBound> {
4763 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004764 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004765 let mut formatter = formatter.debug_struct("TraitBound");
David Tolnay5302f0e2019-05-08 23:26:18 -07004766 if let Some(val) = &_val.paren_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004767 #[derive(RefCast)]
4768 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004769 struct Print(syn::token::Paren);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004770 impl Debug for Print {
4771 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004772 formatter.write_str("Some")?;
4773 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004774 }
4775 }
David Tolnay644246b2019-05-08 23:02:46 -07004776 formatter.field("paren_token", Print::ref_cast(val));
4777 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004778 formatter.field("modifier", Lite(&_val.modifier));
4779 if let Some(val) = &_val.lifetimes {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004780 #[derive(RefCast)]
4781 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004782 struct Print(syn::BoundLifetimes);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004783 impl Debug for Print {
4784 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004785 formatter.write_str("Some")?;
4786 let _val = &self.0;
4787 formatter.write_str("(")?;
4788 Debug::fmt(Lite(_val), formatter)?;
4789 formatter.write_str(")")?;
4790 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004791 }
4792 }
David Tolnay644246b2019-05-08 23:02:46 -07004793 formatter.field("lifetimes", Print::ref_cast(val));
4794 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004795 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004796 formatter.finish()
4797 }
4798}
4799impl Debug for Lite<syn::TraitBoundModifier> {
4800 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004801 let _val = &self.value;
4802 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004803 syn::TraitBoundModifier::None => formatter.write_str("None"),
4804 syn::TraitBoundModifier::Maybe(_v0) => {
4805 let mut formatter = formatter.debug_tuple("Maybe");
4806 formatter.finish()
4807 }
4808 }
4809 }
4810}
4811impl Debug for Lite<syn::TraitItem> {
4812 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004813 let _val = &self.value;
4814 match _val {
4815 syn::TraitItem::Const(_val) => {
4816 let mut formatter = formatter.debug_struct("TraitItem::Const");
David Tolnaycaac6272019-05-09 11:26:37 -07004817 if !_val.attrs.is_empty() {
4818 formatter.field("attrs", Lite(&_val.attrs));
4819 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004820 formatter.field("ident", Lite(&_val.ident));
4821 formatter.field("ty", Lite(&_val.ty));
4822 if let Some(val) = &_val.default {
4823 #[derive(RefCast)]
4824 #[repr(transparent)]
4825 struct Print((syn::token::Eq, syn::Expr));
4826 impl Debug for Print {
4827 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4828 formatter.write_str("Some")?;
4829 let _val = &self.0;
4830 formatter.write_str("(")?;
4831 Debug::fmt(Lite(&_val.1), formatter)?;
4832 formatter.write_str(")")?;
4833 Ok(())
4834 }
4835 }
4836 formatter.field("default", Print::ref_cast(val));
4837 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004838 formatter.finish()
4839 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004840 syn::TraitItem::Method(_val) => {
4841 let mut formatter = formatter.debug_struct("TraitItem::Method");
David Tolnaycaac6272019-05-09 11:26:37 -07004842 if !_val.attrs.is_empty() {
4843 formatter.field("attrs", Lite(&_val.attrs));
4844 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004845 formatter.field("sig", Lite(&_val.sig));
4846 if let Some(val) = &_val.default {
4847 #[derive(RefCast)]
4848 #[repr(transparent)]
4849 struct Print(syn::Block);
4850 impl Debug for Print {
4851 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4852 formatter.write_str("Some")?;
4853 let _val = &self.0;
4854 formatter.write_str("(")?;
4855 Debug::fmt(Lite(_val), formatter)?;
4856 formatter.write_str(")")?;
4857 Ok(())
4858 }
4859 }
4860 formatter.field("default", Print::ref_cast(val));
4861 }
4862 if let Some(val) = &_val.semi_token {
4863 #[derive(RefCast)]
4864 #[repr(transparent)]
4865 struct Print(syn::token::Semi);
4866 impl Debug for Print {
4867 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4868 formatter.write_str("Some")?;
4869 Ok(())
4870 }
4871 }
4872 formatter.field("semi_token", Print::ref_cast(val));
4873 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004874 formatter.finish()
4875 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004876 syn::TraitItem::Type(_val) => {
4877 let mut formatter = formatter.debug_struct("TraitItem::Type");
David Tolnaycaac6272019-05-09 11:26:37 -07004878 if !_val.attrs.is_empty() {
4879 formatter.field("attrs", Lite(&_val.attrs));
4880 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004881 formatter.field("ident", Lite(&_val.ident));
4882 formatter.field("generics", Lite(&_val.generics));
4883 if let Some(val) = &_val.colon_token {
4884 #[derive(RefCast)]
4885 #[repr(transparent)]
4886 struct Print(syn::token::Colon);
4887 impl Debug for Print {
4888 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4889 formatter.write_str("Some")?;
4890 Ok(())
4891 }
4892 }
4893 formatter.field("colon_token", Print::ref_cast(val));
4894 }
David Tolnaycaac6272019-05-09 11:26:37 -07004895 if !_val.bounds.is_empty() {
4896 formatter.field("bounds", Lite(&_val.bounds));
4897 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004898 if let Some(val) = &_val.default {
4899 #[derive(RefCast)]
4900 #[repr(transparent)]
4901 struct Print((syn::token::Eq, syn::Type));
4902 impl Debug for Print {
4903 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4904 formatter.write_str("Some")?;
4905 let _val = &self.0;
4906 formatter.write_str("(")?;
4907 Debug::fmt(Lite(&_val.1), formatter)?;
4908 formatter.write_str(")")?;
4909 Ok(())
4910 }
4911 }
4912 formatter.field("default", Print::ref_cast(val));
4913 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004914 formatter.finish()
4915 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004916 syn::TraitItem::Macro(_val) => {
4917 let mut formatter = formatter.debug_struct("TraitItem::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07004918 if !_val.attrs.is_empty() {
4919 formatter.field("attrs", Lite(&_val.attrs));
4920 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004921 formatter.field("mac", Lite(&_val.mac));
4922 if let Some(val) = &_val.semi_token {
4923 #[derive(RefCast)]
4924 #[repr(transparent)]
4925 struct Print(syn::token::Semi);
4926 impl Debug for Print {
4927 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4928 formatter.write_str("Some")?;
4929 Ok(())
4930 }
4931 }
4932 formatter.field("semi_token", Print::ref_cast(val));
4933 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004934 formatter.finish()
4935 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004936 syn::TraitItem::Verbatim(_val) => {
4937 let mut formatter = formatter.debug_struct("TraitItem::Verbatim");
4938 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004939 formatter.finish()
4940 }
4941 }
4942 }
4943}
4944impl Debug for Lite<syn::TraitItemConst> {
4945 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004946 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004947 let mut formatter = formatter.debug_struct("TraitItemConst");
David Tolnaycaac6272019-05-09 11:26:37 -07004948 if !_val.attrs.is_empty() {
4949 formatter.field("attrs", Lite(&_val.attrs));
4950 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004951 formatter.field("ident", Lite(&_val.ident));
4952 formatter.field("ty", Lite(&_val.ty));
4953 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004954 #[derive(RefCast)]
4955 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004956 struct Print((syn::token::Eq, syn::Expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004957 impl Debug for Print {
4958 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004959 formatter.write_str("Some")?;
4960 let _val = &self.0;
4961 formatter.write_str("(")?;
4962 Debug::fmt(Lite(&_val.1), formatter)?;
4963 formatter.write_str(")")?;
4964 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004965 }
4966 }
David Tolnay644246b2019-05-08 23:02:46 -07004967 formatter.field("default", Print::ref_cast(val));
4968 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004969 formatter.finish()
4970 }
4971}
4972impl Debug for Lite<syn::TraitItemMacro> {
4973 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004974 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004975 let mut formatter = formatter.debug_struct("TraitItemMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07004976 if !_val.attrs.is_empty() {
4977 formatter.field("attrs", Lite(&_val.attrs));
4978 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004979 formatter.field("mac", Lite(&_val.mac));
4980 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004981 #[derive(RefCast)]
4982 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004983 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004984 impl Debug for Print {
4985 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004986 formatter.write_str("Some")?;
4987 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004988 }
4989 }
David Tolnay644246b2019-05-08 23:02:46 -07004990 formatter.field("semi_token", Print::ref_cast(val));
4991 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004992 formatter.finish()
4993 }
4994}
4995impl Debug for Lite<syn::TraitItemMethod> {
4996 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004997 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004998 let mut formatter = formatter.debug_struct("TraitItemMethod");
David Tolnaycaac6272019-05-09 11:26:37 -07004999 if !_val.attrs.is_empty() {
5000 formatter.field("attrs", Lite(&_val.attrs));
5001 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005002 formatter.field("sig", Lite(&_val.sig));
5003 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005004 #[derive(RefCast)]
5005 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005006 struct Print(syn::Block);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005007 impl Debug for Print {
5008 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005009 formatter.write_str("Some")?;
5010 let _val = &self.0;
5011 formatter.write_str("(")?;
5012 Debug::fmt(Lite(_val), formatter)?;
5013 formatter.write_str(")")?;
5014 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005015 }
5016 }
David Tolnay644246b2019-05-08 23:02:46 -07005017 formatter.field("default", Print::ref_cast(val));
5018 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005019 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005020 #[derive(RefCast)]
5021 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005022 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005023 impl Debug for Print {
5024 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005025 formatter.write_str("Some")?;
5026 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005027 }
5028 }
David Tolnay644246b2019-05-08 23:02:46 -07005029 formatter.field("semi_token", Print::ref_cast(val));
5030 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005031 formatter.finish()
5032 }
5033}
5034impl Debug for Lite<syn::TraitItemType> {
5035 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005036 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005037 let mut formatter = formatter.debug_struct("TraitItemType");
David Tolnaycaac6272019-05-09 11:26:37 -07005038 if !_val.attrs.is_empty() {
5039 formatter.field("attrs", Lite(&_val.attrs));
5040 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005041 formatter.field("ident", Lite(&_val.ident));
5042 formatter.field("generics", Lite(&_val.generics));
5043 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005044 #[derive(RefCast)]
5045 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005046 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005047 impl Debug for Print {
5048 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005049 formatter.write_str("Some")?;
5050 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005051 }
5052 }
David Tolnay644246b2019-05-08 23:02:46 -07005053 formatter.field("colon_token", Print::ref_cast(val));
5054 }
David Tolnaycaac6272019-05-09 11:26:37 -07005055 if !_val.bounds.is_empty() {
5056 formatter.field("bounds", Lite(&_val.bounds));
5057 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005058 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005059 #[derive(RefCast)]
5060 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005061 struct Print((syn::token::Eq, syn::Type));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005062 impl Debug for Print {
5063 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005064 formatter.write_str("Some")?;
5065 let _val = &self.0;
5066 formatter.write_str("(")?;
5067 Debug::fmt(Lite(&_val.1), formatter)?;
5068 formatter.write_str(")")?;
5069 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005070 }
5071 }
David Tolnay644246b2019-05-08 23:02:46 -07005072 formatter.field("default", Print::ref_cast(val));
5073 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005074 formatter.finish()
5075 }
5076}
5077impl Debug for Lite<syn::TraitItemVerbatim> {
5078 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005079 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005080 let mut formatter = formatter.debug_struct("TraitItemVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07005081 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005082 formatter.finish()
5083 }
5084}
5085impl Debug for Lite<syn::Type> {
5086 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005087 let _val = &self.value;
5088 match _val {
5089 syn::Type::Slice(_val) => {
5090 let mut formatter = formatter.debug_struct("Type::Slice");
5091 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005092 formatter.finish()
5093 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005094 syn::Type::Array(_val) => {
5095 let mut formatter = formatter.debug_struct("Type::Array");
5096 formatter.field("elem", Lite(&_val.elem));
5097 formatter.field("len", Lite(&_val.len));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005098 formatter.finish()
5099 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005100 syn::Type::Ptr(_val) => {
5101 let mut formatter = formatter.debug_struct("Type::Ptr");
5102 if let Some(val) = &_val.const_token {
5103 #[derive(RefCast)]
5104 #[repr(transparent)]
5105 struct Print(syn::token::Const);
5106 impl Debug for Print {
5107 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5108 formatter.write_str("Some")?;
5109 Ok(())
5110 }
5111 }
5112 formatter.field("const_token", Print::ref_cast(val));
5113 }
5114 if let Some(val) = &_val.mutability {
5115 #[derive(RefCast)]
5116 #[repr(transparent)]
5117 struct Print(syn::token::Mut);
5118 impl Debug for Print {
5119 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5120 formatter.write_str("Some")?;
5121 Ok(())
5122 }
5123 }
5124 formatter.field("mutability", Print::ref_cast(val));
5125 }
5126 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005127 formatter.finish()
5128 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005129 syn::Type::Reference(_val) => {
5130 let mut formatter = formatter.debug_struct("Type::Reference");
5131 if let Some(val) = &_val.lifetime {
5132 #[derive(RefCast)]
5133 #[repr(transparent)]
5134 struct Print(syn::Lifetime);
5135 impl Debug for Print {
5136 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5137 formatter.write_str("Some")?;
5138 let _val = &self.0;
5139 formatter.write_str("(")?;
5140 Debug::fmt(Lite(_val), formatter)?;
5141 formatter.write_str(")")?;
5142 Ok(())
5143 }
5144 }
5145 formatter.field("lifetime", Print::ref_cast(val));
5146 }
5147 if let Some(val) = &_val.mutability {
5148 #[derive(RefCast)]
5149 #[repr(transparent)]
5150 struct Print(syn::token::Mut);
5151 impl Debug for Print {
5152 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5153 formatter.write_str("Some")?;
5154 Ok(())
5155 }
5156 }
5157 formatter.field("mutability", Print::ref_cast(val));
5158 }
5159 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005160 formatter.finish()
5161 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005162 syn::Type::BareFn(_val) => {
5163 let mut formatter = formatter.debug_struct("Type::BareFn");
5164 if let Some(val) = &_val.lifetimes {
5165 #[derive(RefCast)]
5166 #[repr(transparent)]
5167 struct Print(syn::BoundLifetimes);
5168 impl Debug for Print {
5169 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5170 formatter.write_str("Some")?;
5171 let _val = &self.0;
5172 formatter.write_str("(")?;
5173 Debug::fmt(Lite(_val), formatter)?;
5174 formatter.write_str(")")?;
5175 Ok(())
5176 }
5177 }
5178 formatter.field("lifetimes", Print::ref_cast(val));
5179 }
5180 if let Some(val) = &_val.unsafety {
5181 #[derive(RefCast)]
5182 #[repr(transparent)]
5183 struct Print(syn::token::Unsafe);
5184 impl Debug for Print {
5185 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5186 formatter.write_str("Some")?;
5187 Ok(())
5188 }
5189 }
5190 formatter.field("unsafety", Print::ref_cast(val));
5191 }
5192 if let Some(val) = &_val.abi {
5193 #[derive(RefCast)]
5194 #[repr(transparent)]
5195 struct Print(syn::Abi);
5196 impl Debug for Print {
5197 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5198 formatter.write_str("Some")?;
5199 let _val = &self.0;
5200 formatter.write_str("(")?;
5201 Debug::fmt(Lite(_val), formatter)?;
5202 formatter.write_str(")")?;
5203 Ok(())
5204 }
5205 }
5206 formatter.field("abi", Print::ref_cast(val));
5207 }
David Tolnaycaac6272019-05-09 11:26:37 -07005208 if !_val.inputs.is_empty() {
5209 formatter.field("inputs", Lite(&_val.inputs));
5210 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005211 if let Some(val) = &_val.variadic {
5212 #[derive(RefCast)]
5213 #[repr(transparent)]
5214 struct Print(syn::token::Dot3);
5215 impl Debug for Print {
5216 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5217 formatter.write_str("Some")?;
5218 Ok(())
5219 }
5220 }
5221 formatter.field("variadic", Print::ref_cast(val));
5222 }
5223 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005224 formatter.finish()
5225 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005226 syn::Type::Never(_val) => {
5227 let mut formatter = formatter.debug_struct("Type::Never");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005228 formatter.finish()
5229 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005230 syn::Type::Tuple(_val) => {
5231 let mut formatter = formatter.debug_struct("Type::Tuple");
David Tolnaycaac6272019-05-09 11:26:37 -07005232 if !_val.elems.is_empty() {
5233 formatter.field("elems", Lite(&_val.elems));
5234 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005235 formatter.finish()
5236 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005237 syn::Type::Path(_val) => {
5238 let mut formatter = formatter.debug_struct("Type::Path");
5239 if let Some(val) = &_val.qself {
5240 #[derive(RefCast)]
5241 #[repr(transparent)]
5242 struct Print(syn::QSelf);
5243 impl Debug for Print {
5244 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5245 formatter.write_str("Some")?;
5246 let _val = &self.0;
5247 formatter.write_str("(")?;
5248 Debug::fmt(Lite(_val), formatter)?;
5249 formatter.write_str(")")?;
5250 Ok(())
5251 }
5252 }
5253 formatter.field("qself", Print::ref_cast(val));
5254 }
5255 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005256 formatter.finish()
5257 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005258 syn::Type::TraitObject(_val) => {
5259 let mut formatter = formatter.debug_struct("Type::TraitObject");
5260 if let Some(val) = &_val.dyn_token {
5261 #[derive(RefCast)]
5262 #[repr(transparent)]
5263 struct Print(syn::token::Dyn);
5264 impl Debug for Print {
5265 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5266 formatter.write_str("Some")?;
5267 Ok(())
5268 }
5269 }
5270 formatter.field("dyn_token", Print::ref_cast(val));
5271 }
David Tolnaycaac6272019-05-09 11:26:37 -07005272 if !_val.bounds.is_empty() {
5273 formatter.field("bounds", Lite(&_val.bounds));
5274 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005275 formatter.finish()
5276 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005277 syn::Type::ImplTrait(_val) => {
5278 let mut formatter = formatter.debug_struct("Type::ImplTrait");
David Tolnaycaac6272019-05-09 11:26:37 -07005279 if !_val.bounds.is_empty() {
5280 formatter.field("bounds", Lite(&_val.bounds));
5281 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005282 formatter.finish()
5283 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005284 syn::Type::Paren(_val) => {
5285 let mut formatter = formatter.debug_struct("Type::Paren");
5286 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005287 formatter.finish()
5288 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005289 syn::Type::Group(_val) => {
5290 let mut formatter = formatter.debug_struct("Type::Group");
5291 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005292 formatter.finish()
5293 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005294 syn::Type::Infer(_val) => {
5295 let mut formatter = formatter.debug_struct("Type::Infer");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005296 formatter.finish()
5297 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005298 syn::Type::Macro(_val) => {
5299 let mut formatter = formatter.debug_struct("Type::Macro");
5300 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005301 formatter.finish()
5302 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005303 syn::Type::Verbatim(_val) => {
5304 let mut formatter = formatter.debug_struct("Type::Verbatim");
5305 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005306 formatter.finish()
5307 }
5308 }
5309 }
5310}
5311impl Debug for Lite<syn::TypeArray> {
5312 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005313 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005314 let mut formatter = formatter.debug_struct("TypeArray");
David Tolnay5302f0e2019-05-08 23:26:18 -07005315 formatter.field("elem", Lite(&_val.elem));
5316 formatter.field("len", Lite(&_val.len));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005317 formatter.finish()
5318 }
5319}
5320impl Debug for Lite<syn::TypeBareFn> {
5321 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005322 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005323 let mut formatter = formatter.debug_struct("TypeBareFn");
David Tolnay5302f0e2019-05-08 23:26:18 -07005324 if let Some(val) = &_val.lifetimes {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005325 #[derive(RefCast)]
5326 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005327 struct Print(syn::BoundLifetimes);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005328 impl Debug for Print {
5329 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005330 formatter.write_str("Some")?;
5331 let _val = &self.0;
5332 formatter.write_str("(")?;
5333 Debug::fmt(Lite(_val), formatter)?;
5334 formatter.write_str(")")?;
5335 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005336 }
5337 }
David Tolnay644246b2019-05-08 23:02:46 -07005338 formatter.field("lifetimes", Print::ref_cast(val));
5339 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005340 if let Some(val) = &_val.unsafety {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005341 #[derive(RefCast)]
5342 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005343 struct Print(syn::token::Unsafe);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005344 impl Debug for Print {
5345 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005346 formatter.write_str("Some")?;
5347 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005348 }
5349 }
David Tolnay644246b2019-05-08 23:02:46 -07005350 formatter.field("unsafety", Print::ref_cast(val));
5351 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005352 if let Some(val) = &_val.abi {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005353 #[derive(RefCast)]
5354 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005355 struct Print(syn::Abi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005356 impl Debug for Print {
5357 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005358 formatter.write_str("Some")?;
5359 let _val = &self.0;
5360 formatter.write_str("(")?;
5361 Debug::fmt(Lite(_val), formatter)?;
5362 formatter.write_str(")")?;
5363 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005364 }
5365 }
David Tolnay644246b2019-05-08 23:02:46 -07005366 formatter.field("abi", Print::ref_cast(val));
5367 }
David Tolnaycaac6272019-05-09 11:26:37 -07005368 if !_val.inputs.is_empty() {
5369 formatter.field("inputs", Lite(&_val.inputs));
5370 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005371 if let Some(val) = &_val.variadic {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005372 #[derive(RefCast)]
5373 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005374 struct Print(syn::token::Dot3);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005375 impl Debug for Print {
5376 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005377 formatter.write_str("Some")?;
5378 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005379 }
5380 }
David Tolnay644246b2019-05-08 23:02:46 -07005381 formatter.field("variadic", Print::ref_cast(val));
5382 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005383 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005384 formatter.finish()
5385 }
5386}
5387impl Debug for Lite<syn::TypeGroup> {
5388 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005389 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005390 let mut formatter = formatter.debug_struct("TypeGroup");
David Tolnay5302f0e2019-05-08 23:26:18 -07005391 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005392 formatter.finish()
5393 }
5394}
5395impl Debug for Lite<syn::TypeImplTrait> {
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("TypeImplTrait");
David Tolnaycaac6272019-05-09 11:26:37 -07005399 if !_val.bounds.is_empty() {
5400 formatter.field("bounds", Lite(&_val.bounds));
5401 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005402 formatter.finish()
5403 }
5404}
5405impl Debug for Lite<syn::TypeInfer> {
5406 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005407 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005408 let mut formatter = formatter.debug_struct("TypeInfer");
5409 formatter.finish()
5410 }
5411}
5412impl Debug for Lite<syn::TypeMacro> {
5413 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005414 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005415 let mut formatter = formatter.debug_struct("TypeMacro");
David Tolnay5302f0e2019-05-08 23:26:18 -07005416 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005417 formatter.finish()
5418 }
5419}
5420impl Debug for Lite<syn::TypeNever> {
5421 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005422 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005423 let mut formatter = formatter.debug_struct("TypeNever");
5424 formatter.finish()
5425 }
5426}
5427impl Debug for Lite<syn::TypeParam> {
5428 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005429 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005430 let mut formatter = formatter.debug_struct("TypeParam");
David Tolnaycaac6272019-05-09 11:26:37 -07005431 if !_val.attrs.is_empty() {
5432 formatter.field("attrs", Lite(&_val.attrs));
5433 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005434 formatter.field("ident", Lite(&_val.ident));
5435 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005436 #[derive(RefCast)]
5437 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005438 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005439 impl Debug for Print {
5440 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005441 formatter.write_str("Some")?;
5442 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005443 }
5444 }
David Tolnay644246b2019-05-08 23:02:46 -07005445 formatter.field("colon_token", Print::ref_cast(val));
5446 }
David Tolnaycaac6272019-05-09 11:26:37 -07005447 if !_val.bounds.is_empty() {
5448 formatter.field("bounds", Lite(&_val.bounds));
5449 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005450 if let Some(val) = &_val.eq_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005451 #[derive(RefCast)]
5452 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005453 struct Print(syn::token::Eq);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005454 impl Debug for Print {
5455 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005456 formatter.write_str("Some")?;
5457 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005458 }
5459 }
David Tolnay644246b2019-05-08 23:02:46 -07005460 formatter.field("eq_token", Print::ref_cast(val));
5461 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005462 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005463 #[derive(RefCast)]
5464 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005465 struct Print(syn::Type);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005466 impl Debug for Print {
5467 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005468 formatter.write_str("Some")?;
5469 let _val = &self.0;
5470 formatter.write_str("(")?;
5471 Debug::fmt(Lite(_val), formatter)?;
5472 formatter.write_str(")")?;
5473 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005474 }
5475 }
David Tolnay644246b2019-05-08 23:02:46 -07005476 formatter.field("default", Print::ref_cast(val));
5477 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005478 formatter.finish()
5479 }
5480}
5481impl Debug for Lite<syn::TypeParamBound> {
5482 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005483 let _val = &self.value;
5484 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005485 syn::TypeParamBound::Trait(_v0) => {
5486 let mut formatter = formatter.debug_tuple("Trait");
5487 formatter.field(Lite(_v0));
5488 formatter.finish()
5489 }
5490 syn::TypeParamBound::Lifetime(_v0) => {
5491 let mut formatter = formatter.debug_tuple("Lifetime");
5492 formatter.field(Lite(_v0));
5493 formatter.finish()
5494 }
5495 }
5496 }
5497}
5498impl Debug for Lite<syn::TypeParen> {
5499 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005500 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005501 let mut formatter = formatter.debug_struct("TypeParen");
David Tolnay5302f0e2019-05-08 23:26:18 -07005502 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005503 formatter.finish()
5504 }
5505}
5506impl Debug for Lite<syn::TypePath> {
5507 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005508 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005509 let mut formatter = formatter.debug_struct("TypePath");
David Tolnay5302f0e2019-05-08 23:26:18 -07005510 if let Some(val) = &_val.qself {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005511 #[derive(RefCast)]
5512 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005513 struct Print(syn::QSelf);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005514 impl Debug for Print {
5515 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005516 formatter.write_str("Some")?;
5517 let _val = &self.0;
5518 formatter.write_str("(")?;
5519 Debug::fmt(Lite(_val), formatter)?;
5520 formatter.write_str(")")?;
5521 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005522 }
5523 }
David Tolnay644246b2019-05-08 23:02:46 -07005524 formatter.field("qself", Print::ref_cast(val));
5525 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005526 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005527 formatter.finish()
5528 }
5529}
5530impl Debug for Lite<syn::TypePtr> {
5531 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005532 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005533 let mut formatter = formatter.debug_struct("TypePtr");
David Tolnay5302f0e2019-05-08 23:26:18 -07005534 if let Some(val) = &_val.const_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005535 #[derive(RefCast)]
5536 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005537 struct Print(syn::token::Const);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005538 impl Debug for Print {
5539 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005540 formatter.write_str("Some")?;
5541 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005542 }
5543 }
David Tolnay644246b2019-05-08 23:02:46 -07005544 formatter.field("const_token", Print::ref_cast(val));
5545 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005546 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005547 #[derive(RefCast)]
5548 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005549 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005550 impl Debug for Print {
5551 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005552 formatter.write_str("Some")?;
5553 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005554 }
5555 }
David Tolnay644246b2019-05-08 23:02:46 -07005556 formatter.field("mutability", Print::ref_cast(val));
5557 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005558 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005559 formatter.finish()
5560 }
5561}
5562impl Debug for Lite<syn::TypeReference> {
5563 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005564 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005565 let mut formatter = formatter.debug_struct("TypeReference");
David Tolnay5302f0e2019-05-08 23:26:18 -07005566 if let Some(val) = &_val.lifetime {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005567 #[derive(RefCast)]
5568 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005569 struct Print(syn::Lifetime);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005570 impl Debug for Print {
5571 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005572 formatter.write_str("Some")?;
5573 let _val = &self.0;
5574 formatter.write_str("(")?;
5575 Debug::fmt(Lite(_val), formatter)?;
5576 formatter.write_str(")")?;
5577 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005578 }
5579 }
David Tolnay644246b2019-05-08 23:02:46 -07005580 formatter.field("lifetime", Print::ref_cast(val));
5581 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005582 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005583 #[derive(RefCast)]
5584 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005585 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005586 impl Debug for Print {
5587 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005588 formatter.write_str("Some")?;
5589 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005590 }
5591 }
David Tolnay644246b2019-05-08 23:02:46 -07005592 formatter.field("mutability", Print::ref_cast(val));
5593 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005594 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005595 formatter.finish()
5596 }
5597}
5598impl Debug for Lite<syn::TypeSlice> {
5599 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005600 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005601 let mut formatter = formatter.debug_struct("TypeSlice");
David Tolnay5302f0e2019-05-08 23:26:18 -07005602 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005603 formatter.finish()
5604 }
5605}
5606impl Debug for Lite<syn::TypeTraitObject> {
5607 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005608 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005609 let mut formatter = formatter.debug_struct("TypeTraitObject");
David Tolnay5302f0e2019-05-08 23:26:18 -07005610 if let Some(val) = &_val.dyn_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005611 #[derive(RefCast)]
5612 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005613 struct Print(syn::token::Dyn);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005614 impl Debug for Print {
5615 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005616 formatter.write_str("Some")?;
5617 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005618 }
5619 }
David Tolnay644246b2019-05-08 23:02:46 -07005620 formatter.field("dyn_token", Print::ref_cast(val));
5621 }
David Tolnaycaac6272019-05-09 11:26:37 -07005622 if !_val.bounds.is_empty() {
5623 formatter.field("bounds", Lite(&_val.bounds));
5624 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005625 formatter.finish()
5626 }
5627}
5628impl Debug for Lite<syn::TypeTuple> {
5629 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005630 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005631 let mut formatter = formatter.debug_struct("TypeTuple");
David Tolnaycaac6272019-05-09 11:26:37 -07005632 if !_val.elems.is_empty() {
5633 formatter.field("elems", Lite(&_val.elems));
5634 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005635 formatter.finish()
5636 }
5637}
5638impl Debug for Lite<syn::TypeVerbatim> {
5639 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005640 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005641 let mut formatter = formatter.debug_struct("TypeVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07005642 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005643 formatter.finish()
5644 }
5645}
5646impl Debug for Lite<syn::UnOp> {
5647 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005648 let _val = &self.value;
5649 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005650 syn::UnOp::Deref(_v0) => {
5651 let mut formatter = formatter.debug_tuple("Deref");
5652 formatter.finish()
5653 }
5654 syn::UnOp::Not(_v0) => {
5655 let mut formatter = formatter.debug_tuple("Not");
5656 formatter.finish()
5657 }
5658 syn::UnOp::Neg(_v0) => {
5659 let mut formatter = formatter.debug_tuple("Neg");
5660 formatter.finish()
5661 }
5662 }
5663 }
5664}
5665impl Debug for Lite<syn::UseGlob> {
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("UseGlob");
5669 formatter.finish()
5670 }
5671}
5672impl Debug for Lite<syn::UseGroup> {
5673 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005674 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005675 let mut formatter = formatter.debug_struct("UseGroup");
David Tolnaycaac6272019-05-09 11:26:37 -07005676 if !_val.items.is_empty() {
5677 formatter.field("items", Lite(&_val.items));
5678 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005679 formatter.finish()
5680 }
5681}
5682impl Debug for Lite<syn::UseName> {
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("UseName");
David Tolnay5302f0e2019-05-08 23:26:18 -07005686 formatter.field("ident", Lite(&_val.ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005687 formatter.finish()
5688 }
5689}
5690impl Debug for Lite<syn::UsePath> {
5691 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005692 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005693 let mut formatter = formatter.debug_struct("UsePath");
David Tolnay5302f0e2019-05-08 23:26:18 -07005694 formatter.field("ident", Lite(&_val.ident));
5695 formatter.field("tree", Lite(&_val.tree));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005696 formatter.finish()
5697 }
5698}
5699impl Debug for Lite<syn::UseRename> {
5700 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005701 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005702 let mut formatter = formatter.debug_struct("UseRename");
David Tolnay5302f0e2019-05-08 23:26:18 -07005703 formatter.field("ident", Lite(&_val.ident));
5704 formatter.field("rename", Lite(&_val.rename));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005705 formatter.finish()
5706 }
5707}
5708impl Debug for Lite<syn::UseTree> {
5709 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005710 let _val = &self.value;
5711 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005712 syn::UseTree::Path(_v0) => {
5713 let mut formatter = formatter.debug_tuple("Path");
5714 formatter.field(Lite(_v0));
5715 formatter.finish()
5716 }
5717 syn::UseTree::Name(_v0) => {
5718 let mut formatter = formatter.debug_tuple("Name");
5719 formatter.field(Lite(_v0));
5720 formatter.finish()
5721 }
5722 syn::UseTree::Rename(_v0) => {
5723 let mut formatter = formatter.debug_tuple("Rename");
5724 formatter.field(Lite(_v0));
5725 formatter.finish()
5726 }
5727 syn::UseTree::Glob(_v0) => {
5728 let mut formatter = formatter.debug_tuple("Glob");
5729 formatter.field(Lite(_v0));
5730 formatter.finish()
5731 }
5732 syn::UseTree::Group(_v0) => {
5733 let mut formatter = formatter.debug_tuple("Group");
5734 formatter.field(Lite(_v0));
5735 formatter.finish()
5736 }
5737 }
5738 }
5739}
5740impl Debug for Lite<syn::Variant> {
5741 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005742 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005743 let mut formatter = formatter.debug_struct("Variant");
David Tolnaycaac6272019-05-09 11:26:37 -07005744 if !_val.attrs.is_empty() {
5745 formatter.field("attrs", Lite(&_val.attrs));
5746 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005747 formatter.field("ident", Lite(&_val.ident));
5748 formatter.field("fields", Lite(&_val.fields));
5749 if let Some(val) = &_val.discriminant {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005750 #[derive(RefCast)]
5751 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005752 struct Print((syn::token::Eq, syn::Expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005753 impl Debug for Print {
5754 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005755 formatter.write_str("Some")?;
5756 let _val = &self.0;
5757 formatter.write_str("(")?;
5758 Debug::fmt(Lite(&_val.1), formatter)?;
5759 formatter.write_str(")")?;
5760 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005761 }
5762 }
David Tolnay644246b2019-05-08 23:02:46 -07005763 formatter.field("discriminant", Print::ref_cast(val));
5764 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005765 formatter.finish()
5766 }
5767}
5768impl Debug for Lite<syn::VisCrate> {
5769 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005770 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005771 let mut formatter = formatter.debug_struct("VisCrate");
5772 formatter.finish()
5773 }
5774}
5775impl Debug for Lite<syn::VisPublic> {
5776 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005777 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005778 let mut formatter = formatter.debug_struct("VisPublic");
5779 formatter.finish()
5780 }
5781}
5782impl Debug for Lite<syn::VisRestricted> {
5783 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005784 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005785 let mut formatter = formatter.debug_struct("VisRestricted");
David Tolnay5302f0e2019-05-08 23:26:18 -07005786 if let Some(val) = &_val.in_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005787 #[derive(RefCast)]
5788 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005789 struct Print(syn::token::In);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005790 impl Debug for Print {
5791 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005792 formatter.write_str("Some")?;
5793 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005794 }
5795 }
David Tolnay644246b2019-05-08 23:02:46 -07005796 formatter.field("in_token", Print::ref_cast(val));
5797 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005798 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005799 formatter.finish()
5800 }
5801}
5802impl Debug for Lite<syn::Visibility> {
5803 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005804 let _val = &self.value;
5805 match _val {
David Tolnayabfc2b42019-05-09 12:07:47 -07005806 syn::Visibility::Public(_val) => {
5807 let mut formatter = formatter.debug_struct("Visibility::Public");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005808 formatter.finish()
5809 }
David Tolnayabfc2b42019-05-09 12:07:47 -07005810 syn::Visibility::Crate(_val) => {
5811 let mut formatter = formatter.debug_struct("Visibility::Crate");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005812 formatter.finish()
5813 }
David Tolnayabfc2b42019-05-09 12:07:47 -07005814 syn::Visibility::Restricted(_val) => {
5815 let mut formatter = formatter.debug_struct("Visibility::Restricted");
5816 if let Some(val) = &_val.in_token {
5817 #[derive(RefCast)]
5818 #[repr(transparent)]
5819 struct Print(syn::token::In);
5820 impl Debug for Print {
5821 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5822 formatter.write_str("Some")?;
5823 Ok(())
5824 }
5825 }
5826 formatter.field("in_token", Print::ref_cast(val));
5827 }
5828 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005829 formatter.finish()
5830 }
5831 syn::Visibility::Inherited => formatter.write_str("Inherited"),
5832 }
5833 }
5834}
5835impl Debug for Lite<syn::WhereClause> {
5836 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005837 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005838 let mut formatter = formatter.debug_struct("WhereClause");
David Tolnaycaac6272019-05-09 11:26:37 -07005839 if !_val.predicates.is_empty() {
5840 formatter.field("predicates", Lite(&_val.predicates));
5841 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005842 formatter.finish()
5843 }
5844}
5845impl Debug for Lite<syn::WherePredicate> {
5846 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005847 let _val = &self.value;
5848 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005849 syn::WherePredicate::Type(_v0) => {
5850 let mut formatter = formatter.debug_tuple("Type");
5851 formatter.field(Lite(_v0));
5852 formatter.finish()
5853 }
5854 syn::WherePredicate::Lifetime(_v0) => {
5855 let mut formatter = formatter.debug_tuple("Lifetime");
5856 formatter.field(Lite(_v0));
5857 formatter.finish()
5858 }
5859 syn::WherePredicate::Eq(_v0) => {
5860 let mut formatter = formatter.debug_tuple("Eq");
5861 formatter.field(Lite(_v0));
5862 formatter.finish()
5863 }
5864 }
5865 }
5866}