blob: f055126ad467a4a41e544360a3c6b1877dbf979a [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"),
David Tolnay32245a92019-05-09 12:32:15 -0700173 syn::AttrStyle::Inner(_val) => {
174 formatter.write_str("Inner")?;
175 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700176 }
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 Tolnay32245a92019-05-09 12:32:15 -0700218 syn::BareFnArgName::Named(_val) => {
219 formatter.write_str("Named")?;
220 formatter.write_str("(")?;
221 Debug::fmt(Lite(_val), formatter)?;
222 formatter.write_str(")")?;
223 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700224 }
David Tolnay32245a92019-05-09 12:32:15 -0700225 syn::BareFnArgName::Wild(_val) => {
226 formatter.write_str("Wild")?;
227 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700228 }
229 }
230 }
231}
232impl Debug for Lite<syn::BinOp> {
233 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700234 let _val = &self.value;
235 match _val {
David Tolnay32245a92019-05-09 12:32:15 -0700236 syn::BinOp::Add(_val) => {
237 formatter.write_str("Add")?;
238 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700239 }
David Tolnay32245a92019-05-09 12:32:15 -0700240 syn::BinOp::Sub(_val) => {
241 formatter.write_str("Sub")?;
242 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700243 }
David Tolnay32245a92019-05-09 12:32:15 -0700244 syn::BinOp::Mul(_val) => {
245 formatter.write_str("Mul")?;
246 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700247 }
David Tolnay32245a92019-05-09 12:32:15 -0700248 syn::BinOp::Div(_val) => {
249 formatter.write_str("Div")?;
250 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700251 }
David Tolnay32245a92019-05-09 12:32:15 -0700252 syn::BinOp::Rem(_val) => {
253 formatter.write_str("Rem")?;
254 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700255 }
David Tolnay32245a92019-05-09 12:32:15 -0700256 syn::BinOp::And(_val) => {
257 formatter.write_str("And")?;
258 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700259 }
David Tolnay32245a92019-05-09 12:32:15 -0700260 syn::BinOp::Or(_val) => {
261 formatter.write_str("Or")?;
262 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700263 }
David Tolnay32245a92019-05-09 12:32:15 -0700264 syn::BinOp::BitXor(_val) => {
265 formatter.write_str("BitXor")?;
266 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700267 }
David Tolnay32245a92019-05-09 12:32:15 -0700268 syn::BinOp::BitAnd(_val) => {
269 formatter.write_str("BitAnd")?;
270 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700271 }
David Tolnay32245a92019-05-09 12:32:15 -0700272 syn::BinOp::BitOr(_val) => {
273 formatter.write_str("BitOr")?;
274 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700275 }
David Tolnay32245a92019-05-09 12:32:15 -0700276 syn::BinOp::Shl(_val) => {
277 formatter.write_str("Shl")?;
278 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700279 }
David Tolnay32245a92019-05-09 12:32:15 -0700280 syn::BinOp::Shr(_val) => {
281 formatter.write_str("Shr")?;
282 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700283 }
David Tolnay32245a92019-05-09 12:32:15 -0700284 syn::BinOp::Eq(_val) => {
285 formatter.write_str("Eq")?;
286 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700287 }
David Tolnay32245a92019-05-09 12:32:15 -0700288 syn::BinOp::Lt(_val) => {
289 formatter.write_str("Lt")?;
290 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700291 }
David Tolnay32245a92019-05-09 12:32:15 -0700292 syn::BinOp::Le(_val) => {
293 formatter.write_str("Le")?;
294 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700295 }
David Tolnay32245a92019-05-09 12:32:15 -0700296 syn::BinOp::Ne(_val) => {
297 formatter.write_str("Ne")?;
298 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700299 }
David Tolnay32245a92019-05-09 12:32:15 -0700300 syn::BinOp::Ge(_val) => {
301 formatter.write_str("Ge")?;
302 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700303 }
David Tolnay32245a92019-05-09 12:32:15 -0700304 syn::BinOp::Gt(_val) => {
305 formatter.write_str("Gt")?;
306 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700307 }
David Tolnay32245a92019-05-09 12:32:15 -0700308 syn::BinOp::AddEq(_val) => {
309 formatter.write_str("AddEq")?;
310 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700311 }
David Tolnay32245a92019-05-09 12:32:15 -0700312 syn::BinOp::SubEq(_val) => {
313 formatter.write_str("SubEq")?;
314 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700315 }
David Tolnay32245a92019-05-09 12:32:15 -0700316 syn::BinOp::MulEq(_val) => {
317 formatter.write_str("MulEq")?;
318 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700319 }
David Tolnay32245a92019-05-09 12:32:15 -0700320 syn::BinOp::DivEq(_val) => {
321 formatter.write_str("DivEq")?;
322 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700323 }
David Tolnay32245a92019-05-09 12:32:15 -0700324 syn::BinOp::RemEq(_val) => {
325 formatter.write_str("RemEq")?;
326 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700327 }
David Tolnay32245a92019-05-09 12:32:15 -0700328 syn::BinOp::BitXorEq(_val) => {
329 formatter.write_str("BitXorEq")?;
330 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700331 }
David Tolnay32245a92019-05-09 12:32:15 -0700332 syn::BinOp::BitAndEq(_val) => {
333 formatter.write_str("BitAndEq")?;
334 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700335 }
David Tolnay32245a92019-05-09 12:32:15 -0700336 syn::BinOp::BitOrEq(_val) => {
337 formatter.write_str("BitOrEq")?;
338 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700339 }
David Tolnay32245a92019-05-09 12:32:15 -0700340 syn::BinOp::ShlEq(_val) => {
341 formatter.write_str("ShlEq")?;
342 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700343 }
David Tolnay32245a92019-05-09 12:32:15 -0700344 syn::BinOp::ShrEq(_val) => {
345 formatter.write_str("ShrEq")?;
346 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700347 }
348 }
349 }
350}
351impl Debug for Lite<syn::Binding> {
352 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700353 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700354 let mut formatter = formatter.debug_struct("Binding");
David Tolnay5302f0e2019-05-08 23:26:18 -0700355 formatter.field("ident", Lite(&_val.ident));
356 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700357 formatter.finish()
358 }
359}
360impl Debug for Lite<syn::Block> {
361 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700362 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700363 let mut formatter = formatter.debug_struct("Block");
David Tolnaycaac6272019-05-09 11:26:37 -0700364 if !_val.stmts.is_empty() {
365 formatter.field("stmts", Lite(&_val.stmts));
366 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700367 formatter.finish()
368 }
369}
370impl Debug for Lite<syn::BoundLifetimes> {
371 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700372 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700373 let mut formatter = formatter.debug_struct("BoundLifetimes");
David Tolnaycaac6272019-05-09 11:26:37 -0700374 if !_val.lifetimes.is_empty() {
375 formatter.field("lifetimes", Lite(&_val.lifetimes));
376 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700377 formatter.finish()
378 }
379}
380impl Debug for Lite<syn::ConstParam> {
381 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700382 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700383 let mut formatter = formatter.debug_struct("ConstParam");
David Tolnaycaac6272019-05-09 11:26:37 -0700384 if !_val.attrs.is_empty() {
385 formatter.field("attrs", Lite(&_val.attrs));
386 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700387 formatter.field("ident", Lite(&_val.ident));
388 formatter.field("ty", Lite(&_val.ty));
389 if let Some(val) = &_val.eq_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700390 #[derive(RefCast)]
391 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700392 struct Print(syn::token::Eq);
David Tolnay3c3c7d12019-05-08 14:54:12 -0700393 impl Debug for Print {
394 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700395 formatter.write_str("Some")?;
396 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700397 }
398 }
David Tolnay644246b2019-05-08 23:02:46 -0700399 formatter.field("eq_token", Print::ref_cast(val));
400 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700401 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700402 #[derive(RefCast)]
403 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700404 struct Print(syn::Expr);
David Tolnay3c3c7d12019-05-08 14:54:12 -0700405 impl Debug for Print {
406 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700407 formatter.write_str("Some")?;
408 let _val = &self.0;
409 formatter.write_str("(")?;
410 Debug::fmt(Lite(_val), formatter)?;
411 formatter.write_str(")")?;
412 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700413 }
414 }
David Tolnay644246b2019-05-08 23:02:46 -0700415 formatter.field("default", Print::ref_cast(val));
416 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700417 formatter.finish()
418 }
419}
420impl Debug for Lite<syn::Constraint> {
421 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700422 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700423 let mut formatter = formatter.debug_struct("Constraint");
David Tolnay5302f0e2019-05-08 23:26:18 -0700424 formatter.field("ident", Lite(&_val.ident));
David Tolnaycaac6272019-05-09 11:26:37 -0700425 if !_val.bounds.is_empty() {
426 formatter.field("bounds", Lite(&_val.bounds));
427 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700428 formatter.finish()
429 }
430}
431impl Debug for Lite<syn::Data> {
432 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700433 let _val = &self.value;
434 match _val {
435 syn::Data::Struct(_val) => {
436 let mut formatter = formatter.debug_struct("Data::Struct");
437 formatter.field("fields", Lite(&_val.fields));
438 if let Some(val) = &_val.semi_token {
439 #[derive(RefCast)]
440 #[repr(transparent)]
441 struct Print(syn::token::Semi);
442 impl Debug for Print {
443 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
444 formatter.write_str("Some")?;
445 Ok(())
446 }
447 }
448 formatter.field("semi_token", Print::ref_cast(val));
449 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700450 formatter.finish()
451 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700452 syn::Data::Enum(_val) => {
453 let mut formatter = formatter.debug_struct("Data::Enum");
David Tolnaycaac6272019-05-09 11:26:37 -0700454 if !_val.variants.is_empty() {
455 formatter.field("variants", Lite(&_val.variants));
456 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700457 formatter.finish()
458 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700459 syn::Data::Union(_val) => {
460 let mut formatter = formatter.debug_struct("Data::Union");
461 formatter.field("fields", Lite(&_val.fields));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700462 formatter.finish()
463 }
464 }
465 }
466}
467impl Debug for Lite<syn::DataEnum> {
468 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700469 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700470 let mut formatter = formatter.debug_struct("DataEnum");
David Tolnaycaac6272019-05-09 11:26:37 -0700471 if !_val.variants.is_empty() {
472 formatter.field("variants", Lite(&_val.variants));
473 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700474 formatter.finish()
475 }
476}
477impl Debug for Lite<syn::DataStruct> {
478 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700479 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700480 let mut formatter = formatter.debug_struct("DataStruct");
David Tolnay5302f0e2019-05-08 23:26:18 -0700481 formatter.field("fields", Lite(&_val.fields));
482 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -0700483 #[derive(RefCast)]
484 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -0700485 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -0700486 impl Debug for Print {
487 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -0700488 formatter.write_str("Some")?;
489 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -0700490 }
491 }
David Tolnay644246b2019-05-08 23:02:46 -0700492 formatter.field("semi_token", Print::ref_cast(val));
493 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700494 formatter.finish()
495 }
496}
497impl Debug for Lite<syn::DataUnion> {
498 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700499 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700500 let mut formatter = formatter.debug_struct("DataUnion");
David Tolnay5302f0e2019-05-08 23:26:18 -0700501 formatter.field("fields", Lite(&_val.fields));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700502 formatter.finish()
503 }
504}
505impl Debug for Lite<syn::DeriveInput> {
506 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700507 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -0700508 let mut formatter = formatter.debug_struct("DeriveInput");
David Tolnaycaac6272019-05-09 11:26:37 -0700509 if !_val.attrs.is_empty() {
510 formatter.field("attrs", Lite(&_val.attrs));
511 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700512 formatter.field("vis", Lite(&_val.vis));
513 formatter.field("ident", Lite(&_val.ident));
514 formatter.field("generics", Lite(&_val.generics));
515 formatter.field("data", Lite(&_val.data));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700516 formatter.finish()
517 }
518}
519impl Debug for Lite<syn::Expr> {
520 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -0700521 let _val = &self.value;
522 match _val {
523 syn::Expr::Box(_val) => {
524 let mut formatter = formatter.debug_struct("Expr::Box");
David Tolnaycaac6272019-05-09 11:26:37 -0700525 if !_val.attrs.is_empty() {
526 formatter.field("attrs", Lite(&_val.attrs));
527 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700528 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700529 formatter.finish()
530 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700531 syn::Expr::InPlace(_val) => {
532 let mut formatter = formatter.debug_struct("Expr::InPlace");
David Tolnaycaac6272019-05-09 11:26:37 -0700533 if !_val.attrs.is_empty() {
534 formatter.field("attrs", Lite(&_val.attrs));
535 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700536 formatter.field("place", Lite(&_val.place));
537 formatter.field("value", Lite(&_val.value));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700538 formatter.finish()
539 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700540 syn::Expr::Array(_val) => {
541 let mut formatter = formatter.debug_struct("Expr::Array");
David Tolnaycaac6272019-05-09 11:26:37 -0700542 if !_val.attrs.is_empty() {
543 formatter.field("attrs", Lite(&_val.attrs));
544 }
545 if !_val.elems.is_empty() {
546 formatter.field("elems", Lite(&_val.elems));
547 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700548 formatter.finish()
549 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700550 syn::Expr::Call(_val) => {
551 let mut formatter = formatter.debug_struct("Expr::Call");
David Tolnaycaac6272019-05-09 11:26:37 -0700552 if !_val.attrs.is_empty() {
553 formatter.field("attrs", Lite(&_val.attrs));
554 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700555 formatter.field("func", Lite(&_val.func));
David Tolnaycaac6272019-05-09 11:26:37 -0700556 if !_val.args.is_empty() {
557 formatter.field("args", Lite(&_val.args));
558 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700559 formatter.finish()
560 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700561 syn::Expr::MethodCall(_val) => {
562 let mut formatter = formatter.debug_struct("Expr::MethodCall");
David Tolnaycaac6272019-05-09 11:26:37 -0700563 if !_val.attrs.is_empty() {
564 formatter.field("attrs", Lite(&_val.attrs));
565 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700566 formatter.field("receiver", Lite(&_val.receiver));
567 formatter.field("method", Lite(&_val.method));
568 if let Some(val) = &_val.turbofish {
569 #[derive(RefCast)]
570 #[repr(transparent)]
571 struct Print(syn::MethodTurbofish);
572 impl Debug for Print {
573 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
574 formatter.write_str("Some")?;
575 let _val = &self.0;
576 formatter.write_str("(")?;
577 Debug::fmt(Lite(_val), formatter)?;
578 formatter.write_str(")")?;
579 Ok(())
580 }
581 }
582 formatter.field("turbofish", Print::ref_cast(val));
583 }
David Tolnaycaac6272019-05-09 11:26:37 -0700584 if !_val.args.is_empty() {
585 formatter.field("args", Lite(&_val.args));
586 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700587 formatter.finish()
588 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700589 syn::Expr::Tuple(_val) => {
590 let mut formatter = formatter.debug_struct("Expr::Tuple");
David Tolnaycaac6272019-05-09 11:26:37 -0700591 if !_val.attrs.is_empty() {
592 formatter.field("attrs", Lite(&_val.attrs));
593 }
594 if !_val.elems.is_empty() {
595 formatter.field("elems", Lite(&_val.elems));
596 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700597 formatter.finish()
598 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700599 syn::Expr::Binary(_val) => {
600 let mut formatter = formatter.debug_struct("Expr::Binary");
David Tolnaycaac6272019-05-09 11:26:37 -0700601 if !_val.attrs.is_empty() {
602 formatter.field("attrs", Lite(&_val.attrs));
603 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700604 formatter.field("left", Lite(&_val.left));
605 formatter.field("op", Lite(&_val.op));
606 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700607 formatter.finish()
608 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700609 syn::Expr::Unary(_val) => {
610 let mut formatter = formatter.debug_struct("Expr::Unary");
David Tolnaycaac6272019-05-09 11:26:37 -0700611 if !_val.attrs.is_empty() {
612 formatter.field("attrs", Lite(&_val.attrs));
613 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700614 formatter.field("op", Lite(&_val.op));
615 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700616 formatter.finish()
617 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700618 syn::Expr::Lit(_val) => {
619 let mut formatter = formatter.debug_struct("Expr::Lit");
David Tolnaycaac6272019-05-09 11:26:37 -0700620 if !_val.attrs.is_empty() {
621 formatter.field("attrs", Lite(&_val.attrs));
622 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700623 formatter.field("lit", Lite(&_val.lit));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700624 formatter.finish()
625 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700626 syn::Expr::Cast(_val) => {
627 let mut formatter = formatter.debug_struct("Expr::Cast");
David Tolnaycaac6272019-05-09 11:26:37 -0700628 if !_val.attrs.is_empty() {
629 formatter.field("attrs", Lite(&_val.attrs));
630 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700631 formatter.field("expr", Lite(&_val.expr));
632 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700633 formatter.finish()
634 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700635 syn::Expr::Type(_val) => {
636 let mut formatter = formatter.debug_struct("Expr::Type");
David Tolnaycaac6272019-05-09 11:26:37 -0700637 if !_val.attrs.is_empty() {
638 formatter.field("attrs", Lite(&_val.attrs));
639 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700640 formatter.field("expr", Lite(&_val.expr));
641 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700642 formatter.finish()
643 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700644 syn::Expr::Let(_val) => {
645 let mut formatter = formatter.debug_struct("Expr::Let");
David Tolnaycaac6272019-05-09 11:26:37 -0700646 if !_val.attrs.is_empty() {
647 formatter.field("attrs", Lite(&_val.attrs));
648 }
649 if !_val.pats.is_empty() {
650 formatter.field("pats", Lite(&_val.pats));
651 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700652 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700653 formatter.finish()
654 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700655 syn::Expr::If(_val) => {
656 let mut formatter = formatter.debug_struct("Expr::If");
David Tolnaycaac6272019-05-09 11:26:37 -0700657 if !_val.attrs.is_empty() {
658 formatter.field("attrs", Lite(&_val.attrs));
659 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700660 formatter.field("cond", Lite(&_val.cond));
661 formatter.field("then_branch", Lite(&_val.then_branch));
662 if let Some(val) = &_val.else_branch {
663 #[derive(RefCast)]
664 #[repr(transparent)]
665 struct Print((syn::token::Else, Box<syn::Expr>));
666 impl Debug for Print {
667 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
668 formatter.write_str("Some")?;
669 let _val = &self.0;
670 formatter.write_str("(")?;
671 Debug::fmt(Lite(&_val.1), formatter)?;
672 formatter.write_str(")")?;
673 Ok(())
674 }
675 }
676 formatter.field("else_branch", Print::ref_cast(val));
677 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700678 formatter.finish()
679 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700680 syn::Expr::While(_val) => {
681 let mut formatter = formatter.debug_struct("Expr::While");
David Tolnaycaac6272019-05-09 11:26:37 -0700682 if !_val.attrs.is_empty() {
683 formatter.field("attrs", Lite(&_val.attrs));
684 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700685 if let Some(val) = &_val.label {
686 #[derive(RefCast)]
687 #[repr(transparent)]
688 struct Print(syn::Label);
689 impl Debug for Print {
690 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
691 formatter.write_str("Some")?;
692 let _val = &self.0;
693 formatter.write_str("(")?;
694 Debug::fmt(Lite(_val), formatter)?;
695 formatter.write_str(")")?;
696 Ok(())
697 }
698 }
699 formatter.field("label", Print::ref_cast(val));
700 }
701 formatter.field("cond", Lite(&_val.cond));
702 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700703 formatter.finish()
704 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700705 syn::Expr::ForLoop(_val) => {
706 let mut formatter = formatter.debug_struct("Expr::ForLoop");
David Tolnaycaac6272019-05-09 11:26:37 -0700707 if !_val.attrs.is_empty() {
708 formatter.field("attrs", Lite(&_val.attrs));
709 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700710 if let Some(val) = &_val.label {
711 #[derive(RefCast)]
712 #[repr(transparent)]
713 struct Print(syn::Label);
714 impl Debug for Print {
715 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
716 formatter.write_str("Some")?;
717 let _val = &self.0;
718 formatter.write_str("(")?;
719 Debug::fmt(Lite(_val), formatter)?;
720 formatter.write_str(")")?;
721 Ok(())
722 }
723 }
724 formatter.field("label", Print::ref_cast(val));
725 }
726 formatter.field("pat", Lite(&_val.pat));
727 formatter.field("expr", Lite(&_val.expr));
728 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700729 formatter.finish()
730 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700731 syn::Expr::Loop(_val) => {
732 let mut formatter = formatter.debug_struct("Expr::Loop");
David Tolnaycaac6272019-05-09 11:26:37 -0700733 if !_val.attrs.is_empty() {
734 formatter.field("attrs", Lite(&_val.attrs));
735 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700736 if let Some(val) = &_val.label {
737 #[derive(RefCast)]
738 #[repr(transparent)]
739 struct Print(syn::Label);
740 impl Debug for Print {
741 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
742 formatter.write_str("Some")?;
743 let _val = &self.0;
744 formatter.write_str("(")?;
745 Debug::fmt(Lite(_val), formatter)?;
746 formatter.write_str(")")?;
747 Ok(())
748 }
749 }
750 formatter.field("label", Print::ref_cast(val));
751 }
752 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700753 formatter.finish()
754 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700755 syn::Expr::Match(_val) => {
756 let mut formatter = formatter.debug_struct("Expr::Match");
David Tolnaycaac6272019-05-09 11:26:37 -0700757 if !_val.attrs.is_empty() {
758 formatter.field("attrs", Lite(&_val.attrs));
759 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700760 formatter.field("expr", Lite(&_val.expr));
David Tolnaycaac6272019-05-09 11:26:37 -0700761 if !_val.arms.is_empty() {
762 formatter.field("arms", Lite(&_val.arms));
763 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700764 formatter.finish()
765 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700766 syn::Expr::Closure(_val) => {
767 let mut formatter = formatter.debug_struct("Expr::Closure");
David Tolnaycaac6272019-05-09 11:26:37 -0700768 if !_val.attrs.is_empty() {
769 formatter.field("attrs", Lite(&_val.attrs));
770 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700771 if let Some(val) = &_val.asyncness {
772 #[derive(RefCast)]
773 #[repr(transparent)]
774 struct Print(syn::token::Async);
775 impl Debug for Print {
776 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
777 formatter.write_str("Some")?;
778 Ok(())
779 }
780 }
781 formatter.field("asyncness", Print::ref_cast(val));
782 }
783 if let Some(val) = &_val.movability {
784 #[derive(RefCast)]
785 #[repr(transparent)]
786 struct Print(syn::token::Static);
787 impl Debug for Print {
788 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
789 formatter.write_str("Some")?;
790 Ok(())
791 }
792 }
793 formatter.field("movability", Print::ref_cast(val));
794 }
795 if let Some(val) = &_val.capture {
796 #[derive(RefCast)]
797 #[repr(transparent)]
798 struct Print(syn::token::Move);
799 impl Debug for Print {
800 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
801 formatter.write_str("Some")?;
802 Ok(())
803 }
804 }
805 formatter.field("capture", Print::ref_cast(val));
806 }
David Tolnaycaac6272019-05-09 11:26:37 -0700807 if !_val.inputs.is_empty() {
808 formatter.field("inputs", Lite(&_val.inputs));
809 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700810 formatter.field("output", Lite(&_val.output));
811 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700812 formatter.finish()
813 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700814 syn::Expr::Unsafe(_val) => {
815 let mut formatter = formatter.debug_struct("Expr::Unsafe");
David Tolnaycaac6272019-05-09 11:26:37 -0700816 if !_val.attrs.is_empty() {
817 formatter.field("attrs", Lite(&_val.attrs));
818 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700819 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700820 formatter.finish()
821 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700822 syn::Expr::Block(_val) => {
823 let mut formatter = formatter.debug_struct("Expr::Block");
David Tolnaycaac6272019-05-09 11:26:37 -0700824 if !_val.attrs.is_empty() {
825 formatter.field("attrs", Lite(&_val.attrs));
826 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700827 if let Some(val) = &_val.label {
828 #[derive(RefCast)]
829 #[repr(transparent)]
830 struct Print(syn::Label);
831 impl Debug for Print {
832 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
833 formatter.write_str("Some")?;
834 let _val = &self.0;
835 formatter.write_str("(")?;
836 Debug::fmt(Lite(_val), formatter)?;
837 formatter.write_str(")")?;
838 Ok(())
839 }
840 }
841 formatter.field("label", Print::ref_cast(val));
842 }
843 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700844 formatter.finish()
845 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700846 syn::Expr::Assign(_val) => {
847 let mut formatter = formatter.debug_struct("Expr::Assign");
David Tolnaycaac6272019-05-09 11:26:37 -0700848 if !_val.attrs.is_empty() {
849 formatter.field("attrs", Lite(&_val.attrs));
850 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700851 formatter.field("left", Lite(&_val.left));
852 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700853 formatter.finish()
854 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700855 syn::Expr::AssignOp(_val) => {
856 let mut formatter = formatter.debug_struct("Expr::AssignOp");
David Tolnaycaac6272019-05-09 11:26:37 -0700857 if !_val.attrs.is_empty() {
858 formatter.field("attrs", Lite(&_val.attrs));
859 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700860 formatter.field("left", Lite(&_val.left));
861 formatter.field("op", Lite(&_val.op));
862 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700863 formatter.finish()
864 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700865 syn::Expr::Field(_val) => {
866 let mut formatter = formatter.debug_struct("Expr::Field");
David Tolnaycaac6272019-05-09 11:26:37 -0700867 if !_val.attrs.is_empty() {
868 formatter.field("attrs", Lite(&_val.attrs));
869 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700870 formatter.field("base", Lite(&_val.base));
871 formatter.field("member", Lite(&_val.member));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700872 formatter.finish()
873 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700874 syn::Expr::Index(_val) => {
875 let mut formatter = formatter.debug_struct("Expr::Index");
David Tolnaycaac6272019-05-09 11:26:37 -0700876 if !_val.attrs.is_empty() {
877 formatter.field("attrs", Lite(&_val.attrs));
878 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700879 formatter.field("expr", Lite(&_val.expr));
880 formatter.field("index", Lite(&_val.index));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700881 formatter.finish()
882 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700883 syn::Expr::Range(_val) => {
884 let mut formatter = formatter.debug_struct("Expr::Range");
David Tolnaycaac6272019-05-09 11:26:37 -0700885 if !_val.attrs.is_empty() {
886 formatter.field("attrs", Lite(&_val.attrs));
887 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700888 if let Some(val) = &_val.from {
889 #[derive(RefCast)]
890 #[repr(transparent)]
891 struct Print(Box<syn::Expr>);
892 impl Debug for Print {
893 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
894 formatter.write_str("Some")?;
895 let _val = &self.0;
896 formatter.write_str("(")?;
897 Debug::fmt(Lite(_val), formatter)?;
898 formatter.write_str(")")?;
899 Ok(())
900 }
901 }
902 formatter.field("from", Print::ref_cast(val));
903 }
904 formatter.field("limits", Lite(&_val.limits));
905 if let Some(val) = &_val.to {
906 #[derive(RefCast)]
907 #[repr(transparent)]
908 struct Print(Box<syn::Expr>);
909 impl Debug for Print {
910 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
911 formatter.write_str("Some")?;
912 let _val = &self.0;
913 formatter.write_str("(")?;
914 Debug::fmt(Lite(_val), formatter)?;
915 formatter.write_str(")")?;
916 Ok(())
917 }
918 }
919 formatter.field("to", Print::ref_cast(val));
920 }
David Tolnay3c3c7d12019-05-08 14:54:12 -0700921 formatter.finish()
922 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700923 syn::Expr::Path(_val) => {
924 let mut formatter = formatter.debug_struct("Expr::Path");
David Tolnaycaac6272019-05-09 11:26:37 -0700925 if !_val.attrs.is_empty() {
926 formatter.field("attrs", Lite(&_val.attrs));
927 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700928 if let Some(val) = &_val.qself {
929 #[derive(RefCast)]
930 #[repr(transparent)]
931 struct Print(syn::QSelf);
932 impl Debug for Print {
933 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
934 formatter.write_str("Some")?;
935 let _val = &self.0;
936 formatter.write_str("(")?;
937 Debug::fmt(Lite(_val), formatter)?;
938 formatter.write_str(")")?;
939 Ok(())
940 }
941 }
942 formatter.field("qself", Print::ref_cast(val));
943 }
944 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700945 formatter.finish()
946 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700947 syn::Expr::Reference(_val) => {
948 let mut formatter = formatter.debug_struct("Expr::Reference");
David Tolnaycaac6272019-05-09 11:26:37 -0700949 if !_val.attrs.is_empty() {
950 formatter.field("attrs", Lite(&_val.attrs));
951 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700952 if let Some(val) = &_val.mutability {
953 #[derive(RefCast)]
954 #[repr(transparent)]
955 struct Print(syn::token::Mut);
956 impl Debug for Print {
957 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
958 formatter.write_str("Some")?;
959 Ok(())
960 }
961 }
962 formatter.field("mutability", Print::ref_cast(val));
963 }
964 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -0700965 formatter.finish()
966 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700967 syn::Expr::Break(_val) => {
968 let mut formatter = formatter.debug_struct("Expr::Break");
David Tolnaycaac6272019-05-09 11:26:37 -0700969 if !_val.attrs.is_empty() {
970 formatter.field("attrs", Lite(&_val.attrs));
971 }
David Tolnay5302f0e2019-05-08 23:26:18 -0700972 if let Some(val) = &_val.label {
973 #[derive(RefCast)]
974 #[repr(transparent)]
975 struct Print(syn::Lifetime);
976 impl Debug for Print {
977 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
978 formatter.write_str("Some")?;
979 let _val = &self.0;
980 formatter.write_str("(")?;
981 Debug::fmt(Lite(_val), formatter)?;
982 formatter.write_str(")")?;
983 Ok(())
984 }
985 }
986 formatter.field("label", Print::ref_cast(val));
987 }
988 if let Some(val) = &_val.expr {
989 #[derive(RefCast)]
990 #[repr(transparent)]
991 struct Print(Box<syn::Expr>);
992 impl Debug for Print {
993 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
994 formatter.write_str("Some")?;
995 let _val = &self.0;
996 formatter.write_str("(")?;
997 Debug::fmt(Lite(_val), formatter)?;
998 formatter.write_str(")")?;
999 Ok(())
1000 }
1001 }
1002 formatter.field("expr", Print::ref_cast(val));
1003 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001004 formatter.finish()
1005 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001006 syn::Expr::Continue(_val) => {
1007 let mut formatter = formatter.debug_struct("Expr::Continue");
David Tolnaycaac6272019-05-09 11:26:37 -07001008 if !_val.attrs.is_empty() {
1009 formatter.field("attrs", Lite(&_val.attrs));
1010 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001011 if let Some(val) = &_val.label {
1012 #[derive(RefCast)]
1013 #[repr(transparent)]
1014 struct Print(syn::Lifetime);
1015 impl Debug for Print {
1016 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1017 formatter.write_str("Some")?;
1018 let _val = &self.0;
1019 formatter.write_str("(")?;
1020 Debug::fmt(Lite(_val), formatter)?;
1021 formatter.write_str(")")?;
1022 Ok(())
1023 }
1024 }
1025 formatter.field("label", Print::ref_cast(val));
1026 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001027 formatter.finish()
1028 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001029 syn::Expr::Return(_val) => {
1030 let mut formatter = formatter.debug_struct("Expr::Return");
David Tolnaycaac6272019-05-09 11:26:37 -07001031 if !_val.attrs.is_empty() {
1032 formatter.field("attrs", Lite(&_val.attrs));
1033 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001034 if let Some(val) = &_val.expr {
1035 #[derive(RefCast)]
1036 #[repr(transparent)]
1037 struct Print(Box<syn::Expr>);
1038 impl Debug for Print {
1039 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1040 formatter.write_str("Some")?;
1041 let _val = &self.0;
1042 formatter.write_str("(")?;
1043 Debug::fmt(Lite(_val), formatter)?;
1044 formatter.write_str(")")?;
1045 Ok(())
1046 }
1047 }
1048 formatter.field("expr", Print::ref_cast(val));
1049 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001050 formatter.finish()
1051 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001052 syn::Expr::Macro(_val) => {
1053 let mut formatter = formatter.debug_struct("Expr::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07001054 if !_val.attrs.is_empty() {
1055 formatter.field("attrs", Lite(&_val.attrs));
1056 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001057 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001058 formatter.finish()
1059 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001060 syn::Expr::Struct(_val) => {
1061 let mut formatter = formatter.debug_struct("Expr::Struct");
David Tolnaycaac6272019-05-09 11:26:37 -07001062 if !_val.attrs.is_empty() {
1063 formatter.field("attrs", Lite(&_val.attrs));
1064 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001065 formatter.field("path", Lite(&_val.path));
David Tolnaycaac6272019-05-09 11:26:37 -07001066 if !_val.fields.is_empty() {
1067 formatter.field("fields", Lite(&_val.fields));
1068 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001069 if let Some(val) = &_val.dot2_token {
1070 #[derive(RefCast)]
1071 #[repr(transparent)]
1072 struct Print(syn::token::Dot2);
1073 impl Debug for Print {
1074 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1075 formatter.write_str("Some")?;
1076 Ok(())
1077 }
1078 }
1079 formatter.field("dot2_token", Print::ref_cast(val));
1080 }
1081 if let Some(val) = &_val.rest {
1082 #[derive(RefCast)]
1083 #[repr(transparent)]
1084 struct Print(Box<syn::Expr>);
1085 impl Debug for Print {
1086 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1087 formatter.write_str("Some")?;
1088 let _val = &self.0;
1089 formatter.write_str("(")?;
1090 Debug::fmt(Lite(_val), formatter)?;
1091 formatter.write_str(")")?;
1092 Ok(())
1093 }
1094 }
1095 formatter.field("rest", Print::ref_cast(val));
1096 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001097 formatter.finish()
1098 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001099 syn::Expr::Repeat(_val) => {
1100 let mut formatter = formatter.debug_struct("Expr::Repeat");
David Tolnaycaac6272019-05-09 11:26:37 -07001101 if !_val.attrs.is_empty() {
1102 formatter.field("attrs", Lite(&_val.attrs));
1103 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001104 formatter.field("expr", Lite(&_val.expr));
1105 formatter.field("len", Lite(&_val.len));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001106 formatter.finish()
1107 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001108 syn::Expr::Paren(_val) => {
1109 let mut formatter = formatter.debug_struct("Expr::Paren");
David Tolnaycaac6272019-05-09 11:26:37 -07001110 if !_val.attrs.is_empty() {
1111 formatter.field("attrs", Lite(&_val.attrs));
1112 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001113 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001114 formatter.finish()
1115 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001116 syn::Expr::Group(_val) => {
1117 let mut formatter = formatter.debug_struct("Expr::Group");
David Tolnaycaac6272019-05-09 11:26:37 -07001118 if !_val.attrs.is_empty() {
1119 formatter.field("attrs", Lite(&_val.attrs));
1120 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001121 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001122 formatter.finish()
1123 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001124 syn::Expr::Try(_val) => {
1125 let mut formatter = formatter.debug_struct("Expr::Try");
David Tolnaycaac6272019-05-09 11:26:37 -07001126 if !_val.attrs.is_empty() {
1127 formatter.field("attrs", Lite(&_val.attrs));
1128 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001129 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001130 formatter.finish()
1131 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001132 syn::Expr::Async(_val) => {
1133 let mut formatter = formatter.debug_struct("Expr::Async");
David Tolnaycaac6272019-05-09 11:26:37 -07001134 if !_val.attrs.is_empty() {
1135 formatter.field("attrs", Lite(&_val.attrs));
1136 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001137 if let Some(val) = &_val.capture {
1138 #[derive(RefCast)]
1139 #[repr(transparent)]
1140 struct Print(syn::token::Move);
1141 impl Debug for Print {
1142 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1143 formatter.write_str("Some")?;
1144 Ok(())
1145 }
1146 }
1147 formatter.field("capture", Print::ref_cast(val));
1148 }
1149 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001150 formatter.finish()
1151 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001152 syn::Expr::TryBlock(_val) => {
1153 let mut formatter = formatter.debug_struct("Expr::TryBlock");
David Tolnaycaac6272019-05-09 11:26:37 -07001154 if !_val.attrs.is_empty() {
1155 formatter.field("attrs", Lite(&_val.attrs));
1156 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001157 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001158 formatter.finish()
1159 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001160 syn::Expr::Yield(_val) => {
1161 let mut formatter = formatter.debug_struct("Expr::Yield");
David Tolnaycaac6272019-05-09 11:26:37 -07001162 if !_val.attrs.is_empty() {
1163 formatter.field("attrs", Lite(&_val.attrs));
1164 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001165 if let Some(val) = &_val.expr {
1166 #[derive(RefCast)]
1167 #[repr(transparent)]
1168 struct Print(Box<syn::Expr>);
1169 impl Debug for Print {
1170 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1171 formatter.write_str("Some")?;
1172 let _val = &self.0;
1173 formatter.write_str("(")?;
1174 Debug::fmt(Lite(_val), formatter)?;
1175 formatter.write_str(")")?;
1176 Ok(())
1177 }
1178 }
1179 formatter.field("expr", Print::ref_cast(val));
1180 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001181 formatter.finish()
1182 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001183 syn::Expr::Verbatim(_val) => {
1184 let mut formatter = formatter.debug_struct("Expr::Verbatim");
1185 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001186 formatter.finish()
1187 }
1188 }
1189 }
1190}
1191impl Debug for Lite<syn::ExprArray> {
1192 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001193 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001194 let mut formatter = formatter.debug_struct("ExprArray");
David Tolnaycaac6272019-05-09 11:26:37 -07001195 if !_val.attrs.is_empty() {
1196 formatter.field("attrs", Lite(&_val.attrs));
1197 }
1198 if !_val.elems.is_empty() {
1199 formatter.field("elems", Lite(&_val.elems));
1200 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001201 formatter.finish()
1202 }
1203}
1204impl Debug for Lite<syn::ExprAssign> {
1205 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001206 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001207 let mut formatter = formatter.debug_struct("ExprAssign");
David Tolnaycaac6272019-05-09 11:26:37 -07001208 if !_val.attrs.is_empty() {
1209 formatter.field("attrs", Lite(&_val.attrs));
1210 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001211 formatter.field("left", Lite(&_val.left));
1212 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001213 formatter.finish()
1214 }
1215}
1216impl Debug for Lite<syn::ExprAssignOp> {
1217 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001218 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001219 let mut formatter = formatter.debug_struct("ExprAssignOp");
David Tolnaycaac6272019-05-09 11:26:37 -07001220 if !_val.attrs.is_empty() {
1221 formatter.field("attrs", Lite(&_val.attrs));
1222 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001223 formatter.field("left", Lite(&_val.left));
1224 formatter.field("op", Lite(&_val.op));
1225 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001226 formatter.finish()
1227 }
1228}
1229impl Debug for Lite<syn::ExprAsync> {
1230 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001231 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001232 let mut formatter = formatter.debug_struct("ExprAsync");
David Tolnaycaac6272019-05-09 11:26:37 -07001233 if !_val.attrs.is_empty() {
1234 formatter.field("attrs", Lite(&_val.attrs));
1235 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001236 if let Some(val) = &_val.capture {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001237 #[derive(RefCast)]
1238 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001239 struct Print(syn::token::Move);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001240 impl Debug for Print {
1241 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001242 formatter.write_str("Some")?;
1243 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001244 }
1245 }
David Tolnay644246b2019-05-08 23:02:46 -07001246 formatter.field("capture", Print::ref_cast(val));
1247 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001248 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001249 formatter.finish()
1250 }
1251}
1252impl Debug for Lite<syn::ExprBinary> {
1253 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001254 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001255 let mut formatter = formatter.debug_struct("ExprBinary");
David Tolnaycaac6272019-05-09 11:26:37 -07001256 if !_val.attrs.is_empty() {
1257 formatter.field("attrs", Lite(&_val.attrs));
1258 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001259 formatter.field("left", Lite(&_val.left));
1260 formatter.field("op", Lite(&_val.op));
1261 formatter.field("right", Lite(&_val.right));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001262 formatter.finish()
1263 }
1264}
1265impl Debug for Lite<syn::ExprBlock> {
1266 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001267 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001268 let mut formatter = formatter.debug_struct("ExprBlock");
David Tolnaycaac6272019-05-09 11:26:37 -07001269 if !_val.attrs.is_empty() {
1270 formatter.field("attrs", Lite(&_val.attrs));
1271 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001272 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001273 #[derive(RefCast)]
1274 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001275 struct Print(syn::Label);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001276 impl Debug for Print {
1277 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001278 formatter.write_str("Some")?;
1279 let _val = &self.0;
1280 formatter.write_str("(")?;
1281 Debug::fmt(Lite(_val), formatter)?;
1282 formatter.write_str(")")?;
1283 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001284 }
1285 }
David Tolnay644246b2019-05-08 23:02:46 -07001286 formatter.field("label", Print::ref_cast(val));
1287 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001288 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001289 formatter.finish()
1290 }
1291}
1292impl Debug for Lite<syn::ExprBox> {
1293 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001294 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001295 let mut formatter = formatter.debug_struct("ExprBox");
David Tolnaycaac6272019-05-09 11:26:37 -07001296 if !_val.attrs.is_empty() {
1297 formatter.field("attrs", Lite(&_val.attrs));
1298 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001299 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001300 formatter.finish()
1301 }
1302}
1303impl Debug for Lite<syn::ExprBreak> {
1304 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001305 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001306 let mut formatter = formatter.debug_struct("ExprBreak");
David Tolnaycaac6272019-05-09 11:26:37 -07001307 if !_val.attrs.is_empty() {
1308 formatter.field("attrs", Lite(&_val.attrs));
1309 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001310 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001311 #[derive(RefCast)]
1312 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001313 struct Print(syn::Lifetime);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001314 impl Debug for Print {
1315 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001316 formatter.write_str("Some")?;
1317 let _val = &self.0;
1318 formatter.write_str("(")?;
1319 Debug::fmt(Lite(_val), formatter)?;
1320 formatter.write_str(")")?;
1321 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001322 }
1323 }
David Tolnay644246b2019-05-08 23:02:46 -07001324 formatter.field("label", Print::ref_cast(val));
1325 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001326 if let Some(val) = &_val.expr {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001327 #[derive(RefCast)]
1328 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001329 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001330 impl Debug for Print {
1331 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001332 formatter.write_str("Some")?;
1333 let _val = &self.0;
1334 formatter.write_str("(")?;
1335 Debug::fmt(Lite(_val), formatter)?;
1336 formatter.write_str(")")?;
1337 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001338 }
1339 }
David Tolnay644246b2019-05-08 23:02:46 -07001340 formatter.field("expr", Print::ref_cast(val));
1341 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001342 formatter.finish()
1343 }
1344}
1345impl Debug for Lite<syn::ExprCall> {
1346 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001347 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001348 let mut formatter = formatter.debug_struct("ExprCall");
David Tolnaycaac6272019-05-09 11:26:37 -07001349 if !_val.attrs.is_empty() {
1350 formatter.field("attrs", Lite(&_val.attrs));
1351 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001352 formatter.field("func", Lite(&_val.func));
David Tolnaycaac6272019-05-09 11:26:37 -07001353 if !_val.args.is_empty() {
1354 formatter.field("args", Lite(&_val.args));
1355 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001356 formatter.finish()
1357 }
1358}
1359impl Debug for Lite<syn::ExprCast> {
1360 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001361 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001362 let mut formatter = formatter.debug_struct("ExprCast");
David Tolnaycaac6272019-05-09 11:26:37 -07001363 if !_val.attrs.is_empty() {
1364 formatter.field("attrs", Lite(&_val.attrs));
1365 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001366 formatter.field("expr", Lite(&_val.expr));
1367 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001368 formatter.finish()
1369 }
1370}
1371impl Debug for Lite<syn::ExprClosure> {
1372 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001373 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001374 let mut formatter = formatter.debug_struct("ExprClosure");
David Tolnaycaac6272019-05-09 11:26:37 -07001375 if !_val.attrs.is_empty() {
1376 formatter.field("attrs", Lite(&_val.attrs));
1377 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001378 if let Some(val) = &_val.asyncness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001379 #[derive(RefCast)]
1380 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001381 struct Print(syn::token::Async);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001382 impl Debug for Print {
1383 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001384 formatter.write_str("Some")?;
1385 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001386 }
1387 }
David Tolnay644246b2019-05-08 23:02:46 -07001388 formatter.field("asyncness", Print::ref_cast(val));
1389 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001390 if let Some(val) = &_val.movability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001391 #[derive(RefCast)]
1392 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001393 struct Print(syn::token::Static);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001394 impl Debug for Print {
1395 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001396 formatter.write_str("Some")?;
1397 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001398 }
1399 }
David Tolnay644246b2019-05-08 23:02:46 -07001400 formatter.field("movability", Print::ref_cast(val));
1401 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001402 if let Some(val) = &_val.capture {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001403 #[derive(RefCast)]
1404 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001405 struct Print(syn::token::Move);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001406 impl Debug for Print {
1407 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001408 formatter.write_str("Some")?;
1409 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001410 }
1411 }
David Tolnay644246b2019-05-08 23:02:46 -07001412 formatter.field("capture", Print::ref_cast(val));
1413 }
David Tolnaycaac6272019-05-09 11:26:37 -07001414 if !_val.inputs.is_empty() {
1415 formatter.field("inputs", Lite(&_val.inputs));
1416 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001417 formatter.field("output", Lite(&_val.output));
1418 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001419 formatter.finish()
1420 }
1421}
1422impl Debug for Lite<syn::ExprContinue> {
1423 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001424 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001425 let mut formatter = formatter.debug_struct("ExprContinue");
David Tolnaycaac6272019-05-09 11:26:37 -07001426 if !_val.attrs.is_empty() {
1427 formatter.field("attrs", Lite(&_val.attrs));
1428 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001429 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001430 #[derive(RefCast)]
1431 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001432 struct Print(syn::Lifetime);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001433 impl Debug for Print {
1434 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001435 formatter.write_str("Some")?;
1436 let _val = &self.0;
1437 formatter.write_str("(")?;
1438 Debug::fmt(Lite(_val), formatter)?;
1439 formatter.write_str(")")?;
1440 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001441 }
1442 }
David Tolnay644246b2019-05-08 23:02:46 -07001443 formatter.field("label", Print::ref_cast(val));
1444 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001445 formatter.finish()
1446 }
1447}
1448impl Debug for Lite<syn::ExprField> {
1449 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001450 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001451 let mut formatter = formatter.debug_struct("ExprField");
David Tolnaycaac6272019-05-09 11:26:37 -07001452 if !_val.attrs.is_empty() {
1453 formatter.field("attrs", Lite(&_val.attrs));
1454 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001455 formatter.field("base", Lite(&_val.base));
1456 formatter.field("member", Lite(&_val.member));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001457 formatter.finish()
1458 }
1459}
1460impl Debug for Lite<syn::ExprForLoop> {
1461 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001462 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001463 let mut formatter = formatter.debug_struct("ExprForLoop");
David Tolnaycaac6272019-05-09 11:26:37 -07001464 if !_val.attrs.is_empty() {
1465 formatter.field("attrs", Lite(&_val.attrs));
1466 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001467 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001468 #[derive(RefCast)]
1469 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001470 struct Print(syn::Label);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001471 impl Debug for Print {
1472 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001473 formatter.write_str("Some")?;
1474 let _val = &self.0;
1475 formatter.write_str("(")?;
1476 Debug::fmt(Lite(_val), formatter)?;
1477 formatter.write_str(")")?;
1478 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001479 }
1480 }
David Tolnay644246b2019-05-08 23:02:46 -07001481 formatter.field("label", Print::ref_cast(val));
1482 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001483 formatter.field("pat", Lite(&_val.pat));
1484 formatter.field("expr", Lite(&_val.expr));
1485 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001486 formatter.finish()
1487 }
1488}
1489impl Debug for Lite<syn::ExprGroup> {
1490 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001491 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001492 let mut formatter = formatter.debug_struct("ExprGroup");
David Tolnaycaac6272019-05-09 11:26:37 -07001493 if !_val.attrs.is_empty() {
1494 formatter.field("attrs", Lite(&_val.attrs));
1495 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001496 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001497 formatter.finish()
1498 }
1499}
1500impl Debug for Lite<syn::ExprIf> {
1501 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001502 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001503 let mut formatter = formatter.debug_struct("ExprIf");
David Tolnaycaac6272019-05-09 11:26:37 -07001504 if !_val.attrs.is_empty() {
1505 formatter.field("attrs", Lite(&_val.attrs));
1506 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001507 formatter.field("cond", Lite(&_val.cond));
1508 formatter.field("then_branch", Lite(&_val.then_branch));
1509 if let Some(val) = &_val.else_branch {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001510 #[derive(RefCast)]
1511 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001512 struct Print((syn::token::Else, Box<syn::Expr>));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001513 impl Debug for Print {
1514 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001515 formatter.write_str("Some")?;
1516 let _val = &self.0;
1517 formatter.write_str("(")?;
1518 Debug::fmt(Lite(&_val.1), formatter)?;
1519 formatter.write_str(")")?;
1520 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001521 }
1522 }
David Tolnay644246b2019-05-08 23:02:46 -07001523 formatter.field("else_branch", Print::ref_cast(val));
1524 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001525 formatter.finish()
1526 }
1527}
1528impl Debug for Lite<syn::ExprInPlace> {
1529 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001530 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001531 let mut formatter = formatter.debug_struct("ExprInPlace");
David Tolnaycaac6272019-05-09 11:26:37 -07001532 if !_val.attrs.is_empty() {
1533 formatter.field("attrs", Lite(&_val.attrs));
1534 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001535 formatter.field("place", Lite(&_val.place));
1536 formatter.field("value", Lite(&_val.value));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001537 formatter.finish()
1538 }
1539}
1540impl Debug for Lite<syn::ExprIndex> {
1541 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001542 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001543 let mut formatter = formatter.debug_struct("ExprIndex");
David Tolnaycaac6272019-05-09 11:26:37 -07001544 if !_val.attrs.is_empty() {
1545 formatter.field("attrs", Lite(&_val.attrs));
1546 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001547 formatter.field("expr", Lite(&_val.expr));
1548 formatter.field("index", Lite(&_val.index));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001549 formatter.finish()
1550 }
1551}
1552impl Debug for Lite<syn::ExprLet> {
1553 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001554 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001555 let mut formatter = formatter.debug_struct("ExprLet");
David Tolnaycaac6272019-05-09 11:26:37 -07001556 if !_val.attrs.is_empty() {
1557 formatter.field("attrs", Lite(&_val.attrs));
1558 }
1559 if !_val.pats.is_empty() {
1560 formatter.field("pats", Lite(&_val.pats));
1561 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001562 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001563 formatter.finish()
1564 }
1565}
1566impl Debug for Lite<syn::ExprLit> {
1567 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001568 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001569 let mut formatter = formatter.debug_struct("ExprLit");
David Tolnaycaac6272019-05-09 11:26:37 -07001570 if !_val.attrs.is_empty() {
1571 formatter.field("attrs", Lite(&_val.attrs));
1572 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001573 formatter.field("lit", Lite(&_val.lit));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001574 formatter.finish()
1575 }
1576}
1577impl Debug for Lite<syn::ExprLoop> {
1578 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001579 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001580 let mut formatter = formatter.debug_struct("ExprLoop");
David Tolnaycaac6272019-05-09 11:26:37 -07001581 if !_val.attrs.is_empty() {
1582 formatter.field("attrs", Lite(&_val.attrs));
1583 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001584 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001585 #[derive(RefCast)]
1586 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001587 struct Print(syn::Label);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001588 impl Debug for Print {
1589 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001590 formatter.write_str("Some")?;
1591 let _val = &self.0;
1592 formatter.write_str("(")?;
1593 Debug::fmt(Lite(_val), formatter)?;
1594 formatter.write_str(")")?;
1595 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001596 }
1597 }
David Tolnay644246b2019-05-08 23:02:46 -07001598 formatter.field("label", Print::ref_cast(val));
1599 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001600 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001601 formatter.finish()
1602 }
1603}
1604impl Debug for Lite<syn::ExprMacro> {
1605 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001606 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001607 let mut formatter = formatter.debug_struct("ExprMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07001608 if !_val.attrs.is_empty() {
1609 formatter.field("attrs", Lite(&_val.attrs));
1610 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001611 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001612 formatter.finish()
1613 }
1614}
1615impl Debug for Lite<syn::ExprMatch> {
1616 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001617 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001618 let mut formatter = formatter.debug_struct("ExprMatch");
David Tolnaycaac6272019-05-09 11:26:37 -07001619 if !_val.attrs.is_empty() {
1620 formatter.field("attrs", Lite(&_val.attrs));
1621 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001622 formatter.field("expr", Lite(&_val.expr));
David Tolnaycaac6272019-05-09 11:26:37 -07001623 if !_val.arms.is_empty() {
1624 formatter.field("arms", Lite(&_val.arms));
1625 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001626 formatter.finish()
1627 }
1628}
1629impl Debug for Lite<syn::ExprMethodCall> {
1630 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001631 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001632 let mut formatter = formatter.debug_struct("ExprMethodCall");
David Tolnaycaac6272019-05-09 11:26:37 -07001633 if !_val.attrs.is_empty() {
1634 formatter.field("attrs", Lite(&_val.attrs));
1635 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001636 formatter.field("receiver", Lite(&_val.receiver));
1637 formatter.field("method", Lite(&_val.method));
1638 if let Some(val) = &_val.turbofish {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001639 #[derive(RefCast)]
1640 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001641 struct Print(syn::MethodTurbofish);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001642 impl Debug for Print {
1643 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001644 formatter.write_str("Some")?;
1645 let _val = &self.0;
1646 formatter.write_str("(")?;
1647 Debug::fmt(Lite(_val), formatter)?;
1648 formatter.write_str(")")?;
1649 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001650 }
1651 }
David Tolnay644246b2019-05-08 23:02:46 -07001652 formatter.field("turbofish", Print::ref_cast(val));
1653 }
David Tolnaycaac6272019-05-09 11:26:37 -07001654 if !_val.args.is_empty() {
1655 formatter.field("args", Lite(&_val.args));
1656 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001657 formatter.finish()
1658 }
1659}
1660impl Debug for Lite<syn::ExprParen> {
1661 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001662 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001663 let mut formatter = formatter.debug_struct("ExprParen");
David Tolnaycaac6272019-05-09 11:26:37 -07001664 if !_val.attrs.is_empty() {
1665 formatter.field("attrs", Lite(&_val.attrs));
1666 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001667 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001668 formatter.finish()
1669 }
1670}
1671impl Debug for Lite<syn::ExprPath> {
1672 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001673 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001674 let mut formatter = formatter.debug_struct("ExprPath");
David Tolnaycaac6272019-05-09 11:26:37 -07001675 if !_val.attrs.is_empty() {
1676 formatter.field("attrs", Lite(&_val.attrs));
1677 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001678 if let Some(val) = &_val.qself {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001679 #[derive(RefCast)]
1680 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001681 struct Print(syn::QSelf);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001682 impl Debug for Print {
1683 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001684 formatter.write_str("Some")?;
1685 let _val = &self.0;
1686 formatter.write_str("(")?;
1687 Debug::fmt(Lite(_val), formatter)?;
1688 formatter.write_str(")")?;
1689 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001690 }
1691 }
David Tolnay644246b2019-05-08 23:02:46 -07001692 formatter.field("qself", Print::ref_cast(val));
1693 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001694 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001695 formatter.finish()
1696 }
1697}
1698impl Debug for Lite<syn::ExprRange> {
1699 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001700 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001701 let mut formatter = formatter.debug_struct("ExprRange");
David Tolnaycaac6272019-05-09 11:26:37 -07001702 if !_val.attrs.is_empty() {
1703 formatter.field("attrs", Lite(&_val.attrs));
1704 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001705 if let Some(val) = &_val.from {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001706 #[derive(RefCast)]
1707 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001708 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001709 impl Debug for Print {
1710 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001711 formatter.write_str("Some")?;
1712 let _val = &self.0;
1713 formatter.write_str("(")?;
1714 Debug::fmt(Lite(_val), formatter)?;
1715 formatter.write_str(")")?;
1716 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001717 }
1718 }
David Tolnay644246b2019-05-08 23:02:46 -07001719 formatter.field("from", Print::ref_cast(val));
1720 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001721 formatter.field("limits", Lite(&_val.limits));
1722 if let Some(val) = &_val.to {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001723 #[derive(RefCast)]
1724 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001725 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001726 impl Debug for Print {
1727 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001728 formatter.write_str("Some")?;
1729 let _val = &self.0;
1730 formatter.write_str("(")?;
1731 Debug::fmt(Lite(_val), formatter)?;
1732 formatter.write_str(")")?;
1733 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001734 }
1735 }
David Tolnay644246b2019-05-08 23:02:46 -07001736 formatter.field("to", Print::ref_cast(val));
1737 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001738 formatter.finish()
1739 }
1740}
1741impl Debug for Lite<syn::ExprReference> {
1742 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001743 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001744 let mut formatter = formatter.debug_struct("ExprReference");
David Tolnaycaac6272019-05-09 11:26:37 -07001745 if !_val.attrs.is_empty() {
1746 formatter.field("attrs", Lite(&_val.attrs));
1747 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001748 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001749 #[derive(RefCast)]
1750 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001751 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001752 impl Debug for Print {
1753 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001754 formatter.write_str("Some")?;
1755 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001756 }
1757 }
David Tolnay644246b2019-05-08 23:02:46 -07001758 formatter.field("mutability", Print::ref_cast(val));
1759 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001760 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001761 formatter.finish()
1762 }
1763}
1764impl Debug for Lite<syn::ExprRepeat> {
1765 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001766 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001767 let mut formatter = formatter.debug_struct("ExprRepeat");
David Tolnaycaac6272019-05-09 11:26:37 -07001768 if !_val.attrs.is_empty() {
1769 formatter.field("attrs", Lite(&_val.attrs));
1770 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001771 formatter.field("expr", Lite(&_val.expr));
1772 formatter.field("len", Lite(&_val.len));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001773 formatter.finish()
1774 }
1775}
1776impl Debug for Lite<syn::ExprReturn> {
1777 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001778 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001779 let mut formatter = formatter.debug_struct("ExprReturn");
David Tolnaycaac6272019-05-09 11:26:37 -07001780 if !_val.attrs.is_empty() {
1781 formatter.field("attrs", Lite(&_val.attrs));
1782 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001783 if let Some(val) = &_val.expr {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001784 #[derive(RefCast)]
1785 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001786 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001787 impl Debug for Print {
1788 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001789 formatter.write_str("Some")?;
1790 let _val = &self.0;
1791 formatter.write_str("(")?;
1792 Debug::fmt(Lite(_val), formatter)?;
1793 formatter.write_str(")")?;
1794 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001795 }
1796 }
David Tolnay644246b2019-05-08 23:02:46 -07001797 formatter.field("expr", Print::ref_cast(val));
1798 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001799 formatter.finish()
1800 }
1801}
1802impl Debug for Lite<syn::ExprStruct> {
1803 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001804 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001805 let mut formatter = formatter.debug_struct("ExprStruct");
David Tolnaycaac6272019-05-09 11:26:37 -07001806 if !_val.attrs.is_empty() {
1807 formatter.field("attrs", Lite(&_val.attrs));
1808 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001809 formatter.field("path", Lite(&_val.path));
David Tolnaycaac6272019-05-09 11:26:37 -07001810 if !_val.fields.is_empty() {
1811 formatter.field("fields", Lite(&_val.fields));
1812 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001813 if let Some(val) = &_val.dot2_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001814 #[derive(RefCast)]
1815 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001816 struct Print(syn::token::Dot2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001817 impl Debug for Print {
1818 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001819 formatter.write_str("Some")?;
1820 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001821 }
1822 }
David Tolnay644246b2019-05-08 23:02:46 -07001823 formatter.field("dot2_token", Print::ref_cast(val));
1824 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001825 if let Some(val) = &_val.rest {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001826 #[derive(RefCast)]
1827 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001828 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001829 impl Debug for Print {
1830 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001831 formatter.write_str("Some")?;
1832 let _val = &self.0;
1833 formatter.write_str("(")?;
1834 Debug::fmt(Lite(_val), formatter)?;
1835 formatter.write_str(")")?;
1836 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001837 }
1838 }
David Tolnay644246b2019-05-08 23:02:46 -07001839 formatter.field("rest", Print::ref_cast(val));
1840 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001841 formatter.finish()
1842 }
1843}
1844impl Debug for Lite<syn::ExprTry> {
1845 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001846 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001847 let mut formatter = formatter.debug_struct("ExprTry");
David Tolnaycaac6272019-05-09 11:26:37 -07001848 if !_val.attrs.is_empty() {
1849 formatter.field("attrs", Lite(&_val.attrs));
1850 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001851 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001852 formatter.finish()
1853 }
1854}
1855impl Debug for Lite<syn::ExprTryBlock> {
1856 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001857 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001858 let mut formatter = formatter.debug_struct("ExprTryBlock");
David Tolnaycaac6272019-05-09 11:26:37 -07001859 if !_val.attrs.is_empty() {
1860 formatter.field("attrs", Lite(&_val.attrs));
1861 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001862 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001863 formatter.finish()
1864 }
1865}
1866impl Debug for Lite<syn::ExprTuple> {
1867 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001868 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001869 let mut formatter = formatter.debug_struct("ExprTuple");
David Tolnaycaac6272019-05-09 11:26:37 -07001870 if !_val.attrs.is_empty() {
1871 formatter.field("attrs", Lite(&_val.attrs));
1872 }
1873 if !_val.elems.is_empty() {
1874 formatter.field("elems", Lite(&_val.elems));
1875 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001876 formatter.finish()
1877 }
1878}
1879impl Debug for Lite<syn::ExprType> {
1880 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001881 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001882 let mut formatter = formatter.debug_struct("ExprType");
David Tolnaycaac6272019-05-09 11:26:37 -07001883 if !_val.attrs.is_empty() {
1884 formatter.field("attrs", Lite(&_val.attrs));
1885 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001886 formatter.field("expr", Lite(&_val.expr));
1887 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001888 formatter.finish()
1889 }
1890}
1891impl Debug for Lite<syn::ExprUnary> {
1892 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001893 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001894 let mut formatter = formatter.debug_struct("ExprUnary");
David Tolnaycaac6272019-05-09 11:26:37 -07001895 if !_val.attrs.is_empty() {
1896 formatter.field("attrs", Lite(&_val.attrs));
1897 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001898 formatter.field("op", Lite(&_val.op));
1899 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001900 formatter.finish()
1901 }
1902}
1903impl Debug for Lite<syn::ExprUnsafe> {
1904 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001905 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001906 let mut formatter = formatter.debug_struct("ExprUnsafe");
David Tolnaycaac6272019-05-09 11:26:37 -07001907 if !_val.attrs.is_empty() {
1908 formatter.field("attrs", Lite(&_val.attrs));
1909 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001910 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001911 formatter.finish()
1912 }
1913}
1914impl Debug for Lite<syn::ExprVerbatim> {
1915 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001916 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001917 let mut formatter = formatter.debug_struct("ExprVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07001918 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001919 formatter.finish()
1920 }
1921}
1922impl Debug for Lite<syn::ExprWhile> {
1923 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001924 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001925 let mut formatter = formatter.debug_struct("ExprWhile");
David Tolnaycaac6272019-05-09 11:26:37 -07001926 if !_val.attrs.is_empty() {
1927 formatter.field("attrs", Lite(&_val.attrs));
1928 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001929 if let Some(val) = &_val.label {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001930 #[derive(RefCast)]
1931 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001932 struct Print(syn::Label);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001933 impl Debug for Print {
1934 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001935 formatter.write_str("Some")?;
1936 let _val = &self.0;
1937 formatter.write_str("(")?;
1938 Debug::fmt(Lite(_val), formatter)?;
1939 formatter.write_str(")")?;
1940 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001941 }
1942 }
David Tolnay644246b2019-05-08 23:02:46 -07001943 formatter.field("label", Print::ref_cast(val));
1944 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001945 formatter.field("cond", Lite(&_val.cond));
1946 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07001947 formatter.finish()
1948 }
1949}
1950impl Debug for Lite<syn::ExprYield> {
1951 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001952 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001953 let mut formatter = formatter.debug_struct("ExprYield");
David Tolnaycaac6272019-05-09 11:26:37 -07001954 if !_val.attrs.is_empty() {
1955 formatter.field("attrs", Lite(&_val.attrs));
1956 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001957 if let Some(val) = &_val.expr {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001958 #[derive(RefCast)]
1959 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001960 struct Print(Box<syn::Expr>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001961 impl Debug for Print {
1962 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001963 formatter.write_str("Some")?;
1964 let _val = &self.0;
1965 formatter.write_str("(")?;
1966 Debug::fmt(Lite(_val), formatter)?;
1967 formatter.write_str(")")?;
1968 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001969 }
1970 }
David Tolnay644246b2019-05-08 23:02:46 -07001971 formatter.field("expr", Print::ref_cast(val));
1972 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07001973 formatter.finish()
1974 }
1975}
1976impl Debug for Lite<syn::Field> {
1977 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07001978 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07001979 let mut formatter = formatter.debug_struct("Field");
David Tolnaycaac6272019-05-09 11:26:37 -07001980 if !_val.attrs.is_empty() {
1981 formatter.field("attrs", Lite(&_val.attrs));
1982 }
David Tolnay5302f0e2019-05-08 23:26:18 -07001983 formatter.field("vis", Lite(&_val.vis));
1984 if let Some(val) = &_val.ident {
David Tolnay3c3c7d12019-05-08 14:54:12 -07001985 #[derive(RefCast)]
1986 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07001987 struct Print(proc_macro2::Ident);
David Tolnay3c3c7d12019-05-08 14:54:12 -07001988 impl Debug for Print {
1989 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07001990 formatter.write_str("Some")?;
1991 let _val = &self.0;
1992 formatter.write_str("(")?;
1993 Debug::fmt(Lite(_val), formatter)?;
1994 formatter.write_str(")")?;
1995 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07001996 }
1997 }
David Tolnay644246b2019-05-08 23:02:46 -07001998 formatter.field("ident", Print::ref_cast(val));
1999 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002000 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002001 #[derive(RefCast)]
2002 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002003 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002004 impl Debug for Print {
2005 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002006 formatter.write_str("Some")?;
2007 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002008 }
2009 }
David Tolnay644246b2019-05-08 23:02:46 -07002010 formatter.field("colon_token", Print::ref_cast(val));
2011 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002012 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002013 formatter.finish()
2014 }
2015}
2016impl Debug for Lite<syn::FieldPat> {
2017 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002018 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002019 let mut formatter = formatter.debug_struct("FieldPat");
David Tolnaycaac6272019-05-09 11:26:37 -07002020 if !_val.attrs.is_empty() {
2021 formatter.field("attrs", Lite(&_val.attrs));
2022 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002023 formatter.field("member", Lite(&_val.member));
2024 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002025 #[derive(RefCast)]
2026 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002027 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002028 impl Debug for Print {
2029 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002030 formatter.write_str("Some")?;
2031 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002032 }
2033 }
David Tolnay644246b2019-05-08 23:02:46 -07002034 formatter.field("colon_token", Print::ref_cast(val));
2035 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002036 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002037 formatter.finish()
2038 }
2039}
2040impl Debug for Lite<syn::FieldValue> {
2041 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002042 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002043 let mut formatter = formatter.debug_struct("FieldValue");
David Tolnaycaac6272019-05-09 11:26:37 -07002044 if !_val.attrs.is_empty() {
2045 formatter.field("attrs", Lite(&_val.attrs));
2046 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002047 formatter.field("member", Lite(&_val.member));
2048 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002049 #[derive(RefCast)]
2050 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002051 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002052 impl Debug for Print {
2053 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002054 formatter.write_str("Some")?;
2055 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002056 }
2057 }
David Tolnay644246b2019-05-08 23:02:46 -07002058 formatter.field("colon_token", Print::ref_cast(val));
2059 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002060 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002061 formatter.finish()
2062 }
2063}
2064impl Debug for Lite<syn::Fields> {
2065 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002066 let _val = &self.value;
2067 match _val {
2068 syn::Fields::Named(_val) => {
2069 let mut formatter = formatter.debug_struct("Fields::Named");
David Tolnaycaac6272019-05-09 11:26:37 -07002070 if !_val.named.is_empty() {
2071 formatter.field("named", Lite(&_val.named));
2072 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002073 formatter.finish()
2074 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002075 syn::Fields::Unnamed(_val) => {
2076 let mut formatter = formatter.debug_struct("Fields::Unnamed");
David Tolnaycaac6272019-05-09 11:26:37 -07002077 if !_val.unnamed.is_empty() {
2078 formatter.field("unnamed", Lite(&_val.unnamed));
2079 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002080 formatter.finish()
2081 }
2082 syn::Fields::Unit => formatter.write_str("Unit"),
2083 }
2084 }
2085}
2086impl Debug for Lite<syn::FieldsNamed> {
2087 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002088 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002089 let mut formatter = formatter.debug_struct("FieldsNamed");
David Tolnaycaac6272019-05-09 11:26:37 -07002090 if !_val.named.is_empty() {
2091 formatter.field("named", Lite(&_val.named));
2092 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002093 formatter.finish()
2094 }
2095}
2096impl Debug for Lite<syn::FieldsUnnamed> {
2097 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002098 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002099 let mut formatter = formatter.debug_struct("FieldsUnnamed");
David Tolnaycaac6272019-05-09 11:26:37 -07002100 if !_val.unnamed.is_empty() {
2101 formatter.field("unnamed", Lite(&_val.unnamed));
2102 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002103 formatter.finish()
2104 }
2105}
2106impl Debug for Lite<syn::File> {
2107 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002108 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002109 let mut formatter = formatter.debug_struct("File");
David Tolnay5302f0e2019-05-08 23:26:18 -07002110 if let Some(val) = &_val.shebang {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002111 #[derive(RefCast)]
2112 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002113 struct Print(String);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002114 impl Debug for Print {
2115 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002116 formatter.write_str("Some")?;
2117 let _val = &self.0;
2118 formatter.write_str("(")?;
2119 Debug::fmt(Lite(_val), formatter)?;
2120 formatter.write_str(")")?;
2121 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002122 }
2123 }
David Tolnay644246b2019-05-08 23:02:46 -07002124 formatter.field("shebang", Print::ref_cast(val));
2125 }
David Tolnaycaac6272019-05-09 11:26:37 -07002126 if !_val.attrs.is_empty() {
2127 formatter.field("attrs", Lite(&_val.attrs));
2128 }
2129 if !_val.items.is_empty() {
2130 formatter.field("items", Lite(&_val.items));
2131 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002132 formatter.finish()
2133 }
2134}
2135impl Debug for Lite<syn::FnArg> {
2136 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002137 let _val = &self.value;
2138 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07002139 syn::FnArg::SelfRef(_val) => {
2140 formatter.write_str("SelfRef")?;
2141 formatter.write_str("(")?;
2142 Debug::fmt(Lite(_val), formatter)?;
2143 formatter.write_str(")")?;
2144 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002145 }
David Tolnay32245a92019-05-09 12:32:15 -07002146 syn::FnArg::SelfValue(_val) => {
2147 formatter.write_str("SelfValue")?;
2148 formatter.write_str("(")?;
2149 Debug::fmt(Lite(_val), formatter)?;
2150 formatter.write_str(")")?;
2151 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002152 }
David Tolnay32245a92019-05-09 12:32:15 -07002153 syn::FnArg::Captured(_val) => {
2154 formatter.write_str("Captured")?;
2155 formatter.write_str("(")?;
2156 Debug::fmt(Lite(_val), formatter)?;
2157 formatter.write_str(")")?;
2158 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002159 }
David Tolnay32245a92019-05-09 12:32:15 -07002160 syn::FnArg::Inferred(_val) => {
2161 formatter.write_str("Inferred")?;
2162 formatter.write_str("(")?;
2163 Debug::fmt(Lite(_val), formatter)?;
2164 formatter.write_str(")")?;
2165 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002166 }
David Tolnay32245a92019-05-09 12:32:15 -07002167 syn::FnArg::Ignored(_val) => {
2168 formatter.write_str("Ignored")?;
2169 formatter.write_str("(")?;
2170 Debug::fmt(Lite(_val), formatter)?;
2171 formatter.write_str(")")?;
2172 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002173 }
2174 }
2175 }
2176}
2177impl Debug for Lite<syn::FnDecl> {
2178 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002179 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002180 let mut formatter = formatter.debug_struct("FnDecl");
David Tolnay5302f0e2019-05-08 23:26:18 -07002181 formatter.field("generics", Lite(&_val.generics));
David Tolnaycaac6272019-05-09 11:26:37 -07002182 if !_val.inputs.is_empty() {
2183 formatter.field("inputs", Lite(&_val.inputs));
2184 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002185 if let Some(val) = &_val.variadic {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002186 #[derive(RefCast)]
2187 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002188 struct Print(syn::token::Dot3);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002189 impl Debug for Print {
2190 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002191 formatter.write_str("Some")?;
2192 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002193 }
2194 }
David Tolnay644246b2019-05-08 23:02:46 -07002195 formatter.field("variadic", Print::ref_cast(val));
2196 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002197 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002198 formatter.finish()
2199 }
2200}
2201impl Debug for Lite<syn::ForeignItem> {
2202 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002203 let _val = &self.value;
2204 match _val {
2205 syn::ForeignItem::Fn(_val) => {
2206 let mut formatter = formatter.debug_struct("ForeignItem::Fn");
David Tolnaycaac6272019-05-09 11:26:37 -07002207 if !_val.attrs.is_empty() {
2208 formatter.field("attrs", Lite(&_val.attrs));
2209 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002210 formatter.field("vis", Lite(&_val.vis));
2211 formatter.field("ident", Lite(&_val.ident));
2212 formatter.field("decl", Lite(&_val.decl));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002213 formatter.finish()
2214 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002215 syn::ForeignItem::Static(_val) => {
2216 let mut formatter = formatter.debug_struct("ForeignItem::Static");
David Tolnaycaac6272019-05-09 11:26:37 -07002217 if !_val.attrs.is_empty() {
2218 formatter.field("attrs", Lite(&_val.attrs));
2219 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002220 formatter.field("vis", Lite(&_val.vis));
2221 if let Some(val) = &_val.mutability {
2222 #[derive(RefCast)]
2223 #[repr(transparent)]
2224 struct Print(syn::token::Mut);
2225 impl Debug for Print {
2226 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2227 formatter.write_str("Some")?;
2228 Ok(())
2229 }
2230 }
2231 formatter.field("mutability", Print::ref_cast(val));
2232 }
2233 formatter.field("ident", Lite(&_val.ident));
2234 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002235 formatter.finish()
2236 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002237 syn::ForeignItem::Type(_val) => {
2238 let mut formatter = formatter.debug_struct("ForeignItem::Type");
David Tolnaycaac6272019-05-09 11:26:37 -07002239 if !_val.attrs.is_empty() {
2240 formatter.field("attrs", Lite(&_val.attrs));
2241 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002242 formatter.field("vis", Lite(&_val.vis));
2243 formatter.field("ident", Lite(&_val.ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002244 formatter.finish()
2245 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002246 syn::ForeignItem::Macro(_val) => {
2247 let mut formatter = formatter.debug_struct("ForeignItem::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07002248 if !_val.attrs.is_empty() {
2249 formatter.field("attrs", Lite(&_val.attrs));
2250 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002251 formatter.field("mac", Lite(&_val.mac));
2252 if let Some(val) = &_val.semi_token {
2253 #[derive(RefCast)]
2254 #[repr(transparent)]
2255 struct Print(syn::token::Semi);
2256 impl Debug for Print {
2257 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2258 formatter.write_str("Some")?;
2259 Ok(())
2260 }
2261 }
2262 formatter.field("semi_token", Print::ref_cast(val));
2263 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002264 formatter.finish()
2265 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002266 syn::ForeignItem::Verbatim(_val) => {
2267 let mut formatter = formatter.debug_struct("ForeignItem::Verbatim");
2268 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002269 formatter.finish()
2270 }
2271 }
2272 }
2273}
2274impl Debug for Lite<syn::ForeignItemFn> {
2275 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002276 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002277 let mut formatter = formatter.debug_struct("ForeignItemFn");
David Tolnaycaac6272019-05-09 11:26:37 -07002278 if !_val.attrs.is_empty() {
2279 formatter.field("attrs", Lite(&_val.attrs));
2280 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002281 formatter.field("vis", Lite(&_val.vis));
2282 formatter.field("ident", Lite(&_val.ident));
2283 formatter.field("decl", Lite(&_val.decl));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002284 formatter.finish()
2285 }
2286}
2287impl Debug for Lite<syn::ForeignItemMacro> {
2288 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002289 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002290 let mut formatter = formatter.debug_struct("ForeignItemMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07002291 if !_val.attrs.is_empty() {
2292 formatter.field("attrs", Lite(&_val.attrs));
2293 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002294 formatter.field("mac", Lite(&_val.mac));
2295 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002296 #[derive(RefCast)]
2297 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002298 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002299 impl Debug for Print {
2300 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002301 formatter.write_str("Some")?;
2302 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002303 }
2304 }
David Tolnay644246b2019-05-08 23:02:46 -07002305 formatter.field("semi_token", Print::ref_cast(val));
2306 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002307 formatter.finish()
2308 }
2309}
2310impl Debug for Lite<syn::ForeignItemStatic> {
2311 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002312 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002313 let mut formatter = formatter.debug_struct("ForeignItemStatic");
David Tolnaycaac6272019-05-09 11:26:37 -07002314 if !_val.attrs.is_empty() {
2315 formatter.field("attrs", Lite(&_val.attrs));
2316 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002317 formatter.field("vis", Lite(&_val.vis));
2318 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002319 #[derive(RefCast)]
2320 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002321 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002322 impl Debug for Print {
2323 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002324 formatter.write_str("Some")?;
2325 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002326 }
2327 }
David Tolnay644246b2019-05-08 23:02:46 -07002328 formatter.field("mutability", Print::ref_cast(val));
2329 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002330 formatter.field("ident", Lite(&_val.ident));
2331 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002332 formatter.finish()
2333 }
2334}
2335impl Debug for Lite<syn::ForeignItemType> {
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("ForeignItemType");
David Tolnaycaac6272019-05-09 11:26:37 -07002339 if !_val.attrs.is_empty() {
2340 formatter.field("attrs", Lite(&_val.attrs));
2341 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002342 formatter.field("vis", Lite(&_val.vis));
2343 formatter.field("ident", Lite(&_val.ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002344 formatter.finish()
2345 }
2346}
2347impl Debug for Lite<syn::ForeignItemVerbatim> {
2348 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002349 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002350 let mut formatter = formatter.debug_struct("ForeignItemVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07002351 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002352 formatter.finish()
2353 }
2354}
2355impl Debug for Lite<syn::GenericArgument> {
2356 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002357 let _val = &self.value;
2358 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07002359 syn::GenericArgument::Lifetime(_val) => {
2360 formatter.write_str("Lifetime")?;
2361 formatter.write_str("(")?;
2362 Debug::fmt(Lite(_val), formatter)?;
2363 formatter.write_str(")")?;
2364 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002365 }
David Tolnay32245a92019-05-09 12:32:15 -07002366 syn::GenericArgument::Type(_val) => {
2367 formatter.write_str("Type")?;
2368 formatter.write_str("(")?;
2369 Debug::fmt(Lite(_val), formatter)?;
2370 formatter.write_str(")")?;
2371 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002372 }
David Tolnay32245a92019-05-09 12:32:15 -07002373 syn::GenericArgument::Binding(_val) => {
2374 formatter.write_str("Binding")?;
2375 formatter.write_str("(")?;
2376 Debug::fmt(Lite(_val), formatter)?;
2377 formatter.write_str(")")?;
2378 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002379 }
David Tolnay32245a92019-05-09 12:32:15 -07002380 syn::GenericArgument::Constraint(_val) => {
2381 formatter.write_str("Constraint")?;
2382 formatter.write_str("(")?;
2383 Debug::fmt(Lite(_val), formatter)?;
2384 formatter.write_str(")")?;
2385 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002386 }
David Tolnay32245a92019-05-09 12:32:15 -07002387 syn::GenericArgument::Const(_val) => {
2388 formatter.write_str("Const")?;
2389 formatter.write_str("(")?;
2390 Debug::fmt(Lite(_val), formatter)?;
2391 formatter.write_str(")")?;
2392 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002393 }
2394 }
2395 }
2396}
2397impl Debug for Lite<syn::GenericMethodArgument> {
2398 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002399 let _val = &self.value;
2400 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07002401 syn::GenericMethodArgument::Type(_val) => {
2402 formatter.write_str("Type")?;
2403 formatter.write_str("(")?;
2404 Debug::fmt(Lite(_val), formatter)?;
2405 formatter.write_str(")")?;
2406 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002407 }
David Tolnay32245a92019-05-09 12:32:15 -07002408 syn::GenericMethodArgument::Const(_val) => {
2409 formatter.write_str("Const")?;
2410 formatter.write_str("(")?;
2411 Debug::fmt(Lite(_val), formatter)?;
2412 formatter.write_str(")")?;
2413 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002414 }
2415 }
2416 }
2417}
2418impl Debug for Lite<syn::GenericParam> {
2419 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002420 let _val = &self.value;
2421 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07002422 syn::GenericParam::Type(_val) => {
2423 formatter.write_str("Type")?;
2424 formatter.write_str("(")?;
2425 Debug::fmt(Lite(_val), formatter)?;
2426 formatter.write_str(")")?;
2427 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002428 }
David Tolnay32245a92019-05-09 12:32:15 -07002429 syn::GenericParam::Lifetime(_val) => {
2430 formatter.write_str("Lifetime")?;
2431 formatter.write_str("(")?;
2432 Debug::fmt(Lite(_val), formatter)?;
2433 formatter.write_str(")")?;
2434 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002435 }
David Tolnay32245a92019-05-09 12:32:15 -07002436 syn::GenericParam::Const(_val) => {
2437 formatter.write_str("Const")?;
2438 formatter.write_str("(")?;
2439 Debug::fmt(Lite(_val), formatter)?;
2440 formatter.write_str(")")?;
2441 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002442 }
2443 }
2444 }
2445}
2446impl Debug for Lite<syn::Generics> {
2447 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002448 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002449 let mut formatter = formatter.debug_struct("Generics");
David Tolnay5302f0e2019-05-08 23:26:18 -07002450 if let Some(val) = &_val.lt_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002451 #[derive(RefCast)]
2452 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002453 struct Print(syn::token::Lt);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002454 impl Debug for Print {
2455 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002456 formatter.write_str("Some")?;
2457 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002458 }
2459 }
David Tolnay644246b2019-05-08 23:02:46 -07002460 formatter.field("lt_token", Print::ref_cast(val));
2461 }
David Tolnaycaac6272019-05-09 11:26:37 -07002462 if !_val.params.is_empty() {
2463 formatter.field("params", Lite(&_val.params));
2464 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002465 if let Some(val) = &_val.gt_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002466 #[derive(RefCast)]
2467 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002468 struct Print(syn::token::Gt);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002469 impl Debug for Print {
2470 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002471 formatter.write_str("Some")?;
2472 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002473 }
2474 }
David Tolnay644246b2019-05-08 23:02:46 -07002475 formatter.field("gt_token", Print::ref_cast(val));
2476 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002477 if let Some(val) = &_val.where_clause {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002478 #[derive(RefCast)]
2479 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002480 struct Print(syn::WhereClause);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002481 impl Debug for Print {
2482 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002483 formatter.write_str("Some")?;
2484 let _val = &self.0;
2485 formatter.write_str("(")?;
2486 Debug::fmt(Lite(_val), formatter)?;
2487 formatter.write_str(")")?;
2488 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002489 }
2490 }
David Tolnay644246b2019-05-08 23:02:46 -07002491 formatter.field("where_clause", Print::ref_cast(val));
2492 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002493 formatter.finish()
2494 }
2495}
2496impl Debug for Lite<syn::ImplItem> {
2497 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002498 let _val = &self.value;
2499 match _val {
2500 syn::ImplItem::Const(_val) => {
2501 let mut formatter = formatter.debug_struct("ImplItem::Const");
David Tolnaycaac6272019-05-09 11:26:37 -07002502 if !_val.attrs.is_empty() {
2503 formatter.field("attrs", Lite(&_val.attrs));
2504 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002505 formatter.field("vis", Lite(&_val.vis));
2506 if let Some(val) = &_val.defaultness {
2507 #[derive(RefCast)]
2508 #[repr(transparent)]
2509 struct Print(syn::token::Default);
2510 impl Debug for Print {
2511 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2512 formatter.write_str("Some")?;
2513 Ok(())
2514 }
2515 }
2516 formatter.field("defaultness", Print::ref_cast(val));
2517 }
2518 formatter.field("ident", Lite(&_val.ident));
2519 formatter.field("ty", Lite(&_val.ty));
2520 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002521 formatter.finish()
2522 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002523 syn::ImplItem::Method(_val) => {
2524 let mut formatter = formatter.debug_struct("ImplItem::Method");
David Tolnaycaac6272019-05-09 11:26:37 -07002525 if !_val.attrs.is_empty() {
2526 formatter.field("attrs", Lite(&_val.attrs));
2527 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002528 formatter.field("vis", Lite(&_val.vis));
2529 if let Some(val) = &_val.defaultness {
2530 #[derive(RefCast)]
2531 #[repr(transparent)]
2532 struct Print(syn::token::Default);
2533 impl Debug for Print {
2534 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2535 formatter.write_str("Some")?;
2536 Ok(())
2537 }
2538 }
2539 formatter.field("defaultness", Print::ref_cast(val));
2540 }
2541 formatter.field("sig", Lite(&_val.sig));
2542 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002543 formatter.finish()
2544 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002545 syn::ImplItem::Type(_val) => {
2546 let mut formatter = formatter.debug_struct("ImplItem::Type");
David Tolnaycaac6272019-05-09 11:26:37 -07002547 if !_val.attrs.is_empty() {
2548 formatter.field("attrs", Lite(&_val.attrs));
2549 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002550 formatter.field("vis", Lite(&_val.vis));
2551 if let Some(val) = &_val.defaultness {
2552 #[derive(RefCast)]
2553 #[repr(transparent)]
2554 struct Print(syn::token::Default);
2555 impl Debug for Print {
2556 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2557 formatter.write_str("Some")?;
2558 Ok(())
2559 }
2560 }
2561 formatter.field("defaultness", Print::ref_cast(val));
2562 }
2563 formatter.field("ident", Lite(&_val.ident));
2564 formatter.field("generics", Lite(&_val.generics));
2565 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002566 formatter.finish()
2567 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002568 syn::ImplItem::Existential(_val) => {
2569 let mut formatter = formatter.debug_struct("ImplItem::Existential");
David Tolnaycaac6272019-05-09 11:26:37 -07002570 if !_val.attrs.is_empty() {
2571 formatter.field("attrs", Lite(&_val.attrs));
2572 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002573 formatter.field("ident", Lite(&_val.ident));
2574 formatter.field("generics", Lite(&_val.generics));
2575 if let Some(val) = &_val.colon_token {
2576 #[derive(RefCast)]
2577 #[repr(transparent)]
2578 struct Print(syn::token::Colon);
2579 impl Debug for Print {
2580 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2581 formatter.write_str("Some")?;
2582 Ok(())
2583 }
2584 }
2585 formatter.field("colon_token", Print::ref_cast(val));
2586 }
David Tolnaycaac6272019-05-09 11:26:37 -07002587 if !_val.bounds.is_empty() {
2588 formatter.field("bounds", Lite(&_val.bounds));
2589 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002590 formatter.finish()
2591 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002592 syn::ImplItem::Macro(_val) => {
2593 let mut formatter = formatter.debug_struct("ImplItem::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07002594 if !_val.attrs.is_empty() {
2595 formatter.field("attrs", Lite(&_val.attrs));
2596 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002597 formatter.field("mac", Lite(&_val.mac));
2598 if let Some(val) = &_val.semi_token {
2599 #[derive(RefCast)]
2600 #[repr(transparent)]
2601 struct Print(syn::token::Semi);
2602 impl Debug for Print {
2603 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2604 formatter.write_str("Some")?;
2605 Ok(())
2606 }
2607 }
2608 formatter.field("semi_token", Print::ref_cast(val));
2609 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002610 formatter.finish()
2611 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002612 syn::ImplItem::Verbatim(_val) => {
2613 let mut formatter = formatter.debug_struct("ImplItem::Verbatim");
2614 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002615 formatter.finish()
2616 }
2617 }
2618 }
2619}
2620impl Debug for Lite<syn::ImplItemConst> {
2621 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002622 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002623 let mut formatter = formatter.debug_struct("ImplItemConst");
David Tolnaycaac6272019-05-09 11:26:37 -07002624 if !_val.attrs.is_empty() {
2625 formatter.field("attrs", Lite(&_val.attrs));
2626 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002627 formatter.field("vis", Lite(&_val.vis));
2628 if let Some(val) = &_val.defaultness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002629 #[derive(RefCast)]
2630 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002631 struct Print(syn::token::Default);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002632 impl Debug for Print {
2633 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002634 formatter.write_str("Some")?;
2635 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002636 }
2637 }
David Tolnay644246b2019-05-08 23:02:46 -07002638 formatter.field("defaultness", Print::ref_cast(val));
2639 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002640 formatter.field("ident", Lite(&_val.ident));
2641 formatter.field("ty", Lite(&_val.ty));
2642 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002643 formatter.finish()
2644 }
2645}
2646impl Debug for Lite<syn::ImplItemExistential> {
2647 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002648 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002649 let mut formatter = formatter.debug_struct("ImplItemExistential");
David Tolnaycaac6272019-05-09 11:26:37 -07002650 if !_val.attrs.is_empty() {
2651 formatter.field("attrs", Lite(&_val.attrs));
2652 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002653 formatter.field("ident", Lite(&_val.ident));
2654 formatter.field("generics", Lite(&_val.generics));
2655 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002656 #[derive(RefCast)]
2657 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002658 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002659 impl Debug for Print {
2660 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002661 formatter.write_str("Some")?;
2662 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002663 }
2664 }
David Tolnay644246b2019-05-08 23:02:46 -07002665 formatter.field("colon_token", Print::ref_cast(val));
2666 }
David Tolnaycaac6272019-05-09 11:26:37 -07002667 if !_val.bounds.is_empty() {
2668 formatter.field("bounds", Lite(&_val.bounds));
2669 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002670 formatter.finish()
2671 }
2672}
2673impl Debug for Lite<syn::ImplItemMacro> {
2674 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002675 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002676 let mut formatter = formatter.debug_struct("ImplItemMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07002677 if !_val.attrs.is_empty() {
2678 formatter.field("attrs", Lite(&_val.attrs));
2679 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002680 formatter.field("mac", Lite(&_val.mac));
2681 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002682 #[derive(RefCast)]
2683 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002684 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002685 impl Debug for Print {
2686 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002687 formatter.write_str("Some")?;
2688 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002689 }
2690 }
David Tolnay644246b2019-05-08 23:02:46 -07002691 formatter.field("semi_token", Print::ref_cast(val));
2692 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002693 formatter.finish()
2694 }
2695}
2696impl Debug for Lite<syn::ImplItemMethod> {
2697 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002698 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002699 let mut formatter = formatter.debug_struct("ImplItemMethod");
David Tolnaycaac6272019-05-09 11:26:37 -07002700 if !_val.attrs.is_empty() {
2701 formatter.field("attrs", Lite(&_val.attrs));
2702 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002703 formatter.field("vis", Lite(&_val.vis));
2704 if let Some(val) = &_val.defaultness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002705 #[derive(RefCast)]
2706 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002707 struct Print(syn::token::Default);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002708 impl Debug for Print {
2709 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002710 formatter.write_str("Some")?;
2711 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002712 }
2713 }
David Tolnay644246b2019-05-08 23:02:46 -07002714 formatter.field("defaultness", Print::ref_cast(val));
2715 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002716 formatter.field("sig", Lite(&_val.sig));
2717 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002718 formatter.finish()
2719 }
2720}
2721impl Debug for Lite<syn::ImplItemType> {
2722 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002723 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002724 let mut formatter = formatter.debug_struct("ImplItemType");
David Tolnaycaac6272019-05-09 11:26:37 -07002725 if !_val.attrs.is_empty() {
2726 formatter.field("attrs", Lite(&_val.attrs));
2727 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002728 formatter.field("vis", Lite(&_val.vis));
2729 if let Some(val) = &_val.defaultness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07002730 #[derive(RefCast)]
2731 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07002732 struct Print(syn::token::Default);
David Tolnay3c3c7d12019-05-08 14:54:12 -07002733 impl Debug for Print {
2734 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07002735 formatter.write_str("Some")?;
2736 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07002737 }
2738 }
David Tolnay644246b2019-05-08 23:02:46 -07002739 formatter.field("defaultness", Print::ref_cast(val));
2740 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002741 formatter.field("ident", Lite(&_val.ident));
2742 formatter.field("generics", Lite(&_val.generics));
2743 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002744 formatter.finish()
2745 }
2746}
2747impl Debug for Lite<syn::ImplItemVerbatim> {
2748 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002749 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002750 let mut formatter = formatter.debug_struct("ImplItemVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07002751 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002752 formatter.finish()
2753 }
2754}
2755impl Debug for Lite<syn::Index> {
2756 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002757 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07002758 let mut formatter = formatter.debug_struct("Index");
David Tolnay5302f0e2019-05-08 23:26:18 -07002759 formatter.field("index", Lite(&_val.index));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002760 formatter.finish()
2761 }
2762}
2763impl Debug for Lite<syn::Item> {
2764 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07002765 let _val = &self.value;
2766 match _val {
2767 syn::Item::ExternCrate(_val) => {
2768 let mut formatter = formatter.debug_struct("Item::ExternCrate");
David Tolnaycaac6272019-05-09 11:26:37 -07002769 if !_val.attrs.is_empty() {
2770 formatter.field("attrs", Lite(&_val.attrs));
2771 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002772 formatter.field("vis", Lite(&_val.vis));
2773 formatter.field("ident", Lite(&_val.ident));
2774 if let Some(val) = &_val.rename {
2775 #[derive(RefCast)]
2776 #[repr(transparent)]
2777 struct Print((syn::token::As, proc_macro2::Ident));
2778 impl Debug for Print {
2779 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2780 formatter.write_str("Some")?;
2781 let _val = &self.0;
2782 formatter.write_str("(")?;
2783 Debug::fmt(Lite(&_val.1), formatter)?;
2784 formatter.write_str(")")?;
2785 Ok(())
2786 }
2787 }
2788 formatter.field("rename", Print::ref_cast(val));
2789 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002790 formatter.finish()
2791 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002792 syn::Item::Use(_val) => {
2793 let mut formatter = formatter.debug_struct("Item::Use");
David Tolnaycaac6272019-05-09 11:26:37 -07002794 if !_val.attrs.is_empty() {
2795 formatter.field("attrs", Lite(&_val.attrs));
2796 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002797 formatter.field("vis", Lite(&_val.vis));
2798 if let Some(val) = &_val.leading_colon {
2799 #[derive(RefCast)]
2800 #[repr(transparent)]
2801 struct Print(syn::token::Colon2);
2802 impl Debug for Print {
2803 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2804 formatter.write_str("Some")?;
2805 Ok(())
2806 }
2807 }
2808 formatter.field("leading_colon", Print::ref_cast(val));
2809 }
2810 formatter.field("tree", Lite(&_val.tree));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002811 formatter.finish()
2812 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002813 syn::Item::Static(_val) => {
2814 let mut formatter = formatter.debug_struct("Item::Static");
David Tolnaycaac6272019-05-09 11:26:37 -07002815 if !_val.attrs.is_empty() {
2816 formatter.field("attrs", Lite(&_val.attrs));
2817 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002818 formatter.field("vis", Lite(&_val.vis));
2819 if let Some(val) = &_val.mutability {
2820 #[derive(RefCast)]
2821 #[repr(transparent)]
2822 struct Print(syn::token::Mut);
2823 impl Debug for Print {
2824 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2825 formatter.write_str("Some")?;
2826 Ok(())
2827 }
2828 }
2829 formatter.field("mutability", Print::ref_cast(val));
2830 }
2831 formatter.field("ident", Lite(&_val.ident));
2832 formatter.field("ty", Lite(&_val.ty));
2833 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002834 formatter.finish()
2835 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002836 syn::Item::Const(_val) => {
2837 let mut formatter = formatter.debug_struct("Item::Const");
David Tolnaycaac6272019-05-09 11:26:37 -07002838 if !_val.attrs.is_empty() {
2839 formatter.field("attrs", Lite(&_val.attrs));
2840 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002841 formatter.field("vis", Lite(&_val.vis));
2842 formatter.field("ident", Lite(&_val.ident));
2843 formatter.field("ty", Lite(&_val.ty));
2844 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002845 formatter.finish()
2846 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002847 syn::Item::Fn(_val) => {
2848 let mut formatter = formatter.debug_struct("Item::Fn");
David Tolnaycaac6272019-05-09 11:26:37 -07002849 if !_val.attrs.is_empty() {
2850 formatter.field("attrs", Lite(&_val.attrs));
2851 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002852 formatter.field("vis", Lite(&_val.vis));
2853 if let Some(val) = &_val.constness {
2854 #[derive(RefCast)]
2855 #[repr(transparent)]
2856 struct Print(syn::token::Const);
2857 impl Debug for Print {
2858 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2859 formatter.write_str("Some")?;
2860 Ok(())
2861 }
2862 }
2863 formatter.field("constness", Print::ref_cast(val));
2864 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002865 if let Some(val) = &_val.asyncness {
2866 #[derive(RefCast)]
2867 #[repr(transparent)]
2868 struct Print(syn::token::Async);
2869 impl Debug for Print {
2870 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2871 formatter.write_str("Some")?;
2872 Ok(())
2873 }
2874 }
2875 formatter.field("asyncness", Print::ref_cast(val));
2876 }
David Tolnayb72388c2019-06-09 02:40:35 -07002877 if let Some(val) = &_val.unsafety {
2878 #[derive(RefCast)]
2879 #[repr(transparent)]
2880 struct Print(syn::token::Unsafe);
2881 impl Debug for Print {
2882 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2883 formatter.write_str("Some")?;
2884 Ok(())
2885 }
2886 }
2887 formatter.field("unsafety", Print::ref_cast(val));
2888 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002889 if let Some(val) = &_val.abi {
2890 #[derive(RefCast)]
2891 #[repr(transparent)]
2892 struct Print(syn::Abi);
2893 impl Debug for Print {
2894 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2895 formatter.write_str("Some")?;
2896 let _val = &self.0;
2897 formatter.write_str("(")?;
2898 Debug::fmt(Lite(_val), formatter)?;
2899 formatter.write_str(")")?;
2900 Ok(())
2901 }
2902 }
2903 formatter.field("abi", Print::ref_cast(val));
2904 }
2905 formatter.field("ident", Lite(&_val.ident));
2906 formatter.field("decl", Lite(&_val.decl));
2907 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002908 formatter.finish()
2909 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002910 syn::Item::Mod(_val) => {
2911 let mut formatter = formatter.debug_struct("Item::Mod");
David Tolnaycaac6272019-05-09 11:26:37 -07002912 if !_val.attrs.is_empty() {
2913 formatter.field("attrs", Lite(&_val.attrs));
2914 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002915 formatter.field("vis", Lite(&_val.vis));
2916 formatter.field("ident", Lite(&_val.ident));
2917 if let Some(val) = &_val.content {
2918 #[derive(RefCast)]
2919 #[repr(transparent)]
2920 struct Print((syn::token::Brace, Vec<syn::Item>));
2921 impl Debug for Print {
2922 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2923 formatter.write_str("Some")?;
2924 let _val = &self.0;
2925 formatter.write_str("(")?;
2926 Debug::fmt(Lite(&_val.1), formatter)?;
2927 formatter.write_str(")")?;
2928 Ok(())
2929 }
2930 }
2931 formatter.field("content", Print::ref_cast(val));
2932 }
2933 if let Some(val) = &_val.semi {
2934 #[derive(RefCast)]
2935 #[repr(transparent)]
2936 struct Print(syn::token::Semi);
2937 impl Debug for Print {
2938 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2939 formatter.write_str("Some")?;
2940 Ok(())
2941 }
2942 }
2943 formatter.field("semi", Print::ref_cast(val));
2944 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002945 formatter.finish()
2946 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002947 syn::Item::ForeignMod(_val) => {
2948 let mut formatter = formatter.debug_struct("Item::ForeignMod");
David Tolnaycaac6272019-05-09 11:26:37 -07002949 if !_val.attrs.is_empty() {
2950 formatter.field("attrs", Lite(&_val.attrs));
2951 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002952 formatter.field("abi", Lite(&_val.abi));
David Tolnaycaac6272019-05-09 11:26:37 -07002953 if !_val.items.is_empty() {
2954 formatter.field("items", Lite(&_val.items));
2955 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002956 formatter.finish()
2957 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002958 syn::Item::Type(_val) => {
2959 let mut formatter = formatter.debug_struct("Item::Type");
David Tolnaycaac6272019-05-09 11:26:37 -07002960 if !_val.attrs.is_empty() {
2961 formatter.field("attrs", Lite(&_val.attrs));
2962 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002963 formatter.field("vis", Lite(&_val.vis));
2964 formatter.field("ident", Lite(&_val.ident));
2965 formatter.field("generics", Lite(&_val.generics));
2966 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07002967 formatter.finish()
2968 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002969 syn::Item::Existential(_val) => {
2970 let mut formatter = formatter.debug_struct("Item::Existential");
David Tolnaycaac6272019-05-09 11:26:37 -07002971 if !_val.attrs.is_empty() {
2972 formatter.field("attrs", Lite(&_val.attrs));
2973 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002974 formatter.field("vis", Lite(&_val.vis));
2975 formatter.field("ident", Lite(&_val.ident));
2976 formatter.field("generics", Lite(&_val.generics));
2977 if let Some(val) = &_val.colon_token {
2978 #[derive(RefCast)]
2979 #[repr(transparent)]
2980 struct Print(syn::token::Colon);
2981 impl Debug for Print {
2982 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2983 formatter.write_str("Some")?;
2984 Ok(())
2985 }
2986 }
2987 formatter.field("colon_token", Print::ref_cast(val));
2988 }
David Tolnaycaac6272019-05-09 11:26:37 -07002989 if !_val.bounds.is_empty() {
2990 formatter.field("bounds", Lite(&_val.bounds));
2991 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07002992 formatter.finish()
2993 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002994 syn::Item::Struct(_val) => {
2995 let mut formatter = formatter.debug_struct("Item::Struct");
David Tolnaycaac6272019-05-09 11:26:37 -07002996 if !_val.attrs.is_empty() {
2997 formatter.field("attrs", Lite(&_val.attrs));
2998 }
David Tolnay5302f0e2019-05-08 23:26:18 -07002999 formatter.field("vis", Lite(&_val.vis));
3000 formatter.field("ident", Lite(&_val.ident));
3001 formatter.field("generics", Lite(&_val.generics));
3002 formatter.field("fields", Lite(&_val.fields));
3003 if let Some(val) = &_val.semi_token {
3004 #[derive(RefCast)]
3005 #[repr(transparent)]
3006 struct Print(syn::token::Semi);
3007 impl Debug for Print {
3008 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3009 formatter.write_str("Some")?;
3010 Ok(())
3011 }
3012 }
3013 formatter.field("semi_token", Print::ref_cast(val));
3014 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003015 formatter.finish()
3016 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003017 syn::Item::Enum(_val) => {
3018 let mut formatter = formatter.debug_struct("Item::Enum");
David Tolnaycaac6272019-05-09 11:26:37 -07003019 if !_val.attrs.is_empty() {
3020 formatter.field("attrs", Lite(&_val.attrs));
3021 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003022 formatter.field("vis", Lite(&_val.vis));
3023 formatter.field("ident", Lite(&_val.ident));
3024 formatter.field("generics", Lite(&_val.generics));
David Tolnaycaac6272019-05-09 11:26:37 -07003025 if !_val.variants.is_empty() {
3026 formatter.field("variants", Lite(&_val.variants));
3027 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003028 formatter.finish()
3029 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003030 syn::Item::Union(_val) => {
3031 let mut formatter = formatter.debug_struct("Item::Union");
David Tolnaycaac6272019-05-09 11:26:37 -07003032 if !_val.attrs.is_empty() {
3033 formatter.field("attrs", Lite(&_val.attrs));
3034 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003035 formatter.field("vis", Lite(&_val.vis));
3036 formatter.field("ident", Lite(&_val.ident));
3037 formatter.field("generics", Lite(&_val.generics));
3038 formatter.field("fields", Lite(&_val.fields));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003039 formatter.finish()
3040 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003041 syn::Item::Trait(_val) => {
3042 let mut formatter = formatter.debug_struct("Item::Trait");
David Tolnaycaac6272019-05-09 11:26:37 -07003043 if !_val.attrs.is_empty() {
3044 formatter.field("attrs", Lite(&_val.attrs));
3045 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003046 formatter.field("vis", Lite(&_val.vis));
3047 if let Some(val) = &_val.unsafety {
3048 #[derive(RefCast)]
3049 #[repr(transparent)]
3050 struct Print(syn::token::Unsafe);
3051 impl Debug for Print {
3052 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3053 formatter.write_str("Some")?;
3054 Ok(())
3055 }
3056 }
3057 formatter.field("unsafety", Print::ref_cast(val));
3058 }
3059 if let Some(val) = &_val.auto_token {
3060 #[derive(RefCast)]
3061 #[repr(transparent)]
3062 struct Print(syn::token::Auto);
3063 impl Debug for Print {
3064 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3065 formatter.write_str("Some")?;
3066 Ok(())
3067 }
3068 }
3069 formatter.field("auto_token", Print::ref_cast(val));
3070 }
3071 formatter.field("ident", Lite(&_val.ident));
3072 formatter.field("generics", Lite(&_val.generics));
3073 if let Some(val) = &_val.colon_token {
3074 #[derive(RefCast)]
3075 #[repr(transparent)]
3076 struct Print(syn::token::Colon);
3077 impl Debug for Print {
3078 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3079 formatter.write_str("Some")?;
3080 Ok(())
3081 }
3082 }
3083 formatter.field("colon_token", Print::ref_cast(val));
3084 }
David Tolnaycaac6272019-05-09 11:26:37 -07003085 if !_val.supertraits.is_empty() {
3086 formatter.field("supertraits", Lite(&_val.supertraits));
3087 }
3088 if !_val.items.is_empty() {
3089 formatter.field("items", Lite(&_val.items));
3090 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003091 formatter.finish()
3092 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003093 syn::Item::TraitAlias(_val) => {
3094 let mut formatter = formatter.debug_struct("Item::TraitAlias");
David Tolnaycaac6272019-05-09 11:26:37 -07003095 if !_val.attrs.is_empty() {
3096 formatter.field("attrs", Lite(&_val.attrs));
3097 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003098 formatter.field("vis", Lite(&_val.vis));
3099 formatter.field("ident", Lite(&_val.ident));
3100 formatter.field("generics", Lite(&_val.generics));
David Tolnaycaac6272019-05-09 11:26:37 -07003101 if !_val.bounds.is_empty() {
3102 formatter.field("bounds", Lite(&_val.bounds));
3103 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003104 formatter.finish()
3105 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003106 syn::Item::Impl(_val) => {
3107 let mut formatter = formatter.debug_struct("Item::Impl");
David Tolnaycaac6272019-05-09 11:26:37 -07003108 if !_val.attrs.is_empty() {
3109 formatter.field("attrs", Lite(&_val.attrs));
3110 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003111 if let Some(val) = &_val.defaultness {
3112 #[derive(RefCast)]
3113 #[repr(transparent)]
3114 struct Print(syn::token::Default);
3115 impl Debug for Print {
3116 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3117 formatter.write_str("Some")?;
3118 Ok(())
3119 }
3120 }
3121 formatter.field("defaultness", Print::ref_cast(val));
3122 }
3123 if let Some(val) = &_val.unsafety {
3124 #[derive(RefCast)]
3125 #[repr(transparent)]
3126 struct Print(syn::token::Unsafe);
3127 impl Debug for Print {
3128 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3129 formatter.write_str("Some")?;
3130 Ok(())
3131 }
3132 }
3133 formatter.field("unsafety", Print::ref_cast(val));
3134 }
3135 formatter.field("generics", Lite(&_val.generics));
3136 if let Some(val) = &_val.trait_ {
3137 #[derive(RefCast)]
3138 #[repr(transparent)]
3139 struct Print((Option<syn::token::Bang>, syn::Path, syn::token::For));
3140 impl Debug for Print {
3141 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3142 formatter.write_str("Some")?;
3143 let _val = &self.0;
3144 formatter.write_str("(")?;
3145 Debug::fmt(
3146 &(
3147 {
3148 #[derive(RefCast)]
3149 #[repr(transparent)]
3150 struct Print(Option<syn::token::Bang>);
3151 impl Debug for Print {
3152 fn fmt(
3153 &self,
3154 formatter: &mut fmt::Formatter,
3155 ) -> fmt::Result
3156 {
3157 match &self.0 {
3158 Some(_val) => {
3159 formatter.write_str("Some")?;
3160 Ok(())
3161 }
3162 None => formatter.write_str("None"),
3163 }
3164 }
3165 }
3166 Print::ref_cast(&_val.0)
3167 },
3168 Lite(&_val.1),
3169 ),
3170 formatter,
3171 )?;
3172 formatter.write_str(")")?;
3173 Ok(())
3174 }
3175 }
3176 formatter.field("trait_", Print::ref_cast(val));
3177 }
3178 formatter.field("self_ty", Lite(&_val.self_ty));
David Tolnaycaac6272019-05-09 11:26:37 -07003179 if !_val.items.is_empty() {
3180 formatter.field("items", Lite(&_val.items));
3181 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003182 formatter.finish()
3183 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003184 syn::Item::Macro(_val) => {
3185 let mut formatter = formatter.debug_struct("Item::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07003186 if !_val.attrs.is_empty() {
3187 formatter.field("attrs", Lite(&_val.attrs));
3188 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003189 if let Some(val) = &_val.ident {
3190 #[derive(RefCast)]
3191 #[repr(transparent)]
3192 struct Print(proc_macro2::Ident);
3193 impl Debug for Print {
3194 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3195 formatter.write_str("Some")?;
3196 let _val = &self.0;
3197 formatter.write_str("(")?;
3198 Debug::fmt(Lite(_val), formatter)?;
3199 formatter.write_str(")")?;
3200 Ok(())
3201 }
3202 }
3203 formatter.field("ident", Print::ref_cast(val));
3204 }
3205 formatter.field("mac", Lite(&_val.mac));
3206 if let Some(val) = &_val.semi_token {
3207 #[derive(RefCast)]
3208 #[repr(transparent)]
3209 struct Print(syn::token::Semi);
3210 impl Debug for Print {
3211 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3212 formatter.write_str("Some")?;
3213 Ok(())
3214 }
3215 }
3216 formatter.field("semi_token", Print::ref_cast(val));
3217 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003218 formatter.finish()
3219 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003220 syn::Item::Macro2(_val) => {
3221 let mut formatter = formatter.debug_struct("Item::Macro2");
David Tolnaycaac6272019-05-09 11:26:37 -07003222 if !_val.attrs.is_empty() {
3223 formatter.field("attrs", Lite(&_val.attrs));
3224 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003225 formatter.field("vis", Lite(&_val.vis));
3226 formatter.field("ident", Lite(&_val.ident));
3227 formatter.field("args", Lite(&_val.args));
3228 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003229 formatter.finish()
3230 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003231 syn::Item::Verbatim(_val) => {
3232 let mut formatter = formatter.debug_struct("Item::Verbatim");
3233 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003234 formatter.finish()
3235 }
3236 }
3237 }
3238}
3239impl Debug for Lite<syn::ItemConst> {
3240 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003241 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003242 let mut formatter = formatter.debug_struct("ItemConst");
David Tolnaycaac6272019-05-09 11:26:37 -07003243 if !_val.attrs.is_empty() {
3244 formatter.field("attrs", Lite(&_val.attrs));
3245 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003246 formatter.field("vis", Lite(&_val.vis));
3247 formatter.field("ident", Lite(&_val.ident));
3248 formatter.field("ty", Lite(&_val.ty));
3249 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003250 formatter.finish()
3251 }
3252}
3253impl Debug for Lite<syn::ItemEnum> {
3254 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003255 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003256 let mut formatter = formatter.debug_struct("ItemEnum");
David Tolnaycaac6272019-05-09 11:26:37 -07003257 if !_val.attrs.is_empty() {
3258 formatter.field("attrs", Lite(&_val.attrs));
3259 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003260 formatter.field("vis", Lite(&_val.vis));
3261 formatter.field("ident", Lite(&_val.ident));
3262 formatter.field("generics", Lite(&_val.generics));
David Tolnaycaac6272019-05-09 11:26:37 -07003263 if !_val.variants.is_empty() {
3264 formatter.field("variants", Lite(&_val.variants));
3265 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003266 formatter.finish()
3267 }
3268}
3269impl Debug for Lite<syn::ItemExistential> {
3270 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003271 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003272 let mut formatter = formatter.debug_struct("ItemExistential");
David Tolnaycaac6272019-05-09 11:26:37 -07003273 if !_val.attrs.is_empty() {
3274 formatter.field("attrs", Lite(&_val.attrs));
3275 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003276 formatter.field("vis", Lite(&_val.vis));
3277 formatter.field("ident", Lite(&_val.ident));
3278 formatter.field("generics", Lite(&_val.generics));
3279 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003280 #[derive(RefCast)]
3281 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003282 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003283 impl Debug for Print {
3284 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003285 formatter.write_str("Some")?;
3286 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003287 }
3288 }
David Tolnay644246b2019-05-08 23:02:46 -07003289 formatter.field("colon_token", Print::ref_cast(val));
3290 }
David Tolnaycaac6272019-05-09 11:26:37 -07003291 if !_val.bounds.is_empty() {
3292 formatter.field("bounds", Lite(&_val.bounds));
3293 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003294 formatter.finish()
3295 }
3296}
3297impl Debug for Lite<syn::ItemExternCrate> {
3298 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003299 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003300 let mut formatter = formatter.debug_struct("ItemExternCrate");
David Tolnaycaac6272019-05-09 11:26:37 -07003301 if !_val.attrs.is_empty() {
3302 formatter.field("attrs", Lite(&_val.attrs));
3303 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003304 formatter.field("vis", Lite(&_val.vis));
3305 formatter.field("ident", Lite(&_val.ident));
3306 if let Some(val) = &_val.rename {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003307 #[derive(RefCast)]
3308 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003309 struct Print((syn::token::As, proc_macro2::Ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003310 impl Debug for Print {
3311 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003312 formatter.write_str("Some")?;
3313 let _val = &self.0;
3314 formatter.write_str("(")?;
3315 Debug::fmt(Lite(&_val.1), formatter)?;
3316 formatter.write_str(")")?;
3317 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003318 }
3319 }
David Tolnay644246b2019-05-08 23:02:46 -07003320 formatter.field("rename", Print::ref_cast(val));
3321 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003322 formatter.finish()
3323 }
3324}
3325impl Debug for Lite<syn::ItemFn> {
3326 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003327 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003328 let mut formatter = formatter.debug_struct("ItemFn");
David Tolnaycaac6272019-05-09 11:26:37 -07003329 if !_val.attrs.is_empty() {
3330 formatter.field("attrs", Lite(&_val.attrs));
3331 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003332 formatter.field("vis", Lite(&_val.vis));
3333 if let Some(val) = &_val.constness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003334 #[derive(RefCast)]
3335 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003336 struct Print(syn::token::Const);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003337 impl Debug for Print {
3338 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003339 formatter.write_str("Some")?;
3340 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003341 }
3342 }
David Tolnay644246b2019-05-08 23:02:46 -07003343 formatter.field("constness", Print::ref_cast(val));
3344 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003345 if let Some(val) = &_val.asyncness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003346 #[derive(RefCast)]
3347 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003348 struct Print(syn::token::Async);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003349 impl Debug for Print {
3350 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003351 formatter.write_str("Some")?;
3352 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003353 }
3354 }
David Tolnay644246b2019-05-08 23:02:46 -07003355 formatter.field("asyncness", Print::ref_cast(val));
3356 }
David Tolnayb72388c2019-06-09 02:40:35 -07003357 if let Some(val) = &_val.unsafety {
3358 #[derive(RefCast)]
3359 #[repr(transparent)]
3360 struct Print(syn::token::Unsafe);
3361 impl Debug for Print {
3362 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3363 formatter.write_str("Some")?;
3364 Ok(())
3365 }
3366 }
3367 formatter.field("unsafety", Print::ref_cast(val));
3368 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003369 if let Some(val) = &_val.abi {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003370 #[derive(RefCast)]
3371 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003372 struct Print(syn::Abi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003373 impl Debug for Print {
3374 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003375 formatter.write_str("Some")?;
3376 let _val = &self.0;
3377 formatter.write_str("(")?;
3378 Debug::fmt(Lite(_val), formatter)?;
3379 formatter.write_str(")")?;
3380 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003381 }
3382 }
David Tolnay644246b2019-05-08 23:02:46 -07003383 formatter.field("abi", Print::ref_cast(val));
3384 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003385 formatter.field("ident", Lite(&_val.ident));
3386 formatter.field("decl", Lite(&_val.decl));
3387 formatter.field("block", Lite(&_val.block));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003388 formatter.finish()
3389 }
3390}
3391impl Debug for Lite<syn::ItemForeignMod> {
3392 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003393 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003394 let mut formatter = formatter.debug_struct("ItemForeignMod");
David Tolnaycaac6272019-05-09 11:26:37 -07003395 if !_val.attrs.is_empty() {
3396 formatter.field("attrs", Lite(&_val.attrs));
3397 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003398 formatter.field("abi", Lite(&_val.abi));
David Tolnaycaac6272019-05-09 11:26:37 -07003399 if !_val.items.is_empty() {
3400 formatter.field("items", Lite(&_val.items));
3401 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003402 formatter.finish()
3403 }
3404}
3405impl Debug for Lite<syn::ItemImpl> {
3406 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003407 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003408 let mut formatter = formatter.debug_struct("ItemImpl");
David Tolnaycaac6272019-05-09 11:26:37 -07003409 if !_val.attrs.is_empty() {
3410 formatter.field("attrs", Lite(&_val.attrs));
3411 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003412 if let Some(val) = &_val.defaultness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003413 #[derive(RefCast)]
3414 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003415 struct Print(syn::token::Default);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003416 impl Debug for Print {
3417 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003418 formatter.write_str("Some")?;
3419 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003420 }
3421 }
David Tolnay644246b2019-05-08 23:02:46 -07003422 formatter.field("defaultness", Print::ref_cast(val));
3423 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003424 if let Some(val) = &_val.unsafety {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003425 #[derive(RefCast)]
3426 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003427 struct Print(syn::token::Unsafe);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003428 impl Debug for Print {
3429 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003430 formatter.write_str("Some")?;
3431 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003432 }
3433 }
David Tolnay644246b2019-05-08 23:02:46 -07003434 formatter.field("unsafety", Print::ref_cast(val));
3435 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003436 formatter.field("generics", Lite(&_val.generics));
3437 if let Some(val) = &_val.trait_ {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003438 #[derive(RefCast)]
3439 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003440 struct Print((Option<syn::token::Bang>, syn::Path, syn::token::For));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003441 impl Debug for Print {
3442 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003443 formatter.write_str("Some")?;
3444 let _val = &self.0;
3445 formatter.write_str("(")?;
3446 Debug::fmt(
3447 &(
3448 {
3449 #[derive(RefCast)]
3450 #[repr(transparent)]
3451 struct Print(Option<syn::token::Bang>);
3452 impl Debug for Print {
3453 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3454 match &self.0 {
3455 Some(_val) => {
3456 formatter.write_str("Some")?;
3457 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003458 }
David Tolnay644246b2019-05-08 23:02:46 -07003459 None => formatter.write_str("None"),
David Tolnay3c3c7d12019-05-08 14:54:12 -07003460 }
David Tolnay644246b2019-05-08 23:02:46 -07003461 }
3462 }
3463 Print::ref_cast(&_val.0)
3464 },
3465 Lite(&_val.1),
3466 ),
3467 formatter,
3468 )?;
3469 formatter.write_str(")")?;
3470 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003471 }
3472 }
David Tolnay644246b2019-05-08 23:02:46 -07003473 formatter.field("trait_", Print::ref_cast(val));
3474 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003475 formatter.field("self_ty", Lite(&_val.self_ty));
David Tolnaycaac6272019-05-09 11:26:37 -07003476 if !_val.items.is_empty() {
3477 formatter.field("items", Lite(&_val.items));
3478 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003479 formatter.finish()
3480 }
3481}
3482impl Debug for Lite<syn::ItemMacro> {
3483 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003484 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003485 let mut formatter = formatter.debug_struct("ItemMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07003486 if !_val.attrs.is_empty() {
3487 formatter.field("attrs", Lite(&_val.attrs));
3488 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003489 if let Some(val) = &_val.ident {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003490 #[derive(RefCast)]
3491 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003492 struct Print(proc_macro2::Ident);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003493 impl Debug for Print {
3494 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003495 formatter.write_str("Some")?;
3496 let _val = &self.0;
3497 formatter.write_str("(")?;
3498 Debug::fmt(Lite(_val), formatter)?;
3499 formatter.write_str(")")?;
3500 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003501 }
3502 }
David Tolnay644246b2019-05-08 23:02:46 -07003503 formatter.field("ident", Print::ref_cast(val));
3504 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003505 formatter.field("mac", Lite(&_val.mac));
3506 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003507 #[derive(RefCast)]
3508 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003509 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003510 impl Debug for Print {
3511 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003512 formatter.write_str("Some")?;
3513 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003514 }
3515 }
David Tolnay644246b2019-05-08 23:02:46 -07003516 formatter.field("semi_token", Print::ref_cast(val));
3517 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003518 formatter.finish()
3519 }
3520}
3521impl Debug for Lite<syn::ItemMacro2> {
3522 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003523 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003524 let mut formatter = formatter.debug_struct("ItemMacro2");
David Tolnaycaac6272019-05-09 11:26:37 -07003525 if !_val.attrs.is_empty() {
3526 formatter.field("attrs", Lite(&_val.attrs));
3527 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003528 formatter.field("vis", Lite(&_val.vis));
3529 formatter.field("ident", Lite(&_val.ident));
3530 formatter.field("args", Lite(&_val.args));
3531 formatter.field("body", Lite(&_val.body));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003532 formatter.finish()
3533 }
3534}
3535impl Debug for Lite<syn::ItemMod> {
3536 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003537 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003538 let mut formatter = formatter.debug_struct("ItemMod");
David Tolnaycaac6272019-05-09 11:26:37 -07003539 if !_val.attrs.is_empty() {
3540 formatter.field("attrs", Lite(&_val.attrs));
3541 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003542 formatter.field("vis", Lite(&_val.vis));
3543 formatter.field("ident", Lite(&_val.ident));
3544 if let Some(val) = &_val.content {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003545 #[derive(RefCast)]
3546 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003547 struct Print((syn::token::Brace, Vec<syn::Item>));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003548 impl Debug for Print {
3549 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003550 formatter.write_str("Some")?;
3551 let _val = &self.0;
3552 formatter.write_str("(")?;
3553 Debug::fmt(Lite(&_val.1), formatter)?;
3554 formatter.write_str(")")?;
3555 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003556 }
3557 }
David Tolnay644246b2019-05-08 23:02:46 -07003558 formatter.field("content", Print::ref_cast(val));
3559 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003560 if let Some(val) = &_val.semi {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003561 #[derive(RefCast)]
3562 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003563 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003564 impl Debug for Print {
3565 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003566 formatter.write_str("Some")?;
3567 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003568 }
3569 }
David Tolnay644246b2019-05-08 23:02:46 -07003570 formatter.field("semi", Print::ref_cast(val));
3571 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003572 formatter.finish()
3573 }
3574}
3575impl Debug for Lite<syn::ItemStatic> {
3576 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003577 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003578 let mut formatter = formatter.debug_struct("ItemStatic");
David Tolnaycaac6272019-05-09 11:26:37 -07003579 if !_val.attrs.is_empty() {
3580 formatter.field("attrs", Lite(&_val.attrs));
3581 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003582 formatter.field("vis", Lite(&_val.vis));
3583 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003584 #[derive(RefCast)]
3585 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003586 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003587 impl Debug for Print {
3588 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003589 formatter.write_str("Some")?;
3590 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003591 }
3592 }
David Tolnay644246b2019-05-08 23:02:46 -07003593 formatter.field("mutability", Print::ref_cast(val));
3594 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003595 formatter.field("ident", Lite(&_val.ident));
3596 formatter.field("ty", Lite(&_val.ty));
3597 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003598 formatter.finish()
3599 }
3600}
3601impl Debug for Lite<syn::ItemStruct> {
3602 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003603 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003604 let mut formatter = formatter.debug_struct("ItemStruct");
David Tolnaycaac6272019-05-09 11:26:37 -07003605 if !_val.attrs.is_empty() {
3606 formatter.field("attrs", Lite(&_val.attrs));
3607 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003608 formatter.field("vis", Lite(&_val.vis));
3609 formatter.field("ident", Lite(&_val.ident));
3610 formatter.field("generics", Lite(&_val.generics));
3611 formatter.field("fields", Lite(&_val.fields));
3612 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003613 #[derive(RefCast)]
3614 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003615 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003616 impl Debug for Print {
3617 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003618 formatter.write_str("Some")?;
3619 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003620 }
3621 }
David Tolnay644246b2019-05-08 23:02:46 -07003622 formatter.field("semi_token", Print::ref_cast(val));
3623 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003624 formatter.finish()
3625 }
3626}
3627impl Debug for Lite<syn::ItemTrait> {
3628 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003629 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003630 let mut formatter = formatter.debug_struct("ItemTrait");
David Tolnaycaac6272019-05-09 11:26:37 -07003631 if !_val.attrs.is_empty() {
3632 formatter.field("attrs", Lite(&_val.attrs));
3633 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003634 formatter.field("vis", Lite(&_val.vis));
3635 if let Some(val) = &_val.unsafety {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003636 #[derive(RefCast)]
3637 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003638 struct Print(syn::token::Unsafe);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003639 impl Debug for Print {
3640 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003641 formatter.write_str("Some")?;
3642 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003643 }
3644 }
David Tolnay644246b2019-05-08 23:02:46 -07003645 formatter.field("unsafety", Print::ref_cast(val));
3646 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003647 if let Some(val) = &_val.auto_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003648 #[derive(RefCast)]
3649 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003650 struct Print(syn::token::Auto);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003651 impl Debug for Print {
3652 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003653 formatter.write_str("Some")?;
3654 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003655 }
3656 }
David Tolnay644246b2019-05-08 23:02:46 -07003657 formatter.field("auto_token", Print::ref_cast(val));
3658 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003659 formatter.field("ident", Lite(&_val.ident));
3660 formatter.field("generics", Lite(&_val.generics));
3661 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003662 #[derive(RefCast)]
3663 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003664 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003665 impl Debug for Print {
3666 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003667 formatter.write_str("Some")?;
3668 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003669 }
3670 }
David Tolnay644246b2019-05-08 23:02:46 -07003671 formatter.field("colon_token", Print::ref_cast(val));
3672 }
David Tolnaycaac6272019-05-09 11:26:37 -07003673 if !_val.supertraits.is_empty() {
3674 formatter.field("supertraits", Lite(&_val.supertraits));
3675 }
3676 if !_val.items.is_empty() {
3677 formatter.field("items", Lite(&_val.items));
3678 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003679 formatter.finish()
3680 }
3681}
3682impl Debug for Lite<syn::ItemTraitAlias> {
3683 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003684 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003685 let mut formatter = formatter.debug_struct("ItemTraitAlias");
David Tolnaycaac6272019-05-09 11:26:37 -07003686 if !_val.attrs.is_empty() {
3687 formatter.field("attrs", Lite(&_val.attrs));
3688 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003689 formatter.field("vis", Lite(&_val.vis));
3690 formatter.field("ident", Lite(&_val.ident));
3691 formatter.field("generics", Lite(&_val.generics));
David Tolnaycaac6272019-05-09 11:26:37 -07003692 if !_val.bounds.is_empty() {
3693 formatter.field("bounds", Lite(&_val.bounds));
3694 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003695 formatter.finish()
3696 }
3697}
3698impl Debug for Lite<syn::ItemType> {
3699 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003700 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003701 let mut formatter = formatter.debug_struct("ItemType");
David Tolnaycaac6272019-05-09 11:26:37 -07003702 if !_val.attrs.is_empty() {
3703 formatter.field("attrs", Lite(&_val.attrs));
3704 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003705 formatter.field("vis", Lite(&_val.vis));
3706 formatter.field("ident", Lite(&_val.ident));
3707 formatter.field("generics", Lite(&_val.generics));
3708 formatter.field("ty", Lite(&_val.ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003709 formatter.finish()
3710 }
3711}
3712impl Debug for Lite<syn::ItemUnion> {
3713 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003714 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003715 let mut formatter = formatter.debug_struct("ItemUnion");
David Tolnaycaac6272019-05-09 11:26:37 -07003716 if !_val.attrs.is_empty() {
3717 formatter.field("attrs", Lite(&_val.attrs));
3718 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003719 formatter.field("vis", Lite(&_val.vis));
3720 formatter.field("ident", Lite(&_val.ident));
3721 formatter.field("generics", Lite(&_val.generics));
3722 formatter.field("fields", Lite(&_val.fields));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003723 formatter.finish()
3724 }
3725}
3726impl Debug for Lite<syn::ItemUse> {
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("ItemUse");
David Tolnaycaac6272019-05-09 11:26:37 -07003730 if !_val.attrs.is_empty() {
3731 formatter.field("attrs", Lite(&_val.attrs));
3732 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003733 formatter.field("vis", Lite(&_val.vis));
3734 if let Some(val) = &_val.leading_colon {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003735 #[derive(RefCast)]
3736 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003737 struct Print(syn::token::Colon2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003738 impl Debug for Print {
3739 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003740 formatter.write_str("Some")?;
3741 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003742 }
3743 }
David Tolnay644246b2019-05-08 23:02:46 -07003744 formatter.field("leading_colon", Print::ref_cast(val));
3745 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003746 formatter.field("tree", Lite(&_val.tree));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003747 formatter.finish()
3748 }
3749}
3750impl Debug for Lite<syn::ItemVerbatim> {
3751 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003752 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003753 let mut formatter = formatter.debug_struct("ItemVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07003754 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003755 formatter.finish()
3756 }
3757}
3758impl Debug for Lite<syn::Label> {
3759 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003760 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003761 let mut formatter = formatter.debug_struct("Label");
David Tolnay5302f0e2019-05-08 23:26:18 -07003762 formatter.field("name", Lite(&_val.name));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003763 formatter.finish()
3764 }
3765}
3766impl Debug for Lite<syn::Lifetime> {
3767 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003768 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003769 let mut formatter = formatter.debug_struct("Lifetime");
David Tolnay5302f0e2019-05-08 23:26:18 -07003770 formatter.field("ident", Lite(&_val.ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003771 formatter.finish()
3772 }
3773}
3774impl Debug for Lite<syn::LifetimeDef> {
3775 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003776 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003777 let mut formatter = formatter.debug_struct("LifetimeDef");
David Tolnaycaac6272019-05-09 11:26:37 -07003778 if !_val.attrs.is_empty() {
3779 formatter.field("attrs", Lite(&_val.attrs));
3780 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003781 formatter.field("lifetime", Lite(&_val.lifetime));
3782 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003783 #[derive(RefCast)]
3784 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003785 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07003786 impl Debug for Print {
3787 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003788 formatter.write_str("Some")?;
3789 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003790 }
3791 }
David Tolnay644246b2019-05-08 23:02:46 -07003792 formatter.field("colon_token", Print::ref_cast(val));
3793 }
David Tolnaycaac6272019-05-09 11:26:37 -07003794 if !_val.bounds.is_empty() {
3795 formatter.field("bounds", Lite(&_val.bounds));
3796 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003797 formatter.finish()
3798 }
3799}
3800impl Debug for Lite<syn::Lit> {
3801 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003802 let _val = &self.value;
3803 match _val {
3804 syn::Lit::Str(_val) => write!(formatter, "{:?}", _val.value()),
3805 syn::Lit::ByteStr(_val) => write!(formatter, "{:?}", _val.value()),
3806 syn::Lit::Byte(_val) => write!(formatter, "{:?}", _val.value()),
3807 syn::Lit::Char(_val) => write!(formatter, "{:?}", _val.value()),
3808 syn::Lit::Int(_val) => write!(formatter, "{:?}", _val.value()),
3809 syn::Lit::Float(_val) => write!(formatter, "{:?}", _val.value()),
3810 syn::Lit::Bool(_val) => {
3811 let mut formatter = formatter.debug_struct("Lit::Bool");
3812 formatter.field("value", Lite(&_val.value));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003813 formatter.finish()
3814 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003815 syn::Lit::Verbatim(_val) => {
3816 let mut formatter = formatter.debug_struct("Lit::Verbatim");
3817 formatter.field("token", Lite(&_val.token));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003818 formatter.finish()
3819 }
3820 }
3821 }
3822}
3823impl Debug for Lite<syn::LitBool> {
3824 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003825 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003826 let mut formatter = formatter.debug_struct("LitBool");
David Tolnay5302f0e2019-05-08 23:26:18 -07003827 formatter.field("value", Lite(&_val.value));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003828 formatter.finish()
3829 }
3830}
3831impl Debug for Lite<syn::LitByte> {
3832 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003833 let _val = &self.value;
3834 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003835 }
3836}
3837impl Debug for Lite<syn::LitByteStr> {
3838 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003839 let _val = &self.value;
3840 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003841 }
3842}
3843impl Debug for Lite<syn::LitChar> {
3844 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003845 let _val = &self.value;
3846 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003847 }
3848}
3849impl Debug for Lite<syn::LitFloat> {
3850 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003851 let _val = &self.value;
3852 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003853 }
3854}
3855impl Debug for Lite<syn::LitInt> {
3856 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003857 let _val = &self.value;
3858 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003859 }
3860}
3861impl Debug for Lite<syn::LitStr> {
3862 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003863 let _val = &self.value;
3864 write!(formatter, "{:?}", _val.value())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003865 }
3866}
3867impl Debug for Lite<syn::LitVerbatim> {
3868 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003869 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003870 let mut formatter = formatter.debug_struct("LitVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07003871 formatter.field("token", Lite(&_val.token));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003872 formatter.finish()
3873 }
3874}
3875impl Debug for Lite<syn::Local> {
3876 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003877 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003878 let mut formatter = formatter.debug_struct("Local");
David Tolnaycaac6272019-05-09 11:26:37 -07003879 if !_val.attrs.is_empty() {
3880 formatter.field("attrs", Lite(&_val.attrs));
3881 }
3882 if !_val.pats.is_empty() {
3883 formatter.field("pats", Lite(&_val.pats));
3884 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003885 if let Some(val) = &_val.ty {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003886 #[derive(RefCast)]
3887 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003888 struct Print((syn::token::Colon, Box<syn::Type>));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003889 impl Debug for Print {
3890 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003891 formatter.write_str("Some")?;
3892 let _val = &self.0;
3893 formatter.write_str("(")?;
3894 Debug::fmt(Lite(&_val.1), formatter)?;
3895 formatter.write_str(")")?;
3896 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003897 }
3898 }
David Tolnay644246b2019-05-08 23:02:46 -07003899 formatter.field("ty", Print::ref_cast(val));
3900 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003901 if let Some(val) = &_val.init {
David Tolnay3c3c7d12019-05-08 14:54:12 -07003902 #[derive(RefCast)]
3903 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07003904 struct Print((syn::token::Eq, Box<syn::Expr>));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003905 impl Debug for Print {
3906 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07003907 formatter.write_str("Some")?;
3908 let _val = &self.0;
3909 formatter.write_str("(")?;
3910 Debug::fmt(Lite(&_val.1), formatter)?;
3911 formatter.write_str(")")?;
3912 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003913 }
3914 }
David Tolnay644246b2019-05-08 23:02:46 -07003915 formatter.field("init", Print::ref_cast(val));
3916 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003917 formatter.finish()
3918 }
3919}
3920impl Debug for Lite<syn::Macro> {
3921 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003922 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07003923 let mut formatter = formatter.debug_struct("Macro");
David Tolnay5302f0e2019-05-08 23:26:18 -07003924 formatter.field("path", Lite(&_val.path));
3925 formatter.field("delimiter", Lite(&_val.delimiter));
3926 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003927 formatter.finish()
3928 }
3929}
3930impl Debug for Lite<syn::MacroDelimiter> {
3931 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003932 let _val = &self.value;
3933 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07003934 syn::MacroDelimiter::Paren(_val) => {
3935 formatter.write_str("Paren")?;
3936 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003937 }
David Tolnay32245a92019-05-09 12:32:15 -07003938 syn::MacroDelimiter::Brace(_val) => {
3939 formatter.write_str("Brace")?;
3940 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003941 }
David Tolnay32245a92019-05-09 12:32:15 -07003942 syn::MacroDelimiter::Bracket(_val) => {
3943 formatter.write_str("Bracket")?;
3944 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003945 }
3946 }
3947 }
3948}
3949impl Debug for Lite<syn::Member> {
3950 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003951 let _val = &self.value;
3952 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07003953 syn::Member::Named(_val) => {
3954 formatter.write_str("Named")?;
3955 formatter.write_str("(")?;
3956 Debug::fmt(Lite(_val), formatter)?;
3957 formatter.write_str(")")?;
3958 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003959 }
David Tolnay32245a92019-05-09 12:32:15 -07003960 syn::Member::Unnamed(_val) => {
3961 formatter.write_str("Unnamed")?;
3962 formatter.write_str("(")?;
3963 Debug::fmt(Lite(_val), formatter)?;
3964 formatter.write_str(")")?;
3965 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003966 }
3967 }
3968 }
3969}
3970impl Debug for Lite<syn::Meta> {
3971 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07003972 let _val = &self.value;
3973 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07003974 syn::Meta::Word(_val) => {
3975 formatter.write_str("Word")?;
3976 formatter.write_str("(")?;
3977 Debug::fmt(Lite(_val), formatter)?;
3978 formatter.write_str(")")?;
3979 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07003980 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003981 syn::Meta::List(_val) => {
3982 let mut formatter = formatter.debug_struct("Meta::List");
3983 formatter.field("ident", Lite(&_val.ident));
David Tolnaycaac6272019-05-09 11:26:37 -07003984 if !_val.nested.is_empty() {
3985 formatter.field("nested", Lite(&_val.nested));
3986 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07003987 formatter.finish()
3988 }
David Tolnay5302f0e2019-05-08 23:26:18 -07003989 syn::Meta::NameValue(_val) => {
3990 let mut formatter = formatter.debug_struct("Meta::NameValue");
3991 formatter.field("ident", Lite(&_val.ident));
3992 formatter.field("lit", Lite(&_val.lit));
David Tolnay3c3c7d12019-05-08 14:54:12 -07003993 formatter.finish()
3994 }
3995 }
3996 }
3997}
3998impl Debug for Lite<syn::MetaList> {
3999 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004000 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004001 let mut formatter = formatter.debug_struct("MetaList");
David Tolnay5302f0e2019-05-08 23:26:18 -07004002 formatter.field("ident", Lite(&_val.ident));
David Tolnaycaac6272019-05-09 11:26:37 -07004003 if !_val.nested.is_empty() {
4004 formatter.field("nested", Lite(&_val.nested));
4005 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004006 formatter.finish()
4007 }
4008}
4009impl Debug for Lite<syn::MetaNameValue> {
4010 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004011 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004012 let mut formatter = formatter.debug_struct("MetaNameValue");
David Tolnay5302f0e2019-05-08 23:26:18 -07004013 formatter.field("ident", Lite(&_val.ident));
4014 formatter.field("lit", Lite(&_val.lit));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004015 formatter.finish()
4016 }
4017}
4018impl Debug for Lite<syn::MethodSig> {
4019 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004020 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004021 let mut formatter = formatter.debug_struct("MethodSig");
David Tolnay5302f0e2019-05-08 23:26:18 -07004022 if let Some(val) = &_val.constness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004023 #[derive(RefCast)]
4024 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004025 struct Print(syn::token::Const);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004026 impl Debug for Print {
4027 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004028 formatter.write_str("Some")?;
4029 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004030 }
4031 }
David Tolnay644246b2019-05-08 23:02:46 -07004032 formatter.field("constness", Print::ref_cast(val));
4033 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004034 if let Some(val) = &_val.asyncness {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004035 #[derive(RefCast)]
4036 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004037 struct Print(syn::token::Async);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004038 impl Debug for Print {
4039 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004040 formatter.write_str("Some")?;
4041 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004042 }
4043 }
David Tolnay644246b2019-05-08 23:02:46 -07004044 formatter.field("asyncness", Print::ref_cast(val));
4045 }
David Tolnayb72388c2019-06-09 02:40:35 -07004046 if let Some(val) = &_val.unsafety {
4047 #[derive(RefCast)]
4048 #[repr(transparent)]
4049 struct Print(syn::token::Unsafe);
4050 impl Debug for Print {
4051 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4052 formatter.write_str("Some")?;
4053 Ok(())
4054 }
4055 }
4056 formatter.field("unsafety", Print::ref_cast(val));
4057 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004058 if let Some(val) = &_val.abi {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004059 #[derive(RefCast)]
4060 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004061 struct Print(syn::Abi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004062 impl Debug for Print {
4063 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004064 formatter.write_str("Some")?;
4065 let _val = &self.0;
4066 formatter.write_str("(")?;
4067 Debug::fmt(Lite(_val), formatter)?;
4068 formatter.write_str(")")?;
4069 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004070 }
4071 }
David Tolnay644246b2019-05-08 23:02:46 -07004072 formatter.field("abi", Print::ref_cast(val));
4073 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004074 formatter.field("ident", Lite(&_val.ident));
4075 formatter.field("decl", Lite(&_val.decl));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004076 formatter.finish()
4077 }
4078}
4079impl Debug for Lite<syn::MethodTurbofish> {
4080 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004081 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004082 let mut formatter = formatter.debug_struct("MethodTurbofish");
David Tolnaycaac6272019-05-09 11:26:37 -07004083 if !_val.args.is_empty() {
4084 formatter.field("args", Lite(&_val.args));
4085 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004086 formatter.finish()
4087 }
4088}
4089impl Debug for Lite<syn::NestedMeta> {
4090 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004091 let _val = &self.value;
4092 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07004093 syn::NestedMeta::Meta(_val) => {
4094 formatter.write_str("Meta")?;
4095 formatter.write_str("(")?;
4096 Debug::fmt(Lite(_val), formatter)?;
4097 formatter.write_str(")")?;
4098 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004099 }
David Tolnay32245a92019-05-09 12:32:15 -07004100 syn::NestedMeta::Literal(_val) => {
4101 formatter.write_str("Literal")?;
4102 formatter.write_str("(")?;
4103 Debug::fmt(Lite(_val), formatter)?;
4104 formatter.write_str(")")?;
4105 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004106 }
4107 }
4108 }
4109}
4110impl Debug for Lite<syn::ParenthesizedGenericArguments> {
4111 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004112 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004113 let mut formatter = formatter.debug_struct("ParenthesizedGenericArguments");
David Tolnaycaac6272019-05-09 11:26:37 -07004114 if !_val.inputs.is_empty() {
4115 formatter.field("inputs", Lite(&_val.inputs));
4116 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004117 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004118 formatter.finish()
4119 }
4120}
4121impl Debug for Lite<syn::Pat> {
4122 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004123 let _val = &self.value;
4124 match _val {
4125 syn::Pat::Wild(_val) => {
4126 let mut formatter = formatter.debug_struct("Pat::Wild");
David Tolnay3c3c7d12019-05-08 14:54:12 -07004127 formatter.finish()
4128 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004129 syn::Pat::Ident(_val) => {
4130 let mut formatter = formatter.debug_struct("Pat::Ident");
4131 if let Some(val) = &_val.by_ref {
4132 #[derive(RefCast)]
4133 #[repr(transparent)]
4134 struct Print(syn::token::Ref);
4135 impl Debug for Print {
4136 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4137 formatter.write_str("Some")?;
4138 Ok(())
4139 }
4140 }
4141 formatter.field("by_ref", Print::ref_cast(val));
4142 }
4143 if let Some(val) = &_val.mutability {
4144 #[derive(RefCast)]
4145 #[repr(transparent)]
4146 struct Print(syn::token::Mut);
4147 impl Debug for Print {
4148 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4149 formatter.write_str("Some")?;
4150 Ok(())
4151 }
4152 }
4153 formatter.field("mutability", Print::ref_cast(val));
4154 }
4155 formatter.field("ident", Lite(&_val.ident));
4156 if let Some(val) = &_val.subpat {
4157 #[derive(RefCast)]
4158 #[repr(transparent)]
4159 struct Print((syn::token::At, Box<syn::Pat>));
4160 impl Debug for Print {
4161 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4162 formatter.write_str("Some")?;
4163 let _val = &self.0;
4164 formatter.write_str("(")?;
4165 Debug::fmt(Lite(&_val.1), formatter)?;
4166 formatter.write_str(")")?;
4167 Ok(())
4168 }
4169 }
4170 formatter.field("subpat", Print::ref_cast(val));
4171 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004172 formatter.finish()
4173 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004174 syn::Pat::Struct(_val) => {
4175 let mut formatter = formatter.debug_struct("Pat::Struct");
4176 formatter.field("path", Lite(&_val.path));
David Tolnaycaac6272019-05-09 11:26:37 -07004177 if !_val.fields.is_empty() {
4178 formatter.field("fields", Lite(&_val.fields));
4179 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004180 if let Some(val) = &_val.dot2_token {
4181 #[derive(RefCast)]
4182 #[repr(transparent)]
4183 struct Print(syn::token::Dot2);
4184 impl Debug for Print {
4185 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4186 formatter.write_str("Some")?;
4187 Ok(())
4188 }
4189 }
4190 formatter.field("dot2_token", Print::ref_cast(val));
4191 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004192 formatter.finish()
4193 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004194 syn::Pat::TupleStruct(_val) => {
4195 let mut formatter = formatter.debug_struct("Pat::TupleStruct");
4196 formatter.field("path", Lite(&_val.path));
4197 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004198 formatter.finish()
4199 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004200 syn::Pat::Path(_val) => {
4201 let mut formatter = formatter.debug_struct("Pat::Path");
4202 if let Some(val) = &_val.qself {
4203 #[derive(RefCast)]
4204 #[repr(transparent)]
4205 struct Print(syn::QSelf);
4206 impl Debug for Print {
4207 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4208 formatter.write_str("Some")?;
4209 let _val = &self.0;
4210 formatter.write_str("(")?;
4211 Debug::fmt(Lite(_val), formatter)?;
4212 formatter.write_str(")")?;
4213 Ok(())
4214 }
4215 }
4216 formatter.field("qself", Print::ref_cast(val));
4217 }
4218 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004219 formatter.finish()
4220 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004221 syn::Pat::Tuple(_val) => {
4222 let mut formatter = formatter.debug_struct("Pat::Tuple");
David Tolnaycaac6272019-05-09 11:26:37 -07004223 if !_val.front.is_empty() {
4224 formatter.field("front", Lite(&_val.front));
4225 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004226 if let Some(val) = &_val.dot2_token {
4227 #[derive(RefCast)]
4228 #[repr(transparent)]
4229 struct Print(syn::token::Dot2);
4230 impl Debug for Print {
4231 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4232 formatter.write_str("Some")?;
4233 Ok(())
4234 }
4235 }
4236 formatter.field("dot2_token", Print::ref_cast(val));
4237 }
4238 if let Some(val) = &_val.comma_token {
4239 #[derive(RefCast)]
4240 #[repr(transparent)]
4241 struct Print(syn::token::Comma);
4242 impl Debug for Print {
4243 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4244 formatter.write_str("Some")?;
4245 Ok(())
4246 }
4247 }
4248 formatter.field("comma_token", Print::ref_cast(val));
4249 }
David Tolnaycaac6272019-05-09 11:26:37 -07004250 if !_val.back.is_empty() {
4251 formatter.field("back", Lite(&_val.back));
4252 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004253 formatter.finish()
4254 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004255 syn::Pat::Box(_val) => {
4256 let mut formatter = formatter.debug_struct("Pat::Box");
4257 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004258 formatter.finish()
4259 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004260 syn::Pat::Ref(_val) => {
4261 let mut formatter = formatter.debug_struct("Pat::Ref");
4262 if let Some(val) = &_val.mutability {
4263 #[derive(RefCast)]
4264 #[repr(transparent)]
4265 struct Print(syn::token::Mut);
4266 impl Debug for Print {
4267 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4268 formatter.write_str("Some")?;
4269 Ok(())
4270 }
4271 }
4272 formatter.field("mutability", Print::ref_cast(val));
4273 }
4274 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004275 formatter.finish()
4276 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004277 syn::Pat::Lit(_val) => {
4278 let mut formatter = formatter.debug_struct("Pat::Lit");
4279 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004280 formatter.finish()
4281 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004282 syn::Pat::Range(_val) => {
4283 let mut formatter = formatter.debug_struct("Pat::Range");
4284 formatter.field("lo", Lite(&_val.lo));
4285 formatter.field("limits", Lite(&_val.limits));
4286 formatter.field("hi", Lite(&_val.hi));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004287 formatter.finish()
4288 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004289 syn::Pat::Slice(_val) => {
4290 let mut formatter = formatter.debug_struct("Pat::Slice");
David Tolnaycaac6272019-05-09 11:26:37 -07004291 if !_val.front.is_empty() {
4292 formatter.field("front", Lite(&_val.front));
4293 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004294 if let Some(val) = &_val.middle {
4295 #[derive(RefCast)]
4296 #[repr(transparent)]
4297 struct Print(Box<syn::Pat>);
4298 impl Debug for Print {
4299 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4300 formatter.write_str("Some")?;
4301 let _val = &self.0;
4302 formatter.write_str("(")?;
4303 Debug::fmt(Lite(_val), formatter)?;
4304 formatter.write_str(")")?;
4305 Ok(())
4306 }
4307 }
4308 formatter.field("middle", Print::ref_cast(val));
4309 }
4310 if let Some(val) = &_val.dot2_token {
4311 #[derive(RefCast)]
4312 #[repr(transparent)]
4313 struct Print(syn::token::Dot2);
4314 impl Debug for Print {
4315 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4316 formatter.write_str("Some")?;
4317 Ok(())
4318 }
4319 }
4320 formatter.field("dot2_token", Print::ref_cast(val));
4321 }
4322 if let Some(val) = &_val.comma_token {
4323 #[derive(RefCast)]
4324 #[repr(transparent)]
4325 struct Print(syn::token::Comma);
4326 impl Debug for Print {
4327 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4328 formatter.write_str("Some")?;
4329 Ok(())
4330 }
4331 }
4332 formatter.field("comma_token", Print::ref_cast(val));
4333 }
David Tolnaycaac6272019-05-09 11:26:37 -07004334 if !_val.back.is_empty() {
4335 formatter.field("back", Lite(&_val.back));
4336 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004337 formatter.finish()
4338 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004339 syn::Pat::Macro(_val) => {
4340 let mut formatter = formatter.debug_struct("Pat::Macro");
4341 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004342 formatter.finish()
4343 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004344 syn::Pat::Verbatim(_val) => {
4345 let mut formatter = formatter.debug_struct("Pat::Verbatim");
4346 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004347 formatter.finish()
4348 }
4349 }
4350 }
4351}
4352impl Debug for Lite<syn::PatBox> {
4353 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004354 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004355 let mut formatter = formatter.debug_struct("PatBox");
David Tolnay5302f0e2019-05-08 23:26:18 -07004356 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004357 formatter.finish()
4358 }
4359}
4360impl Debug for Lite<syn::PatIdent> {
4361 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004362 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004363 let mut formatter = formatter.debug_struct("PatIdent");
David Tolnay5302f0e2019-05-08 23:26:18 -07004364 if let Some(val) = &_val.by_ref {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004365 #[derive(RefCast)]
4366 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004367 struct Print(syn::token::Ref);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004368 impl Debug for Print {
4369 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004370 formatter.write_str("Some")?;
4371 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004372 }
4373 }
David Tolnay644246b2019-05-08 23:02:46 -07004374 formatter.field("by_ref", Print::ref_cast(val));
4375 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004376 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004377 #[derive(RefCast)]
4378 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004379 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004380 impl Debug for Print {
4381 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004382 formatter.write_str("Some")?;
4383 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004384 }
4385 }
David Tolnay644246b2019-05-08 23:02:46 -07004386 formatter.field("mutability", Print::ref_cast(val));
4387 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004388 formatter.field("ident", Lite(&_val.ident));
4389 if let Some(val) = &_val.subpat {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004390 #[derive(RefCast)]
4391 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004392 struct Print((syn::token::At, Box<syn::Pat>));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004393 impl Debug for Print {
4394 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004395 formatter.write_str("Some")?;
4396 let _val = &self.0;
4397 formatter.write_str("(")?;
4398 Debug::fmt(Lite(&_val.1), formatter)?;
4399 formatter.write_str(")")?;
4400 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004401 }
4402 }
David Tolnay644246b2019-05-08 23:02:46 -07004403 formatter.field("subpat", Print::ref_cast(val));
4404 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004405 formatter.finish()
4406 }
4407}
4408impl Debug for Lite<syn::PatLit> {
4409 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004410 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004411 let mut formatter = formatter.debug_struct("PatLit");
David Tolnay5302f0e2019-05-08 23:26:18 -07004412 formatter.field("expr", Lite(&_val.expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004413 formatter.finish()
4414 }
4415}
4416impl Debug for Lite<syn::PatMacro> {
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("PatMacro");
David Tolnay5302f0e2019-05-08 23:26:18 -07004420 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004421 formatter.finish()
4422 }
4423}
4424impl Debug for Lite<syn::PatPath> {
4425 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004426 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004427 let mut formatter = formatter.debug_struct("PatPath");
David Tolnay5302f0e2019-05-08 23:26:18 -07004428 if let Some(val) = &_val.qself {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004429 #[derive(RefCast)]
4430 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004431 struct Print(syn::QSelf);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004432 impl Debug for Print {
4433 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004434 formatter.write_str("Some")?;
4435 let _val = &self.0;
4436 formatter.write_str("(")?;
4437 Debug::fmt(Lite(_val), formatter)?;
4438 formatter.write_str(")")?;
4439 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004440 }
4441 }
David Tolnay644246b2019-05-08 23:02:46 -07004442 formatter.field("qself", Print::ref_cast(val));
4443 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004444 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004445 formatter.finish()
4446 }
4447}
4448impl Debug for Lite<syn::PatRange> {
4449 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004450 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004451 let mut formatter = formatter.debug_struct("PatRange");
David Tolnay5302f0e2019-05-08 23:26:18 -07004452 formatter.field("lo", Lite(&_val.lo));
4453 formatter.field("limits", Lite(&_val.limits));
4454 formatter.field("hi", Lite(&_val.hi));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004455 formatter.finish()
4456 }
4457}
4458impl Debug for Lite<syn::PatRef> {
4459 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004460 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004461 let mut formatter = formatter.debug_struct("PatRef");
David Tolnay5302f0e2019-05-08 23:26:18 -07004462 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004463 #[derive(RefCast)]
4464 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004465 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004466 impl Debug for Print {
4467 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004468 formatter.write_str("Some")?;
4469 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004470 }
4471 }
David Tolnay644246b2019-05-08 23:02:46 -07004472 formatter.field("mutability", Print::ref_cast(val));
4473 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004474 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004475 formatter.finish()
4476 }
4477}
4478impl Debug for Lite<syn::PatSlice> {
4479 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004480 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004481 let mut formatter = formatter.debug_struct("PatSlice");
David Tolnaycaac6272019-05-09 11:26:37 -07004482 if !_val.front.is_empty() {
4483 formatter.field("front", Lite(&_val.front));
4484 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004485 if let Some(val) = &_val.middle {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004486 #[derive(RefCast)]
4487 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004488 struct Print(Box<syn::Pat>);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004489 impl Debug for Print {
4490 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004491 formatter.write_str("Some")?;
4492 let _val = &self.0;
4493 formatter.write_str("(")?;
4494 Debug::fmt(Lite(_val), formatter)?;
4495 formatter.write_str(")")?;
4496 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004497 }
4498 }
David Tolnay644246b2019-05-08 23:02:46 -07004499 formatter.field("middle", Print::ref_cast(val));
4500 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004501 if let Some(val) = &_val.dot2_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004502 #[derive(RefCast)]
4503 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004504 struct Print(syn::token::Dot2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004505 impl Debug for Print {
4506 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004507 formatter.write_str("Some")?;
4508 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004509 }
4510 }
David Tolnay644246b2019-05-08 23:02:46 -07004511 formatter.field("dot2_token", Print::ref_cast(val));
4512 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004513 if let Some(val) = &_val.comma_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004514 #[derive(RefCast)]
4515 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004516 struct Print(syn::token::Comma);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004517 impl Debug for Print {
4518 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004519 formatter.write_str("Some")?;
4520 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004521 }
4522 }
David Tolnay644246b2019-05-08 23:02:46 -07004523 formatter.field("comma_token", Print::ref_cast(val));
4524 }
David Tolnaycaac6272019-05-09 11:26:37 -07004525 if !_val.back.is_empty() {
4526 formatter.field("back", Lite(&_val.back));
4527 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004528 formatter.finish()
4529 }
4530}
4531impl Debug for Lite<syn::PatStruct> {
4532 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004533 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004534 let mut formatter = formatter.debug_struct("PatStruct");
David Tolnay5302f0e2019-05-08 23:26:18 -07004535 formatter.field("path", Lite(&_val.path));
David Tolnaycaac6272019-05-09 11:26:37 -07004536 if !_val.fields.is_empty() {
4537 formatter.field("fields", Lite(&_val.fields));
4538 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004539 if let Some(val) = &_val.dot2_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004540 #[derive(RefCast)]
4541 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004542 struct Print(syn::token::Dot2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004543 impl Debug for Print {
4544 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004545 formatter.write_str("Some")?;
4546 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004547 }
4548 }
David Tolnay644246b2019-05-08 23:02:46 -07004549 formatter.field("dot2_token", Print::ref_cast(val));
4550 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004551 formatter.finish()
4552 }
4553}
4554impl Debug for Lite<syn::PatTuple> {
4555 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004556 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004557 let mut formatter = formatter.debug_struct("PatTuple");
David Tolnaycaac6272019-05-09 11:26:37 -07004558 if !_val.front.is_empty() {
4559 formatter.field("front", Lite(&_val.front));
4560 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004561 if let Some(val) = &_val.dot2_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004562 #[derive(RefCast)]
4563 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004564 struct Print(syn::token::Dot2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004565 impl Debug for Print {
4566 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004567 formatter.write_str("Some")?;
4568 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004569 }
4570 }
David Tolnay644246b2019-05-08 23:02:46 -07004571 formatter.field("dot2_token", Print::ref_cast(val));
4572 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004573 if let Some(val) = &_val.comma_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004574 #[derive(RefCast)]
4575 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004576 struct Print(syn::token::Comma);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004577 impl Debug for Print {
4578 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004579 formatter.write_str("Some")?;
4580 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004581 }
4582 }
David Tolnay644246b2019-05-08 23:02:46 -07004583 formatter.field("comma_token", Print::ref_cast(val));
4584 }
David Tolnaycaac6272019-05-09 11:26:37 -07004585 if !_val.back.is_empty() {
4586 formatter.field("back", Lite(&_val.back));
4587 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004588 formatter.finish()
4589 }
4590}
4591impl Debug for Lite<syn::PatTupleStruct> {
4592 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004593 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004594 let mut formatter = formatter.debug_struct("PatTupleStruct");
David Tolnay5302f0e2019-05-08 23:26:18 -07004595 formatter.field("path", Lite(&_val.path));
4596 formatter.field("pat", Lite(&_val.pat));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004597 formatter.finish()
4598 }
4599}
4600impl Debug for Lite<syn::PatVerbatim> {
4601 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004602 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004603 let mut formatter = formatter.debug_struct("PatVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07004604 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004605 formatter.finish()
4606 }
4607}
4608impl Debug for Lite<syn::PatWild> {
4609 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004610 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004611 let mut formatter = formatter.debug_struct("PatWild");
4612 formatter.finish()
4613 }
4614}
4615impl Debug for Lite<syn::Path> {
4616 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004617 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004618 let mut formatter = formatter.debug_struct("Path");
David Tolnay5302f0e2019-05-08 23:26:18 -07004619 if let Some(val) = &_val.leading_colon {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004620 #[derive(RefCast)]
4621 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004622 struct Print(syn::token::Colon2);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004623 impl Debug for Print {
4624 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004625 formatter.write_str("Some")?;
4626 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004627 }
4628 }
David Tolnay644246b2019-05-08 23:02:46 -07004629 formatter.field("leading_colon", Print::ref_cast(val));
4630 }
David Tolnaycaac6272019-05-09 11:26:37 -07004631 if !_val.segments.is_empty() {
4632 formatter.field("segments", Lite(&_val.segments));
4633 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004634 formatter.finish()
4635 }
4636}
4637impl Debug for Lite<syn::PathArguments> {
4638 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004639 let _val = &self.value;
4640 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004641 syn::PathArguments::None => formatter.write_str("None"),
David Tolnay6d16fa82019-05-09 12:17:19 -07004642 syn::PathArguments::AngleBracketed(_val) => {
4643 let mut formatter = formatter.debug_struct("PathArguments::AngleBracketed");
4644 if let Some(val) = &_val.colon2_token {
4645 #[derive(RefCast)]
4646 #[repr(transparent)]
4647 struct Print(syn::token::Colon2);
4648 impl Debug for Print {
4649 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4650 formatter.write_str("Some")?;
4651 Ok(())
4652 }
4653 }
4654 formatter.field("colon2_token", Print::ref_cast(val));
4655 }
4656 if !_val.args.is_empty() {
4657 formatter.field("args", Lite(&_val.args));
4658 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004659 formatter.finish()
4660 }
David Tolnay6d16fa82019-05-09 12:17:19 -07004661 syn::PathArguments::Parenthesized(_val) => {
4662 let mut formatter = formatter.debug_struct("PathArguments::Parenthesized");
4663 if !_val.inputs.is_empty() {
4664 formatter.field("inputs", Lite(&_val.inputs));
4665 }
4666 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004667 formatter.finish()
4668 }
4669 }
4670 }
4671}
4672impl Debug for Lite<syn::PathSegment> {
4673 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004674 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004675 let mut formatter = formatter.debug_struct("PathSegment");
David Tolnay5302f0e2019-05-08 23:26:18 -07004676 formatter.field("ident", Lite(&_val.ident));
4677 formatter.field("arguments", Lite(&_val.arguments));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004678 formatter.finish()
4679 }
4680}
4681impl Debug for Lite<syn::PredicateEq> {
4682 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004683 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004684 let mut formatter = formatter.debug_struct("PredicateEq");
David Tolnay5302f0e2019-05-08 23:26:18 -07004685 formatter.field("lhs_ty", Lite(&_val.lhs_ty));
4686 formatter.field("rhs_ty", Lite(&_val.rhs_ty));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004687 formatter.finish()
4688 }
4689}
4690impl Debug for Lite<syn::PredicateLifetime> {
4691 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004692 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004693 let mut formatter = formatter.debug_struct("PredicateLifetime");
David Tolnay5302f0e2019-05-08 23:26:18 -07004694 formatter.field("lifetime", Lite(&_val.lifetime));
David Tolnaycaac6272019-05-09 11:26:37 -07004695 if !_val.bounds.is_empty() {
4696 formatter.field("bounds", Lite(&_val.bounds));
4697 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004698 formatter.finish()
4699 }
4700}
4701impl Debug for Lite<syn::PredicateType> {
4702 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004703 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004704 let mut formatter = formatter.debug_struct("PredicateType");
David Tolnay5302f0e2019-05-08 23:26:18 -07004705 if let Some(val) = &_val.lifetimes {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004706 #[derive(RefCast)]
4707 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004708 struct Print(syn::BoundLifetimes);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004709 impl Debug for Print {
4710 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004711 formatter.write_str("Some")?;
4712 let _val = &self.0;
4713 formatter.write_str("(")?;
4714 Debug::fmt(Lite(_val), formatter)?;
4715 formatter.write_str(")")?;
4716 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004717 }
4718 }
David Tolnay644246b2019-05-08 23:02:46 -07004719 formatter.field("lifetimes", Print::ref_cast(val));
4720 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004721 formatter.field("bounded_ty", Lite(&_val.bounded_ty));
David Tolnaycaac6272019-05-09 11:26:37 -07004722 if !_val.bounds.is_empty() {
4723 formatter.field("bounds", Lite(&_val.bounds));
4724 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004725 formatter.finish()
4726 }
4727}
4728impl Debug for Lite<syn::QSelf> {
4729 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004730 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004731 let mut formatter = formatter.debug_struct("QSelf");
David Tolnay5302f0e2019-05-08 23:26:18 -07004732 formatter.field("ty", Lite(&_val.ty));
4733 formatter.field("position", Lite(&_val.position));
4734 if let Some(val) = &_val.as_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004735 #[derive(RefCast)]
4736 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004737 struct Print(syn::token::As);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004738 impl Debug for Print {
4739 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004740 formatter.write_str("Some")?;
4741 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004742 }
4743 }
David Tolnay644246b2019-05-08 23:02:46 -07004744 formatter.field("as_token", Print::ref_cast(val));
4745 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004746 formatter.finish()
4747 }
4748}
4749impl Debug for Lite<syn::RangeLimits> {
4750 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004751 let _val = &self.value;
4752 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07004753 syn::RangeLimits::HalfOpen(_val) => {
4754 formatter.write_str("HalfOpen")?;
4755 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004756 }
David Tolnay32245a92019-05-09 12:32:15 -07004757 syn::RangeLimits::Closed(_val) => {
4758 formatter.write_str("Closed")?;
4759 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004760 }
4761 }
4762 }
4763}
4764impl Debug for Lite<syn::ReturnType> {
4765 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004766 let _val = &self.value;
4767 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004768 syn::ReturnType::Default => formatter.write_str("Default"),
4769 syn::ReturnType::Type(_v0, _v1) => {
4770 let mut formatter = formatter.debug_tuple("Type");
4771 formatter.field(Lite(_v1));
4772 formatter.finish()
4773 }
4774 }
4775 }
4776}
4777impl Debug for Lite<syn::Stmt> {
4778 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004779 let _val = &self.value;
4780 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07004781 syn::Stmt::Local(_val) => {
4782 formatter.write_str("Local")?;
4783 formatter.write_str("(")?;
4784 Debug::fmt(Lite(_val), formatter)?;
4785 formatter.write_str(")")?;
4786 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004787 }
David Tolnay32245a92019-05-09 12:32:15 -07004788 syn::Stmt::Item(_val) => {
4789 formatter.write_str("Item")?;
4790 formatter.write_str("(")?;
4791 Debug::fmt(Lite(_val), formatter)?;
4792 formatter.write_str(")")?;
4793 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004794 }
David Tolnay32245a92019-05-09 12:32:15 -07004795 syn::Stmt::Expr(_val) => {
4796 formatter.write_str("Expr")?;
4797 formatter.write_str("(")?;
4798 Debug::fmt(Lite(_val), formatter)?;
4799 formatter.write_str(")")?;
4800 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004801 }
4802 syn::Stmt::Semi(_v0, _v1) => {
4803 let mut formatter = formatter.debug_tuple("Semi");
4804 formatter.field(Lite(_v0));
4805 formatter.finish()
4806 }
4807 }
4808 }
4809}
4810impl Debug for Lite<syn::TraitBound> {
4811 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004812 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004813 let mut formatter = formatter.debug_struct("TraitBound");
David Tolnay5302f0e2019-05-08 23:26:18 -07004814 if let Some(val) = &_val.paren_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004815 #[derive(RefCast)]
4816 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004817 struct Print(syn::token::Paren);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004818 impl Debug for Print {
4819 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004820 formatter.write_str("Some")?;
4821 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004822 }
4823 }
David Tolnay644246b2019-05-08 23:02:46 -07004824 formatter.field("paren_token", Print::ref_cast(val));
4825 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004826 formatter.field("modifier", Lite(&_val.modifier));
4827 if let Some(val) = &_val.lifetimes {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004828 #[derive(RefCast)]
4829 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07004830 struct Print(syn::BoundLifetimes);
David Tolnay3c3c7d12019-05-08 14:54:12 -07004831 impl Debug for Print {
4832 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07004833 formatter.write_str("Some")?;
4834 let _val = &self.0;
4835 formatter.write_str("(")?;
4836 Debug::fmt(Lite(_val), formatter)?;
4837 formatter.write_str(")")?;
4838 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004839 }
4840 }
David Tolnay644246b2019-05-08 23:02:46 -07004841 formatter.field("lifetimes", Print::ref_cast(val));
4842 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004843 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004844 formatter.finish()
4845 }
4846}
4847impl Debug for Lite<syn::TraitBoundModifier> {
4848 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004849 let _val = &self.value;
4850 match _val {
David Tolnay3c3c7d12019-05-08 14:54:12 -07004851 syn::TraitBoundModifier::None => formatter.write_str("None"),
David Tolnay32245a92019-05-09 12:32:15 -07004852 syn::TraitBoundModifier::Maybe(_val) => {
4853 formatter.write_str("Maybe")?;
4854 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07004855 }
4856 }
4857 }
4858}
4859impl Debug for Lite<syn::TraitItem> {
4860 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004861 let _val = &self.value;
4862 match _val {
4863 syn::TraitItem::Const(_val) => {
4864 let mut formatter = formatter.debug_struct("TraitItem::Const");
David Tolnaycaac6272019-05-09 11:26:37 -07004865 if !_val.attrs.is_empty() {
4866 formatter.field("attrs", Lite(&_val.attrs));
4867 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004868 formatter.field("ident", Lite(&_val.ident));
4869 formatter.field("ty", Lite(&_val.ty));
4870 if let Some(val) = &_val.default {
4871 #[derive(RefCast)]
4872 #[repr(transparent)]
4873 struct Print((syn::token::Eq, syn::Expr));
4874 impl Debug for Print {
4875 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4876 formatter.write_str("Some")?;
4877 let _val = &self.0;
4878 formatter.write_str("(")?;
4879 Debug::fmt(Lite(&_val.1), formatter)?;
4880 formatter.write_str(")")?;
4881 Ok(())
4882 }
4883 }
4884 formatter.field("default", Print::ref_cast(val));
4885 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004886 formatter.finish()
4887 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004888 syn::TraitItem::Method(_val) => {
4889 let mut formatter = formatter.debug_struct("TraitItem::Method");
David Tolnaycaac6272019-05-09 11:26:37 -07004890 if !_val.attrs.is_empty() {
4891 formatter.field("attrs", Lite(&_val.attrs));
4892 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004893 formatter.field("sig", Lite(&_val.sig));
4894 if let Some(val) = &_val.default {
4895 #[derive(RefCast)]
4896 #[repr(transparent)]
4897 struct Print(syn::Block);
4898 impl Debug for Print {
4899 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4900 formatter.write_str("Some")?;
4901 let _val = &self.0;
4902 formatter.write_str("(")?;
4903 Debug::fmt(Lite(_val), formatter)?;
4904 formatter.write_str(")")?;
4905 Ok(())
4906 }
4907 }
4908 formatter.field("default", Print::ref_cast(val));
4909 }
4910 if let Some(val) = &_val.semi_token {
4911 #[derive(RefCast)]
4912 #[repr(transparent)]
4913 struct Print(syn::token::Semi);
4914 impl Debug for Print {
4915 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4916 formatter.write_str("Some")?;
4917 Ok(())
4918 }
4919 }
4920 formatter.field("semi_token", Print::ref_cast(val));
4921 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004922 formatter.finish()
4923 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004924 syn::TraitItem::Type(_val) => {
4925 let mut formatter = formatter.debug_struct("TraitItem::Type");
David Tolnaycaac6272019-05-09 11:26:37 -07004926 if !_val.attrs.is_empty() {
4927 formatter.field("attrs", Lite(&_val.attrs));
4928 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004929 formatter.field("ident", Lite(&_val.ident));
4930 formatter.field("generics", Lite(&_val.generics));
4931 if let Some(val) = &_val.colon_token {
4932 #[derive(RefCast)]
4933 #[repr(transparent)]
4934 struct Print(syn::token::Colon);
4935 impl Debug for Print {
4936 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4937 formatter.write_str("Some")?;
4938 Ok(())
4939 }
4940 }
4941 formatter.field("colon_token", Print::ref_cast(val));
4942 }
David Tolnaycaac6272019-05-09 11:26:37 -07004943 if !_val.bounds.is_empty() {
4944 formatter.field("bounds", Lite(&_val.bounds));
4945 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004946 if let Some(val) = &_val.default {
4947 #[derive(RefCast)]
4948 #[repr(transparent)]
4949 struct Print((syn::token::Eq, syn::Type));
4950 impl Debug for Print {
4951 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4952 formatter.write_str("Some")?;
4953 let _val = &self.0;
4954 formatter.write_str("(")?;
4955 Debug::fmt(Lite(&_val.1), formatter)?;
4956 formatter.write_str(")")?;
4957 Ok(())
4958 }
4959 }
4960 formatter.field("default", Print::ref_cast(val));
4961 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004962 formatter.finish()
4963 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004964 syn::TraitItem::Macro(_val) => {
4965 let mut formatter = formatter.debug_struct("TraitItem::Macro");
David Tolnaycaac6272019-05-09 11:26:37 -07004966 if !_val.attrs.is_empty() {
4967 formatter.field("attrs", Lite(&_val.attrs));
4968 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004969 formatter.field("mac", Lite(&_val.mac));
4970 if let Some(val) = &_val.semi_token {
4971 #[derive(RefCast)]
4972 #[repr(transparent)]
4973 struct Print(syn::token::Semi);
4974 impl Debug for Print {
4975 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
4976 formatter.write_str("Some")?;
4977 Ok(())
4978 }
4979 }
4980 formatter.field("semi_token", Print::ref_cast(val));
4981 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07004982 formatter.finish()
4983 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004984 syn::TraitItem::Verbatim(_val) => {
4985 let mut formatter = formatter.debug_struct("TraitItem::Verbatim");
4986 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07004987 formatter.finish()
4988 }
4989 }
4990 }
4991}
4992impl Debug for Lite<syn::TraitItemConst> {
4993 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07004994 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07004995 let mut formatter = formatter.debug_struct("TraitItemConst");
David Tolnaycaac6272019-05-09 11:26:37 -07004996 if !_val.attrs.is_empty() {
4997 formatter.field("attrs", Lite(&_val.attrs));
4998 }
David Tolnay5302f0e2019-05-08 23:26:18 -07004999 formatter.field("ident", Lite(&_val.ident));
5000 formatter.field("ty", Lite(&_val.ty));
5001 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005002 #[derive(RefCast)]
5003 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005004 struct Print((syn::token::Eq, syn::Expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005005 impl Debug for Print {
5006 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005007 formatter.write_str("Some")?;
5008 let _val = &self.0;
5009 formatter.write_str("(")?;
5010 Debug::fmt(Lite(&_val.1), formatter)?;
5011 formatter.write_str(")")?;
5012 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005013 }
5014 }
David Tolnay644246b2019-05-08 23:02:46 -07005015 formatter.field("default", Print::ref_cast(val));
5016 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005017 formatter.finish()
5018 }
5019}
5020impl Debug for Lite<syn::TraitItemMacro> {
5021 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005022 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005023 let mut formatter = formatter.debug_struct("TraitItemMacro");
David Tolnaycaac6272019-05-09 11:26:37 -07005024 if !_val.attrs.is_empty() {
5025 formatter.field("attrs", Lite(&_val.attrs));
5026 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005027 formatter.field("mac", Lite(&_val.mac));
5028 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005029 #[derive(RefCast)]
5030 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005031 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005032 impl Debug for Print {
5033 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005034 formatter.write_str("Some")?;
5035 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005036 }
5037 }
David Tolnay644246b2019-05-08 23:02:46 -07005038 formatter.field("semi_token", Print::ref_cast(val));
5039 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005040 formatter.finish()
5041 }
5042}
5043impl Debug for Lite<syn::TraitItemMethod> {
5044 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005045 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005046 let mut formatter = formatter.debug_struct("TraitItemMethod");
David Tolnaycaac6272019-05-09 11:26:37 -07005047 if !_val.attrs.is_empty() {
5048 formatter.field("attrs", Lite(&_val.attrs));
5049 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005050 formatter.field("sig", Lite(&_val.sig));
5051 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005052 #[derive(RefCast)]
5053 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005054 struct Print(syn::Block);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005055 impl Debug for Print {
5056 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005057 formatter.write_str("Some")?;
5058 let _val = &self.0;
5059 formatter.write_str("(")?;
5060 Debug::fmt(Lite(_val), formatter)?;
5061 formatter.write_str(")")?;
5062 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005063 }
5064 }
David Tolnay644246b2019-05-08 23:02:46 -07005065 formatter.field("default", Print::ref_cast(val));
5066 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005067 if let Some(val) = &_val.semi_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005068 #[derive(RefCast)]
5069 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005070 struct Print(syn::token::Semi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005071 impl Debug for Print {
5072 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005073 formatter.write_str("Some")?;
5074 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005075 }
5076 }
David Tolnay644246b2019-05-08 23:02:46 -07005077 formatter.field("semi_token", Print::ref_cast(val));
5078 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005079 formatter.finish()
5080 }
5081}
5082impl Debug for Lite<syn::TraitItemType> {
5083 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005084 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005085 let mut formatter = formatter.debug_struct("TraitItemType");
David Tolnaycaac6272019-05-09 11:26:37 -07005086 if !_val.attrs.is_empty() {
5087 formatter.field("attrs", Lite(&_val.attrs));
5088 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005089 formatter.field("ident", Lite(&_val.ident));
5090 formatter.field("generics", Lite(&_val.generics));
5091 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005092 #[derive(RefCast)]
5093 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005094 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005095 impl Debug for Print {
5096 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005097 formatter.write_str("Some")?;
5098 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005099 }
5100 }
David Tolnay644246b2019-05-08 23:02:46 -07005101 formatter.field("colon_token", Print::ref_cast(val));
5102 }
David Tolnaycaac6272019-05-09 11:26:37 -07005103 if !_val.bounds.is_empty() {
5104 formatter.field("bounds", Lite(&_val.bounds));
5105 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005106 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005107 #[derive(RefCast)]
5108 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005109 struct Print((syn::token::Eq, syn::Type));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005110 impl Debug for Print {
5111 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005112 formatter.write_str("Some")?;
5113 let _val = &self.0;
5114 formatter.write_str("(")?;
5115 Debug::fmt(Lite(&_val.1), formatter)?;
5116 formatter.write_str(")")?;
5117 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005118 }
5119 }
David Tolnay644246b2019-05-08 23:02:46 -07005120 formatter.field("default", Print::ref_cast(val));
5121 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005122 formatter.finish()
5123 }
5124}
5125impl Debug for Lite<syn::TraitItemVerbatim> {
5126 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005127 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005128 let mut formatter = formatter.debug_struct("TraitItemVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07005129 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005130 formatter.finish()
5131 }
5132}
5133impl Debug for Lite<syn::Type> {
5134 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005135 let _val = &self.value;
5136 match _val {
5137 syn::Type::Slice(_val) => {
5138 let mut formatter = formatter.debug_struct("Type::Slice");
5139 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005140 formatter.finish()
5141 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005142 syn::Type::Array(_val) => {
5143 let mut formatter = formatter.debug_struct("Type::Array");
5144 formatter.field("elem", Lite(&_val.elem));
5145 formatter.field("len", Lite(&_val.len));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005146 formatter.finish()
5147 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005148 syn::Type::Ptr(_val) => {
5149 let mut formatter = formatter.debug_struct("Type::Ptr");
5150 if let Some(val) = &_val.const_token {
5151 #[derive(RefCast)]
5152 #[repr(transparent)]
5153 struct Print(syn::token::Const);
5154 impl Debug for Print {
5155 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5156 formatter.write_str("Some")?;
5157 Ok(())
5158 }
5159 }
5160 formatter.field("const_token", Print::ref_cast(val));
5161 }
5162 if let Some(val) = &_val.mutability {
5163 #[derive(RefCast)]
5164 #[repr(transparent)]
5165 struct Print(syn::token::Mut);
5166 impl Debug for Print {
5167 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5168 formatter.write_str("Some")?;
5169 Ok(())
5170 }
5171 }
5172 formatter.field("mutability", Print::ref_cast(val));
5173 }
5174 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005175 formatter.finish()
5176 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005177 syn::Type::Reference(_val) => {
5178 let mut formatter = formatter.debug_struct("Type::Reference");
5179 if let Some(val) = &_val.lifetime {
5180 #[derive(RefCast)]
5181 #[repr(transparent)]
5182 struct Print(syn::Lifetime);
5183 impl Debug for Print {
5184 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5185 formatter.write_str("Some")?;
5186 let _val = &self.0;
5187 formatter.write_str("(")?;
5188 Debug::fmt(Lite(_val), formatter)?;
5189 formatter.write_str(")")?;
5190 Ok(())
5191 }
5192 }
5193 formatter.field("lifetime", Print::ref_cast(val));
5194 }
5195 if let Some(val) = &_val.mutability {
5196 #[derive(RefCast)]
5197 #[repr(transparent)]
5198 struct Print(syn::token::Mut);
5199 impl Debug for Print {
5200 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5201 formatter.write_str("Some")?;
5202 Ok(())
5203 }
5204 }
5205 formatter.field("mutability", Print::ref_cast(val));
5206 }
5207 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005208 formatter.finish()
5209 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005210 syn::Type::BareFn(_val) => {
5211 let mut formatter = formatter.debug_struct("Type::BareFn");
5212 if let Some(val) = &_val.lifetimes {
5213 #[derive(RefCast)]
5214 #[repr(transparent)]
5215 struct Print(syn::BoundLifetimes);
5216 impl Debug for Print {
5217 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5218 formatter.write_str("Some")?;
5219 let _val = &self.0;
5220 formatter.write_str("(")?;
5221 Debug::fmt(Lite(_val), formatter)?;
5222 formatter.write_str(")")?;
5223 Ok(())
5224 }
5225 }
5226 formatter.field("lifetimes", Print::ref_cast(val));
5227 }
5228 if let Some(val) = &_val.unsafety {
5229 #[derive(RefCast)]
5230 #[repr(transparent)]
5231 struct Print(syn::token::Unsafe);
5232 impl Debug for Print {
5233 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5234 formatter.write_str("Some")?;
5235 Ok(())
5236 }
5237 }
5238 formatter.field("unsafety", Print::ref_cast(val));
5239 }
5240 if let Some(val) = &_val.abi {
5241 #[derive(RefCast)]
5242 #[repr(transparent)]
5243 struct Print(syn::Abi);
5244 impl Debug for Print {
5245 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5246 formatter.write_str("Some")?;
5247 let _val = &self.0;
5248 formatter.write_str("(")?;
5249 Debug::fmt(Lite(_val), formatter)?;
5250 formatter.write_str(")")?;
5251 Ok(())
5252 }
5253 }
5254 formatter.field("abi", Print::ref_cast(val));
5255 }
David Tolnaycaac6272019-05-09 11:26:37 -07005256 if !_val.inputs.is_empty() {
5257 formatter.field("inputs", Lite(&_val.inputs));
5258 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005259 if let Some(val) = &_val.variadic {
5260 #[derive(RefCast)]
5261 #[repr(transparent)]
5262 struct Print(syn::token::Dot3);
5263 impl Debug for Print {
5264 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5265 formatter.write_str("Some")?;
5266 Ok(())
5267 }
5268 }
5269 formatter.field("variadic", Print::ref_cast(val));
5270 }
5271 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005272 formatter.finish()
5273 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005274 syn::Type::Never(_val) => {
5275 let mut formatter = formatter.debug_struct("Type::Never");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005276 formatter.finish()
5277 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005278 syn::Type::Tuple(_val) => {
5279 let mut formatter = formatter.debug_struct("Type::Tuple");
David Tolnaycaac6272019-05-09 11:26:37 -07005280 if !_val.elems.is_empty() {
5281 formatter.field("elems", Lite(&_val.elems));
5282 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005283 formatter.finish()
5284 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005285 syn::Type::Path(_val) => {
5286 let mut formatter = formatter.debug_struct("Type::Path");
5287 if let Some(val) = &_val.qself {
5288 #[derive(RefCast)]
5289 #[repr(transparent)]
5290 struct Print(syn::QSelf);
5291 impl Debug for Print {
5292 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5293 formatter.write_str("Some")?;
5294 let _val = &self.0;
5295 formatter.write_str("(")?;
5296 Debug::fmt(Lite(_val), formatter)?;
5297 formatter.write_str(")")?;
5298 Ok(())
5299 }
5300 }
5301 formatter.field("qself", Print::ref_cast(val));
5302 }
5303 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005304 formatter.finish()
5305 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005306 syn::Type::TraitObject(_val) => {
5307 let mut formatter = formatter.debug_struct("Type::TraitObject");
5308 if let Some(val) = &_val.dyn_token {
5309 #[derive(RefCast)]
5310 #[repr(transparent)]
5311 struct Print(syn::token::Dyn);
5312 impl Debug for Print {
5313 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5314 formatter.write_str("Some")?;
5315 Ok(())
5316 }
5317 }
5318 formatter.field("dyn_token", Print::ref_cast(val));
5319 }
David Tolnaycaac6272019-05-09 11:26:37 -07005320 if !_val.bounds.is_empty() {
5321 formatter.field("bounds", Lite(&_val.bounds));
5322 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005323 formatter.finish()
5324 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005325 syn::Type::ImplTrait(_val) => {
5326 let mut formatter = formatter.debug_struct("Type::ImplTrait");
David Tolnaycaac6272019-05-09 11:26:37 -07005327 if !_val.bounds.is_empty() {
5328 formatter.field("bounds", Lite(&_val.bounds));
5329 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005330 formatter.finish()
5331 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005332 syn::Type::Paren(_val) => {
5333 let mut formatter = formatter.debug_struct("Type::Paren");
5334 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005335 formatter.finish()
5336 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005337 syn::Type::Group(_val) => {
5338 let mut formatter = formatter.debug_struct("Type::Group");
5339 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005340 formatter.finish()
5341 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005342 syn::Type::Infer(_val) => {
5343 let mut formatter = formatter.debug_struct("Type::Infer");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005344 formatter.finish()
5345 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005346 syn::Type::Macro(_val) => {
5347 let mut formatter = formatter.debug_struct("Type::Macro");
5348 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005349 formatter.finish()
5350 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005351 syn::Type::Verbatim(_val) => {
5352 let mut formatter = formatter.debug_struct("Type::Verbatim");
5353 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005354 formatter.finish()
5355 }
5356 }
5357 }
5358}
5359impl Debug for Lite<syn::TypeArray> {
5360 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005361 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005362 let mut formatter = formatter.debug_struct("TypeArray");
David Tolnay5302f0e2019-05-08 23:26:18 -07005363 formatter.field("elem", Lite(&_val.elem));
5364 formatter.field("len", Lite(&_val.len));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005365 formatter.finish()
5366 }
5367}
5368impl Debug for Lite<syn::TypeBareFn> {
5369 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005370 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005371 let mut formatter = formatter.debug_struct("TypeBareFn");
David Tolnay5302f0e2019-05-08 23:26:18 -07005372 if let Some(val) = &_val.lifetimes {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005373 #[derive(RefCast)]
5374 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005375 struct Print(syn::BoundLifetimes);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005376 impl Debug for Print {
5377 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005378 formatter.write_str("Some")?;
5379 let _val = &self.0;
5380 formatter.write_str("(")?;
5381 Debug::fmt(Lite(_val), formatter)?;
5382 formatter.write_str(")")?;
5383 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005384 }
5385 }
David Tolnay644246b2019-05-08 23:02:46 -07005386 formatter.field("lifetimes", Print::ref_cast(val));
5387 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005388 if let Some(val) = &_val.unsafety {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005389 #[derive(RefCast)]
5390 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005391 struct Print(syn::token::Unsafe);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005392 impl Debug for Print {
5393 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005394 formatter.write_str("Some")?;
5395 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005396 }
5397 }
David Tolnay644246b2019-05-08 23:02:46 -07005398 formatter.field("unsafety", Print::ref_cast(val));
5399 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005400 if let Some(val) = &_val.abi {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005401 #[derive(RefCast)]
5402 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005403 struct Print(syn::Abi);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005404 impl Debug for Print {
5405 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005406 formatter.write_str("Some")?;
5407 let _val = &self.0;
5408 formatter.write_str("(")?;
5409 Debug::fmt(Lite(_val), formatter)?;
5410 formatter.write_str(")")?;
5411 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005412 }
5413 }
David Tolnay644246b2019-05-08 23:02:46 -07005414 formatter.field("abi", Print::ref_cast(val));
5415 }
David Tolnaycaac6272019-05-09 11:26:37 -07005416 if !_val.inputs.is_empty() {
5417 formatter.field("inputs", Lite(&_val.inputs));
5418 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005419 if let Some(val) = &_val.variadic {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005420 #[derive(RefCast)]
5421 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005422 struct Print(syn::token::Dot3);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005423 impl Debug for Print {
5424 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005425 formatter.write_str("Some")?;
5426 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005427 }
5428 }
David Tolnay644246b2019-05-08 23:02:46 -07005429 formatter.field("variadic", Print::ref_cast(val));
5430 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005431 formatter.field("output", Lite(&_val.output));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005432 formatter.finish()
5433 }
5434}
5435impl Debug for Lite<syn::TypeGroup> {
5436 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005437 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005438 let mut formatter = formatter.debug_struct("TypeGroup");
David Tolnay5302f0e2019-05-08 23:26:18 -07005439 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005440 formatter.finish()
5441 }
5442}
5443impl Debug for Lite<syn::TypeImplTrait> {
5444 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005445 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005446 let mut formatter = formatter.debug_struct("TypeImplTrait");
David Tolnaycaac6272019-05-09 11:26:37 -07005447 if !_val.bounds.is_empty() {
5448 formatter.field("bounds", Lite(&_val.bounds));
5449 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005450 formatter.finish()
5451 }
5452}
5453impl Debug for Lite<syn::TypeInfer> {
5454 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005455 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005456 let mut formatter = formatter.debug_struct("TypeInfer");
5457 formatter.finish()
5458 }
5459}
5460impl Debug for Lite<syn::TypeMacro> {
5461 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005462 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005463 let mut formatter = formatter.debug_struct("TypeMacro");
David Tolnay5302f0e2019-05-08 23:26:18 -07005464 formatter.field("mac", Lite(&_val.mac));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005465 formatter.finish()
5466 }
5467}
5468impl Debug for Lite<syn::TypeNever> {
5469 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005470 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005471 let mut formatter = formatter.debug_struct("TypeNever");
5472 formatter.finish()
5473 }
5474}
5475impl Debug for Lite<syn::TypeParam> {
5476 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005477 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005478 let mut formatter = formatter.debug_struct("TypeParam");
David Tolnaycaac6272019-05-09 11:26:37 -07005479 if !_val.attrs.is_empty() {
5480 formatter.field("attrs", Lite(&_val.attrs));
5481 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005482 formatter.field("ident", Lite(&_val.ident));
5483 if let Some(val) = &_val.colon_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005484 #[derive(RefCast)]
5485 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005486 struct Print(syn::token::Colon);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005487 impl Debug for Print {
5488 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005489 formatter.write_str("Some")?;
5490 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005491 }
5492 }
David Tolnay644246b2019-05-08 23:02:46 -07005493 formatter.field("colon_token", Print::ref_cast(val));
5494 }
David Tolnaycaac6272019-05-09 11:26:37 -07005495 if !_val.bounds.is_empty() {
5496 formatter.field("bounds", Lite(&_val.bounds));
5497 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005498 if let Some(val) = &_val.eq_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005499 #[derive(RefCast)]
5500 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005501 struct Print(syn::token::Eq);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005502 impl Debug for Print {
5503 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005504 formatter.write_str("Some")?;
5505 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005506 }
5507 }
David Tolnay644246b2019-05-08 23:02:46 -07005508 formatter.field("eq_token", Print::ref_cast(val));
5509 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005510 if let Some(val) = &_val.default {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005511 #[derive(RefCast)]
5512 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005513 struct Print(syn::Type);
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("default", Print::ref_cast(val));
5525 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005526 formatter.finish()
5527 }
5528}
5529impl Debug for Lite<syn::TypeParamBound> {
5530 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005531 let _val = &self.value;
5532 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07005533 syn::TypeParamBound::Trait(_val) => {
5534 formatter.write_str("Trait")?;
5535 formatter.write_str("(")?;
5536 Debug::fmt(Lite(_val), formatter)?;
5537 formatter.write_str(")")?;
5538 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005539 }
David Tolnay32245a92019-05-09 12:32:15 -07005540 syn::TypeParamBound::Lifetime(_val) => {
5541 formatter.write_str("Lifetime")?;
5542 formatter.write_str("(")?;
5543 Debug::fmt(Lite(_val), formatter)?;
5544 formatter.write_str(")")?;
5545 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005546 }
5547 }
5548 }
5549}
5550impl Debug for Lite<syn::TypeParen> {
5551 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005552 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005553 let mut formatter = formatter.debug_struct("TypeParen");
David Tolnay5302f0e2019-05-08 23:26:18 -07005554 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005555 formatter.finish()
5556 }
5557}
5558impl Debug for Lite<syn::TypePath> {
5559 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005560 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005561 let mut formatter = formatter.debug_struct("TypePath");
David Tolnay5302f0e2019-05-08 23:26:18 -07005562 if let Some(val) = &_val.qself {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005563 #[derive(RefCast)]
5564 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005565 struct Print(syn::QSelf);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005566 impl Debug for Print {
5567 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005568 formatter.write_str("Some")?;
5569 let _val = &self.0;
5570 formatter.write_str("(")?;
5571 Debug::fmt(Lite(_val), formatter)?;
5572 formatter.write_str(")")?;
5573 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005574 }
5575 }
David Tolnay644246b2019-05-08 23:02:46 -07005576 formatter.field("qself", Print::ref_cast(val));
5577 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005578 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005579 formatter.finish()
5580 }
5581}
5582impl Debug for Lite<syn::TypePtr> {
5583 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005584 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005585 let mut formatter = formatter.debug_struct("TypePtr");
David Tolnay5302f0e2019-05-08 23:26:18 -07005586 if let Some(val) = &_val.const_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005587 #[derive(RefCast)]
5588 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005589 struct Print(syn::token::Const);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005590 impl Debug for Print {
5591 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005592 formatter.write_str("Some")?;
5593 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005594 }
5595 }
David Tolnay644246b2019-05-08 23:02:46 -07005596 formatter.field("const_token", Print::ref_cast(val));
5597 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005598 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005599 #[derive(RefCast)]
5600 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005601 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005602 impl Debug for Print {
5603 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005604 formatter.write_str("Some")?;
5605 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005606 }
5607 }
David Tolnay644246b2019-05-08 23:02:46 -07005608 formatter.field("mutability", Print::ref_cast(val));
5609 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005610 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005611 formatter.finish()
5612 }
5613}
5614impl Debug for Lite<syn::TypeReference> {
5615 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005616 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005617 let mut formatter = formatter.debug_struct("TypeReference");
David Tolnay5302f0e2019-05-08 23:26:18 -07005618 if let Some(val) = &_val.lifetime {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005619 #[derive(RefCast)]
5620 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005621 struct Print(syn::Lifetime);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005622 impl Debug for Print {
5623 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005624 formatter.write_str("Some")?;
5625 let _val = &self.0;
5626 formatter.write_str("(")?;
5627 Debug::fmt(Lite(_val), formatter)?;
5628 formatter.write_str(")")?;
5629 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005630 }
5631 }
David Tolnay644246b2019-05-08 23:02:46 -07005632 formatter.field("lifetime", Print::ref_cast(val));
5633 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005634 if let Some(val) = &_val.mutability {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005635 #[derive(RefCast)]
5636 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005637 struct Print(syn::token::Mut);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005638 impl Debug for Print {
5639 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005640 formatter.write_str("Some")?;
5641 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005642 }
5643 }
David Tolnay644246b2019-05-08 23:02:46 -07005644 formatter.field("mutability", Print::ref_cast(val));
5645 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005646 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005647 formatter.finish()
5648 }
5649}
5650impl Debug for Lite<syn::TypeSlice> {
5651 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005652 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005653 let mut formatter = formatter.debug_struct("TypeSlice");
David Tolnay5302f0e2019-05-08 23:26:18 -07005654 formatter.field("elem", Lite(&_val.elem));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005655 formatter.finish()
5656 }
5657}
5658impl Debug for Lite<syn::TypeTraitObject> {
5659 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005660 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005661 let mut formatter = formatter.debug_struct("TypeTraitObject");
David Tolnay5302f0e2019-05-08 23:26:18 -07005662 if let Some(val) = &_val.dyn_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005663 #[derive(RefCast)]
5664 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005665 struct Print(syn::token::Dyn);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005666 impl Debug for Print {
5667 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005668 formatter.write_str("Some")?;
5669 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005670 }
5671 }
David Tolnay644246b2019-05-08 23:02:46 -07005672 formatter.field("dyn_token", Print::ref_cast(val));
5673 }
David Tolnaycaac6272019-05-09 11:26:37 -07005674 if !_val.bounds.is_empty() {
5675 formatter.field("bounds", Lite(&_val.bounds));
5676 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005677 formatter.finish()
5678 }
5679}
5680impl Debug for Lite<syn::TypeTuple> {
5681 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005682 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005683 let mut formatter = formatter.debug_struct("TypeTuple");
David Tolnaycaac6272019-05-09 11:26:37 -07005684 if !_val.elems.is_empty() {
5685 formatter.field("elems", Lite(&_val.elems));
5686 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005687 formatter.finish()
5688 }
5689}
5690impl Debug for Lite<syn::TypeVerbatim> {
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("TypeVerbatim");
David Tolnay5302f0e2019-05-08 23:26:18 -07005694 formatter.field("tts", Lite(&_val.tts));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005695 formatter.finish()
5696 }
5697}
5698impl Debug for Lite<syn::UnOp> {
5699 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005700 let _val = &self.value;
5701 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07005702 syn::UnOp::Deref(_val) => {
5703 formatter.write_str("Deref")?;
5704 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005705 }
David Tolnay32245a92019-05-09 12:32:15 -07005706 syn::UnOp::Not(_val) => {
5707 formatter.write_str("Not")?;
5708 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005709 }
David Tolnay32245a92019-05-09 12:32:15 -07005710 syn::UnOp::Neg(_val) => {
5711 formatter.write_str("Neg")?;
5712 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005713 }
5714 }
5715 }
5716}
5717impl Debug for Lite<syn::UseGlob> {
5718 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005719 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005720 let mut formatter = formatter.debug_struct("UseGlob");
5721 formatter.finish()
5722 }
5723}
5724impl Debug for Lite<syn::UseGroup> {
5725 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005726 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005727 let mut formatter = formatter.debug_struct("UseGroup");
David Tolnaycaac6272019-05-09 11:26:37 -07005728 if !_val.items.is_empty() {
5729 formatter.field("items", Lite(&_val.items));
5730 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005731 formatter.finish()
5732 }
5733}
5734impl Debug for Lite<syn::UseName> {
5735 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005736 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005737 let mut formatter = formatter.debug_struct("UseName");
David Tolnay5302f0e2019-05-08 23:26:18 -07005738 formatter.field("ident", Lite(&_val.ident));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005739 formatter.finish()
5740 }
5741}
5742impl Debug for Lite<syn::UsePath> {
5743 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005744 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005745 let mut formatter = formatter.debug_struct("UsePath");
David Tolnay5302f0e2019-05-08 23:26:18 -07005746 formatter.field("ident", Lite(&_val.ident));
5747 formatter.field("tree", Lite(&_val.tree));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005748 formatter.finish()
5749 }
5750}
5751impl Debug for Lite<syn::UseRename> {
5752 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005753 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005754 let mut formatter = formatter.debug_struct("UseRename");
David Tolnay5302f0e2019-05-08 23:26:18 -07005755 formatter.field("ident", Lite(&_val.ident));
5756 formatter.field("rename", Lite(&_val.rename));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005757 formatter.finish()
5758 }
5759}
5760impl Debug for Lite<syn::UseTree> {
5761 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005762 let _val = &self.value;
5763 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07005764 syn::UseTree::Path(_val) => {
5765 formatter.write_str("Path")?;
5766 formatter.write_str("(")?;
5767 Debug::fmt(Lite(_val), formatter)?;
5768 formatter.write_str(")")?;
5769 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005770 }
David Tolnay32245a92019-05-09 12:32:15 -07005771 syn::UseTree::Name(_val) => {
5772 formatter.write_str("Name")?;
5773 formatter.write_str("(")?;
5774 Debug::fmt(Lite(_val), formatter)?;
5775 formatter.write_str(")")?;
5776 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005777 }
David Tolnay32245a92019-05-09 12:32:15 -07005778 syn::UseTree::Rename(_val) => {
5779 formatter.write_str("Rename")?;
5780 formatter.write_str("(")?;
5781 Debug::fmt(Lite(_val), formatter)?;
5782 formatter.write_str(")")?;
5783 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005784 }
David Tolnay32245a92019-05-09 12:32:15 -07005785 syn::UseTree::Glob(_val) => {
5786 formatter.write_str("Glob")?;
5787 formatter.write_str("(")?;
5788 Debug::fmt(Lite(_val), formatter)?;
5789 formatter.write_str(")")?;
5790 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005791 }
David Tolnay32245a92019-05-09 12:32:15 -07005792 syn::UseTree::Group(_val) => {
5793 formatter.write_str("Group")?;
5794 formatter.write_str("(")?;
5795 Debug::fmt(Lite(_val), formatter)?;
5796 formatter.write_str(")")?;
5797 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005798 }
5799 }
5800 }
5801}
5802impl Debug for Lite<syn::Variant> {
5803 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005804 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005805 let mut formatter = formatter.debug_struct("Variant");
David Tolnaycaac6272019-05-09 11:26:37 -07005806 if !_val.attrs.is_empty() {
5807 formatter.field("attrs", Lite(&_val.attrs));
5808 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005809 formatter.field("ident", Lite(&_val.ident));
5810 formatter.field("fields", Lite(&_val.fields));
5811 if let Some(val) = &_val.discriminant {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005812 #[derive(RefCast)]
5813 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005814 struct Print((syn::token::Eq, syn::Expr));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005815 impl Debug for Print {
5816 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005817 formatter.write_str("Some")?;
5818 let _val = &self.0;
5819 formatter.write_str("(")?;
5820 Debug::fmt(Lite(&_val.1), formatter)?;
5821 formatter.write_str(")")?;
5822 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005823 }
5824 }
David Tolnay644246b2019-05-08 23:02:46 -07005825 formatter.field("discriminant", Print::ref_cast(val));
5826 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005827 formatter.finish()
5828 }
5829}
5830impl Debug for Lite<syn::VisCrate> {
5831 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005832 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005833 let mut formatter = formatter.debug_struct("VisCrate");
5834 formatter.finish()
5835 }
5836}
5837impl Debug for Lite<syn::VisPublic> {
5838 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005839 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005840 let mut formatter = formatter.debug_struct("VisPublic");
5841 formatter.finish()
5842 }
5843}
5844impl Debug for Lite<syn::VisRestricted> {
5845 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005846 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005847 let mut formatter = formatter.debug_struct("VisRestricted");
David Tolnay5302f0e2019-05-08 23:26:18 -07005848 if let Some(val) = &_val.in_token {
David Tolnay3c3c7d12019-05-08 14:54:12 -07005849 #[derive(RefCast)]
5850 #[repr(transparent)]
David Tolnay644246b2019-05-08 23:02:46 -07005851 struct Print(syn::token::In);
David Tolnay3c3c7d12019-05-08 14:54:12 -07005852 impl Debug for Print {
5853 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay644246b2019-05-08 23:02:46 -07005854 formatter.write_str("Some")?;
5855 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005856 }
5857 }
David Tolnay644246b2019-05-08 23:02:46 -07005858 formatter.field("in_token", Print::ref_cast(val));
5859 }
David Tolnay5302f0e2019-05-08 23:26:18 -07005860 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005861 formatter.finish()
5862 }
5863}
5864impl Debug for Lite<syn::Visibility> {
5865 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005866 let _val = &self.value;
5867 match _val {
David Tolnayabfc2b42019-05-09 12:07:47 -07005868 syn::Visibility::Public(_val) => {
5869 let mut formatter = formatter.debug_struct("Visibility::Public");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005870 formatter.finish()
5871 }
David Tolnayabfc2b42019-05-09 12:07:47 -07005872 syn::Visibility::Crate(_val) => {
5873 let mut formatter = formatter.debug_struct("Visibility::Crate");
David Tolnay3c3c7d12019-05-08 14:54:12 -07005874 formatter.finish()
5875 }
David Tolnayabfc2b42019-05-09 12:07:47 -07005876 syn::Visibility::Restricted(_val) => {
5877 let mut formatter = formatter.debug_struct("Visibility::Restricted");
5878 if let Some(val) = &_val.in_token {
5879 #[derive(RefCast)]
5880 #[repr(transparent)]
5881 struct Print(syn::token::In);
5882 impl Debug for Print {
5883 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
5884 formatter.write_str("Some")?;
5885 Ok(())
5886 }
5887 }
5888 formatter.field("in_token", Print::ref_cast(val));
5889 }
5890 formatter.field("path", Lite(&_val.path));
David Tolnay3c3c7d12019-05-08 14:54:12 -07005891 formatter.finish()
5892 }
5893 syn::Visibility::Inherited => formatter.write_str("Inherited"),
5894 }
5895 }
5896}
5897impl Debug for Lite<syn::WhereClause> {
5898 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005899 let _val = &self.value;
David Tolnay3c3c7d12019-05-08 14:54:12 -07005900 let mut formatter = formatter.debug_struct("WhereClause");
David Tolnaycaac6272019-05-09 11:26:37 -07005901 if !_val.predicates.is_empty() {
5902 formatter.field("predicates", Lite(&_val.predicates));
5903 }
David Tolnay3c3c7d12019-05-08 14:54:12 -07005904 formatter.finish()
5905 }
5906}
5907impl Debug for Lite<syn::WherePredicate> {
5908 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
David Tolnay5302f0e2019-05-08 23:26:18 -07005909 let _val = &self.value;
5910 match _val {
David Tolnay32245a92019-05-09 12:32:15 -07005911 syn::WherePredicate::Type(_val) => {
5912 formatter.write_str("Type")?;
5913 formatter.write_str("(")?;
5914 Debug::fmt(Lite(_val), formatter)?;
5915 formatter.write_str(")")?;
5916 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005917 }
David Tolnay32245a92019-05-09 12:32:15 -07005918 syn::WherePredicate::Lifetime(_val) => {
5919 formatter.write_str("Lifetime")?;
5920 formatter.write_str("(")?;
5921 Debug::fmt(Lite(_val), formatter)?;
5922 formatter.write_str(")")?;
5923 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005924 }
David Tolnay32245a92019-05-09 12:32:15 -07005925 syn::WherePredicate::Eq(_val) => {
5926 formatter.write_str("Eq")?;
5927 formatter.write_str("(")?;
5928 Debug::fmt(Lite(_val), formatter)?;
5929 formatter.write_str(")")?;
5930 Ok(())
David Tolnay3c3c7d12019-05-08 14:54:12 -07005931 }
5932 }
5933 }
5934}