1fad3a1d3Sopenharmony_ci// This file is @generated by syn-internal-codegen.
2fad3a1d3Sopenharmony_ci// It is not intended for manual editing.
3fad3a1d3Sopenharmony_ci
4fad3a1d3Sopenharmony_ciuse crate::*;
5fad3a1d3Sopenharmony_ciuse std::fmt::{self, Debug};
6fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
7fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
8fad3a1d3Sopenharmony_ciimpl Debug for Abi {
9fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
10fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Abi");
11fad3a1d3Sopenharmony_ci        formatter.field("extern_token", &self.extern_token);
12fad3a1d3Sopenharmony_ci        formatter.field("name", &self.name);
13fad3a1d3Sopenharmony_ci        formatter.finish()
14fad3a1d3Sopenharmony_ci    }
15fad3a1d3Sopenharmony_ci}
16fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
17fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
18fad3a1d3Sopenharmony_ciimpl Debug for AngleBracketedGenericArguments {
19fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
20fad3a1d3Sopenharmony_ci        impl AngleBracketedGenericArguments {
21fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
22fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
23fad3a1d3Sopenharmony_ci                formatter.field("colon2_token", &self.colon2_token);
24fad3a1d3Sopenharmony_ci                formatter.field("lt_token", &self.lt_token);
25fad3a1d3Sopenharmony_ci                formatter.field("args", &self.args);
26fad3a1d3Sopenharmony_ci                formatter.field("gt_token", &self.gt_token);
27fad3a1d3Sopenharmony_ci                formatter.finish()
28fad3a1d3Sopenharmony_ci            }
29fad3a1d3Sopenharmony_ci        }
30fad3a1d3Sopenharmony_ci        self.debug(formatter, "AngleBracketedGenericArguments")
31fad3a1d3Sopenharmony_ci    }
32fad3a1d3Sopenharmony_ci}
33fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
34fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
35fad3a1d3Sopenharmony_ciimpl Debug for Arm {
36fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
37fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Arm");
38fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
39fad3a1d3Sopenharmony_ci        formatter.field("pat", &self.pat);
40fad3a1d3Sopenharmony_ci        formatter.field("guard", &self.guard);
41fad3a1d3Sopenharmony_ci        formatter.field("fat_arrow_token", &self.fat_arrow_token);
42fad3a1d3Sopenharmony_ci        formatter.field("body", &self.body);
43fad3a1d3Sopenharmony_ci        formatter.field("comma", &self.comma);
44fad3a1d3Sopenharmony_ci        formatter.finish()
45fad3a1d3Sopenharmony_ci    }
46fad3a1d3Sopenharmony_ci}
47fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
48fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
49fad3a1d3Sopenharmony_ciimpl Debug for AssocConst {
50fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
51fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("AssocConst");
52fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
53fad3a1d3Sopenharmony_ci        formatter.field("generics", &self.generics);
54fad3a1d3Sopenharmony_ci        formatter.field("eq_token", &self.eq_token);
55fad3a1d3Sopenharmony_ci        formatter.field("value", &self.value);
56fad3a1d3Sopenharmony_ci        formatter.finish()
57fad3a1d3Sopenharmony_ci    }
58fad3a1d3Sopenharmony_ci}
59fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
60fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
61fad3a1d3Sopenharmony_ciimpl Debug for AssocType {
62fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
63fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("AssocType");
64fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
65fad3a1d3Sopenharmony_ci        formatter.field("generics", &self.generics);
66fad3a1d3Sopenharmony_ci        formatter.field("eq_token", &self.eq_token);
67fad3a1d3Sopenharmony_ci        formatter.field("ty", &self.ty);
68fad3a1d3Sopenharmony_ci        formatter.finish()
69fad3a1d3Sopenharmony_ci    }
70fad3a1d3Sopenharmony_ci}
71fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
72fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
73fad3a1d3Sopenharmony_ciimpl Debug for AttrStyle {
74fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
75fad3a1d3Sopenharmony_ci        formatter.write_str("AttrStyle::")?;
76fad3a1d3Sopenharmony_ci        match self {
77fad3a1d3Sopenharmony_ci            AttrStyle::Outer => formatter.write_str("Outer"),
78fad3a1d3Sopenharmony_ci            AttrStyle::Inner(v0) => {
79fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Inner");
80fad3a1d3Sopenharmony_ci                formatter.field(v0);
81fad3a1d3Sopenharmony_ci                formatter.finish()
82fad3a1d3Sopenharmony_ci            }
83fad3a1d3Sopenharmony_ci        }
84fad3a1d3Sopenharmony_ci    }
85fad3a1d3Sopenharmony_ci}
86fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
87fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
88fad3a1d3Sopenharmony_ciimpl Debug for Attribute {
89fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
90fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Attribute");
91fad3a1d3Sopenharmony_ci        formatter.field("pound_token", &self.pound_token);
92fad3a1d3Sopenharmony_ci        formatter.field("style", &self.style);
93fad3a1d3Sopenharmony_ci        formatter.field("bracket_token", &self.bracket_token);
94fad3a1d3Sopenharmony_ci        formatter.field("meta", &self.meta);
95fad3a1d3Sopenharmony_ci        formatter.finish()
96fad3a1d3Sopenharmony_ci    }
97fad3a1d3Sopenharmony_ci}
98fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
99fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
100fad3a1d3Sopenharmony_ciimpl Debug for BareFnArg {
101fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
102fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("BareFnArg");
103fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
104fad3a1d3Sopenharmony_ci        formatter.field("name", &self.name);
105fad3a1d3Sopenharmony_ci        formatter.field("ty", &self.ty);
106fad3a1d3Sopenharmony_ci        formatter.finish()
107fad3a1d3Sopenharmony_ci    }
108fad3a1d3Sopenharmony_ci}
109fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
110fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
111fad3a1d3Sopenharmony_ciimpl Debug for BareVariadic {
112fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
113fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("BareVariadic");
114fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
115fad3a1d3Sopenharmony_ci        formatter.field("name", &self.name);
116fad3a1d3Sopenharmony_ci        formatter.field("dots", &self.dots);
117fad3a1d3Sopenharmony_ci        formatter.field("comma", &self.comma);
118fad3a1d3Sopenharmony_ci        formatter.finish()
119fad3a1d3Sopenharmony_ci    }
120fad3a1d3Sopenharmony_ci}
121fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
122fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
123fad3a1d3Sopenharmony_ciimpl Debug for BinOp {
124fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
125fad3a1d3Sopenharmony_ci        formatter.write_str("BinOp::")?;
126fad3a1d3Sopenharmony_ci        match self {
127fad3a1d3Sopenharmony_ci            BinOp::Add(v0) => {
128fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Add");
129fad3a1d3Sopenharmony_ci                formatter.field(v0);
130fad3a1d3Sopenharmony_ci                formatter.finish()
131fad3a1d3Sopenharmony_ci            }
132fad3a1d3Sopenharmony_ci            BinOp::Sub(v0) => {
133fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Sub");
134fad3a1d3Sopenharmony_ci                formatter.field(v0);
135fad3a1d3Sopenharmony_ci                formatter.finish()
136fad3a1d3Sopenharmony_ci            }
137fad3a1d3Sopenharmony_ci            BinOp::Mul(v0) => {
138fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Mul");
139fad3a1d3Sopenharmony_ci                formatter.field(v0);
140fad3a1d3Sopenharmony_ci                formatter.finish()
141fad3a1d3Sopenharmony_ci            }
142fad3a1d3Sopenharmony_ci            BinOp::Div(v0) => {
143fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Div");
144fad3a1d3Sopenharmony_ci                formatter.field(v0);
145fad3a1d3Sopenharmony_ci                formatter.finish()
146fad3a1d3Sopenharmony_ci            }
147fad3a1d3Sopenharmony_ci            BinOp::Rem(v0) => {
148fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Rem");
149fad3a1d3Sopenharmony_ci                formatter.field(v0);
150fad3a1d3Sopenharmony_ci                formatter.finish()
151fad3a1d3Sopenharmony_ci            }
152fad3a1d3Sopenharmony_ci            BinOp::And(v0) => {
153fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("And");
154fad3a1d3Sopenharmony_ci                formatter.field(v0);
155fad3a1d3Sopenharmony_ci                formatter.finish()
156fad3a1d3Sopenharmony_ci            }
157fad3a1d3Sopenharmony_ci            BinOp::Or(v0) => {
158fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Or");
159fad3a1d3Sopenharmony_ci                formatter.field(v0);
160fad3a1d3Sopenharmony_ci                formatter.finish()
161fad3a1d3Sopenharmony_ci            }
162fad3a1d3Sopenharmony_ci            BinOp::BitXor(v0) => {
163fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("BitXor");
164fad3a1d3Sopenharmony_ci                formatter.field(v0);
165fad3a1d3Sopenharmony_ci                formatter.finish()
166fad3a1d3Sopenharmony_ci            }
167fad3a1d3Sopenharmony_ci            BinOp::BitAnd(v0) => {
168fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("BitAnd");
169fad3a1d3Sopenharmony_ci                formatter.field(v0);
170fad3a1d3Sopenharmony_ci                formatter.finish()
171fad3a1d3Sopenharmony_ci            }
172fad3a1d3Sopenharmony_ci            BinOp::BitOr(v0) => {
173fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("BitOr");
174fad3a1d3Sopenharmony_ci                formatter.field(v0);
175fad3a1d3Sopenharmony_ci                formatter.finish()
176fad3a1d3Sopenharmony_ci            }
177fad3a1d3Sopenharmony_ci            BinOp::Shl(v0) => {
178fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Shl");
179fad3a1d3Sopenharmony_ci                formatter.field(v0);
180fad3a1d3Sopenharmony_ci                formatter.finish()
181fad3a1d3Sopenharmony_ci            }
182fad3a1d3Sopenharmony_ci            BinOp::Shr(v0) => {
183fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Shr");
184fad3a1d3Sopenharmony_ci                formatter.field(v0);
185fad3a1d3Sopenharmony_ci                formatter.finish()
186fad3a1d3Sopenharmony_ci            }
187fad3a1d3Sopenharmony_ci            BinOp::Eq(v0) => {
188fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Eq");
189fad3a1d3Sopenharmony_ci                formatter.field(v0);
190fad3a1d3Sopenharmony_ci                formatter.finish()
191fad3a1d3Sopenharmony_ci            }
192fad3a1d3Sopenharmony_ci            BinOp::Lt(v0) => {
193fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Lt");
194fad3a1d3Sopenharmony_ci                formatter.field(v0);
195fad3a1d3Sopenharmony_ci                formatter.finish()
196fad3a1d3Sopenharmony_ci            }
197fad3a1d3Sopenharmony_ci            BinOp::Le(v0) => {
198fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Le");
199fad3a1d3Sopenharmony_ci                formatter.field(v0);
200fad3a1d3Sopenharmony_ci                formatter.finish()
201fad3a1d3Sopenharmony_ci            }
202fad3a1d3Sopenharmony_ci            BinOp::Ne(v0) => {
203fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Ne");
204fad3a1d3Sopenharmony_ci                formatter.field(v0);
205fad3a1d3Sopenharmony_ci                formatter.finish()
206fad3a1d3Sopenharmony_ci            }
207fad3a1d3Sopenharmony_ci            BinOp::Ge(v0) => {
208fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Ge");
209fad3a1d3Sopenharmony_ci                formatter.field(v0);
210fad3a1d3Sopenharmony_ci                formatter.finish()
211fad3a1d3Sopenharmony_ci            }
212fad3a1d3Sopenharmony_ci            BinOp::Gt(v0) => {
213fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Gt");
214fad3a1d3Sopenharmony_ci                formatter.field(v0);
215fad3a1d3Sopenharmony_ci                formatter.finish()
216fad3a1d3Sopenharmony_ci            }
217fad3a1d3Sopenharmony_ci            BinOp::AddAssign(v0) => {
218fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("AddAssign");
219fad3a1d3Sopenharmony_ci                formatter.field(v0);
220fad3a1d3Sopenharmony_ci                formatter.finish()
221fad3a1d3Sopenharmony_ci            }
222fad3a1d3Sopenharmony_ci            BinOp::SubAssign(v0) => {
223fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("SubAssign");
224fad3a1d3Sopenharmony_ci                formatter.field(v0);
225fad3a1d3Sopenharmony_ci                formatter.finish()
226fad3a1d3Sopenharmony_ci            }
227fad3a1d3Sopenharmony_ci            BinOp::MulAssign(v0) => {
228fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("MulAssign");
229fad3a1d3Sopenharmony_ci                formatter.field(v0);
230fad3a1d3Sopenharmony_ci                formatter.finish()
231fad3a1d3Sopenharmony_ci            }
232fad3a1d3Sopenharmony_ci            BinOp::DivAssign(v0) => {
233fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("DivAssign");
234fad3a1d3Sopenharmony_ci                formatter.field(v0);
235fad3a1d3Sopenharmony_ci                formatter.finish()
236fad3a1d3Sopenharmony_ci            }
237fad3a1d3Sopenharmony_ci            BinOp::RemAssign(v0) => {
238fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("RemAssign");
239fad3a1d3Sopenharmony_ci                formatter.field(v0);
240fad3a1d3Sopenharmony_ci                formatter.finish()
241fad3a1d3Sopenharmony_ci            }
242fad3a1d3Sopenharmony_ci            BinOp::BitXorAssign(v0) => {
243fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("BitXorAssign");
244fad3a1d3Sopenharmony_ci                formatter.field(v0);
245fad3a1d3Sopenharmony_ci                formatter.finish()
246fad3a1d3Sopenharmony_ci            }
247fad3a1d3Sopenharmony_ci            BinOp::BitAndAssign(v0) => {
248fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("BitAndAssign");
249fad3a1d3Sopenharmony_ci                formatter.field(v0);
250fad3a1d3Sopenharmony_ci                formatter.finish()
251fad3a1d3Sopenharmony_ci            }
252fad3a1d3Sopenharmony_ci            BinOp::BitOrAssign(v0) => {
253fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("BitOrAssign");
254fad3a1d3Sopenharmony_ci                formatter.field(v0);
255fad3a1d3Sopenharmony_ci                formatter.finish()
256fad3a1d3Sopenharmony_ci            }
257fad3a1d3Sopenharmony_ci            BinOp::ShlAssign(v0) => {
258fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("ShlAssign");
259fad3a1d3Sopenharmony_ci                formatter.field(v0);
260fad3a1d3Sopenharmony_ci                formatter.finish()
261fad3a1d3Sopenharmony_ci            }
262fad3a1d3Sopenharmony_ci            BinOp::ShrAssign(v0) => {
263fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("ShrAssign");
264fad3a1d3Sopenharmony_ci                formatter.field(v0);
265fad3a1d3Sopenharmony_ci                formatter.finish()
266fad3a1d3Sopenharmony_ci            }
267fad3a1d3Sopenharmony_ci        }
268fad3a1d3Sopenharmony_ci    }
269fad3a1d3Sopenharmony_ci}
270fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
271fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
272fad3a1d3Sopenharmony_ciimpl Debug for Block {
273fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
274fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Block");
275fad3a1d3Sopenharmony_ci        formatter.field("brace_token", &self.brace_token);
276fad3a1d3Sopenharmony_ci        formatter.field("stmts", &self.stmts);
277fad3a1d3Sopenharmony_ci        formatter.finish()
278fad3a1d3Sopenharmony_ci    }
279fad3a1d3Sopenharmony_ci}
280fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
281fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
282fad3a1d3Sopenharmony_ciimpl Debug for BoundLifetimes {
283fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
284fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("BoundLifetimes");
285fad3a1d3Sopenharmony_ci        formatter.field("for_token", &self.for_token);
286fad3a1d3Sopenharmony_ci        formatter.field("lt_token", &self.lt_token);
287fad3a1d3Sopenharmony_ci        formatter.field("lifetimes", &self.lifetimes);
288fad3a1d3Sopenharmony_ci        formatter.field("gt_token", &self.gt_token);
289fad3a1d3Sopenharmony_ci        formatter.finish()
290fad3a1d3Sopenharmony_ci    }
291fad3a1d3Sopenharmony_ci}
292fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
293fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
294fad3a1d3Sopenharmony_ciimpl Debug for ConstParam {
295fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
296fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("ConstParam");
297fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
298fad3a1d3Sopenharmony_ci        formatter.field("const_token", &self.const_token);
299fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
300fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
301fad3a1d3Sopenharmony_ci        formatter.field("ty", &self.ty);
302fad3a1d3Sopenharmony_ci        formatter.field("eq_token", &self.eq_token);
303fad3a1d3Sopenharmony_ci        formatter.field("default", &self.default);
304fad3a1d3Sopenharmony_ci        formatter.finish()
305fad3a1d3Sopenharmony_ci    }
306fad3a1d3Sopenharmony_ci}
307fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
308fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
309fad3a1d3Sopenharmony_ciimpl Debug for Constraint {
310fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
311fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Constraint");
312fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
313fad3a1d3Sopenharmony_ci        formatter.field("generics", &self.generics);
314fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
315fad3a1d3Sopenharmony_ci        formatter.field("bounds", &self.bounds);
316fad3a1d3Sopenharmony_ci        formatter.finish()
317fad3a1d3Sopenharmony_ci    }
318fad3a1d3Sopenharmony_ci}
319fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
320fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
321fad3a1d3Sopenharmony_ciimpl Debug for Data {
322fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
323fad3a1d3Sopenharmony_ci        formatter.write_str("Data::")?;
324fad3a1d3Sopenharmony_ci        match self {
325fad3a1d3Sopenharmony_ci            Data::Struct(v0) => v0.debug(formatter, "Struct"),
326fad3a1d3Sopenharmony_ci            Data::Enum(v0) => v0.debug(formatter, "Enum"),
327fad3a1d3Sopenharmony_ci            Data::Union(v0) => v0.debug(formatter, "Union"),
328fad3a1d3Sopenharmony_ci        }
329fad3a1d3Sopenharmony_ci    }
330fad3a1d3Sopenharmony_ci}
331fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
332fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
333fad3a1d3Sopenharmony_ciimpl Debug for DataEnum {
334fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
335fad3a1d3Sopenharmony_ci        impl DataEnum {
336fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
337fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
338fad3a1d3Sopenharmony_ci                formatter.field("enum_token", &self.enum_token);
339fad3a1d3Sopenharmony_ci                formatter.field("brace_token", &self.brace_token);
340fad3a1d3Sopenharmony_ci                formatter.field("variants", &self.variants);
341fad3a1d3Sopenharmony_ci                formatter.finish()
342fad3a1d3Sopenharmony_ci            }
343fad3a1d3Sopenharmony_ci        }
344fad3a1d3Sopenharmony_ci        self.debug(formatter, "DataEnum")
345fad3a1d3Sopenharmony_ci    }
346fad3a1d3Sopenharmony_ci}
347fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
348fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
349fad3a1d3Sopenharmony_ciimpl Debug for DataStruct {
350fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
351fad3a1d3Sopenharmony_ci        impl DataStruct {
352fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
353fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
354fad3a1d3Sopenharmony_ci                formatter.field("struct_token", &self.struct_token);
355fad3a1d3Sopenharmony_ci                formatter.field("fields", &self.fields);
356fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
357fad3a1d3Sopenharmony_ci                formatter.finish()
358fad3a1d3Sopenharmony_ci            }
359fad3a1d3Sopenharmony_ci        }
360fad3a1d3Sopenharmony_ci        self.debug(formatter, "DataStruct")
361fad3a1d3Sopenharmony_ci    }
362fad3a1d3Sopenharmony_ci}
363fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
364fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
365fad3a1d3Sopenharmony_ciimpl Debug for DataUnion {
366fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
367fad3a1d3Sopenharmony_ci        impl DataUnion {
368fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
369fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
370fad3a1d3Sopenharmony_ci                formatter.field("union_token", &self.union_token);
371fad3a1d3Sopenharmony_ci                formatter.field("fields", &self.fields);
372fad3a1d3Sopenharmony_ci                formatter.finish()
373fad3a1d3Sopenharmony_ci            }
374fad3a1d3Sopenharmony_ci        }
375fad3a1d3Sopenharmony_ci        self.debug(formatter, "DataUnion")
376fad3a1d3Sopenharmony_ci    }
377fad3a1d3Sopenharmony_ci}
378fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
379fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
380fad3a1d3Sopenharmony_ciimpl Debug for DeriveInput {
381fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
382fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("DeriveInput");
383fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
384fad3a1d3Sopenharmony_ci        formatter.field("vis", &self.vis);
385fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
386fad3a1d3Sopenharmony_ci        formatter.field("generics", &self.generics);
387fad3a1d3Sopenharmony_ci        formatter.field("data", &self.data);
388fad3a1d3Sopenharmony_ci        formatter.finish()
389fad3a1d3Sopenharmony_ci    }
390fad3a1d3Sopenharmony_ci}
391fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
392fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
393fad3a1d3Sopenharmony_ciimpl Debug for Expr {
394fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
395fad3a1d3Sopenharmony_ci        formatter.write_str("Expr::")?;
396fad3a1d3Sopenharmony_ci        match self {
397fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
398fad3a1d3Sopenharmony_ci            Expr::Array(v0) => v0.debug(formatter, "Array"),
399fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
400fad3a1d3Sopenharmony_ci            Expr::Assign(v0) => v0.debug(formatter, "Assign"),
401fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
402fad3a1d3Sopenharmony_ci            Expr::Async(v0) => v0.debug(formatter, "Async"),
403fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
404fad3a1d3Sopenharmony_ci            Expr::Await(v0) => v0.debug(formatter, "Await"),
405fad3a1d3Sopenharmony_ci            Expr::Binary(v0) => v0.debug(formatter, "Binary"),
406fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
407fad3a1d3Sopenharmony_ci            Expr::Block(v0) => v0.debug(formatter, "Block"),
408fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
409fad3a1d3Sopenharmony_ci            Expr::Break(v0) => v0.debug(formatter, "Break"),
410fad3a1d3Sopenharmony_ci            Expr::Call(v0) => v0.debug(formatter, "Call"),
411fad3a1d3Sopenharmony_ci            Expr::Cast(v0) => v0.debug(formatter, "Cast"),
412fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
413fad3a1d3Sopenharmony_ci            Expr::Closure(v0) => v0.debug(formatter, "Closure"),
414fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
415fad3a1d3Sopenharmony_ci            Expr::Const(v0) => v0.debug(formatter, "Const"),
416fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
417fad3a1d3Sopenharmony_ci            Expr::Continue(v0) => v0.debug(formatter, "Continue"),
418fad3a1d3Sopenharmony_ci            Expr::Field(v0) => v0.debug(formatter, "Field"),
419fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
420fad3a1d3Sopenharmony_ci            Expr::ForLoop(v0) => v0.debug(formatter, "ForLoop"),
421fad3a1d3Sopenharmony_ci            Expr::Group(v0) => v0.debug(formatter, "Group"),
422fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
423fad3a1d3Sopenharmony_ci            Expr::If(v0) => v0.debug(formatter, "If"),
424fad3a1d3Sopenharmony_ci            Expr::Index(v0) => v0.debug(formatter, "Index"),
425fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
426fad3a1d3Sopenharmony_ci            Expr::Infer(v0) => v0.debug(formatter, "Infer"),
427fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
428fad3a1d3Sopenharmony_ci            Expr::Let(v0) => v0.debug(formatter, "Let"),
429fad3a1d3Sopenharmony_ci            Expr::Lit(v0) => v0.debug(formatter, "Lit"),
430fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
431fad3a1d3Sopenharmony_ci            Expr::Loop(v0) => v0.debug(formatter, "Loop"),
432fad3a1d3Sopenharmony_ci            Expr::Macro(v0) => v0.debug(formatter, "Macro"),
433fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
434fad3a1d3Sopenharmony_ci            Expr::Match(v0) => v0.debug(formatter, "Match"),
435fad3a1d3Sopenharmony_ci            Expr::MethodCall(v0) => v0.debug(formatter, "MethodCall"),
436fad3a1d3Sopenharmony_ci            Expr::Paren(v0) => v0.debug(formatter, "Paren"),
437fad3a1d3Sopenharmony_ci            Expr::Path(v0) => v0.debug(formatter, "Path"),
438fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
439fad3a1d3Sopenharmony_ci            Expr::Range(v0) => v0.debug(formatter, "Range"),
440fad3a1d3Sopenharmony_ci            Expr::Reference(v0) => v0.debug(formatter, "Reference"),
441fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
442fad3a1d3Sopenharmony_ci            Expr::Repeat(v0) => v0.debug(formatter, "Repeat"),
443fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
444fad3a1d3Sopenharmony_ci            Expr::Return(v0) => v0.debug(formatter, "Return"),
445fad3a1d3Sopenharmony_ci            Expr::Struct(v0) => v0.debug(formatter, "Struct"),
446fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
447fad3a1d3Sopenharmony_ci            Expr::Try(v0) => v0.debug(formatter, "Try"),
448fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
449fad3a1d3Sopenharmony_ci            Expr::TryBlock(v0) => v0.debug(formatter, "TryBlock"),
450fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
451fad3a1d3Sopenharmony_ci            Expr::Tuple(v0) => v0.debug(formatter, "Tuple"),
452fad3a1d3Sopenharmony_ci            Expr::Unary(v0) => v0.debug(formatter, "Unary"),
453fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
454fad3a1d3Sopenharmony_ci            Expr::Unsafe(v0) => v0.debug(formatter, "Unsafe"),
455fad3a1d3Sopenharmony_ci            Expr::Verbatim(v0) => {
456fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Verbatim");
457fad3a1d3Sopenharmony_ci                formatter.field(v0);
458fad3a1d3Sopenharmony_ci                formatter.finish()
459fad3a1d3Sopenharmony_ci            }
460fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
461fad3a1d3Sopenharmony_ci            Expr::While(v0) => v0.debug(formatter, "While"),
462fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
463fad3a1d3Sopenharmony_ci            Expr::Yield(v0) => v0.debug(formatter, "Yield"),
464fad3a1d3Sopenharmony_ci            #[cfg(not(feature = "full"))]
465fad3a1d3Sopenharmony_ci            _ => unreachable!(),
466fad3a1d3Sopenharmony_ci        }
467fad3a1d3Sopenharmony_ci    }
468fad3a1d3Sopenharmony_ci}
469fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
470fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
471fad3a1d3Sopenharmony_ciimpl Debug for ExprArray {
472fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
473fad3a1d3Sopenharmony_ci        impl ExprArray {
474fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
475fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
476fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
477fad3a1d3Sopenharmony_ci                formatter.field("bracket_token", &self.bracket_token);
478fad3a1d3Sopenharmony_ci                formatter.field("elems", &self.elems);
479fad3a1d3Sopenharmony_ci                formatter.finish()
480fad3a1d3Sopenharmony_ci            }
481fad3a1d3Sopenharmony_ci        }
482fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprArray")
483fad3a1d3Sopenharmony_ci    }
484fad3a1d3Sopenharmony_ci}
485fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
486fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
487fad3a1d3Sopenharmony_ciimpl Debug for ExprAssign {
488fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
489fad3a1d3Sopenharmony_ci        impl ExprAssign {
490fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
491fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
492fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
493fad3a1d3Sopenharmony_ci                formatter.field("left", &self.left);
494fad3a1d3Sopenharmony_ci                formatter.field("eq_token", &self.eq_token);
495fad3a1d3Sopenharmony_ci                formatter.field("right", &self.right);
496fad3a1d3Sopenharmony_ci                formatter.finish()
497fad3a1d3Sopenharmony_ci            }
498fad3a1d3Sopenharmony_ci        }
499fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprAssign")
500fad3a1d3Sopenharmony_ci    }
501fad3a1d3Sopenharmony_ci}
502fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
503fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
504fad3a1d3Sopenharmony_ciimpl Debug for ExprAsync {
505fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
506fad3a1d3Sopenharmony_ci        impl ExprAsync {
507fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
508fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
509fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
510fad3a1d3Sopenharmony_ci                formatter.field("async_token", &self.async_token);
511fad3a1d3Sopenharmony_ci                formatter.field("capture", &self.capture);
512fad3a1d3Sopenharmony_ci                formatter.field("block", &self.block);
513fad3a1d3Sopenharmony_ci                formatter.finish()
514fad3a1d3Sopenharmony_ci            }
515fad3a1d3Sopenharmony_ci        }
516fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprAsync")
517fad3a1d3Sopenharmony_ci    }
518fad3a1d3Sopenharmony_ci}
519fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
520fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
521fad3a1d3Sopenharmony_ciimpl Debug for ExprAwait {
522fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
523fad3a1d3Sopenharmony_ci        impl ExprAwait {
524fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
525fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
526fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
527fad3a1d3Sopenharmony_ci                formatter.field("base", &self.base);
528fad3a1d3Sopenharmony_ci                formatter.field("dot_token", &self.dot_token);
529fad3a1d3Sopenharmony_ci                formatter.field("await_token", &self.await_token);
530fad3a1d3Sopenharmony_ci                formatter.finish()
531fad3a1d3Sopenharmony_ci            }
532fad3a1d3Sopenharmony_ci        }
533fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprAwait")
534fad3a1d3Sopenharmony_ci    }
535fad3a1d3Sopenharmony_ci}
536fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
537fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
538fad3a1d3Sopenharmony_ciimpl Debug for ExprBinary {
539fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
540fad3a1d3Sopenharmony_ci        impl ExprBinary {
541fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
542fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
543fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
544fad3a1d3Sopenharmony_ci                formatter.field("left", &self.left);
545fad3a1d3Sopenharmony_ci                formatter.field("op", &self.op);
546fad3a1d3Sopenharmony_ci                formatter.field("right", &self.right);
547fad3a1d3Sopenharmony_ci                formatter.finish()
548fad3a1d3Sopenharmony_ci            }
549fad3a1d3Sopenharmony_ci        }
550fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprBinary")
551fad3a1d3Sopenharmony_ci    }
552fad3a1d3Sopenharmony_ci}
553fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
554fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
555fad3a1d3Sopenharmony_ciimpl Debug for ExprBlock {
556fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
557fad3a1d3Sopenharmony_ci        impl ExprBlock {
558fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
559fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
560fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
561fad3a1d3Sopenharmony_ci                formatter.field("label", &self.label);
562fad3a1d3Sopenharmony_ci                formatter.field("block", &self.block);
563fad3a1d3Sopenharmony_ci                formatter.finish()
564fad3a1d3Sopenharmony_ci            }
565fad3a1d3Sopenharmony_ci        }
566fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprBlock")
567fad3a1d3Sopenharmony_ci    }
568fad3a1d3Sopenharmony_ci}
569fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
570fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
571fad3a1d3Sopenharmony_ciimpl Debug for ExprBreak {
572fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
573fad3a1d3Sopenharmony_ci        impl ExprBreak {
574fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
575fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
576fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
577fad3a1d3Sopenharmony_ci                formatter.field("break_token", &self.break_token);
578fad3a1d3Sopenharmony_ci                formatter.field("label", &self.label);
579fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
580fad3a1d3Sopenharmony_ci                formatter.finish()
581fad3a1d3Sopenharmony_ci            }
582fad3a1d3Sopenharmony_ci        }
583fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprBreak")
584fad3a1d3Sopenharmony_ci    }
585fad3a1d3Sopenharmony_ci}
586fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
587fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
588fad3a1d3Sopenharmony_ciimpl Debug for ExprCall {
589fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
590fad3a1d3Sopenharmony_ci        impl ExprCall {
591fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
592fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
593fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
594fad3a1d3Sopenharmony_ci                formatter.field("func", &self.func);
595fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
596fad3a1d3Sopenharmony_ci                formatter.field("args", &self.args);
597fad3a1d3Sopenharmony_ci                formatter.finish()
598fad3a1d3Sopenharmony_ci            }
599fad3a1d3Sopenharmony_ci        }
600fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprCall")
601fad3a1d3Sopenharmony_ci    }
602fad3a1d3Sopenharmony_ci}
603fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
604fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
605fad3a1d3Sopenharmony_ciimpl Debug for ExprCast {
606fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
607fad3a1d3Sopenharmony_ci        impl ExprCast {
608fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
609fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
610fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
611fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
612fad3a1d3Sopenharmony_ci                formatter.field("as_token", &self.as_token);
613fad3a1d3Sopenharmony_ci                formatter.field("ty", &self.ty);
614fad3a1d3Sopenharmony_ci                formatter.finish()
615fad3a1d3Sopenharmony_ci            }
616fad3a1d3Sopenharmony_ci        }
617fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprCast")
618fad3a1d3Sopenharmony_ci    }
619fad3a1d3Sopenharmony_ci}
620fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
621fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
622fad3a1d3Sopenharmony_ciimpl Debug for ExprClosure {
623fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
624fad3a1d3Sopenharmony_ci        impl ExprClosure {
625fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
626fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
627fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
628fad3a1d3Sopenharmony_ci                formatter.field("lifetimes", &self.lifetimes);
629fad3a1d3Sopenharmony_ci                formatter.field("constness", &self.constness);
630fad3a1d3Sopenharmony_ci                formatter.field("movability", &self.movability);
631fad3a1d3Sopenharmony_ci                formatter.field("asyncness", &self.asyncness);
632fad3a1d3Sopenharmony_ci                formatter.field("capture", &self.capture);
633fad3a1d3Sopenharmony_ci                formatter.field("or1_token", &self.or1_token);
634fad3a1d3Sopenharmony_ci                formatter.field("inputs", &self.inputs);
635fad3a1d3Sopenharmony_ci                formatter.field("or2_token", &self.or2_token);
636fad3a1d3Sopenharmony_ci                formatter.field("output", &self.output);
637fad3a1d3Sopenharmony_ci                formatter.field("body", &self.body);
638fad3a1d3Sopenharmony_ci                formatter.finish()
639fad3a1d3Sopenharmony_ci            }
640fad3a1d3Sopenharmony_ci        }
641fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprClosure")
642fad3a1d3Sopenharmony_ci    }
643fad3a1d3Sopenharmony_ci}
644fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
645fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
646fad3a1d3Sopenharmony_ciimpl Debug for ExprConst {
647fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
648fad3a1d3Sopenharmony_ci        impl ExprConst {
649fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
650fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
651fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
652fad3a1d3Sopenharmony_ci                formatter.field("const_token", &self.const_token);
653fad3a1d3Sopenharmony_ci                formatter.field("block", &self.block);
654fad3a1d3Sopenharmony_ci                formatter.finish()
655fad3a1d3Sopenharmony_ci            }
656fad3a1d3Sopenharmony_ci        }
657fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprConst")
658fad3a1d3Sopenharmony_ci    }
659fad3a1d3Sopenharmony_ci}
660fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
661fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
662fad3a1d3Sopenharmony_ciimpl Debug for ExprContinue {
663fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
664fad3a1d3Sopenharmony_ci        impl ExprContinue {
665fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
666fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
667fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
668fad3a1d3Sopenharmony_ci                formatter.field("continue_token", &self.continue_token);
669fad3a1d3Sopenharmony_ci                formatter.field("label", &self.label);
670fad3a1d3Sopenharmony_ci                formatter.finish()
671fad3a1d3Sopenharmony_ci            }
672fad3a1d3Sopenharmony_ci        }
673fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprContinue")
674fad3a1d3Sopenharmony_ci    }
675fad3a1d3Sopenharmony_ci}
676fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
677fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
678fad3a1d3Sopenharmony_ciimpl Debug for ExprField {
679fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
680fad3a1d3Sopenharmony_ci        impl ExprField {
681fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
682fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
683fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
684fad3a1d3Sopenharmony_ci                formatter.field("base", &self.base);
685fad3a1d3Sopenharmony_ci                formatter.field("dot_token", &self.dot_token);
686fad3a1d3Sopenharmony_ci                formatter.field("member", &self.member);
687fad3a1d3Sopenharmony_ci                formatter.finish()
688fad3a1d3Sopenharmony_ci            }
689fad3a1d3Sopenharmony_ci        }
690fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprField")
691fad3a1d3Sopenharmony_ci    }
692fad3a1d3Sopenharmony_ci}
693fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
694fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
695fad3a1d3Sopenharmony_ciimpl Debug for ExprForLoop {
696fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
697fad3a1d3Sopenharmony_ci        impl ExprForLoop {
698fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
699fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
700fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
701fad3a1d3Sopenharmony_ci                formatter.field("label", &self.label);
702fad3a1d3Sopenharmony_ci                formatter.field("for_token", &self.for_token);
703fad3a1d3Sopenharmony_ci                formatter.field("pat", &self.pat);
704fad3a1d3Sopenharmony_ci                formatter.field("in_token", &self.in_token);
705fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
706fad3a1d3Sopenharmony_ci                formatter.field("body", &self.body);
707fad3a1d3Sopenharmony_ci                formatter.finish()
708fad3a1d3Sopenharmony_ci            }
709fad3a1d3Sopenharmony_ci        }
710fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprForLoop")
711fad3a1d3Sopenharmony_ci    }
712fad3a1d3Sopenharmony_ci}
713fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
714fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
715fad3a1d3Sopenharmony_ciimpl Debug for ExprGroup {
716fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
717fad3a1d3Sopenharmony_ci        impl ExprGroup {
718fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
719fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
720fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
721fad3a1d3Sopenharmony_ci                formatter.field("group_token", &self.group_token);
722fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
723fad3a1d3Sopenharmony_ci                formatter.finish()
724fad3a1d3Sopenharmony_ci            }
725fad3a1d3Sopenharmony_ci        }
726fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprGroup")
727fad3a1d3Sopenharmony_ci    }
728fad3a1d3Sopenharmony_ci}
729fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
730fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
731fad3a1d3Sopenharmony_ciimpl Debug for ExprIf {
732fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
733fad3a1d3Sopenharmony_ci        impl ExprIf {
734fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
735fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
736fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
737fad3a1d3Sopenharmony_ci                formatter.field("if_token", &self.if_token);
738fad3a1d3Sopenharmony_ci                formatter.field("cond", &self.cond);
739fad3a1d3Sopenharmony_ci                formatter.field("then_branch", &self.then_branch);
740fad3a1d3Sopenharmony_ci                formatter.field("else_branch", &self.else_branch);
741fad3a1d3Sopenharmony_ci                formatter.finish()
742fad3a1d3Sopenharmony_ci            }
743fad3a1d3Sopenharmony_ci        }
744fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprIf")
745fad3a1d3Sopenharmony_ci    }
746fad3a1d3Sopenharmony_ci}
747fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
748fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
749fad3a1d3Sopenharmony_ciimpl Debug for ExprIndex {
750fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
751fad3a1d3Sopenharmony_ci        impl ExprIndex {
752fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
753fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
754fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
755fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
756fad3a1d3Sopenharmony_ci                formatter.field("bracket_token", &self.bracket_token);
757fad3a1d3Sopenharmony_ci                formatter.field("index", &self.index);
758fad3a1d3Sopenharmony_ci                formatter.finish()
759fad3a1d3Sopenharmony_ci            }
760fad3a1d3Sopenharmony_ci        }
761fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprIndex")
762fad3a1d3Sopenharmony_ci    }
763fad3a1d3Sopenharmony_ci}
764fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
765fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
766fad3a1d3Sopenharmony_ciimpl Debug for ExprInfer {
767fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
768fad3a1d3Sopenharmony_ci        impl ExprInfer {
769fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
770fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
771fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
772fad3a1d3Sopenharmony_ci                formatter.field("underscore_token", &self.underscore_token);
773fad3a1d3Sopenharmony_ci                formatter.finish()
774fad3a1d3Sopenharmony_ci            }
775fad3a1d3Sopenharmony_ci        }
776fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprInfer")
777fad3a1d3Sopenharmony_ci    }
778fad3a1d3Sopenharmony_ci}
779fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
780fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
781fad3a1d3Sopenharmony_ciimpl Debug for ExprLet {
782fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
783fad3a1d3Sopenharmony_ci        impl ExprLet {
784fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
785fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
786fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
787fad3a1d3Sopenharmony_ci                formatter.field("let_token", &self.let_token);
788fad3a1d3Sopenharmony_ci                formatter.field("pat", &self.pat);
789fad3a1d3Sopenharmony_ci                formatter.field("eq_token", &self.eq_token);
790fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
791fad3a1d3Sopenharmony_ci                formatter.finish()
792fad3a1d3Sopenharmony_ci            }
793fad3a1d3Sopenharmony_ci        }
794fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprLet")
795fad3a1d3Sopenharmony_ci    }
796fad3a1d3Sopenharmony_ci}
797fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
798fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
799fad3a1d3Sopenharmony_ciimpl Debug for ExprLit {
800fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
801fad3a1d3Sopenharmony_ci        impl ExprLit {
802fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
803fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
804fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
805fad3a1d3Sopenharmony_ci                formatter.field("lit", &self.lit);
806fad3a1d3Sopenharmony_ci                formatter.finish()
807fad3a1d3Sopenharmony_ci            }
808fad3a1d3Sopenharmony_ci        }
809fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprLit")
810fad3a1d3Sopenharmony_ci    }
811fad3a1d3Sopenharmony_ci}
812fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
813fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
814fad3a1d3Sopenharmony_ciimpl Debug for ExprLoop {
815fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
816fad3a1d3Sopenharmony_ci        impl ExprLoop {
817fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
818fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
819fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
820fad3a1d3Sopenharmony_ci                formatter.field("label", &self.label);
821fad3a1d3Sopenharmony_ci                formatter.field("loop_token", &self.loop_token);
822fad3a1d3Sopenharmony_ci                formatter.field("body", &self.body);
823fad3a1d3Sopenharmony_ci                formatter.finish()
824fad3a1d3Sopenharmony_ci            }
825fad3a1d3Sopenharmony_ci        }
826fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprLoop")
827fad3a1d3Sopenharmony_ci    }
828fad3a1d3Sopenharmony_ci}
829fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
830fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
831fad3a1d3Sopenharmony_ciimpl Debug for ExprMacro {
832fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
833fad3a1d3Sopenharmony_ci        impl ExprMacro {
834fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
835fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
836fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
837fad3a1d3Sopenharmony_ci                formatter.field("mac", &self.mac);
838fad3a1d3Sopenharmony_ci                formatter.finish()
839fad3a1d3Sopenharmony_ci            }
840fad3a1d3Sopenharmony_ci        }
841fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprMacro")
842fad3a1d3Sopenharmony_ci    }
843fad3a1d3Sopenharmony_ci}
844fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
845fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
846fad3a1d3Sopenharmony_ciimpl Debug for ExprMatch {
847fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
848fad3a1d3Sopenharmony_ci        impl ExprMatch {
849fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
850fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
851fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
852fad3a1d3Sopenharmony_ci                formatter.field("match_token", &self.match_token);
853fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
854fad3a1d3Sopenharmony_ci                formatter.field("brace_token", &self.brace_token);
855fad3a1d3Sopenharmony_ci                formatter.field("arms", &self.arms);
856fad3a1d3Sopenharmony_ci                formatter.finish()
857fad3a1d3Sopenharmony_ci            }
858fad3a1d3Sopenharmony_ci        }
859fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprMatch")
860fad3a1d3Sopenharmony_ci    }
861fad3a1d3Sopenharmony_ci}
862fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
863fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
864fad3a1d3Sopenharmony_ciimpl Debug for ExprMethodCall {
865fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
866fad3a1d3Sopenharmony_ci        impl ExprMethodCall {
867fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
868fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
869fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
870fad3a1d3Sopenharmony_ci                formatter.field("receiver", &self.receiver);
871fad3a1d3Sopenharmony_ci                formatter.field("dot_token", &self.dot_token);
872fad3a1d3Sopenharmony_ci                formatter.field("method", &self.method);
873fad3a1d3Sopenharmony_ci                formatter.field("turbofish", &self.turbofish);
874fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
875fad3a1d3Sopenharmony_ci                formatter.field("args", &self.args);
876fad3a1d3Sopenharmony_ci                formatter.finish()
877fad3a1d3Sopenharmony_ci            }
878fad3a1d3Sopenharmony_ci        }
879fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprMethodCall")
880fad3a1d3Sopenharmony_ci    }
881fad3a1d3Sopenharmony_ci}
882fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
883fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
884fad3a1d3Sopenharmony_ciimpl Debug for ExprParen {
885fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
886fad3a1d3Sopenharmony_ci        impl ExprParen {
887fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
888fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
889fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
890fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
891fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
892fad3a1d3Sopenharmony_ci                formatter.finish()
893fad3a1d3Sopenharmony_ci            }
894fad3a1d3Sopenharmony_ci        }
895fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprParen")
896fad3a1d3Sopenharmony_ci    }
897fad3a1d3Sopenharmony_ci}
898fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
899fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
900fad3a1d3Sopenharmony_ciimpl Debug for ExprPath {
901fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
902fad3a1d3Sopenharmony_ci        impl ExprPath {
903fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
904fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
905fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
906fad3a1d3Sopenharmony_ci                formatter.field("qself", &self.qself);
907fad3a1d3Sopenharmony_ci                formatter.field("path", &self.path);
908fad3a1d3Sopenharmony_ci                formatter.finish()
909fad3a1d3Sopenharmony_ci            }
910fad3a1d3Sopenharmony_ci        }
911fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprPath")
912fad3a1d3Sopenharmony_ci    }
913fad3a1d3Sopenharmony_ci}
914fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
915fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
916fad3a1d3Sopenharmony_ciimpl Debug for ExprRange {
917fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
918fad3a1d3Sopenharmony_ci        impl ExprRange {
919fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
920fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
921fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
922fad3a1d3Sopenharmony_ci                formatter.field("start", &self.start);
923fad3a1d3Sopenharmony_ci                formatter.field("limits", &self.limits);
924fad3a1d3Sopenharmony_ci                formatter.field("end", &self.end);
925fad3a1d3Sopenharmony_ci                formatter.finish()
926fad3a1d3Sopenharmony_ci            }
927fad3a1d3Sopenharmony_ci        }
928fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprRange")
929fad3a1d3Sopenharmony_ci    }
930fad3a1d3Sopenharmony_ci}
931fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
932fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
933fad3a1d3Sopenharmony_ciimpl Debug for ExprReference {
934fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
935fad3a1d3Sopenharmony_ci        impl ExprReference {
936fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
937fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
938fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
939fad3a1d3Sopenharmony_ci                formatter.field("and_token", &self.and_token);
940fad3a1d3Sopenharmony_ci                formatter.field("mutability", &self.mutability);
941fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
942fad3a1d3Sopenharmony_ci                formatter.finish()
943fad3a1d3Sopenharmony_ci            }
944fad3a1d3Sopenharmony_ci        }
945fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprReference")
946fad3a1d3Sopenharmony_ci    }
947fad3a1d3Sopenharmony_ci}
948fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
949fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
950fad3a1d3Sopenharmony_ciimpl Debug for ExprRepeat {
951fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
952fad3a1d3Sopenharmony_ci        impl ExprRepeat {
953fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
954fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
955fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
956fad3a1d3Sopenharmony_ci                formatter.field("bracket_token", &self.bracket_token);
957fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
958fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
959fad3a1d3Sopenharmony_ci                formatter.field("len", &self.len);
960fad3a1d3Sopenharmony_ci                formatter.finish()
961fad3a1d3Sopenharmony_ci            }
962fad3a1d3Sopenharmony_ci        }
963fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprRepeat")
964fad3a1d3Sopenharmony_ci    }
965fad3a1d3Sopenharmony_ci}
966fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
967fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
968fad3a1d3Sopenharmony_ciimpl Debug for ExprReturn {
969fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
970fad3a1d3Sopenharmony_ci        impl ExprReturn {
971fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
972fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
973fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
974fad3a1d3Sopenharmony_ci                formatter.field("return_token", &self.return_token);
975fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
976fad3a1d3Sopenharmony_ci                formatter.finish()
977fad3a1d3Sopenharmony_ci            }
978fad3a1d3Sopenharmony_ci        }
979fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprReturn")
980fad3a1d3Sopenharmony_ci    }
981fad3a1d3Sopenharmony_ci}
982fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
983fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
984fad3a1d3Sopenharmony_ciimpl Debug for ExprStruct {
985fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
986fad3a1d3Sopenharmony_ci        impl ExprStruct {
987fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
988fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
989fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
990fad3a1d3Sopenharmony_ci                formatter.field("qself", &self.qself);
991fad3a1d3Sopenharmony_ci                formatter.field("path", &self.path);
992fad3a1d3Sopenharmony_ci                formatter.field("brace_token", &self.brace_token);
993fad3a1d3Sopenharmony_ci                formatter.field("fields", &self.fields);
994fad3a1d3Sopenharmony_ci                formatter.field("dot2_token", &self.dot2_token);
995fad3a1d3Sopenharmony_ci                formatter.field("rest", &self.rest);
996fad3a1d3Sopenharmony_ci                formatter.finish()
997fad3a1d3Sopenharmony_ci            }
998fad3a1d3Sopenharmony_ci        }
999fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprStruct")
1000fad3a1d3Sopenharmony_ci    }
1001fad3a1d3Sopenharmony_ci}
1002fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1003fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1004fad3a1d3Sopenharmony_ciimpl Debug for ExprTry {
1005fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1006fad3a1d3Sopenharmony_ci        impl ExprTry {
1007fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1008fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1009fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1010fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
1011fad3a1d3Sopenharmony_ci                formatter.field("question_token", &self.question_token);
1012fad3a1d3Sopenharmony_ci                formatter.finish()
1013fad3a1d3Sopenharmony_ci            }
1014fad3a1d3Sopenharmony_ci        }
1015fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprTry")
1016fad3a1d3Sopenharmony_ci    }
1017fad3a1d3Sopenharmony_ci}
1018fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1019fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1020fad3a1d3Sopenharmony_ciimpl Debug for ExprTryBlock {
1021fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1022fad3a1d3Sopenharmony_ci        impl ExprTryBlock {
1023fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1024fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1025fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1026fad3a1d3Sopenharmony_ci                formatter.field("try_token", &self.try_token);
1027fad3a1d3Sopenharmony_ci                formatter.field("block", &self.block);
1028fad3a1d3Sopenharmony_ci                formatter.finish()
1029fad3a1d3Sopenharmony_ci            }
1030fad3a1d3Sopenharmony_ci        }
1031fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprTryBlock")
1032fad3a1d3Sopenharmony_ci    }
1033fad3a1d3Sopenharmony_ci}
1034fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1035fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1036fad3a1d3Sopenharmony_ciimpl Debug for ExprTuple {
1037fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1038fad3a1d3Sopenharmony_ci        impl ExprTuple {
1039fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1040fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1041fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1042fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
1043fad3a1d3Sopenharmony_ci                formatter.field("elems", &self.elems);
1044fad3a1d3Sopenharmony_ci                formatter.finish()
1045fad3a1d3Sopenharmony_ci            }
1046fad3a1d3Sopenharmony_ci        }
1047fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprTuple")
1048fad3a1d3Sopenharmony_ci    }
1049fad3a1d3Sopenharmony_ci}
1050fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1051fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1052fad3a1d3Sopenharmony_ciimpl Debug for ExprUnary {
1053fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1054fad3a1d3Sopenharmony_ci        impl ExprUnary {
1055fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1056fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1057fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1058fad3a1d3Sopenharmony_ci                formatter.field("op", &self.op);
1059fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
1060fad3a1d3Sopenharmony_ci                formatter.finish()
1061fad3a1d3Sopenharmony_ci            }
1062fad3a1d3Sopenharmony_ci        }
1063fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprUnary")
1064fad3a1d3Sopenharmony_ci    }
1065fad3a1d3Sopenharmony_ci}
1066fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1067fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1068fad3a1d3Sopenharmony_ciimpl Debug for ExprUnsafe {
1069fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1070fad3a1d3Sopenharmony_ci        impl ExprUnsafe {
1071fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1072fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1073fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1074fad3a1d3Sopenharmony_ci                formatter.field("unsafe_token", &self.unsafe_token);
1075fad3a1d3Sopenharmony_ci                formatter.field("block", &self.block);
1076fad3a1d3Sopenharmony_ci                formatter.finish()
1077fad3a1d3Sopenharmony_ci            }
1078fad3a1d3Sopenharmony_ci        }
1079fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprUnsafe")
1080fad3a1d3Sopenharmony_ci    }
1081fad3a1d3Sopenharmony_ci}
1082fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1083fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1084fad3a1d3Sopenharmony_ciimpl Debug for ExprWhile {
1085fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1086fad3a1d3Sopenharmony_ci        impl ExprWhile {
1087fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1088fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1089fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1090fad3a1d3Sopenharmony_ci                formatter.field("label", &self.label);
1091fad3a1d3Sopenharmony_ci                formatter.field("while_token", &self.while_token);
1092fad3a1d3Sopenharmony_ci                formatter.field("cond", &self.cond);
1093fad3a1d3Sopenharmony_ci                formatter.field("body", &self.body);
1094fad3a1d3Sopenharmony_ci                formatter.finish()
1095fad3a1d3Sopenharmony_ci            }
1096fad3a1d3Sopenharmony_ci        }
1097fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprWhile")
1098fad3a1d3Sopenharmony_ci    }
1099fad3a1d3Sopenharmony_ci}
1100fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1101fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1102fad3a1d3Sopenharmony_ciimpl Debug for ExprYield {
1103fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1104fad3a1d3Sopenharmony_ci        impl ExprYield {
1105fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1106fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1107fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1108fad3a1d3Sopenharmony_ci                formatter.field("yield_token", &self.yield_token);
1109fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
1110fad3a1d3Sopenharmony_ci                formatter.finish()
1111fad3a1d3Sopenharmony_ci            }
1112fad3a1d3Sopenharmony_ci        }
1113fad3a1d3Sopenharmony_ci        self.debug(formatter, "ExprYield")
1114fad3a1d3Sopenharmony_ci    }
1115fad3a1d3Sopenharmony_ci}
1116fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1117fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1118fad3a1d3Sopenharmony_ciimpl Debug for Field {
1119fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1120fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Field");
1121fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
1122fad3a1d3Sopenharmony_ci        formatter.field("vis", &self.vis);
1123fad3a1d3Sopenharmony_ci        formatter.field("mutability", &self.mutability);
1124fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
1125fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
1126fad3a1d3Sopenharmony_ci        formatter.field("ty", &self.ty);
1127fad3a1d3Sopenharmony_ci        formatter.finish()
1128fad3a1d3Sopenharmony_ci    }
1129fad3a1d3Sopenharmony_ci}
1130fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1131fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1132fad3a1d3Sopenharmony_ciimpl Debug for FieldMutability {
1133fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1134fad3a1d3Sopenharmony_ci        formatter.write_str("FieldMutability::")?;
1135fad3a1d3Sopenharmony_ci        match self {
1136fad3a1d3Sopenharmony_ci            FieldMutability::None => formatter.write_str("None"),
1137fad3a1d3Sopenharmony_ci        }
1138fad3a1d3Sopenharmony_ci    }
1139fad3a1d3Sopenharmony_ci}
1140fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1141fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1142fad3a1d3Sopenharmony_ciimpl Debug for FieldPat {
1143fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1144fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("FieldPat");
1145fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
1146fad3a1d3Sopenharmony_ci        formatter.field("member", &self.member);
1147fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
1148fad3a1d3Sopenharmony_ci        formatter.field("pat", &self.pat);
1149fad3a1d3Sopenharmony_ci        formatter.finish()
1150fad3a1d3Sopenharmony_ci    }
1151fad3a1d3Sopenharmony_ci}
1152fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1153fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1154fad3a1d3Sopenharmony_ciimpl Debug for FieldValue {
1155fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1156fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("FieldValue");
1157fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
1158fad3a1d3Sopenharmony_ci        formatter.field("member", &self.member);
1159fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
1160fad3a1d3Sopenharmony_ci        formatter.field("expr", &self.expr);
1161fad3a1d3Sopenharmony_ci        formatter.finish()
1162fad3a1d3Sopenharmony_ci    }
1163fad3a1d3Sopenharmony_ci}
1164fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1165fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1166fad3a1d3Sopenharmony_ciimpl Debug for Fields {
1167fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1168fad3a1d3Sopenharmony_ci        formatter.write_str("Fields::")?;
1169fad3a1d3Sopenharmony_ci        match self {
1170fad3a1d3Sopenharmony_ci            Fields::Named(v0) => v0.debug(formatter, "Named"),
1171fad3a1d3Sopenharmony_ci            Fields::Unnamed(v0) => v0.debug(formatter, "Unnamed"),
1172fad3a1d3Sopenharmony_ci            Fields::Unit => formatter.write_str("Unit"),
1173fad3a1d3Sopenharmony_ci        }
1174fad3a1d3Sopenharmony_ci    }
1175fad3a1d3Sopenharmony_ci}
1176fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1177fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1178fad3a1d3Sopenharmony_ciimpl Debug for FieldsNamed {
1179fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1180fad3a1d3Sopenharmony_ci        impl FieldsNamed {
1181fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1182fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1183fad3a1d3Sopenharmony_ci                formatter.field("brace_token", &self.brace_token);
1184fad3a1d3Sopenharmony_ci                formatter.field("named", &self.named);
1185fad3a1d3Sopenharmony_ci                formatter.finish()
1186fad3a1d3Sopenharmony_ci            }
1187fad3a1d3Sopenharmony_ci        }
1188fad3a1d3Sopenharmony_ci        self.debug(formatter, "FieldsNamed")
1189fad3a1d3Sopenharmony_ci    }
1190fad3a1d3Sopenharmony_ci}
1191fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1192fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1193fad3a1d3Sopenharmony_ciimpl Debug for FieldsUnnamed {
1194fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1195fad3a1d3Sopenharmony_ci        impl FieldsUnnamed {
1196fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1197fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1198fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
1199fad3a1d3Sopenharmony_ci                formatter.field("unnamed", &self.unnamed);
1200fad3a1d3Sopenharmony_ci                formatter.finish()
1201fad3a1d3Sopenharmony_ci            }
1202fad3a1d3Sopenharmony_ci        }
1203fad3a1d3Sopenharmony_ci        self.debug(formatter, "FieldsUnnamed")
1204fad3a1d3Sopenharmony_ci    }
1205fad3a1d3Sopenharmony_ci}
1206fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1207fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1208fad3a1d3Sopenharmony_ciimpl Debug for File {
1209fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1210fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("File");
1211fad3a1d3Sopenharmony_ci        formatter.field("shebang", &self.shebang);
1212fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
1213fad3a1d3Sopenharmony_ci        formatter.field("items", &self.items);
1214fad3a1d3Sopenharmony_ci        formatter.finish()
1215fad3a1d3Sopenharmony_ci    }
1216fad3a1d3Sopenharmony_ci}
1217fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1218fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1219fad3a1d3Sopenharmony_ciimpl Debug for FnArg {
1220fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1221fad3a1d3Sopenharmony_ci        formatter.write_str("FnArg::")?;
1222fad3a1d3Sopenharmony_ci        match self {
1223fad3a1d3Sopenharmony_ci            FnArg::Receiver(v0) => {
1224fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Receiver");
1225fad3a1d3Sopenharmony_ci                formatter.field(v0);
1226fad3a1d3Sopenharmony_ci                formatter.finish()
1227fad3a1d3Sopenharmony_ci            }
1228fad3a1d3Sopenharmony_ci            FnArg::Typed(v0) => {
1229fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Typed");
1230fad3a1d3Sopenharmony_ci                formatter.field(v0);
1231fad3a1d3Sopenharmony_ci                formatter.finish()
1232fad3a1d3Sopenharmony_ci            }
1233fad3a1d3Sopenharmony_ci        }
1234fad3a1d3Sopenharmony_ci    }
1235fad3a1d3Sopenharmony_ci}
1236fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1237fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1238fad3a1d3Sopenharmony_ciimpl Debug for ForeignItem {
1239fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1240fad3a1d3Sopenharmony_ci        formatter.write_str("ForeignItem::")?;
1241fad3a1d3Sopenharmony_ci        match self {
1242fad3a1d3Sopenharmony_ci            ForeignItem::Fn(v0) => v0.debug(formatter, "Fn"),
1243fad3a1d3Sopenharmony_ci            ForeignItem::Static(v0) => v0.debug(formatter, "Static"),
1244fad3a1d3Sopenharmony_ci            ForeignItem::Type(v0) => v0.debug(formatter, "Type"),
1245fad3a1d3Sopenharmony_ci            ForeignItem::Macro(v0) => v0.debug(formatter, "Macro"),
1246fad3a1d3Sopenharmony_ci            ForeignItem::Verbatim(v0) => {
1247fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Verbatim");
1248fad3a1d3Sopenharmony_ci                formatter.field(v0);
1249fad3a1d3Sopenharmony_ci                formatter.finish()
1250fad3a1d3Sopenharmony_ci            }
1251fad3a1d3Sopenharmony_ci        }
1252fad3a1d3Sopenharmony_ci    }
1253fad3a1d3Sopenharmony_ci}
1254fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1255fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1256fad3a1d3Sopenharmony_ciimpl Debug for ForeignItemFn {
1257fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1258fad3a1d3Sopenharmony_ci        impl ForeignItemFn {
1259fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1260fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1261fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1262fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1263fad3a1d3Sopenharmony_ci                formatter.field("sig", &self.sig);
1264fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1265fad3a1d3Sopenharmony_ci                formatter.finish()
1266fad3a1d3Sopenharmony_ci            }
1267fad3a1d3Sopenharmony_ci        }
1268fad3a1d3Sopenharmony_ci        self.debug(formatter, "ForeignItemFn")
1269fad3a1d3Sopenharmony_ci    }
1270fad3a1d3Sopenharmony_ci}
1271fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1272fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1273fad3a1d3Sopenharmony_ciimpl Debug for ForeignItemMacro {
1274fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1275fad3a1d3Sopenharmony_ci        impl ForeignItemMacro {
1276fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1277fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1278fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1279fad3a1d3Sopenharmony_ci                formatter.field("mac", &self.mac);
1280fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1281fad3a1d3Sopenharmony_ci                formatter.finish()
1282fad3a1d3Sopenharmony_ci            }
1283fad3a1d3Sopenharmony_ci        }
1284fad3a1d3Sopenharmony_ci        self.debug(formatter, "ForeignItemMacro")
1285fad3a1d3Sopenharmony_ci    }
1286fad3a1d3Sopenharmony_ci}
1287fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1288fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1289fad3a1d3Sopenharmony_ciimpl Debug for ForeignItemStatic {
1290fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1291fad3a1d3Sopenharmony_ci        impl ForeignItemStatic {
1292fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1293fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1294fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1295fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1296fad3a1d3Sopenharmony_ci                formatter.field("static_token", &self.static_token);
1297fad3a1d3Sopenharmony_ci                formatter.field("mutability", &self.mutability);
1298fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1299fad3a1d3Sopenharmony_ci                formatter.field("colon_token", &self.colon_token);
1300fad3a1d3Sopenharmony_ci                formatter.field("ty", &self.ty);
1301fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1302fad3a1d3Sopenharmony_ci                formatter.finish()
1303fad3a1d3Sopenharmony_ci            }
1304fad3a1d3Sopenharmony_ci        }
1305fad3a1d3Sopenharmony_ci        self.debug(formatter, "ForeignItemStatic")
1306fad3a1d3Sopenharmony_ci    }
1307fad3a1d3Sopenharmony_ci}
1308fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1309fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1310fad3a1d3Sopenharmony_ciimpl Debug for ForeignItemType {
1311fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1312fad3a1d3Sopenharmony_ci        impl ForeignItemType {
1313fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1314fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1315fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1316fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1317fad3a1d3Sopenharmony_ci                formatter.field("type_token", &self.type_token);
1318fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1319fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1320fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1321fad3a1d3Sopenharmony_ci                formatter.finish()
1322fad3a1d3Sopenharmony_ci            }
1323fad3a1d3Sopenharmony_ci        }
1324fad3a1d3Sopenharmony_ci        self.debug(formatter, "ForeignItemType")
1325fad3a1d3Sopenharmony_ci    }
1326fad3a1d3Sopenharmony_ci}
1327fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1328fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1329fad3a1d3Sopenharmony_ciimpl Debug for GenericArgument {
1330fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1331fad3a1d3Sopenharmony_ci        formatter.write_str("GenericArgument::")?;
1332fad3a1d3Sopenharmony_ci        match self {
1333fad3a1d3Sopenharmony_ci            GenericArgument::Lifetime(v0) => {
1334fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Lifetime");
1335fad3a1d3Sopenharmony_ci                formatter.field(v0);
1336fad3a1d3Sopenharmony_ci                formatter.finish()
1337fad3a1d3Sopenharmony_ci            }
1338fad3a1d3Sopenharmony_ci            GenericArgument::Type(v0) => {
1339fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Type");
1340fad3a1d3Sopenharmony_ci                formatter.field(v0);
1341fad3a1d3Sopenharmony_ci                formatter.finish()
1342fad3a1d3Sopenharmony_ci            }
1343fad3a1d3Sopenharmony_ci            GenericArgument::Const(v0) => {
1344fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Const");
1345fad3a1d3Sopenharmony_ci                formatter.field(v0);
1346fad3a1d3Sopenharmony_ci                formatter.finish()
1347fad3a1d3Sopenharmony_ci            }
1348fad3a1d3Sopenharmony_ci            GenericArgument::AssocType(v0) => {
1349fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("AssocType");
1350fad3a1d3Sopenharmony_ci                formatter.field(v0);
1351fad3a1d3Sopenharmony_ci                formatter.finish()
1352fad3a1d3Sopenharmony_ci            }
1353fad3a1d3Sopenharmony_ci            GenericArgument::AssocConst(v0) => {
1354fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("AssocConst");
1355fad3a1d3Sopenharmony_ci                formatter.field(v0);
1356fad3a1d3Sopenharmony_ci                formatter.finish()
1357fad3a1d3Sopenharmony_ci            }
1358fad3a1d3Sopenharmony_ci            GenericArgument::Constraint(v0) => {
1359fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Constraint");
1360fad3a1d3Sopenharmony_ci                formatter.field(v0);
1361fad3a1d3Sopenharmony_ci                formatter.finish()
1362fad3a1d3Sopenharmony_ci            }
1363fad3a1d3Sopenharmony_ci        }
1364fad3a1d3Sopenharmony_ci    }
1365fad3a1d3Sopenharmony_ci}
1366fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1367fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1368fad3a1d3Sopenharmony_ciimpl Debug for GenericParam {
1369fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1370fad3a1d3Sopenharmony_ci        formatter.write_str("GenericParam::")?;
1371fad3a1d3Sopenharmony_ci        match self {
1372fad3a1d3Sopenharmony_ci            GenericParam::Lifetime(v0) => {
1373fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Lifetime");
1374fad3a1d3Sopenharmony_ci                formatter.field(v0);
1375fad3a1d3Sopenharmony_ci                formatter.finish()
1376fad3a1d3Sopenharmony_ci            }
1377fad3a1d3Sopenharmony_ci            GenericParam::Type(v0) => {
1378fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Type");
1379fad3a1d3Sopenharmony_ci                formatter.field(v0);
1380fad3a1d3Sopenharmony_ci                formatter.finish()
1381fad3a1d3Sopenharmony_ci            }
1382fad3a1d3Sopenharmony_ci            GenericParam::Const(v0) => {
1383fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Const");
1384fad3a1d3Sopenharmony_ci                formatter.field(v0);
1385fad3a1d3Sopenharmony_ci                formatter.finish()
1386fad3a1d3Sopenharmony_ci            }
1387fad3a1d3Sopenharmony_ci        }
1388fad3a1d3Sopenharmony_ci    }
1389fad3a1d3Sopenharmony_ci}
1390fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1391fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1392fad3a1d3Sopenharmony_ciimpl Debug for Generics {
1393fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1394fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Generics");
1395fad3a1d3Sopenharmony_ci        formatter.field("lt_token", &self.lt_token);
1396fad3a1d3Sopenharmony_ci        formatter.field("params", &self.params);
1397fad3a1d3Sopenharmony_ci        formatter.field("gt_token", &self.gt_token);
1398fad3a1d3Sopenharmony_ci        formatter.field("where_clause", &self.where_clause);
1399fad3a1d3Sopenharmony_ci        formatter.finish()
1400fad3a1d3Sopenharmony_ci    }
1401fad3a1d3Sopenharmony_ci}
1402fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1403fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1404fad3a1d3Sopenharmony_ciimpl Debug for ImplItem {
1405fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1406fad3a1d3Sopenharmony_ci        formatter.write_str("ImplItem::")?;
1407fad3a1d3Sopenharmony_ci        match self {
1408fad3a1d3Sopenharmony_ci            ImplItem::Const(v0) => v0.debug(formatter, "Const"),
1409fad3a1d3Sopenharmony_ci            ImplItem::Fn(v0) => v0.debug(formatter, "Fn"),
1410fad3a1d3Sopenharmony_ci            ImplItem::Type(v0) => v0.debug(formatter, "Type"),
1411fad3a1d3Sopenharmony_ci            ImplItem::Macro(v0) => v0.debug(formatter, "Macro"),
1412fad3a1d3Sopenharmony_ci            ImplItem::Verbatim(v0) => {
1413fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Verbatim");
1414fad3a1d3Sopenharmony_ci                formatter.field(v0);
1415fad3a1d3Sopenharmony_ci                formatter.finish()
1416fad3a1d3Sopenharmony_ci            }
1417fad3a1d3Sopenharmony_ci        }
1418fad3a1d3Sopenharmony_ci    }
1419fad3a1d3Sopenharmony_ci}
1420fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1421fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1422fad3a1d3Sopenharmony_ciimpl Debug for ImplItemConst {
1423fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1424fad3a1d3Sopenharmony_ci        impl ImplItemConst {
1425fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1426fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1427fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1428fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1429fad3a1d3Sopenharmony_ci                formatter.field("defaultness", &self.defaultness);
1430fad3a1d3Sopenharmony_ci                formatter.field("const_token", &self.const_token);
1431fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1432fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1433fad3a1d3Sopenharmony_ci                formatter.field("colon_token", &self.colon_token);
1434fad3a1d3Sopenharmony_ci                formatter.field("ty", &self.ty);
1435fad3a1d3Sopenharmony_ci                formatter.field("eq_token", &self.eq_token);
1436fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
1437fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1438fad3a1d3Sopenharmony_ci                formatter.finish()
1439fad3a1d3Sopenharmony_ci            }
1440fad3a1d3Sopenharmony_ci        }
1441fad3a1d3Sopenharmony_ci        self.debug(formatter, "ImplItemConst")
1442fad3a1d3Sopenharmony_ci    }
1443fad3a1d3Sopenharmony_ci}
1444fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1445fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1446fad3a1d3Sopenharmony_ciimpl Debug for ImplItemFn {
1447fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1448fad3a1d3Sopenharmony_ci        impl ImplItemFn {
1449fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1450fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1451fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1452fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1453fad3a1d3Sopenharmony_ci                formatter.field("defaultness", &self.defaultness);
1454fad3a1d3Sopenharmony_ci                formatter.field("sig", &self.sig);
1455fad3a1d3Sopenharmony_ci                formatter.field("block", &self.block);
1456fad3a1d3Sopenharmony_ci                formatter.finish()
1457fad3a1d3Sopenharmony_ci            }
1458fad3a1d3Sopenharmony_ci        }
1459fad3a1d3Sopenharmony_ci        self.debug(formatter, "ImplItemFn")
1460fad3a1d3Sopenharmony_ci    }
1461fad3a1d3Sopenharmony_ci}
1462fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1463fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1464fad3a1d3Sopenharmony_ciimpl Debug for ImplItemMacro {
1465fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1466fad3a1d3Sopenharmony_ci        impl ImplItemMacro {
1467fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1468fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1469fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1470fad3a1d3Sopenharmony_ci                formatter.field("mac", &self.mac);
1471fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1472fad3a1d3Sopenharmony_ci                formatter.finish()
1473fad3a1d3Sopenharmony_ci            }
1474fad3a1d3Sopenharmony_ci        }
1475fad3a1d3Sopenharmony_ci        self.debug(formatter, "ImplItemMacro")
1476fad3a1d3Sopenharmony_ci    }
1477fad3a1d3Sopenharmony_ci}
1478fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1479fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1480fad3a1d3Sopenharmony_ciimpl Debug for ImplItemType {
1481fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1482fad3a1d3Sopenharmony_ci        impl ImplItemType {
1483fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1484fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1485fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1486fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1487fad3a1d3Sopenharmony_ci                formatter.field("defaultness", &self.defaultness);
1488fad3a1d3Sopenharmony_ci                formatter.field("type_token", &self.type_token);
1489fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1490fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1491fad3a1d3Sopenharmony_ci                formatter.field("eq_token", &self.eq_token);
1492fad3a1d3Sopenharmony_ci                formatter.field("ty", &self.ty);
1493fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1494fad3a1d3Sopenharmony_ci                formatter.finish()
1495fad3a1d3Sopenharmony_ci            }
1496fad3a1d3Sopenharmony_ci        }
1497fad3a1d3Sopenharmony_ci        self.debug(formatter, "ImplItemType")
1498fad3a1d3Sopenharmony_ci    }
1499fad3a1d3Sopenharmony_ci}
1500fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1501fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1502fad3a1d3Sopenharmony_ciimpl Debug for ImplRestriction {
1503fad3a1d3Sopenharmony_ci    fn fmt(&self, _formatter: &mut fmt::Formatter) -> fmt::Result {
1504fad3a1d3Sopenharmony_ci        match *self {}
1505fad3a1d3Sopenharmony_ci    }
1506fad3a1d3Sopenharmony_ci}
1507fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1508fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1509fad3a1d3Sopenharmony_ciimpl Debug for Index {
1510fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1511fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Index");
1512fad3a1d3Sopenharmony_ci        formatter.field("index", &self.index);
1513fad3a1d3Sopenharmony_ci        formatter.field("span", &self.span);
1514fad3a1d3Sopenharmony_ci        formatter.finish()
1515fad3a1d3Sopenharmony_ci    }
1516fad3a1d3Sopenharmony_ci}
1517fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1518fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1519fad3a1d3Sopenharmony_ciimpl Debug for Item {
1520fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1521fad3a1d3Sopenharmony_ci        formatter.write_str("Item::")?;
1522fad3a1d3Sopenharmony_ci        match self {
1523fad3a1d3Sopenharmony_ci            Item::Const(v0) => v0.debug(formatter, "Const"),
1524fad3a1d3Sopenharmony_ci            Item::Enum(v0) => v0.debug(formatter, "Enum"),
1525fad3a1d3Sopenharmony_ci            Item::ExternCrate(v0) => v0.debug(formatter, "ExternCrate"),
1526fad3a1d3Sopenharmony_ci            Item::Fn(v0) => v0.debug(formatter, "Fn"),
1527fad3a1d3Sopenharmony_ci            Item::ForeignMod(v0) => v0.debug(formatter, "ForeignMod"),
1528fad3a1d3Sopenharmony_ci            Item::Impl(v0) => v0.debug(formatter, "Impl"),
1529fad3a1d3Sopenharmony_ci            Item::Macro(v0) => v0.debug(formatter, "Macro"),
1530fad3a1d3Sopenharmony_ci            Item::Mod(v0) => v0.debug(formatter, "Mod"),
1531fad3a1d3Sopenharmony_ci            Item::Static(v0) => v0.debug(formatter, "Static"),
1532fad3a1d3Sopenharmony_ci            Item::Struct(v0) => v0.debug(formatter, "Struct"),
1533fad3a1d3Sopenharmony_ci            Item::Trait(v0) => v0.debug(formatter, "Trait"),
1534fad3a1d3Sopenharmony_ci            Item::TraitAlias(v0) => v0.debug(formatter, "TraitAlias"),
1535fad3a1d3Sopenharmony_ci            Item::Type(v0) => v0.debug(formatter, "Type"),
1536fad3a1d3Sopenharmony_ci            Item::Union(v0) => v0.debug(formatter, "Union"),
1537fad3a1d3Sopenharmony_ci            Item::Use(v0) => v0.debug(formatter, "Use"),
1538fad3a1d3Sopenharmony_ci            Item::Verbatim(v0) => {
1539fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Verbatim");
1540fad3a1d3Sopenharmony_ci                formatter.field(v0);
1541fad3a1d3Sopenharmony_ci                formatter.finish()
1542fad3a1d3Sopenharmony_ci            }
1543fad3a1d3Sopenharmony_ci        }
1544fad3a1d3Sopenharmony_ci    }
1545fad3a1d3Sopenharmony_ci}
1546fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1547fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1548fad3a1d3Sopenharmony_ciimpl Debug for ItemConst {
1549fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1550fad3a1d3Sopenharmony_ci        impl ItemConst {
1551fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1552fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1553fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1554fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1555fad3a1d3Sopenharmony_ci                formatter.field("const_token", &self.const_token);
1556fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1557fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1558fad3a1d3Sopenharmony_ci                formatter.field("colon_token", &self.colon_token);
1559fad3a1d3Sopenharmony_ci                formatter.field("ty", &self.ty);
1560fad3a1d3Sopenharmony_ci                formatter.field("eq_token", &self.eq_token);
1561fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
1562fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1563fad3a1d3Sopenharmony_ci                formatter.finish()
1564fad3a1d3Sopenharmony_ci            }
1565fad3a1d3Sopenharmony_ci        }
1566fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemConst")
1567fad3a1d3Sopenharmony_ci    }
1568fad3a1d3Sopenharmony_ci}
1569fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1570fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1571fad3a1d3Sopenharmony_ciimpl Debug for ItemEnum {
1572fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1573fad3a1d3Sopenharmony_ci        impl ItemEnum {
1574fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1575fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1576fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1577fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1578fad3a1d3Sopenharmony_ci                formatter.field("enum_token", &self.enum_token);
1579fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1580fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1581fad3a1d3Sopenharmony_ci                formatter.field("brace_token", &self.brace_token);
1582fad3a1d3Sopenharmony_ci                formatter.field("variants", &self.variants);
1583fad3a1d3Sopenharmony_ci                formatter.finish()
1584fad3a1d3Sopenharmony_ci            }
1585fad3a1d3Sopenharmony_ci        }
1586fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemEnum")
1587fad3a1d3Sopenharmony_ci    }
1588fad3a1d3Sopenharmony_ci}
1589fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1590fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1591fad3a1d3Sopenharmony_ciimpl Debug for ItemExternCrate {
1592fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1593fad3a1d3Sopenharmony_ci        impl ItemExternCrate {
1594fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1595fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1596fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1597fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1598fad3a1d3Sopenharmony_ci                formatter.field("extern_token", &self.extern_token);
1599fad3a1d3Sopenharmony_ci                formatter.field("crate_token", &self.crate_token);
1600fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1601fad3a1d3Sopenharmony_ci                formatter.field("rename", &self.rename);
1602fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1603fad3a1d3Sopenharmony_ci                formatter.finish()
1604fad3a1d3Sopenharmony_ci            }
1605fad3a1d3Sopenharmony_ci        }
1606fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemExternCrate")
1607fad3a1d3Sopenharmony_ci    }
1608fad3a1d3Sopenharmony_ci}
1609fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1610fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1611fad3a1d3Sopenharmony_ciimpl Debug for ItemFn {
1612fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1613fad3a1d3Sopenharmony_ci        impl ItemFn {
1614fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1615fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1616fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1617fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1618fad3a1d3Sopenharmony_ci                formatter.field("sig", &self.sig);
1619fad3a1d3Sopenharmony_ci                formatter.field("block", &self.block);
1620fad3a1d3Sopenharmony_ci                formatter.finish()
1621fad3a1d3Sopenharmony_ci            }
1622fad3a1d3Sopenharmony_ci        }
1623fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemFn")
1624fad3a1d3Sopenharmony_ci    }
1625fad3a1d3Sopenharmony_ci}
1626fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1627fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1628fad3a1d3Sopenharmony_ciimpl Debug for ItemForeignMod {
1629fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1630fad3a1d3Sopenharmony_ci        impl ItemForeignMod {
1631fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1632fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1633fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1634fad3a1d3Sopenharmony_ci                formatter.field("unsafety", &self.unsafety);
1635fad3a1d3Sopenharmony_ci                formatter.field("abi", &self.abi);
1636fad3a1d3Sopenharmony_ci                formatter.field("brace_token", &self.brace_token);
1637fad3a1d3Sopenharmony_ci                formatter.field("items", &self.items);
1638fad3a1d3Sopenharmony_ci                formatter.finish()
1639fad3a1d3Sopenharmony_ci            }
1640fad3a1d3Sopenharmony_ci        }
1641fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemForeignMod")
1642fad3a1d3Sopenharmony_ci    }
1643fad3a1d3Sopenharmony_ci}
1644fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1645fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1646fad3a1d3Sopenharmony_ciimpl Debug for ItemImpl {
1647fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1648fad3a1d3Sopenharmony_ci        impl ItemImpl {
1649fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1650fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1651fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1652fad3a1d3Sopenharmony_ci                formatter.field("defaultness", &self.defaultness);
1653fad3a1d3Sopenharmony_ci                formatter.field("unsafety", &self.unsafety);
1654fad3a1d3Sopenharmony_ci                formatter.field("impl_token", &self.impl_token);
1655fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1656fad3a1d3Sopenharmony_ci                formatter.field("trait_", &self.trait_);
1657fad3a1d3Sopenharmony_ci                formatter.field("self_ty", &self.self_ty);
1658fad3a1d3Sopenharmony_ci                formatter.field("brace_token", &self.brace_token);
1659fad3a1d3Sopenharmony_ci                formatter.field("items", &self.items);
1660fad3a1d3Sopenharmony_ci                formatter.finish()
1661fad3a1d3Sopenharmony_ci            }
1662fad3a1d3Sopenharmony_ci        }
1663fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemImpl")
1664fad3a1d3Sopenharmony_ci    }
1665fad3a1d3Sopenharmony_ci}
1666fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1667fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1668fad3a1d3Sopenharmony_ciimpl Debug for ItemMacro {
1669fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1670fad3a1d3Sopenharmony_ci        impl ItemMacro {
1671fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1672fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1673fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1674fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1675fad3a1d3Sopenharmony_ci                formatter.field("mac", &self.mac);
1676fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1677fad3a1d3Sopenharmony_ci                formatter.finish()
1678fad3a1d3Sopenharmony_ci            }
1679fad3a1d3Sopenharmony_ci        }
1680fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemMacro")
1681fad3a1d3Sopenharmony_ci    }
1682fad3a1d3Sopenharmony_ci}
1683fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1684fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1685fad3a1d3Sopenharmony_ciimpl Debug for ItemMod {
1686fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1687fad3a1d3Sopenharmony_ci        impl ItemMod {
1688fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1689fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1690fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1691fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1692fad3a1d3Sopenharmony_ci                formatter.field("unsafety", &self.unsafety);
1693fad3a1d3Sopenharmony_ci                formatter.field("mod_token", &self.mod_token);
1694fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1695fad3a1d3Sopenharmony_ci                formatter.field("content", &self.content);
1696fad3a1d3Sopenharmony_ci                formatter.field("semi", &self.semi);
1697fad3a1d3Sopenharmony_ci                formatter.finish()
1698fad3a1d3Sopenharmony_ci            }
1699fad3a1d3Sopenharmony_ci        }
1700fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemMod")
1701fad3a1d3Sopenharmony_ci    }
1702fad3a1d3Sopenharmony_ci}
1703fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1704fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1705fad3a1d3Sopenharmony_ciimpl Debug for ItemStatic {
1706fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1707fad3a1d3Sopenharmony_ci        impl ItemStatic {
1708fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1709fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1710fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1711fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1712fad3a1d3Sopenharmony_ci                formatter.field("static_token", &self.static_token);
1713fad3a1d3Sopenharmony_ci                formatter.field("mutability", &self.mutability);
1714fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1715fad3a1d3Sopenharmony_ci                formatter.field("colon_token", &self.colon_token);
1716fad3a1d3Sopenharmony_ci                formatter.field("ty", &self.ty);
1717fad3a1d3Sopenharmony_ci                formatter.field("eq_token", &self.eq_token);
1718fad3a1d3Sopenharmony_ci                formatter.field("expr", &self.expr);
1719fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1720fad3a1d3Sopenharmony_ci                formatter.finish()
1721fad3a1d3Sopenharmony_ci            }
1722fad3a1d3Sopenharmony_ci        }
1723fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemStatic")
1724fad3a1d3Sopenharmony_ci    }
1725fad3a1d3Sopenharmony_ci}
1726fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1727fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1728fad3a1d3Sopenharmony_ciimpl Debug for ItemStruct {
1729fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1730fad3a1d3Sopenharmony_ci        impl ItemStruct {
1731fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1732fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1733fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1734fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1735fad3a1d3Sopenharmony_ci                formatter.field("struct_token", &self.struct_token);
1736fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1737fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1738fad3a1d3Sopenharmony_ci                formatter.field("fields", &self.fields);
1739fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1740fad3a1d3Sopenharmony_ci                formatter.finish()
1741fad3a1d3Sopenharmony_ci            }
1742fad3a1d3Sopenharmony_ci        }
1743fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemStruct")
1744fad3a1d3Sopenharmony_ci    }
1745fad3a1d3Sopenharmony_ci}
1746fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1747fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1748fad3a1d3Sopenharmony_ciimpl Debug for ItemTrait {
1749fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1750fad3a1d3Sopenharmony_ci        impl ItemTrait {
1751fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1752fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1753fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1754fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1755fad3a1d3Sopenharmony_ci                formatter.field("unsafety", &self.unsafety);
1756fad3a1d3Sopenharmony_ci                formatter.field("auto_token", &self.auto_token);
1757fad3a1d3Sopenharmony_ci                formatter.field("restriction", &self.restriction);
1758fad3a1d3Sopenharmony_ci                formatter.field("trait_token", &self.trait_token);
1759fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1760fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1761fad3a1d3Sopenharmony_ci                formatter.field("colon_token", &self.colon_token);
1762fad3a1d3Sopenharmony_ci                formatter.field("supertraits", &self.supertraits);
1763fad3a1d3Sopenharmony_ci                formatter.field("brace_token", &self.brace_token);
1764fad3a1d3Sopenharmony_ci                formatter.field("items", &self.items);
1765fad3a1d3Sopenharmony_ci                formatter.finish()
1766fad3a1d3Sopenharmony_ci            }
1767fad3a1d3Sopenharmony_ci        }
1768fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemTrait")
1769fad3a1d3Sopenharmony_ci    }
1770fad3a1d3Sopenharmony_ci}
1771fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1772fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1773fad3a1d3Sopenharmony_ciimpl Debug for ItemTraitAlias {
1774fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1775fad3a1d3Sopenharmony_ci        impl ItemTraitAlias {
1776fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1777fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1778fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1779fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1780fad3a1d3Sopenharmony_ci                formatter.field("trait_token", &self.trait_token);
1781fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1782fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1783fad3a1d3Sopenharmony_ci                formatter.field("eq_token", &self.eq_token);
1784fad3a1d3Sopenharmony_ci                formatter.field("bounds", &self.bounds);
1785fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1786fad3a1d3Sopenharmony_ci                formatter.finish()
1787fad3a1d3Sopenharmony_ci            }
1788fad3a1d3Sopenharmony_ci        }
1789fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemTraitAlias")
1790fad3a1d3Sopenharmony_ci    }
1791fad3a1d3Sopenharmony_ci}
1792fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1793fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1794fad3a1d3Sopenharmony_ciimpl Debug for ItemType {
1795fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1796fad3a1d3Sopenharmony_ci        impl ItemType {
1797fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1798fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1799fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1800fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1801fad3a1d3Sopenharmony_ci                formatter.field("type_token", &self.type_token);
1802fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1803fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1804fad3a1d3Sopenharmony_ci                formatter.field("eq_token", &self.eq_token);
1805fad3a1d3Sopenharmony_ci                formatter.field("ty", &self.ty);
1806fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1807fad3a1d3Sopenharmony_ci                formatter.finish()
1808fad3a1d3Sopenharmony_ci            }
1809fad3a1d3Sopenharmony_ci        }
1810fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemType")
1811fad3a1d3Sopenharmony_ci    }
1812fad3a1d3Sopenharmony_ci}
1813fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1814fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1815fad3a1d3Sopenharmony_ciimpl Debug for ItemUnion {
1816fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1817fad3a1d3Sopenharmony_ci        impl ItemUnion {
1818fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1819fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1820fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1821fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1822fad3a1d3Sopenharmony_ci                formatter.field("union_token", &self.union_token);
1823fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1824fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
1825fad3a1d3Sopenharmony_ci                formatter.field("fields", &self.fields);
1826fad3a1d3Sopenharmony_ci                formatter.finish()
1827fad3a1d3Sopenharmony_ci            }
1828fad3a1d3Sopenharmony_ci        }
1829fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemUnion")
1830fad3a1d3Sopenharmony_ci    }
1831fad3a1d3Sopenharmony_ci}
1832fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1833fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1834fad3a1d3Sopenharmony_ciimpl Debug for ItemUse {
1835fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1836fad3a1d3Sopenharmony_ci        impl ItemUse {
1837fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1838fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1839fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1840fad3a1d3Sopenharmony_ci                formatter.field("vis", &self.vis);
1841fad3a1d3Sopenharmony_ci                formatter.field("use_token", &self.use_token);
1842fad3a1d3Sopenharmony_ci                formatter.field("leading_colon", &self.leading_colon);
1843fad3a1d3Sopenharmony_ci                formatter.field("tree", &self.tree);
1844fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1845fad3a1d3Sopenharmony_ci                formatter.finish()
1846fad3a1d3Sopenharmony_ci            }
1847fad3a1d3Sopenharmony_ci        }
1848fad3a1d3Sopenharmony_ci        self.debug(formatter, "ItemUse")
1849fad3a1d3Sopenharmony_ci    }
1850fad3a1d3Sopenharmony_ci}
1851fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1852fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1853fad3a1d3Sopenharmony_ciimpl Debug for Label {
1854fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1855fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Label");
1856fad3a1d3Sopenharmony_ci        formatter.field("name", &self.name);
1857fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
1858fad3a1d3Sopenharmony_ci        formatter.finish()
1859fad3a1d3Sopenharmony_ci    }
1860fad3a1d3Sopenharmony_ci}
1861fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1862fad3a1d3Sopenharmony_ciimpl Debug for Lifetime {
1863fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1864fad3a1d3Sopenharmony_ci        impl Lifetime {
1865fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1866fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1867fad3a1d3Sopenharmony_ci                formatter.field("apostrophe", &self.apostrophe);
1868fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
1869fad3a1d3Sopenharmony_ci                formatter.finish()
1870fad3a1d3Sopenharmony_ci            }
1871fad3a1d3Sopenharmony_ci        }
1872fad3a1d3Sopenharmony_ci        self.debug(formatter, "Lifetime")
1873fad3a1d3Sopenharmony_ci    }
1874fad3a1d3Sopenharmony_ci}
1875fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1876fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1877fad3a1d3Sopenharmony_ciimpl Debug for LifetimeParam {
1878fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1879fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("LifetimeParam");
1880fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
1881fad3a1d3Sopenharmony_ci        formatter.field("lifetime", &self.lifetime);
1882fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
1883fad3a1d3Sopenharmony_ci        formatter.field("bounds", &self.bounds);
1884fad3a1d3Sopenharmony_ci        formatter.finish()
1885fad3a1d3Sopenharmony_ci    }
1886fad3a1d3Sopenharmony_ci}
1887fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1888fad3a1d3Sopenharmony_ciimpl Debug for Lit {
1889fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1890fad3a1d3Sopenharmony_ci        formatter.write_str("Lit::")?;
1891fad3a1d3Sopenharmony_ci        match self {
1892fad3a1d3Sopenharmony_ci            Lit::Str(v0) => v0.debug(formatter, "Str"),
1893fad3a1d3Sopenharmony_ci            Lit::ByteStr(v0) => v0.debug(formatter, "ByteStr"),
1894fad3a1d3Sopenharmony_ci            Lit::Byte(v0) => v0.debug(formatter, "Byte"),
1895fad3a1d3Sopenharmony_ci            Lit::Char(v0) => v0.debug(formatter, "Char"),
1896fad3a1d3Sopenharmony_ci            Lit::Int(v0) => v0.debug(formatter, "Int"),
1897fad3a1d3Sopenharmony_ci            Lit::Float(v0) => v0.debug(formatter, "Float"),
1898fad3a1d3Sopenharmony_ci            Lit::Bool(v0) => v0.debug(formatter, "Bool"),
1899fad3a1d3Sopenharmony_ci            Lit::Verbatim(v0) => {
1900fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Verbatim");
1901fad3a1d3Sopenharmony_ci                formatter.field(v0);
1902fad3a1d3Sopenharmony_ci                formatter.finish()
1903fad3a1d3Sopenharmony_ci            }
1904fad3a1d3Sopenharmony_ci        }
1905fad3a1d3Sopenharmony_ci    }
1906fad3a1d3Sopenharmony_ci}
1907fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1908fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1909fad3a1d3Sopenharmony_ciimpl Debug for Local {
1910fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1911fad3a1d3Sopenharmony_ci        impl Local {
1912fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
1913fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
1914fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
1915fad3a1d3Sopenharmony_ci                formatter.field("let_token", &self.let_token);
1916fad3a1d3Sopenharmony_ci                formatter.field("pat", &self.pat);
1917fad3a1d3Sopenharmony_ci                formatter.field("init", &self.init);
1918fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
1919fad3a1d3Sopenharmony_ci                formatter.finish()
1920fad3a1d3Sopenharmony_ci            }
1921fad3a1d3Sopenharmony_ci        }
1922fad3a1d3Sopenharmony_ci        self.debug(formatter, "Local")
1923fad3a1d3Sopenharmony_ci    }
1924fad3a1d3Sopenharmony_ci}
1925fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1926fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1927fad3a1d3Sopenharmony_ciimpl Debug for LocalInit {
1928fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1929fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("LocalInit");
1930fad3a1d3Sopenharmony_ci        formatter.field("eq_token", &self.eq_token);
1931fad3a1d3Sopenharmony_ci        formatter.field("expr", &self.expr);
1932fad3a1d3Sopenharmony_ci        formatter.field("diverge", &self.diverge);
1933fad3a1d3Sopenharmony_ci        formatter.finish()
1934fad3a1d3Sopenharmony_ci    }
1935fad3a1d3Sopenharmony_ci}
1936fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1937fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1938fad3a1d3Sopenharmony_ciimpl Debug for Macro {
1939fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1940fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Macro");
1941fad3a1d3Sopenharmony_ci        formatter.field("path", &self.path);
1942fad3a1d3Sopenharmony_ci        formatter.field("bang_token", &self.bang_token);
1943fad3a1d3Sopenharmony_ci        formatter.field("delimiter", &self.delimiter);
1944fad3a1d3Sopenharmony_ci        formatter.field("tokens", &self.tokens);
1945fad3a1d3Sopenharmony_ci        formatter.finish()
1946fad3a1d3Sopenharmony_ci    }
1947fad3a1d3Sopenharmony_ci}
1948fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1949fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1950fad3a1d3Sopenharmony_ciimpl Debug for MacroDelimiter {
1951fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1952fad3a1d3Sopenharmony_ci        formatter.write_str("MacroDelimiter::")?;
1953fad3a1d3Sopenharmony_ci        match self {
1954fad3a1d3Sopenharmony_ci            MacroDelimiter::Paren(v0) => {
1955fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Paren");
1956fad3a1d3Sopenharmony_ci                formatter.field(v0);
1957fad3a1d3Sopenharmony_ci                formatter.finish()
1958fad3a1d3Sopenharmony_ci            }
1959fad3a1d3Sopenharmony_ci            MacroDelimiter::Brace(v0) => {
1960fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Brace");
1961fad3a1d3Sopenharmony_ci                formatter.field(v0);
1962fad3a1d3Sopenharmony_ci                formatter.finish()
1963fad3a1d3Sopenharmony_ci            }
1964fad3a1d3Sopenharmony_ci            MacroDelimiter::Bracket(v0) => {
1965fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Bracket");
1966fad3a1d3Sopenharmony_ci                formatter.field(v0);
1967fad3a1d3Sopenharmony_ci                formatter.finish()
1968fad3a1d3Sopenharmony_ci            }
1969fad3a1d3Sopenharmony_ci        }
1970fad3a1d3Sopenharmony_ci    }
1971fad3a1d3Sopenharmony_ci}
1972fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1973fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1974fad3a1d3Sopenharmony_ciimpl Debug for Member {
1975fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1976fad3a1d3Sopenharmony_ci        formatter.write_str("Member::")?;
1977fad3a1d3Sopenharmony_ci        match self {
1978fad3a1d3Sopenharmony_ci            Member::Named(v0) => {
1979fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Named");
1980fad3a1d3Sopenharmony_ci                formatter.field(v0);
1981fad3a1d3Sopenharmony_ci                formatter.finish()
1982fad3a1d3Sopenharmony_ci            }
1983fad3a1d3Sopenharmony_ci            Member::Unnamed(v0) => {
1984fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Unnamed");
1985fad3a1d3Sopenharmony_ci                formatter.field(v0);
1986fad3a1d3Sopenharmony_ci                formatter.finish()
1987fad3a1d3Sopenharmony_ci            }
1988fad3a1d3Sopenharmony_ci        }
1989fad3a1d3Sopenharmony_ci    }
1990fad3a1d3Sopenharmony_ci}
1991fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1992fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1993fad3a1d3Sopenharmony_ciimpl Debug for Meta {
1994fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
1995fad3a1d3Sopenharmony_ci        formatter.write_str("Meta::")?;
1996fad3a1d3Sopenharmony_ci        match self {
1997fad3a1d3Sopenharmony_ci            Meta::Path(v0) => v0.debug(formatter, "Path"),
1998fad3a1d3Sopenharmony_ci            Meta::List(v0) => v0.debug(formatter, "List"),
1999fad3a1d3Sopenharmony_ci            Meta::NameValue(v0) => v0.debug(formatter, "NameValue"),
2000fad3a1d3Sopenharmony_ci        }
2001fad3a1d3Sopenharmony_ci    }
2002fad3a1d3Sopenharmony_ci}
2003fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2004fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2005fad3a1d3Sopenharmony_ciimpl Debug for MetaList {
2006fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2007fad3a1d3Sopenharmony_ci        impl MetaList {
2008fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2009fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2010fad3a1d3Sopenharmony_ci                formatter.field("path", &self.path);
2011fad3a1d3Sopenharmony_ci                formatter.field("delimiter", &self.delimiter);
2012fad3a1d3Sopenharmony_ci                formatter.field("tokens", &self.tokens);
2013fad3a1d3Sopenharmony_ci                formatter.finish()
2014fad3a1d3Sopenharmony_ci            }
2015fad3a1d3Sopenharmony_ci        }
2016fad3a1d3Sopenharmony_ci        self.debug(formatter, "MetaList")
2017fad3a1d3Sopenharmony_ci    }
2018fad3a1d3Sopenharmony_ci}
2019fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2020fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2021fad3a1d3Sopenharmony_ciimpl Debug for MetaNameValue {
2022fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2023fad3a1d3Sopenharmony_ci        impl MetaNameValue {
2024fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2025fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2026fad3a1d3Sopenharmony_ci                formatter.field("path", &self.path);
2027fad3a1d3Sopenharmony_ci                formatter.field("eq_token", &self.eq_token);
2028fad3a1d3Sopenharmony_ci                formatter.field("value", &self.value);
2029fad3a1d3Sopenharmony_ci                formatter.finish()
2030fad3a1d3Sopenharmony_ci            }
2031fad3a1d3Sopenharmony_ci        }
2032fad3a1d3Sopenharmony_ci        self.debug(formatter, "MetaNameValue")
2033fad3a1d3Sopenharmony_ci    }
2034fad3a1d3Sopenharmony_ci}
2035fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2036fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2037fad3a1d3Sopenharmony_ciimpl Debug for ParenthesizedGenericArguments {
2038fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2039fad3a1d3Sopenharmony_ci        impl ParenthesizedGenericArguments {
2040fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2041fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2042fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
2043fad3a1d3Sopenharmony_ci                formatter.field("inputs", &self.inputs);
2044fad3a1d3Sopenharmony_ci                formatter.field("output", &self.output);
2045fad3a1d3Sopenharmony_ci                formatter.finish()
2046fad3a1d3Sopenharmony_ci            }
2047fad3a1d3Sopenharmony_ci        }
2048fad3a1d3Sopenharmony_ci        self.debug(formatter, "ParenthesizedGenericArguments")
2049fad3a1d3Sopenharmony_ci    }
2050fad3a1d3Sopenharmony_ci}
2051fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2052fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2053fad3a1d3Sopenharmony_ciimpl Debug for Pat {
2054fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2055fad3a1d3Sopenharmony_ci        formatter.write_str("Pat::")?;
2056fad3a1d3Sopenharmony_ci        match self {
2057fad3a1d3Sopenharmony_ci            Pat::Const(v0) => v0.debug(formatter, "Const"),
2058fad3a1d3Sopenharmony_ci            Pat::Ident(v0) => v0.debug(formatter, "Ident"),
2059fad3a1d3Sopenharmony_ci            Pat::Lit(v0) => v0.debug(formatter, "Lit"),
2060fad3a1d3Sopenharmony_ci            Pat::Macro(v0) => v0.debug(formatter, "Macro"),
2061fad3a1d3Sopenharmony_ci            Pat::Or(v0) => v0.debug(formatter, "Or"),
2062fad3a1d3Sopenharmony_ci            Pat::Paren(v0) => v0.debug(formatter, "Paren"),
2063fad3a1d3Sopenharmony_ci            Pat::Path(v0) => v0.debug(formatter, "Path"),
2064fad3a1d3Sopenharmony_ci            Pat::Range(v0) => v0.debug(formatter, "Range"),
2065fad3a1d3Sopenharmony_ci            Pat::Reference(v0) => v0.debug(formatter, "Reference"),
2066fad3a1d3Sopenharmony_ci            Pat::Rest(v0) => v0.debug(formatter, "Rest"),
2067fad3a1d3Sopenharmony_ci            Pat::Slice(v0) => v0.debug(formatter, "Slice"),
2068fad3a1d3Sopenharmony_ci            Pat::Struct(v0) => v0.debug(formatter, "Struct"),
2069fad3a1d3Sopenharmony_ci            Pat::Tuple(v0) => v0.debug(formatter, "Tuple"),
2070fad3a1d3Sopenharmony_ci            Pat::TupleStruct(v0) => v0.debug(formatter, "TupleStruct"),
2071fad3a1d3Sopenharmony_ci            Pat::Type(v0) => v0.debug(formatter, "Type"),
2072fad3a1d3Sopenharmony_ci            Pat::Verbatim(v0) => {
2073fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Verbatim");
2074fad3a1d3Sopenharmony_ci                formatter.field(v0);
2075fad3a1d3Sopenharmony_ci                formatter.finish()
2076fad3a1d3Sopenharmony_ci            }
2077fad3a1d3Sopenharmony_ci            Pat::Wild(v0) => v0.debug(formatter, "Wild"),
2078fad3a1d3Sopenharmony_ci        }
2079fad3a1d3Sopenharmony_ci    }
2080fad3a1d3Sopenharmony_ci}
2081fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2082fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2083fad3a1d3Sopenharmony_ciimpl Debug for PatIdent {
2084fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2085fad3a1d3Sopenharmony_ci        impl PatIdent {
2086fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2087fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2088fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2089fad3a1d3Sopenharmony_ci                formatter.field("by_ref", &self.by_ref);
2090fad3a1d3Sopenharmony_ci                formatter.field("mutability", &self.mutability);
2091fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
2092fad3a1d3Sopenharmony_ci                formatter.field("subpat", &self.subpat);
2093fad3a1d3Sopenharmony_ci                formatter.finish()
2094fad3a1d3Sopenharmony_ci            }
2095fad3a1d3Sopenharmony_ci        }
2096fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatIdent")
2097fad3a1d3Sopenharmony_ci    }
2098fad3a1d3Sopenharmony_ci}
2099fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2100fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2101fad3a1d3Sopenharmony_ciimpl Debug for PatOr {
2102fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2103fad3a1d3Sopenharmony_ci        impl PatOr {
2104fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2105fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2106fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2107fad3a1d3Sopenharmony_ci                formatter.field("leading_vert", &self.leading_vert);
2108fad3a1d3Sopenharmony_ci                formatter.field("cases", &self.cases);
2109fad3a1d3Sopenharmony_ci                formatter.finish()
2110fad3a1d3Sopenharmony_ci            }
2111fad3a1d3Sopenharmony_ci        }
2112fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatOr")
2113fad3a1d3Sopenharmony_ci    }
2114fad3a1d3Sopenharmony_ci}
2115fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2116fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2117fad3a1d3Sopenharmony_ciimpl Debug for PatParen {
2118fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2119fad3a1d3Sopenharmony_ci        impl PatParen {
2120fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2121fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2122fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2123fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
2124fad3a1d3Sopenharmony_ci                formatter.field("pat", &self.pat);
2125fad3a1d3Sopenharmony_ci                formatter.finish()
2126fad3a1d3Sopenharmony_ci            }
2127fad3a1d3Sopenharmony_ci        }
2128fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatParen")
2129fad3a1d3Sopenharmony_ci    }
2130fad3a1d3Sopenharmony_ci}
2131fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2132fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2133fad3a1d3Sopenharmony_ciimpl Debug for PatReference {
2134fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2135fad3a1d3Sopenharmony_ci        impl PatReference {
2136fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2137fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2138fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2139fad3a1d3Sopenharmony_ci                formatter.field("and_token", &self.and_token);
2140fad3a1d3Sopenharmony_ci                formatter.field("mutability", &self.mutability);
2141fad3a1d3Sopenharmony_ci                formatter.field("pat", &self.pat);
2142fad3a1d3Sopenharmony_ci                formatter.finish()
2143fad3a1d3Sopenharmony_ci            }
2144fad3a1d3Sopenharmony_ci        }
2145fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatReference")
2146fad3a1d3Sopenharmony_ci    }
2147fad3a1d3Sopenharmony_ci}
2148fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2149fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2150fad3a1d3Sopenharmony_ciimpl Debug for PatRest {
2151fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2152fad3a1d3Sopenharmony_ci        impl PatRest {
2153fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2154fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2155fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2156fad3a1d3Sopenharmony_ci                formatter.field("dot2_token", &self.dot2_token);
2157fad3a1d3Sopenharmony_ci                formatter.finish()
2158fad3a1d3Sopenharmony_ci            }
2159fad3a1d3Sopenharmony_ci        }
2160fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatRest")
2161fad3a1d3Sopenharmony_ci    }
2162fad3a1d3Sopenharmony_ci}
2163fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2164fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2165fad3a1d3Sopenharmony_ciimpl Debug for PatSlice {
2166fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2167fad3a1d3Sopenharmony_ci        impl PatSlice {
2168fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2169fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2170fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2171fad3a1d3Sopenharmony_ci                formatter.field("bracket_token", &self.bracket_token);
2172fad3a1d3Sopenharmony_ci                formatter.field("elems", &self.elems);
2173fad3a1d3Sopenharmony_ci                formatter.finish()
2174fad3a1d3Sopenharmony_ci            }
2175fad3a1d3Sopenharmony_ci        }
2176fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatSlice")
2177fad3a1d3Sopenharmony_ci    }
2178fad3a1d3Sopenharmony_ci}
2179fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2180fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2181fad3a1d3Sopenharmony_ciimpl Debug for PatStruct {
2182fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2183fad3a1d3Sopenharmony_ci        impl PatStruct {
2184fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2185fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2186fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2187fad3a1d3Sopenharmony_ci                formatter.field("qself", &self.qself);
2188fad3a1d3Sopenharmony_ci                formatter.field("path", &self.path);
2189fad3a1d3Sopenharmony_ci                formatter.field("brace_token", &self.brace_token);
2190fad3a1d3Sopenharmony_ci                formatter.field("fields", &self.fields);
2191fad3a1d3Sopenharmony_ci                formatter.field("rest", &self.rest);
2192fad3a1d3Sopenharmony_ci                formatter.finish()
2193fad3a1d3Sopenharmony_ci            }
2194fad3a1d3Sopenharmony_ci        }
2195fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatStruct")
2196fad3a1d3Sopenharmony_ci    }
2197fad3a1d3Sopenharmony_ci}
2198fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2199fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2200fad3a1d3Sopenharmony_ciimpl Debug for PatTuple {
2201fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2202fad3a1d3Sopenharmony_ci        impl PatTuple {
2203fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2204fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2205fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2206fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
2207fad3a1d3Sopenharmony_ci                formatter.field("elems", &self.elems);
2208fad3a1d3Sopenharmony_ci                formatter.finish()
2209fad3a1d3Sopenharmony_ci            }
2210fad3a1d3Sopenharmony_ci        }
2211fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatTuple")
2212fad3a1d3Sopenharmony_ci    }
2213fad3a1d3Sopenharmony_ci}
2214fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2215fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2216fad3a1d3Sopenharmony_ciimpl Debug for PatTupleStruct {
2217fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2218fad3a1d3Sopenharmony_ci        impl PatTupleStruct {
2219fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2220fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2221fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2222fad3a1d3Sopenharmony_ci                formatter.field("qself", &self.qself);
2223fad3a1d3Sopenharmony_ci                formatter.field("path", &self.path);
2224fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
2225fad3a1d3Sopenharmony_ci                formatter.field("elems", &self.elems);
2226fad3a1d3Sopenharmony_ci                formatter.finish()
2227fad3a1d3Sopenharmony_ci            }
2228fad3a1d3Sopenharmony_ci        }
2229fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatTupleStruct")
2230fad3a1d3Sopenharmony_ci    }
2231fad3a1d3Sopenharmony_ci}
2232fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2233fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2234fad3a1d3Sopenharmony_ciimpl Debug for PatType {
2235fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2236fad3a1d3Sopenharmony_ci        impl PatType {
2237fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2238fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2239fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2240fad3a1d3Sopenharmony_ci                formatter.field("pat", &self.pat);
2241fad3a1d3Sopenharmony_ci                formatter.field("colon_token", &self.colon_token);
2242fad3a1d3Sopenharmony_ci                formatter.field("ty", &self.ty);
2243fad3a1d3Sopenharmony_ci                formatter.finish()
2244fad3a1d3Sopenharmony_ci            }
2245fad3a1d3Sopenharmony_ci        }
2246fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatType")
2247fad3a1d3Sopenharmony_ci    }
2248fad3a1d3Sopenharmony_ci}
2249fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2250fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2251fad3a1d3Sopenharmony_ciimpl Debug for PatWild {
2252fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2253fad3a1d3Sopenharmony_ci        impl PatWild {
2254fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2255fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2256fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2257fad3a1d3Sopenharmony_ci                formatter.field("underscore_token", &self.underscore_token);
2258fad3a1d3Sopenharmony_ci                formatter.finish()
2259fad3a1d3Sopenharmony_ci            }
2260fad3a1d3Sopenharmony_ci        }
2261fad3a1d3Sopenharmony_ci        self.debug(formatter, "PatWild")
2262fad3a1d3Sopenharmony_ci    }
2263fad3a1d3Sopenharmony_ci}
2264fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2265fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2266fad3a1d3Sopenharmony_ciimpl Debug for Path {
2267fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2268fad3a1d3Sopenharmony_ci        impl Path {
2269fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2270fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2271fad3a1d3Sopenharmony_ci                formatter.field("leading_colon", &self.leading_colon);
2272fad3a1d3Sopenharmony_ci                formatter.field("segments", &self.segments);
2273fad3a1d3Sopenharmony_ci                formatter.finish()
2274fad3a1d3Sopenharmony_ci            }
2275fad3a1d3Sopenharmony_ci        }
2276fad3a1d3Sopenharmony_ci        self.debug(formatter, "Path")
2277fad3a1d3Sopenharmony_ci    }
2278fad3a1d3Sopenharmony_ci}
2279fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2280fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2281fad3a1d3Sopenharmony_ciimpl Debug for PathArguments {
2282fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2283fad3a1d3Sopenharmony_ci        formatter.write_str("PathArguments::")?;
2284fad3a1d3Sopenharmony_ci        match self {
2285fad3a1d3Sopenharmony_ci            PathArguments::None => formatter.write_str("None"),
2286fad3a1d3Sopenharmony_ci            PathArguments::AngleBracketed(v0) => v0.debug(formatter, "AngleBracketed"),
2287fad3a1d3Sopenharmony_ci            PathArguments::Parenthesized(v0) => v0.debug(formatter, "Parenthesized"),
2288fad3a1d3Sopenharmony_ci        }
2289fad3a1d3Sopenharmony_ci    }
2290fad3a1d3Sopenharmony_ci}
2291fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2292fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2293fad3a1d3Sopenharmony_ciimpl Debug for PathSegment {
2294fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2295fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("PathSegment");
2296fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
2297fad3a1d3Sopenharmony_ci        formatter.field("arguments", &self.arguments);
2298fad3a1d3Sopenharmony_ci        formatter.finish()
2299fad3a1d3Sopenharmony_ci    }
2300fad3a1d3Sopenharmony_ci}
2301fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2302fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2303fad3a1d3Sopenharmony_ciimpl Debug for PredicateLifetime {
2304fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2305fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("PredicateLifetime");
2306fad3a1d3Sopenharmony_ci        formatter.field("lifetime", &self.lifetime);
2307fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
2308fad3a1d3Sopenharmony_ci        formatter.field("bounds", &self.bounds);
2309fad3a1d3Sopenharmony_ci        formatter.finish()
2310fad3a1d3Sopenharmony_ci    }
2311fad3a1d3Sopenharmony_ci}
2312fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2313fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2314fad3a1d3Sopenharmony_ciimpl Debug for PredicateType {
2315fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2316fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("PredicateType");
2317fad3a1d3Sopenharmony_ci        formatter.field("lifetimes", &self.lifetimes);
2318fad3a1d3Sopenharmony_ci        formatter.field("bounded_ty", &self.bounded_ty);
2319fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
2320fad3a1d3Sopenharmony_ci        formatter.field("bounds", &self.bounds);
2321fad3a1d3Sopenharmony_ci        formatter.finish()
2322fad3a1d3Sopenharmony_ci    }
2323fad3a1d3Sopenharmony_ci}
2324fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2325fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2326fad3a1d3Sopenharmony_ciimpl Debug for QSelf {
2327fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2328fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("QSelf");
2329fad3a1d3Sopenharmony_ci        formatter.field("lt_token", &self.lt_token);
2330fad3a1d3Sopenharmony_ci        formatter.field("ty", &self.ty);
2331fad3a1d3Sopenharmony_ci        formatter.field("position", &self.position);
2332fad3a1d3Sopenharmony_ci        formatter.field("as_token", &self.as_token);
2333fad3a1d3Sopenharmony_ci        formatter.field("gt_token", &self.gt_token);
2334fad3a1d3Sopenharmony_ci        formatter.finish()
2335fad3a1d3Sopenharmony_ci    }
2336fad3a1d3Sopenharmony_ci}
2337fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2338fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2339fad3a1d3Sopenharmony_ciimpl Debug for RangeLimits {
2340fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2341fad3a1d3Sopenharmony_ci        formatter.write_str("RangeLimits::")?;
2342fad3a1d3Sopenharmony_ci        match self {
2343fad3a1d3Sopenharmony_ci            RangeLimits::HalfOpen(v0) => {
2344fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("HalfOpen");
2345fad3a1d3Sopenharmony_ci                formatter.field(v0);
2346fad3a1d3Sopenharmony_ci                formatter.finish()
2347fad3a1d3Sopenharmony_ci            }
2348fad3a1d3Sopenharmony_ci            RangeLimits::Closed(v0) => {
2349fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Closed");
2350fad3a1d3Sopenharmony_ci                formatter.field(v0);
2351fad3a1d3Sopenharmony_ci                formatter.finish()
2352fad3a1d3Sopenharmony_ci            }
2353fad3a1d3Sopenharmony_ci        }
2354fad3a1d3Sopenharmony_ci    }
2355fad3a1d3Sopenharmony_ci}
2356fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2357fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2358fad3a1d3Sopenharmony_ciimpl Debug for Receiver {
2359fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2360fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Receiver");
2361fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
2362fad3a1d3Sopenharmony_ci        formatter.field("reference", &self.reference);
2363fad3a1d3Sopenharmony_ci        formatter.field("mutability", &self.mutability);
2364fad3a1d3Sopenharmony_ci        formatter.field("self_token", &self.self_token);
2365fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
2366fad3a1d3Sopenharmony_ci        formatter.field("ty", &self.ty);
2367fad3a1d3Sopenharmony_ci        formatter.finish()
2368fad3a1d3Sopenharmony_ci    }
2369fad3a1d3Sopenharmony_ci}
2370fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2371fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2372fad3a1d3Sopenharmony_ciimpl Debug for ReturnType {
2373fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2374fad3a1d3Sopenharmony_ci        formatter.write_str("ReturnType::")?;
2375fad3a1d3Sopenharmony_ci        match self {
2376fad3a1d3Sopenharmony_ci            ReturnType::Default => formatter.write_str("Default"),
2377fad3a1d3Sopenharmony_ci            ReturnType::Type(v0, v1) => {
2378fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Type");
2379fad3a1d3Sopenharmony_ci                formatter.field(v0);
2380fad3a1d3Sopenharmony_ci                formatter.field(v1);
2381fad3a1d3Sopenharmony_ci                formatter.finish()
2382fad3a1d3Sopenharmony_ci            }
2383fad3a1d3Sopenharmony_ci        }
2384fad3a1d3Sopenharmony_ci    }
2385fad3a1d3Sopenharmony_ci}
2386fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2387fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2388fad3a1d3Sopenharmony_ciimpl Debug for Signature {
2389fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2390fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Signature");
2391fad3a1d3Sopenharmony_ci        formatter.field("constness", &self.constness);
2392fad3a1d3Sopenharmony_ci        formatter.field("asyncness", &self.asyncness);
2393fad3a1d3Sopenharmony_ci        formatter.field("unsafety", &self.unsafety);
2394fad3a1d3Sopenharmony_ci        formatter.field("abi", &self.abi);
2395fad3a1d3Sopenharmony_ci        formatter.field("fn_token", &self.fn_token);
2396fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
2397fad3a1d3Sopenharmony_ci        formatter.field("generics", &self.generics);
2398fad3a1d3Sopenharmony_ci        formatter.field("paren_token", &self.paren_token);
2399fad3a1d3Sopenharmony_ci        formatter.field("inputs", &self.inputs);
2400fad3a1d3Sopenharmony_ci        formatter.field("variadic", &self.variadic);
2401fad3a1d3Sopenharmony_ci        formatter.field("output", &self.output);
2402fad3a1d3Sopenharmony_ci        formatter.finish()
2403fad3a1d3Sopenharmony_ci    }
2404fad3a1d3Sopenharmony_ci}
2405fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2406fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2407fad3a1d3Sopenharmony_ciimpl Debug for StaticMutability {
2408fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2409fad3a1d3Sopenharmony_ci        formatter.write_str("StaticMutability::")?;
2410fad3a1d3Sopenharmony_ci        match self {
2411fad3a1d3Sopenharmony_ci            StaticMutability::Mut(v0) => {
2412fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Mut");
2413fad3a1d3Sopenharmony_ci                formatter.field(v0);
2414fad3a1d3Sopenharmony_ci                formatter.finish()
2415fad3a1d3Sopenharmony_ci            }
2416fad3a1d3Sopenharmony_ci            StaticMutability::None => formatter.write_str("None"),
2417fad3a1d3Sopenharmony_ci        }
2418fad3a1d3Sopenharmony_ci    }
2419fad3a1d3Sopenharmony_ci}
2420fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2421fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2422fad3a1d3Sopenharmony_ciimpl Debug for Stmt {
2423fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2424fad3a1d3Sopenharmony_ci        formatter.write_str("Stmt::")?;
2425fad3a1d3Sopenharmony_ci        match self {
2426fad3a1d3Sopenharmony_ci            Stmt::Local(v0) => v0.debug(formatter, "Local"),
2427fad3a1d3Sopenharmony_ci            Stmt::Item(v0) => {
2428fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Item");
2429fad3a1d3Sopenharmony_ci                formatter.field(v0);
2430fad3a1d3Sopenharmony_ci                formatter.finish()
2431fad3a1d3Sopenharmony_ci            }
2432fad3a1d3Sopenharmony_ci            Stmt::Expr(v0, v1) => {
2433fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Expr");
2434fad3a1d3Sopenharmony_ci                formatter.field(v0);
2435fad3a1d3Sopenharmony_ci                formatter.field(v1);
2436fad3a1d3Sopenharmony_ci                formatter.finish()
2437fad3a1d3Sopenharmony_ci            }
2438fad3a1d3Sopenharmony_ci            Stmt::Macro(v0) => v0.debug(formatter, "Macro"),
2439fad3a1d3Sopenharmony_ci        }
2440fad3a1d3Sopenharmony_ci    }
2441fad3a1d3Sopenharmony_ci}
2442fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2443fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2444fad3a1d3Sopenharmony_ciimpl Debug for StmtMacro {
2445fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2446fad3a1d3Sopenharmony_ci        impl StmtMacro {
2447fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2448fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2449fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2450fad3a1d3Sopenharmony_ci                formatter.field("mac", &self.mac);
2451fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
2452fad3a1d3Sopenharmony_ci                formatter.finish()
2453fad3a1d3Sopenharmony_ci            }
2454fad3a1d3Sopenharmony_ci        }
2455fad3a1d3Sopenharmony_ci        self.debug(formatter, "StmtMacro")
2456fad3a1d3Sopenharmony_ci    }
2457fad3a1d3Sopenharmony_ci}
2458fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2459fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2460fad3a1d3Sopenharmony_ciimpl Debug for TraitBound {
2461fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2462fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("TraitBound");
2463fad3a1d3Sopenharmony_ci        formatter.field("paren_token", &self.paren_token);
2464fad3a1d3Sopenharmony_ci        formatter.field("modifier", &self.modifier);
2465fad3a1d3Sopenharmony_ci        formatter.field("lifetimes", &self.lifetimes);
2466fad3a1d3Sopenharmony_ci        formatter.field("path", &self.path);
2467fad3a1d3Sopenharmony_ci        formatter.finish()
2468fad3a1d3Sopenharmony_ci    }
2469fad3a1d3Sopenharmony_ci}
2470fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2471fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2472fad3a1d3Sopenharmony_ciimpl Debug for TraitBoundModifier {
2473fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2474fad3a1d3Sopenharmony_ci        formatter.write_str("TraitBoundModifier::")?;
2475fad3a1d3Sopenharmony_ci        match self {
2476fad3a1d3Sopenharmony_ci            TraitBoundModifier::None => formatter.write_str("None"),
2477fad3a1d3Sopenharmony_ci            TraitBoundModifier::Maybe(v0) => {
2478fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Maybe");
2479fad3a1d3Sopenharmony_ci                formatter.field(v0);
2480fad3a1d3Sopenharmony_ci                formatter.finish()
2481fad3a1d3Sopenharmony_ci            }
2482fad3a1d3Sopenharmony_ci        }
2483fad3a1d3Sopenharmony_ci    }
2484fad3a1d3Sopenharmony_ci}
2485fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2486fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2487fad3a1d3Sopenharmony_ciimpl Debug for TraitItem {
2488fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2489fad3a1d3Sopenharmony_ci        formatter.write_str("TraitItem::")?;
2490fad3a1d3Sopenharmony_ci        match self {
2491fad3a1d3Sopenharmony_ci            TraitItem::Const(v0) => v0.debug(formatter, "Const"),
2492fad3a1d3Sopenharmony_ci            TraitItem::Fn(v0) => v0.debug(formatter, "Fn"),
2493fad3a1d3Sopenharmony_ci            TraitItem::Type(v0) => v0.debug(formatter, "Type"),
2494fad3a1d3Sopenharmony_ci            TraitItem::Macro(v0) => v0.debug(formatter, "Macro"),
2495fad3a1d3Sopenharmony_ci            TraitItem::Verbatim(v0) => {
2496fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Verbatim");
2497fad3a1d3Sopenharmony_ci                formatter.field(v0);
2498fad3a1d3Sopenharmony_ci                formatter.finish()
2499fad3a1d3Sopenharmony_ci            }
2500fad3a1d3Sopenharmony_ci        }
2501fad3a1d3Sopenharmony_ci    }
2502fad3a1d3Sopenharmony_ci}
2503fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2504fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2505fad3a1d3Sopenharmony_ciimpl Debug for TraitItemConst {
2506fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2507fad3a1d3Sopenharmony_ci        impl TraitItemConst {
2508fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2509fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2510fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2511fad3a1d3Sopenharmony_ci                formatter.field("const_token", &self.const_token);
2512fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
2513fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
2514fad3a1d3Sopenharmony_ci                formatter.field("colon_token", &self.colon_token);
2515fad3a1d3Sopenharmony_ci                formatter.field("ty", &self.ty);
2516fad3a1d3Sopenharmony_ci                formatter.field("default", &self.default);
2517fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
2518fad3a1d3Sopenharmony_ci                formatter.finish()
2519fad3a1d3Sopenharmony_ci            }
2520fad3a1d3Sopenharmony_ci        }
2521fad3a1d3Sopenharmony_ci        self.debug(formatter, "TraitItemConst")
2522fad3a1d3Sopenharmony_ci    }
2523fad3a1d3Sopenharmony_ci}
2524fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2525fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2526fad3a1d3Sopenharmony_ciimpl Debug for TraitItemFn {
2527fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2528fad3a1d3Sopenharmony_ci        impl TraitItemFn {
2529fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2530fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2531fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2532fad3a1d3Sopenharmony_ci                formatter.field("sig", &self.sig);
2533fad3a1d3Sopenharmony_ci                formatter.field("default", &self.default);
2534fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
2535fad3a1d3Sopenharmony_ci                formatter.finish()
2536fad3a1d3Sopenharmony_ci            }
2537fad3a1d3Sopenharmony_ci        }
2538fad3a1d3Sopenharmony_ci        self.debug(formatter, "TraitItemFn")
2539fad3a1d3Sopenharmony_ci    }
2540fad3a1d3Sopenharmony_ci}
2541fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2542fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2543fad3a1d3Sopenharmony_ciimpl Debug for TraitItemMacro {
2544fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2545fad3a1d3Sopenharmony_ci        impl TraitItemMacro {
2546fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2547fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2548fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2549fad3a1d3Sopenharmony_ci                formatter.field("mac", &self.mac);
2550fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
2551fad3a1d3Sopenharmony_ci                formatter.finish()
2552fad3a1d3Sopenharmony_ci            }
2553fad3a1d3Sopenharmony_ci        }
2554fad3a1d3Sopenharmony_ci        self.debug(formatter, "TraitItemMacro")
2555fad3a1d3Sopenharmony_ci    }
2556fad3a1d3Sopenharmony_ci}
2557fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2558fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2559fad3a1d3Sopenharmony_ciimpl Debug for TraitItemType {
2560fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2561fad3a1d3Sopenharmony_ci        impl TraitItemType {
2562fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2563fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2564fad3a1d3Sopenharmony_ci                formatter.field("attrs", &self.attrs);
2565fad3a1d3Sopenharmony_ci                formatter.field("type_token", &self.type_token);
2566fad3a1d3Sopenharmony_ci                formatter.field("ident", &self.ident);
2567fad3a1d3Sopenharmony_ci                formatter.field("generics", &self.generics);
2568fad3a1d3Sopenharmony_ci                formatter.field("colon_token", &self.colon_token);
2569fad3a1d3Sopenharmony_ci                formatter.field("bounds", &self.bounds);
2570fad3a1d3Sopenharmony_ci                formatter.field("default", &self.default);
2571fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
2572fad3a1d3Sopenharmony_ci                formatter.finish()
2573fad3a1d3Sopenharmony_ci            }
2574fad3a1d3Sopenharmony_ci        }
2575fad3a1d3Sopenharmony_ci        self.debug(formatter, "TraitItemType")
2576fad3a1d3Sopenharmony_ci    }
2577fad3a1d3Sopenharmony_ci}
2578fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2579fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2580fad3a1d3Sopenharmony_ciimpl Debug for Type {
2581fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2582fad3a1d3Sopenharmony_ci        formatter.write_str("Type::")?;
2583fad3a1d3Sopenharmony_ci        match self {
2584fad3a1d3Sopenharmony_ci            Type::Array(v0) => v0.debug(formatter, "Array"),
2585fad3a1d3Sopenharmony_ci            Type::BareFn(v0) => v0.debug(formatter, "BareFn"),
2586fad3a1d3Sopenharmony_ci            Type::Group(v0) => v0.debug(formatter, "Group"),
2587fad3a1d3Sopenharmony_ci            Type::ImplTrait(v0) => v0.debug(formatter, "ImplTrait"),
2588fad3a1d3Sopenharmony_ci            Type::Infer(v0) => v0.debug(formatter, "Infer"),
2589fad3a1d3Sopenharmony_ci            Type::Macro(v0) => v0.debug(formatter, "Macro"),
2590fad3a1d3Sopenharmony_ci            Type::Never(v0) => v0.debug(formatter, "Never"),
2591fad3a1d3Sopenharmony_ci            Type::Paren(v0) => v0.debug(formatter, "Paren"),
2592fad3a1d3Sopenharmony_ci            Type::Path(v0) => v0.debug(formatter, "Path"),
2593fad3a1d3Sopenharmony_ci            Type::Ptr(v0) => v0.debug(formatter, "Ptr"),
2594fad3a1d3Sopenharmony_ci            Type::Reference(v0) => v0.debug(formatter, "Reference"),
2595fad3a1d3Sopenharmony_ci            Type::Slice(v0) => v0.debug(formatter, "Slice"),
2596fad3a1d3Sopenharmony_ci            Type::TraitObject(v0) => v0.debug(formatter, "TraitObject"),
2597fad3a1d3Sopenharmony_ci            Type::Tuple(v0) => v0.debug(formatter, "Tuple"),
2598fad3a1d3Sopenharmony_ci            Type::Verbatim(v0) => {
2599fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Verbatim");
2600fad3a1d3Sopenharmony_ci                formatter.field(v0);
2601fad3a1d3Sopenharmony_ci                formatter.finish()
2602fad3a1d3Sopenharmony_ci            }
2603fad3a1d3Sopenharmony_ci        }
2604fad3a1d3Sopenharmony_ci    }
2605fad3a1d3Sopenharmony_ci}
2606fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2607fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2608fad3a1d3Sopenharmony_ciimpl Debug for TypeArray {
2609fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2610fad3a1d3Sopenharmony_ci        impl TypeArray {
2611fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2612fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2613fad3a1d3Sopenharmony_ci                formatter.field("bracket_token", &self.bracket_token);
2614fad3a1d3Sopenharmony_ci                formatter.field("elem", &self.elem);
2615fad3a1d3Sopenharmony_ci                formatter.field("semi_token", &self.semi_token);
2616fad3a1d3Sopenharmony_ci                formatter.field("len", &self.len);
2617fad3a1d3Sopenharmony_ci                formatter.finish()
2618fad3a1d3Sopenharmony_ci            }
2619fad3a1d3Sopenharmony_ci        }
2620fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeArray")
2621fad3a1d3Sopenharmony_ci    }
2622fad3a1d3Sopenharmony_ci}
2623fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2624fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2625fad3a1d3Sopenharmony_ciimpl Debug for TypeBareFn {
2626fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2627fad3a1d3Sopenharmony_ci        impl TypeBareFn {
2628fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2629fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2630fad3a1d3Sopenharmony_ci                formatter.field("lifetimes", &self.lifetimes);
2631fad3a1d3Sopenharmony_ci                formatter.field("unsafety", &self.unsafety);
2632fad3a1d3Sopenharmony_ci                formatter.field("abi", &self.abi);
2633fad3a1d3Sopenharmony_ci                formatter.field("fn_token", &self.fn_token);
2634fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
2635fad3a1d3Sopenharmony_ci                formatter.field("inputs", &self.inputs);
2636fad3a1d3Sopenharmony_ci                formatter.field("variadic", &self.variadic);
2637fad3a1d3Sopenharmony_ci                formatter.field("output", &self.output);
2638fad3a1d3Sopenharmony_ci                formatter.finish()
2639fad3a1d3Sopenharmony_ci            }
2640fad3a1d3Sopenharmony_ci        }
2641fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeBareFn")
2642fad3a1d3Sopenharmony_ci    }
2643fad3a1d3Sopenharmony_ci}
2644fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2645fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2646fad3a1d3Sopenharmony_ciimpl Debug for TypeGroup {
2647fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2648fad3a1d3Sopenharmony_ci        impl TypeGroup {
2649fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2650fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2651fad3a1d3Sopenharmony_ci                formatter.field("group_token", &self.group_token);
2652fad3a1d3Sopenharmony_ci                formatter.field("elem", &self.elem);
2653fad3a1d3Sopenharmony_ci                formatter.finish()
2654fad3a1d3Sopenharmony_ci            }
2655fad3a1d3Sopenharmony_ci        }
2656fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeGroup")
2657fad3a1d3Sopenharmony_ci    }
2658fad3a1d3Sopenharmony_ci}
2659fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2660fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2661fad3a1d3Sopenharmony_ciimpl Debug for TypeImplTrait {
2662fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2663fad3a1d3Sopenharmony_ci        impl TypeImplTrait {
2664fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2665fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2666fad3a1d3Sopenharmony_ci                formatter.field("impl_token", &self.impl_token);
2667fad3a1d3Sopenharmony_ci                formatter.field("bounds", &self.bounds);
2668fad3a1d3Sopenharmony_ci                formatter.finish()
2669fad3a1d3Sopenharmony_ci            }
2670fad3a1d3Sopenharmony_ci        }
2671fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeImplTrait")
2672fad3a1d3Sopenharmony_ci    }
2673fad3a1d3Sopenharmony_ci}
2674fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2675fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2676fad3a1d3Sopenharmony_ciimpl Debug for TypeInfer {
2677fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2678fad3a1d3Sopenharmony_ci        impl TypeInfer {
2679fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2680fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2681fad3a1d3Sopenharmony_ci                formatter.field("underscore_token", &self.underscore_token);
2682fad3a1d3Sopenharmony_ci                formatter.finish()
2683fad3a1d3Sopenharmony_ci            }
2684fad3a1d3Sopenharmony_ci        }
2685fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeInfer")
2686fad3a1d3Sopenharmony_ci    }
2687fad3a1d3Sopenharmony_ci}
2688fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2689fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2690fad3a1d3Sopenharmony_ciimpl Debug for TypeMacro {
2691fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2692fad3a1d3Sopenharmony_ci        impl TypeMacro {
2693fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2694fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2695fad3a1d3Sopenharmony_ci                formatter.field("mac", &self.mac);
2696fad3a1d3Sopenharmony_ci                formatter.finish()
2697fad3a1d3Sopenharmony_ci            }
2698fad3a1d3Sopenharmony_ci        }
2699fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeMacro")
2700fad3a1d3Sopenharmony_ci    }
2701fad3a1d3Sopenharmony_ci}
2702fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2703fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2704fad3a1d3Sopenharmony_ciimpl Debug for TypeNever {
2705fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2706fad3a1d3Sopenharmony_ci        impl TypeNever {
2707fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2708fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2709fad3a1d3Sopenharmony_ci                formatter.field("bang_token", &self.bang_token);
2710fad3a1d3Sopenharmony_ci                formatter.finish()
2711fad3a1d3Sopenharmony_ci            }
2712fad3a1d3Sopenharmony_ci        }
2713fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeNever")
2714fad3a1d3Sopenharmony_ci    }
2715fad3a1d3Sopenharmony_ci}
2716fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2717fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2718fad3a1d3Sopenharmony_ciimpl Debug for TypeParam {
2719fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2720fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("TypeParam");
2721fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
2722fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
2723fad3a1d3Sopenharmony_ci        formatter.field("colon_token", &self.colon_token);
2724fad3a1d3Sopenharmony_ci        formatter.field("bounds", &self.bounds);
2725fad3a1d3Sopenharmony_ci        formatter.field("eq_token", &self.eq_token);
2726fad3a1d3Sopenharmony_ci        formatter.field("default", &self.default);
2727fad3a1d3Sopenharmony_ci        formatter.finish()
2728fad3a1d3Sopenharmony_ci    }
2729fad3a1d3Sopenharmony_ci}
2730fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2731fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2732fad3a1d3Sopenharmony_ciimpl Debug for TypeParamBound {
2733fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2734fad3a1d3Sopenharmony_ci        formatter.write_str("TypeParamBound::")?;
2735fad3a1d3Sopenharmony_ci        match self {
2736fad3a1d3Sopenharmony_ci            TypeParamBound::Trait(v0) => {
2737fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Trait");
2738fad3a1d3Sopenharmony_ci                formatter.field(v0);
2739fad3a1d3Sopenharmony_ci                formatter.finish()
2740fad3a1d3Sopenharmony_ci            }
2741fad3a1d3Sopenharmony_ci            TypeParamBound::Lifetime(v0) => v0.debug(formatter, "Lifetime"),
2742fad3a1d3Sopenharmony_ci            TypeParamBound::Verbatim(v0) => {
2743fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Verbatim");
2744fad3a1d3Sopenharmony_ci                formatter.field(v0);
2745fad3a1d3Sopenharmony_ci                formatter.finish()
2746fad3a1d3Sopenharmony_ci            }
2747fad3a1d3Sopenharmony_ci        }
2748fad3a1d3Sopenharmony_ci    }
2749fad3a1d3Sopenharmony_ci}
2750fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2751fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2752fad3a1d3Sopenharmony_ciimpl Debug for TypeParen {
2753fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2754fad3a1d3Sopenharmony_ci        impl TypeParen {
2755fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2756fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2757fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
2758fad3a1d3Sopenharmony_ci                formatter.field("elem", &self.elem);
2759fad3a1d3Sopenharmony_ci                formatter.finish()
2760fad3a1d3Sopenharmony_ci            }
2761fad3a1d3Sopenharmony_ci        }
2762fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeParen")
2763fad3a1d3Sopenharmony_ci    }
2764fad3a1d3Sopenharmony_ci}
2765fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2766fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2767fad3a1d3Sopenharmony_ciimpl Debug for TypePath {
2768fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2769fad3a1d3Sopenharmony_ci        impl TypePath {
2770fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2771fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2772fad3a1d3Sopenharmony_ci                formatter.field("qself", &self.qself);
2773fad3a1d3Sopenharmony_ci                formatter.field("path", &self.path);
2774fad3a1d3Sopenharmony_ci                formatter.finish()
2775fad3a1d3Sopenharmony_ci            }
2776fad3a1d3Sopenharmony_ci        }
2777fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypePath")
2778fad3a1d3Sopenharmony_ci    }
2779fad3a1d3Sopenharmony_ci}
2780fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2781fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2782fad3a1d3Sopenharmony_ciimpl Debug for TypePtr {
2783fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2784fad3a1d3Sopenharmony_ci        impl TypePtr {
2785fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2786fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2787fad3a1d3Sopenharmony_ci                formatter.field("star_token", &self.star_token);
2788fad3a1d3Sopenharmony_ci                formatter.field("const_token", &self.const_token);
2789fad3a1d3Sopenharmony_ci                formatter.field("mutability", &self.mutability);
2790fad3a1d3Sopenharmony_ci                formatter.field("elem", &self.elem);
2791fad3a1d3Sopenharmony_ci                formatter.finish()
2792fad3a1d3Sopenharmony_ci            }
2793fad3a1d3Sopenharmony_ci        }
2794fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypePtr")
2795fad3a1d3Sopenharmony_ci    }
2796fad3a1d3Sopenharmony_ci}
2797fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2798fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2799fad3a1d3Sopenharmony_ciimpl Debug for TypeReference {
2800fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2801fad3a1d3Sopenharmony_ci        impl TypeReference {
2802fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2803fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2804fad3a1d3Sopenharmony_ci                formatter.field("and_token", &self.and_token);
2805fad3a1d3Sopenharmony_ci                formatter.field("lifetime", &self.lifetime);
2806fad3a1d3Sopenharmony_ci                formatter.field("mutability", &self.mutability);
2807fad3a1d3Sopenharmony_ci                formatter.field("elem", &self.elem);
2808fad3a1d3Sopenharmony_ci                formatter.finish()
2809fad3a1d3Sopenharmony_ci            }
2810fad3a1d3Sopenharmony_ci        }
2811fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeReference")
2812fad3a1d3Sopenharmony_ci    }
2813fad3a1d3Sopenharmony_ci}
2814fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2815fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2816fad3a1d3Sopenharmony_ciimpl Debug for TypeSlice {
2817fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2818fad3a1d3Sopenharmony_ci        impl TypeSlice {
2819fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2820fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2821fad3a1d3Sopenharmony_ci                formatter.field("bracket_token", &self.bracket_token);
2822fad3a1d3Sopenharmony_ci                formatter.field("elem", &self.elem);
2823fad3a1d3Sopenharmony_ci                formatter.finish()
2824fad3a1d3Sopenharmony_ci            }
2825fad3a1d3Sopenharmony_ci        }
2826fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeSlice")
2827fad3a1d3Sopenharmony_ci    }
2828fad3a1d3Sopenharmony_ci}
2829fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2830fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2831fad3a1d3Sopenharmony_ciimpl Debug for TypeTraitObject {
2832fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2833fad3a1d3Sopenharmony_ci        impl TypeTraitObject {
2834fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2835fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2836fad3a1d3Sopenharmony_ci                formatter.field("dyn_token", &self.dyn_token);
2837fad3a1d3Sopenharmony_ci                formatter.field("bounds", &self.bounds);
2838fad3a1d3Sopenharmony_ci                formatter.finish()
2839fad3a1d3Sopenharmony_ci            }
2840fad3a1d3Sopenharmony_ci        }
2841fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeTraitObject")
2842fad3a1d3Sopenharmony_ci    }
2843fad3a1d3Sopenharmony_ci}
2844fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2845fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2846fad3a1d3Sopenharmony_ciimpl Debug for TypeTuple {
2847fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2848fad3a1d3Sopenharmony_ci        impl TypeTuple {
2849fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2850fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2851fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
2852fad3a1d3Sopenharmony_ci                formatter.field("elems", &self.elems);
2853fad3a1d3Sopenharmony_ci                formatter.finish()
2854fad3a1d3Sopenharmony_ci            }
2855fad3a1d3Sopenharmony_ci        }
2856fad3a1d3Sopenharmony_ci        self.debug(formatter, "TypeTuple")
2857fad3a1d3Sopenharmony_ci    }
2858fad3a1d3Sopenharmony_ci}
2859fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2860fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2861fad3a1d3Sopenharmony_ciimpl Debug for UnOp {
2862fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2863fad3a1d3Sopenharmony_ci        formatter.write_str("UnOp::")?;
2864fad3a1d3Sopenharmony_ci        match self {
2865fad3a1d3Sopenharmony_ci            UnOp::Deref(v0) => {
2866fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Deref");
2867fad3a1d3Sopenharmony_ci                formatter.field(v0);
2868fad3a1d3Sopenharmony_ci                formatter.finish()
2869fad3a1d3Sopenharmony_ci            }
2870fad3a1d3Sopenharmony_ci            UnOp::Not(v0) => {
2871fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Not");
2872fad3a1d3Sopenharmony_ci                formatter.field(v0);
2873fad3a1d3Sopenharmony_ci                formatter.finish()
2874fad3a1d3Sopenharmony_ci            }
2875fad3a1d3Sopenharmony_ci            UnOp::Neg(v0) => {
2876fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Neg");
2877fad3a1d3Sopenharmony_ci                formatter.field(v0);
2878fad3a1d3Sopenharmony_ci                formatter.finish()
2879fad3a1d3Sopenharmony_ci            }
2880fad3a1d3Sopenharmony_ci        }
2881fad3a1d3Sopenharmony_ci    }
2882fad3a1d3Sopenharmony_ci}
2883fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2884fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2885fad3a1d3Sopenharmony_ciimpl Debug for UseGlob {
2886fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2887fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("UseGlob");
2888fad3a1d3Sopenharmony_ci        formatter.field("star_token", &self.star_token);
2889fad3a1d3Sopenharmony_ci        formatter.finish()
2890fad3a1d3Sopenharmony_ci    }
2891fad3a1d3Sopenharmony_ci}
2892fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2893fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2894fad3a1d3Sopenharmony_ciimpl Debug for UseGroup {
2895fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2896fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("UseGroup");
2897fad3a1d3Sopenharmony_ci        formatter.field("brace_token", &self.brace_token);
2898fad3a1d3Sopenharmony_ci        formatter.field("items", &self.items);
2899fad3a1d3Sopenharmony_ci        formatter.finish()
2900fad3a1d3Sopenharmony_ci    }
2901fad3a1d3Sopenharmony_ci}
2902fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2903fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2904fad3a1d3Sopenharmony_ciimpl Debug for UseName {
2905fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2906fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("UseName");
2907fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
2908fad3a1d3Sopenharmony_ci        formatter.finish()
2909fad3a1d3Sopenharmony_ci    }
2910fad3a1d3Sopenharmony_ci}
2911fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2912fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2913fad3a1d3Sopenharmony_ciimpl Debug for UsePath {
2914fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2915fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("UsePath");
2916fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
2917fad3a1d3Sopenharmony_ci        formatter.field("colon2_token", &self.colon2_token);
2918fad3a1d3Sopenharmony_ci        formatter.field("tree", &self.tree);
2919fad3a1d3Sopenharmony_ci        formatter.finish()
2920fad3a1d3Sopenharmony_ci    }
2921fad3a1d3Sopenharmony_ci}
2922fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2923fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2924fad3a1d3Sopenharmony_ciimpl Debug for UseRename {
2925fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2926fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("UseRename");
2927fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
2928fad3a1d3Sopenharmony_ci        formatter.field("as_token", &self.as_token);
2929fad3a1d3Sopenharmony_ci        formatter.field("rename", &self.rename);
2930fad3a1d3Sopenharmony_ci        formatter.finish()
2931fad3a1d3Sopenharmony_ci    }
2932fad3a1d3Sopenharmony_ci}
2933fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2934fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2935fad3a1d3Sopenharmony_ciimpl Debug for UseTree {
2936fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2937fad3a1d3Sopenharmony_ci        formatter.write_str("UseTree::")?;
2938fad3a1d3Sopenharmony_ci        match self {
2939fad3a1d3Sopenharmony_ci            UseTree::Path(v0) => {
2940fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Path");
2941fad3a1d3Sopenharmony_ci                formatter.field(v0);
2942fad3a1d3Sopenharmony_ci                formatter.finish()
2943fad3a1d3Sopenharmony_ci            }
2944fad3a1d3Sopenharmony_ci            UseTree::Name(v0) => {
2945fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Name");
2946fad3a1d3Sopenharmony_ci                formatter.field(v0);
2947fad3a1d3Sopenharmony_ci                formatter.finish()
2948fad3a1d3Sopenharmony_ci            }
2949fad3a1d3Sopenharmony_ci            UseTree::Rename(v0) => {
2950fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Rename");
2951fad3a1d3Sopenharmony_ci                formatter.field(v0);
2952fad3a1d3Sopenharmony_ci                formatter.finish()
2953fad3a1d3Sopenharmony_ci            }
2954fad3a1d3Sopenharmony_ci            UseTree::Glob(v0) => {
2955fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Glob");
2956fad3a1d3Sopenharmony_ci                formatter.field(v0);
2957fad3a1d3Sopenharmony_ci                formatter.finish()
2958fad3a1d3Sopenharmony_ci            }
2959fad3a1d3Sopenharmony_ci            UseTree::Group(v0) => {
2960fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Group");
2961fad3a1d3Sopenharmony_ci                formatter.field(v0);
2962fad3a1d3Sopenharmony_ci                formatter.finish()
2963fad3a1d3Sopenharmony_ci            }
2964fad3a1d3Sopenharmony_ci        }
2965fad3a1d3Sopenharmony_ci    }
2966fad3a1d3Sopenharmony_ci}
2967fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2968fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2969fad3a1d3Sopenharmony_ciimpl Debug for Variadic {
2970fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2971fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Variadic");
2972fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
2973fad3a1d3Sopenharmony_ci        formatter.field("pat", &self.pat);
2974fad3a1d3Sopenharmony_ci        formatter.field("dots", &self.dots);
2975fad3a1d3Sopenharmony_ci        formatter.field("comma", &self.comma);
2976fad3a1d3Sopenharmony_ci        formatter.finish()
2977fad3a1d3Sopenharmony_ci    }
2978fad3a1d3Sopenharmony_ci}
2979fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2980fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2981fad3a1d3Sopenharmony_ciimpl Debug for Variant {
2982fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2983fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("Variant");
2984fad3a1d3Sopenharmony_ci        formatter.field("attrs", &self.attrs);
2985fad3a1d3Sopenharmony_ci        formatter.field("ident", &self.ident);
2986fad3a1d3Sopenharmony_ci        formatter.field("fields", &self.fields);
2987fad3a1d3Sopenharmony_ci        formatter.field("discriminant", &self.discriminant);
2988fad3a1d3Sopenharmony_ci        formatter.finish()
2989fad3a1d3Sopenharmony_ci    }
2990fad3a1d3Sopenharmony_ci}
2991fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2992fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2993fad3a1d3Sopenharmony_ciimpl Debug for VisRestricted {
2994fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
2995fad3a1d3Sopenharmony_ci        impl VisRestricted {
2996fad3a1d3Sopenharmony_ci            fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result {
2997fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_struct(name);
2998fad3a1d3Sopenharmony_ci                formatter.field("pub_token", &self.pub_token);
2999fad3a1d3Sopenharmony_ci                formatter.field("paren_token", &self.paren_token);
3000fad3a1d3Sopenharmony_ci                formatter.field("in_token", &self.in_token);
3001fad3a1d3Sopenharmony_ci                formatter.field("path", &self.path);
3002fad3a1d3Sopenharmony_ci                formatter.finish()
3003fad3a1d3Sopenharmony_ci            }
3004fad3a1d3Sopenharmony_ci        }
3005fad3a1d3Sopenharmony_ci        self.debug(formatter, "VisRestricted")
3006fad3a1d3Sopenharmony_ci    }
3007fad3a1d3Sopenharmony_ci}
3008fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
3009fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
3010fad3a1d3Sopenharmony_ciimpl Debug for Visibility {
3011fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3012fad3a1d3Sopenharmony_ci        formatter.write_str("Visibility::")?;
3013fad3a1d3Sopenharmony_ci        match self {
3014fad3a1d3Sopenharmony_ci            Visibility::Public(v0) => {
3015fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Public");
3016fad3a1d3Sopenharmony_ci                formatter.field(v0);
3017fad3a1d3Sopenharmony_ci                formatter.finish()
3018fad3a1d3Sopenharmony_ci            }
3019fad3a1d3Sopenharmony_ci            Visibility::Restricted(v0) => v0.debug(formatter, "Restricted"),
3020fad3a1d3Sopenharmony_ci            Visibility::Inherited => formatter.write_str("Inherited"),
3021fad3a1d3Sopenharmony_ci        }
3022fad3a1d3Sopenharmony_ci    }
3023fad3a1d3Sopenharmony_ci}
3024fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
3025fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
3026fad3a1d3Sopenharmony_ciimpl Debug for WhereClause {
3027fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3028fad3a1d3Sopenharmony_ci        let mut formatter = formatter.debug_struct("WhereClause");
3029fad3a1d3Sopenharmony_ci        formatter.field("where_token", &self.where_token);
3030fad3a1d3Sopenharmony_ci        formatter.field("predicates", &self.predicates);
3031fad3a1d3Sopenharmony_ci        formatter.finish()
3032fad3a1d3Sopenharmony_ci    }
3033fad3a1d3Sopenharmony_ci}
3034fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
3035fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
3036fad3a1d3Sopenharmony_ciimpl Debug for WherePredicate {
3037fad3a1d3Sopenharmony_ci    fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
3038fad3a1d3Sopenharmony_ci        formatter.write_str("WherePredicate::")?;
3039fad3a1d3Sopenharmony_ci        match self {
3040fad3a1d3Sopenharmony_ci            WherePredicate::Lifetime(v0) => {
3041fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Lifetime");
3042fad3a1d3Sopenharmony_ci                formatter.field(v0);
3043fad3a1d3Sopenharmony_ci                formatter.finish()
3044fad3a1d3Sopenharmony_ci            }
3045fad3a1d3Sopenharmony_ci            WherePredicate::Type(v0) => {
3046fad3a1d3Sopenharmony_ci                let mut formatter = formatter.debug_tuple("Type");
3047fad3a1d3Sopenharmony_ci                formatter.field(v0);
3048fad3a1d3Sopenharmony_ci                formatter.finish()
3049fad3a1d3Sopenharmony_ci            }
3050fad3a1d3Sopenharmony_ci        }
3051fad3a1d3Sopenharmony_ci    }
3052fad3a1d3Sopenharmony_ci}
3053