xref: /third_party/rust/crates/syn/src/gen/eq.rs (revision fad3a1d3)
1fad3a1d3Sopenharmony_ci// This file is @generated by syn-internal-codegen.
2fad3a1d3Sopenharmony_ci// It is not intended for manual editing.
3fad3a1d3Sopenharmony_ci
4fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
5fad3a1d3Sopenharmony_ciuse crate::tt::TokenStreamHelper;
6fad3a1d3Sopenharmony_ciuse crate::*;
7fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
8fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
9fad3a1d3Sopenharmony_ciimpl Eq for Abi {}
10fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
11fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
12fad3a1d3Sopenharmony_ciimpl PartialEq for Abi {
13fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
14fad3a1d3Sopenharmony_ci        self.name == other.name
15fad3a1d3Sopenharmony_ci    }
16fad3a1d3Sopenharmony_ci}
17fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
18fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
19fad3a1d3Sopenharmony_ciimpl Eq for AngleBracketedGenericArguments {}
20fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
21fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
22fad3a1d3Sopenharmony_ciimpl PartialEq for AngleBracketedGenericArguments {
23fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
24fad3a1d3Sopenharmony_ci        self.colon2_token == other.colon2_token && self.args == other.args
25fad3a1d3Sopenharmony_ci    }
26fad3a1d3Sopenharmony_ci}
27fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
28fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
29fad3a1d3Sopenharmony_ciimpl Eq for Arm {}
30fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
31fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
32fad3a1d3Sopenharmony_ciimpl PartialEq for Arm {
33fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
34fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.pat == other.pat && self.guard == other.guard
35fad3a1d3Sopenharmony_ci            && self.body == other.body && self.comma == other.comma
36fad3a1d3Sopenharmony_ci    }
37fad3a1d3Sopenharmony_ci}
38fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
39fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
40fad3a1d3Sopenharmony_ciimpl Eq for AssocConst {}
41fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
42fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
43fad3a1d3Sopenharmony_ciimpl PartialEq for AssocConst {
44fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
45fad3a1d3Sopenharmony_ci        self.ident == other.ident && self.generics == other.generics
46fad3a1d3Sopenharmony_ci            && self.value == other.value
47fad3a1d3Sopenharmony_ci    }
48fad3a1d3Sopenharmony_ci}
49fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
50fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
51fad3a1d3Sopenharmony_ciimpl Eq for AssocType {}
52fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
53fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
54fad3a1d3Sopenharmony_ciimpl PartialEq for AssocType {
55fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
56fad3a1d3Sopenharmony_ci        self.ident == other.ident && self.generics == other.generics
57fad3a1d3Sopenharmony_ci            && self.ty == other.ty
58fad3a1d3Sopenharmony_ci    }
59fad3a1d3Sopenharmony_ci}
60fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
61fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
62fad3a1d3Sopenharmony_ciimpl Eq for AttrStyle {}
63fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
64fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
65fad3a1d3Sopenharmony_ciimpl PartialEq for AttrStyle {
66fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
67fad3a1d3Sopenharmony_ci        match (self, other) {
68fad3a1d3Sopenharmony_ci            (AttrStyle::Outer, AttrStyle::Outer) => true,
69fad3a1d3Sopenharmony_ci            (AttrStyle::Inner(_), AttrStyle::Inner(_)) => true,
70fad3a1d3Sopenharmony_ci            _ => false,
71fad3a1d3Sopenharmony_ci        }
72fad3a1d3Sopenharmony_ci    }
73fad3a1d3Sopenharmony_ci}
74fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
75fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
76fad3a1d3Sopenharmony_ciimpl Eq for Attribute {}
77fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
78fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
79fad3a1d3Sopenharmony_ciimpl PartialEq for Attribute {
80fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
81fad3a1d3Sopenharmony_ci        self.style == other.style && self.meta == other.meta
82fad3a1d3Sopenharmony_ci    }
83fad3a1d3Sopenharmony_ci}
84fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
85fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
86fad3a1d3Sopenharmony_ciimpl Eq for BareFnArg {}
87fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
88fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
89fad3a1d3Sopenharmony_ciimpl PartialEq for BareFnArg {
90fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
91fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.name == other.name && self.ty == other.ty
92fad3a1d3Sopenharmony_ci    }
93fad3a1d3Sopenharmony_ci}
94fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
95fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
96fad3a1d3Sopenharmony_ciimpl Eq for BareVariadic {}
97fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
98fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
99fad3a1d3Sopenharmony_ciimpl PartialEq for BareVariadic {
100fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
101fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.name == other.name && self.comma == other.comma
102fad3a1d3Sopenharmony_ci    }
103fad3a1d3Sopenharmony_ci}
104fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
105fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
106fad3a1d3Sopenharmony_ciimpl Eq for BinOp {}
107fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
108fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
109fad3a1d3Sopenharmony_ciimpl PartialEq for BinOp {
110fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
111fad3a1d3Sopenharmony_ci        match (self, other) {
112fad3a1d3Sopenharmony_ci            (BinOp::Add(_), BinOp::Add(_)) => true,
113fad3a1d3Sopenharmony_ci            (BinOp::Sub(_), BinOp::Sub(_)) => true,
114fad3a1d3Sopenharmony_ci            (BinOp::Mul(_), BinOp::Mul(_)) => true,
115fad3a1d3Sopenharmony_ci            (BinOp::Div(_), BinOp::Div(_)) => true,
116fad3a1d3Sopenharmony_ci            (BinOp::Rem(_), BinOp::Rem(_)) => true,
117fad3a1d3Sopenharmony_ci            (BinOp::And(_), BinOp::And(_)) => true,
118fad3a1d3Sopenharmony_ci            (BinOp::Or(_), BinOp::Or(_)) => true,
119fad3a1d3Sopenharmony_ci            (BinOp::BitXor(_), BinOp::BitXor(_)) => true,
120fad3a1d3Sopenharmony_ci            (BinOp::BitAnd(_), BinOp::BitAnd(_)) => true,
121fad3a1d3Sopenharmony_ci            (BinOp::BitOr(_), BinOp::BitOr(_)) => true,
122fad3a1d3Sopenharmony_ci            (BinOp::Shl(_), BinOp::Shl(_)) => true,
123fad3a1d3Sopenharmony_ci            (BinOp::Shr(_), BinOp::Shr(_)) => true,
124fad3a1d3Sopenharmony_ci            (BinOp::Eq(_), BinOp::Eq(_)) => true,
125fad3a1d3Sopenharmony_ci            (BinOp::Lt(_), BinOp::Lt(_)) => true,
126fad3a1d3Sopenharmony_ci            (BinOp::Le(_), BinOp::Le(_)) => true,
127fad3a1d3Sopenharmony_ci            (BinOp::Ne(_), BinOp::Ne(_)) => true,
128fad3a1d3Sopenharmony_ci            (BinOp::Ge(_), BinOp::Ge(_)) => true,
129fad3a1d3Sopenharmony_ci            (BinOp::Gt(_), BinOp::Gt(_)) => true,
130fad3a1d3Sopenharmony_ci            (BinOp::AddAssign(_), BinOp::AddAssign(_)) => true,
131fad3a1d3Sopenharmony_ci            (BinOp::SubAssign(_), BinOp::SubAssign(_)) => true,
132fad3a1d3Sopenharmony_ci            (BinOp::MulAssign(_), BinOp::MulAssign(_)) => true,
133fad3a1d3Sopenharmony_ci            (BinOp::DivAssign(_), BinOp::DivAssign(_)) => true,
134fad3a1d3Sopenharmony_ci            (BinOp::RemAssign(_), BinOp::RemAssign(_)) => true,
135fad3a1d3Sopenharmony_ci            (BinOp::BitXorAssign(_), BinOp::BitXorAssign(_)) => true,
136fad3a1d3Sopenharmony_ci            (BinOp::BitAndAssign(_), BinOp::BitAndAssign(_)) => true,
137fad3a1d3Sopenharmony_ci            (BinOp::BitOrAssign(_), BinOp::BitOrAssign(_)) => true,
138fad3a1d3Sopenharmony_ci            (BinOp::ShlAssign(_), BinOp::ShlAssign(_)) => true,
139fad3a1d3Sopenharmony_ci            (BinOp::ShrAssign(_), BinOp::ShrAssign(_)) => true,
140fad3a1d3Sopenharmony_ci            _ => false,
141fad3a1d3Sopenharmony_ci        }
142fad3a1d3Sopenharmony_ci    }
143fad3a1d3Sopenharmony_ci}
144fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
145fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
146fad3a1d3Sopenharmony_ciimpl Eq for Block {}
147fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
148fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
149fad3a1d3Sopenharmony_ciimpl PartialEq for Block {
150fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
151fad3a1d3Sopenharmony_ci        self.stmts == other.stmts
152fad3a1d3Sopenharmony_ci    }
153fad3a1d3Sopenharmony_ci}
154fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
155fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
156fad3a1d3Sopenharmony_ciimpl Eq for BoundLifetimes {}
157fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
158fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
159fad3a1d3Sopenharmony_ciimpl PartialEq for BoundLifetimes {
160fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
161fad3a1d3Sopenharmony_ci        self.lifetimes == other.lifetimes
162fad3a1d3Sopenharmony_ci    }
163fad3a1d3Sopenharmony_ci}
164fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
165fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
166fad3a1d3Sopenharmony_ciimpl Eq for ConstParam {}
167fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
168fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
169fad3a1d3Sopenharmony_ciimpl PartialEq for ConstParam {
170fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
171fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.ident == other.ident && self.ty == other.ty
172fad3a1d3Sopenharmony_ci            && self.eq_token == other.eq_token && self.default == other.default
173fad3a1d3Sopenharmony_ci    }
174fad3a1d3Sopenharmony_ci}
175fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
176fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
177fad3a1d3Sopenharmony_ciimpl Eq for Constraint {}
178fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
179fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
180fad3a1d3Sopenharmony_ciimpl PartialEq for Constraint {
181fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
182fad3a1d3Sopenharmony_ci        self.ident == other.ident && self.generics == other.generics
183fad3a1d3Sopenharmony_ci            && self.bounds == other.bounds
184fad3a1d3Sopenharmony_ci    }
185fad3a1d3Sopenharmony_ci}
186fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
187fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
188fad3a1d3Sopenharmony_ciimpl Eq for Data {}
189fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
190fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
191fad3a1d3Sopenharmony_ciimpl PartialEq for Data {
192fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
193fad3a1d3Sopenharmony_ci        match (self, other) {
194fad3a1d3Sopenharmony_ci            (Data::Struct(self0), Data::Struct(other0)) => self0 == other0,
195fad3a1d3Sopenharmony_ci            (Data::Enum(self0), Data::Enum(other0)) => self0 == other0,
196fad3a1d3Sopenharmony_ci            (Data::Union(self0), Data::Union(other0)) => self0 == other0,
197fad3a1d3Sopenharmony_ci            _ => false,
198fad3a1d3Sopenharmony_ci        }
199fad3a1d3Sopenharmony_ci    }
200fad3a1d3Sopenharmony_ci}
201fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
202fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
203fad3a1d3Sopenharmony_ciimpl Eq for DataEnum {}
204fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
205fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
206fad3a1d3Sopenharmony_ciimpl PartialEq for DataEnum {
207fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
208fad3a1d3Sopenharmony_ci        self.variants == other.variants
209fad3a1d3Sopenharmony_ci    }
210fad3a1d3Sopenharmony_ci}
211fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
212fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
213fad3a1d3Sopenharmony_ciimpl Eq for DataStruct {}
214fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
215fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
216fad3a1d3Sopenharmony_ciimpl PartialEq for DataStruct {
217fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
218fad3a1d3Sopenharmony_ci        self.fields == other.fields && self.semi_token == other.semi_token
219fad3a1d3Sopenharmony_ci    }
220fad3a1d3Sopenharmony_ci}
221fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
222fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
223fad3a1d3Sopenharmony_ciimpl Eq for DataUnion {}
224fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
225fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
226fad3a1d3Sopenharmony_ciimpl PartialEq for DataUnion {
227fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
228fad3a1d3Sopenharmony_ci        self.fields == other.fields
229fad3a1d3Sopenharmony_ci    }
230fad3a1d3Sopenharmony_ci}
231fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
232fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
233fad3a1d3Sopenharmony_ciimpl Eq for DeriveInput {}
234fad3a1d3Sopenharmony_ci#[cfg(feature = "derive")]
235fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
236fad3a1d3Sopenharmony_ciimpl PartialEq for DeriveInput {
237fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
238fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.ident == other.ident
239fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.data == other.data
240fad3a1d3Sopenharmony_ci    }
241fad3a1d3Sopenharmony_ci}
242fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
243fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
244fad3a1d3Sopenharmony_ciimpl Eq for Expr {}
245fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
246fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
247fad3a1d3Sopenharmony_ciimpl PartialEq for Expr {
248fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
249fad3a1d3Sopenharmony_ci        match (self, other) {
250fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
251fad3a1d3Sopenharmony_ci            (Expr::Array(self0), Expr::Array(other0)) => self0 == other0,
252fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
253fad3a1d3Sopenharmony_ci            (Expr::Assign(self0), Expr::Assign(other0)) => self0 == other0,
254fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
255fad3a1d3Sopenharmony_ci            (Expr::Async(self0), Expr::Async(other0)) => self0 == other0,
256fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
257fad3a1d3Sopenharmony_ci            (Expr::Await(self0), Expr::Await(other0)) => self0 == other0,
258fad3a1d3Sopenharmony_ci            (Expr::Binary(self0), Expr::Binary(other0)) => self0 == other0,
259fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
260fad3a1d3Sopenharmony_ci            (Expr::Block(self0), Expr::Block(other0)) => self0 == other0,
261fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
262fad3a1d3Sopenharmony_ci            (Expr::Break(self0), Expr::Break(other0)) => self0 == other0,
263fad3a1d3Sopenharmony_ci            (Expr::Call(self0), Expr::Call(other0)) => self0 == other0,
264fad3a1d3Sopenharmony_ci            (Expr::Cast(self0), Expr::Cast(other0)) => self0 == other0,
265fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
266fad3a1d3Sopenharmony_ci            (Expr::Closure(self0), Expr::Closure(other0)) => self0 == other0,
267fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
268fad3a1d3Sopenharmony_ci            (Expr::Const(self0), Expr::Const(other0)) => self0 == other0,
269fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
270fad3a1d3Sopenharmony_ci            (Expr::Continue(self0), Expr::Continue(other0)) => self0 == other0,
271fad3a1d3Sopenharmony_ci            (Expr::Field(self0), Expr::Field(other0)) => self0 == other0,
272fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
273fad3a1d3Sopenharmony_ci            (Expr::ForLoop(self0), Expr::ForLoop(other0)) => self0 == other0,
274fad3a1d3Sopenharmony_ci            (Expr::Group(self0), Expr::Group(other0)) => self0 == other0,
275fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
276fad3a1d3Sopenharmony_ci            (Expr::If(self0), Expr::If(other0)) => self0 == other0,
277fad3a1d3Sopenharmony_ci            (Expr::Index(self0), Expr::Index(other0)) => self0 == other0,
278fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
279fad3a1d3Sopenharmony_ci            (Expr::Infer(self0), Expr::Infer(other0)) => self0 == other0,
280fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
281fad3a1d3Sopenharmony_ci            (Expr::Let(self0), Expr::Let(other0)) => self0 == other0,
282fad3a1d3Sopenharmony_ci            (Expr::Lit(self0), Expr::Lit(other0)) => self0 == other0,
283fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
284fad3a1d3Sopenharmony_ci            (Expr::Loop(self0), Expr::Loop(other0)) => self0 == other0,
285fad3a1d3Sopenharmony_ci            (Expr::Macro(self0), Expr::Macro(other0)) => self0 == other0,
286fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
287fad3a1d3Sopenharmony_ci            (Expr::Match(self0), Expr::Match(other0)) => self0 == other0,
288fad3a1d3Sopenharmony_ci            (Expr::MethodCall(self0), Expr::MethodCall(other0)) => self0 == other0,
289fad3a1d3Sopenharmony_ci            (Expr::Paren(self0), Expr::Paren(other0)) => self0 == other0,
290fad3a1d3Sopenharmony_ci            (Expr::Path(self0), Expr::Path(other0)) => self0 == other0,
291fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
292fad3a1d3Sopenharmony_ci            (Expr::Range(self0), Expr::Range(other0)) => self0 == other0,
293fad3a1d3Sopenharmony_ci            (Expr::Reference(self0), Expr::Reference(other0)) => self0 == other0,
294fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
295fad3a1d3Sopenharmony_ci            (Expr::Repeat(self0), Expr::Repeat(other0)) => self0 == other0,
296fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
297fad3a1d3Sopenharmony_ci            (Expr::Return(self0), Expr::Return(other0)) => self0 == other0,
298fad3a1d3Sopenharmony_ci            (Expr::Struct(self0), Expr::Struct(other0)) => self0 == other0,
299fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
300fad3a1d3Sopenharmony_ci            (Expr::Try(self0), Expr::Try(other0)) => self0 == other0,
301fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
302fad3a1d3Sopenharmony_ci            (Expr::TryBlock(self0), Expr::TryBlock(other0)) => self0 == other0,
303fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
304fad3a1d3Sopenharmony_ci            (Expr::Tuple(self0), Expr::Tuple(other0)) => self0 == other0,
305fad3a1d3Sopenharmony_ci            (Expr::Unary(self0), Expr::Unary(other0)) => self0 == other0,
306fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
307fad3a1d3Sopenharmony_ci            (Expr::Unsafe(self0), Expr::Unsafe(other0)) => self0 == other0,
308fad3a1d3Sopenharmony_ci            (Expr::Verbatim(self0), Expr::Verbatim(other0)) => {
309fad3a1d3Sopenharmony_ci                TokenStreamHelper(self0) == TokenStreamHelper(other0)
310fad3a1d3Sopenharmony_ci            }
311fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
312fad3a1d3Sopenharmony_ci            (Expr::While(self0), Expr::While(other0)) => self0 == other0,
313fad3a1d3Sopenharmony_ci            #[cfg(feature = "full")]
314fad3a1d3Sopenharmony_ci            (Expr::Yield(self0), Expr::Yield(other0)) => self0 == other0,
315fad3a1d3Sopenharmony_ci            _ => false,
316fad3a1d3Sopenharmony_ci        }
317fad3a1d3Sopenharmony_ci    }
318fad3a1d3Sopenharmony_ci}
319fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
320fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
321fad3a1d3Sopenharmony_ciimpl Eq for ExprArray {}
322fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
323fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
324fad3a1d3Sopenharmony_ciimpl PartialEq for ExprArray {
325fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
326fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.elems == other.elems
327fad3a1d3Sopenharmony_ci    }
328fad3a1d3Sopenharmony_ci}
329fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
330fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
331fad3a1d3Sopenharmony_ciimpl Eq for ExprAssign {}
332fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
333fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
334fad3a1d3Sopenharmony_ciimpl PartialEq for ExprAssign {
335fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
336fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.left == other.left && self.right == other.right
337fad3a1d3Sopenharmony_ci    }
338fad3a1d3Sopenharmony_ci}
339fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
340fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
341fad3a1d3Sopenharmony_ciimpl Eq for ExprAsync {}
342fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
343fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
344fad3a1d3Sopenharmony_ciimpl PartialEq for ExprAsync {
345fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
346fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.capture == other.capture
347fad3a1d3Sopenharmony_ci            && self.block == other.block
348fad3a1d3Sopenharmony_ci    }
349fad3a1d3Sopenharmony_ci}
350fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
351fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
352fad3a1d3Sopenharmony_ciimpl Eq for ExprAwait {}
353fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
354fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
355fad3a1d3Sopenharmony_ciimpl PartialEq for ExprAwait {
356fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
357fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.base == other.base
358fad3a1d3Sopenharmony_ci    }
359fad3a1d3Sopenharmony_ci}
360fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
361fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
362fad3a1d3Sopenharmony_ciimpl Eq for ExprBinary {}
363fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
364fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
365fad3a1d3Sopenharmony_ciimpl PartialEq for ExprBinary {
366fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
367fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.left == other.left && self.op == other.op
368fad3a1d3Sopenharmony_ci            && self.right == other.right
369fad3a1d3Sopenharmony_ci    }
370fad3a1d3Sopenharmony_ci}
371fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
372fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
373fad3a1d3Sopenharmony_ciimpl Eq for ExprBlock {}
374fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
375fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
376fad3a1d3Sopenharmony_ciimpl PartialEq for ExprBlock {
377fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
378fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.label == other.label
379fad3a1d3Sopenharmony_ci            && self.block == other.block
380fad3a1d3Sopenharmony_ci    }
381fad3a1d3Sopenharmony_ci}
382fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
383fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
384fad3a1d3Sopenharmony_ciimpl Eq for ExprBreak {}
385fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
386fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
387fad3a1d3Sopenharmony_ciimpl PartialEq for ExprBreak {
388fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
389fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.label == other.label && self.expr == other.expr
390fad3a1d3Sopenharmony_ci    }
391fad3a1d3Sopenharmony_ci}
392fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
393fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
394fad3a1d3Sopenharmony_ciimpl Eq for ExprCall {}
395fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
396fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
397fad3a1d3Sopenharmony_ciimpl PartialEq for ExprCall {
398fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
399fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.func == other.func && self.args == other.args
400fad3a1d3Sopenharmony_ci    }
401fad3a1d3Sopenharmony_ci}
402fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
403fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
404fad3a1d3Sopenharmony_ciimpl Eq for ExprCast {}
405fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
406fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
407fad3a1d3Sopenharmony_ciimpl PartialEq for ExprCast {
408fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
409fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.expr == other.expr && self.ty == other.ty
410fad3a1d3Sopenharmony_ci    }
411fad3a1d3Sopenharmony_ci}
412fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
413fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
414fad3a1d3Sopenharmony_ciimpl Eq for ExprClosure {}
415fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
416fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
417fad3a1d3Sopenharmony_ciimpl PartialEq for ExprClosure {
418fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
419fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.lifetimes == other.lifetimes
420fad3a1d3Sopenharmony_ci            && self.constness == other.constness && self.movability == other.movability
421fad3a1d3Sopenharmony_ci            && self.asyncness == other.asyncness && self.capture == other.capture
422fad3a1d3Sopenharmony_ci            && self.inputs == other.inputs && self.output == other.output
423fad3a1d3Sopenharmony_ci            && self.body == other.body
424fad3a1d3Sopenharmony_ci    }
425fad3a1d3Sopenharmony_ci}
426fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
427fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
428fad3a1d3Sopenharmony_ciimpl Eq for ExprConst {}
429fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
430fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
431fad3a1d3Sopenharmony_ciimpl PartialEq for ExprConst {
432fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
433fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.block == other.block
434fad3a1d3Sopenharmony_ci    }
435fad3a1d3Sopenharmony_ci}
436fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
437fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
438fad3a1d3Sopenharmony_ciimpl Eq for ExprContinue {}
439fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
440fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
441fad3a1d3Sopenharmony_ciimpl PartialEq for ExprContinue {
442fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
443fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.label == other.label
444fad3a1d3Sopenharmony_ci    }
445fad3a1d3Sopenharmony_ci}
446fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
447fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
448fad3a1d3Sopenharmony_ciimpl Eq for ExprField {}
449fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
450fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
451fad3a1d3Sopenharmony_ciimpl PartialEq for ExprField {
452fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
453fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.base == other.base
454fad3a1d3Sopenharmony_ci            && self.member == other.member
455fad3a1d3Sopenharmony_ci    }
456fad3a1d3Sopenharmony_ci}
457fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
458fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
459fad3a1d3Sopenharmony_ciimpl Eq for ExprForLoop {}
460fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
461fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
462fad3a1d3Sopenharmony_ciimpl PartialEq for ExprForLoop {
463fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
464fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.label == other.label && self.pat == other.pat
465fad3a1d3Sopenharmony_ci            && self.expr == other.expr && self.body == other.body
466fad3a1d3Sopenharmony_ci    }
467fad3a1d3Sopenharmony_ci}
468fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
469fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
470fad3a1d3Sopenharmony_ciimpl Eq for ExprGroup {}
471fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
472fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
473fad3a1d3Sopenharmony_ciimpl PartialEq for ExprGroup {
474fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
475fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.expr == other.expr
476fad3a1d3Sopenharmony_ci    }
477fad3a1d3Sopenharmony_ci}
478fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
479fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
480fad3a1d3Sopenharmony_ciimpl Eq for ExprIf {}
481fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
482fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
483fad3a1d3Sopenharmony_ciimpl PartialEq for ExprIf {
484fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
485fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.cond == other.cond
486fad3a1d3Sopenharmony_ci            && self.then_branch == other.then_branch
487fad3a1d3Sopenharmony_ci            && self.else_branch == other.else_branch
488fad3a1d3Sopenharmony_ci    }
489fad3a1d3Sopenharmony_ci}
490fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
491fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
492fad3a1d3Sopenharmony_ciimpl Eq for ExprIndex {}
493fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
494fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
495fad3a1d3Sopenharmony_ciimpl PartialEq for ExprIndex {
496fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
497fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.expr == other.expr && self.index == other.index
498fad3a1d3Sopenharmony_ci    }
499fad3a1d3Sopenharmony_ci}
500fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
501fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
502fad3a1d3Sopenharmony_ciimpl Eq for ExprInfer {}
503fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
504fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
505fad3a1d3Sopenharmony_ciimpl PartialEq for ExprInfer {
506fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
507fad3a1d3Sopenharmony_ci        self.attrs == other.attrs
508fad3a1d3Sopenharmony_ci    }
509fad3a1d3Sopenharmony_ci}
510fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
511fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
512fad3a1d3Sopenharmony_ciimpl Eq for ExprLet {}
513fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
514fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
515fad3a1d3Sopenharmony_ciimpl PartialEq for ExprLet {
516fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
517fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.pat == other.pat && self.expr == other.expr
518fad3a1d3Sopenharmony_ci    }
519fad3a1d3Sopenharmony_ci}
520fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
521fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
522fad3a1d3Sopenharmony_ciimpl Eq for ExprLit {}
523fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
524fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
525fad3a1d3Sopenharmony_ciimpl PartialEq for ExprLit {
526fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
527fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.lit == other.lit
528fad3a1d3Sopenharmony_ci    }
529fad3a1d3Sopenharmony_ci}
530fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
531fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
532fad3a1d3Sopenharmony_ciimpl Eq for ExprLoop {}
533fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
534fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
535fad3a1d3Sopenharmony_ciimpl PartialEq for ExprLoop {
536fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
537fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.label == other.label && self.body == other.body
538fad3a1d3Sopenharmony_ci    }
539fad3a1d3Sopenharmony_ci}
540fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
541fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
542fad3a1d3Sopenharmony_ciimpl Eq for ExprMacro {}
543fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
544fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
545fad3a1d3Sopenharmony_ciimpl PartialEq for ExprMacro {
546fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
547fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.mac == other.mac
548fad3a1d3Sopenharmony_ci    }
549fad3a1d3Sopenharmony_ci}
550fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
551fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
552fad3a1d3Sopenharmony_ciimpl Eq for ExprMatch {}
553fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
554fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
555fad3a1d3Sopenharmony_ciimpl PartialEq for ExprMatch {
556fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
557fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.expr == other.expr && self.arms == other.arms
558fad3a1d3Sopenharmony_ci    }
559fad3a1d3Sopenharmony_ci}
560fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
561fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
562fad3a1d3Sopenharmony_ciimpl Eq for ExprMethodCall {}
563fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
564fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
565fad3a1d3Sopenharmony_ciimpl PartialEq for ExprMethodCall {
566fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
567fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.receiver == other.receiver
568fad3a1d3Sopenharmony_ci            && self.method == other.method && self.turbofish == other.turbofish
569fad3a1d3Sopenharmony_ci            && self.args == other.args
570fad3a1d3Sopenharmony_ci    }
571fad3a1d3Sopenharmony_ci}
572fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
573fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
574fad3a1d3Sopenharmony_ciimpl Eq for ExprParen {}
575fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
576fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
577fad3a1d3Sopenharmony_ciimpl PartialEq for ExprParen {
578fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
579fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.expr == other.expr
580fad3a1d3Sopenharmony_ci    }
581fad3a1d3Sopenharmony_ci}
582fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
583fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
584fad3a1d3Sopenharmony_ciimpl Eq for ExprPath {}
585fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
586fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
587fad3a1d3Sopenharmony_ciimpl PartialEq for ExprPath {
588fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
589fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.qself == other.qself && self.path == other.path
590fad3a1d3Sopenharmony_ci    }
591fad3a1d3Sopenharmony_ci}
592fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
593fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
594fad3a1d3Sopenharmony_ciimpl Eq for ExprRange {}
595fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
596fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
597fad3a1d3Sopenharmony_ciimpl PartialEq for ExprRange {
598fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
599fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.start == other.start
600fad3a1d3Sopenharmony_ci            && self.limits == other.limits && self.end == other.end
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 Eq for ExprReference {}
606fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
607fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
608fad3a1d3Sopenharmony_ciimpl PartialEq for ExprReference {
609fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
610fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.mutability == other.mutability
611fad3a1d3Sopenharmony_ci            && self.expr == other.expr
612fad3a1d3Sopenharmony_ci    }
613fad3a1d3Sopenharmony_ci}
614fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
615fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
616fad3a1d3Sopenharmony_ciimpl Eq for ExprRepeat {}
617fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
618fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
619fad3a1d3Sopenharmony_ciimpl PartialEq for ExprRepeat {
620fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
621fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.expr == other.expr && self.len == other.len
622fad3a1d3Sopenharmony_ci    }
623fad3a1d3Sopenharmony_ci}
624fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
625fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
626fad3a1d3Sopenharmony_ciimpl Eq for ExprReturn {}
627fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
628fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
629fad3a1d3Sopenharmony_ciimpl PartialEq for ExprReturn {
630fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
631fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.expr == other.expr
632fad3a1d3Sopenharmony_ci    }
633fad3a1d3Sopenharmony_ci}
634fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
635fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
636fad3a1d3Sopenharmony_ciimpl Eq for ExprStruct {}
637fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
638fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
639fad3a1d3Sopenharmony_ciimpl PartialEq for ExprStruct {
640fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
641fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.qself == other.qself && self.path == other.path
642fad3a1d3Sopenharmony_ci            && self.fields == other.fields && self.dot2_token == other.dot2_token
643fad3a1d3Sopenharmony_ci            && self.rest == other.rest
644fad3a1d3Sopenharmony_ci    }
645fad3a1d3Sopenharmony_ci}
646fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
647fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
648fad3a1d3Sopenharmony_ciimpl Eq for ExprTry {}
649fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
650fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
651fad3a1d3Sopenharmony_ciimpl PartialEq for ExprTry {
652fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
653fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.expr == other.expr
654fad3a1d3Sopenharmony_ci    }
655fad3a1d3Sopenharmony_ci}
656fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
657fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
658fad3a1d3Sopenharmony_ciimpl Eq for ExprTryBlock {}
659fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
660fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
661fad3a1d3Sopenharmony_ciimpl PartialEq for ExprTryBlock {
662fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
663fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.block == other.block
664fad3a1d3Sopenharmony_ci    }
665fad3a1d3Sopenharmony_ci}
666fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
667fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
668fad3a1d3Sopenharmony_ciimpl Eq for ExprTuple {}
669fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
670fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
671fad3a1d3Sopenharmony_ciimpl PartialEq for ExprTuple {
672fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
673fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.elems == other.elems
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 Eq for ExprUnary {}
679fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
680fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
681fad3a1d3Sopenharmony_ciimpl PartialEq for ExprUnary {
682fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
683fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.op == other.op && self.expr == other.expr
684fad3a1d3Sopenharmony_ci    }
685fad3a1d3Sopenharmony_ci}
686fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
687fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
688fad3a1d3Sopenharmony_ciimpl Eq for ExprUnsafe {}
689fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
690fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
691fad3a1d3Sopenharmony_ciimpl PartialEq for ExprUnsafe {
692fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
693fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.block == other.block
694fad3a1d3Sopenharmony_ci    }
695fad3a1d3Sopenharmony_ci}
696fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
697fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
698fad3a1d3Sopenharmony_ciimpl Eq for ExprWhile {}
699fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
700fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
701fad3a1d3Sopenharmony_ciimpl PartialEq for ExprWhile {
702fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
703fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.label == other.label && self.cond == other.cond
704fad3a1d3Sopenharmony_ci            && self.body == other.body
705fad3a1d3Sopenharmony_ci    }
706fad3a1d3Sopenharmony_ci}
707fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
708fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
709fad3a1d3Sopenharmony_ciimpl Eq for ExprYield {}
710fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
711fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
712fad3a1d3Sopenharmony_ciimpl PartialEq for ExprYield {
713fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
714fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.expr == other.expr
715fad3a1d3Sopenharmony_ci    }
716fad3a1d3Sopenharmony_ci}
717fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
718fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
719fad3a1d3Sopenharmony_ciimpl Eq for Field {}
720fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
721fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
722fad3a1d3Sopenharmony_ciimpl PartialEq for Field {
723fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
724fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis
725fad3a1d3Sopenharmony_ci            && self.mutability == other.mutability && self.ident == other.ident
726fad3a1d3Sopenharmony_ci            && self.colon_token == other.colon_token && self.ty == other.ty
727fad3a1d3Sopenharmony_ci    }
728fad3a1d3Sopenharmony_ci}
729fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
730fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
731fad3a1d3Sopenharmony_ciimpl Eq for FieldMutability {}
732fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
733fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
734fad3a1d3Sopenharmony_ciimpl PartialEq for FieldMutability {
735fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
736fad3a1d3Sopenharmony_ci        match (self, other) {
737fad3a1d3Sopenharmony_ci            (FieldMutability::None, FieldMutability::None) => true,
738fad3a1d3Sopenharmony_ci        }
739fad3a1d3Sopenharmony_ci    }
740fad3a1d3Sopenharmony_ci}
741fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
742fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
743fad3a1d3Sopenharmony_ciimpl Eq for FieldPat {}
744fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
745fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
746fad3a1d3Sopenharmony_ciimpl PartialEq for FieldPat {
747fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
748fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.member == other.member
749fad3a1d3Sopenharmony_ci            && self.colon_token == other.colon_token && self.pat == other.pat
750fad3a1d3Sopenharmony_ci    }
751fad3a1d3Sopenharmony_ci}
752fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
753fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
754fad3a1d3Sopenharmony_ciimpl Eq for FieldValue {}
755fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
756fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
757fad3a1d3Sopenharmony_ciimpl PartialEq for FieldValue {
758fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
759fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.member == other.member
760fad3a1d3Sopenharmony_ci            && self.colon_token == other.colon_token && self.expr == other.expr
761fad3a1d3Sopenharmony_ci    }
762fad3a1d3Sopenharmony_ci}
763fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
764fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
765fad3a1d3Sopenharmony_ciimpl Eq for Fields {}
766fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
767fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
768fad3a1d3Sopenharmony_ciimpl PartialEq for Fields {
769fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
770fad3a1d3Sopenharmony_ci        match (self, other) {
771fad3a1d3Sopenharmony_ci            (Fields::Named(self0), Fields::Named(other0)) => self0 == other0,
772fad3a1d3Sopenharmony_ci            (Fields::Unnamed(self0), Fields::Unnamed(other0)) => self0 == other0,
773fad3a1d3Sopenharmony_ci            (Fields::Unit, Fields::Unit) => true,
774fad3a1d3Sopenharmony_ci            _ => false,
775fad3a1d3Sopenharmony_ci        }
776fad3a1d3Sopenharmony_ci    }
777fad3a1d3Sopenharmony_ci}
778fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
779fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
780fad3a1d3Sopenharmony_ciimpl Eq for FieldsNamed {}
781fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
782fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
783fad3a1d3Sopenharmony_ciimpl PartialEq for FieldsNamed {
784fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
785fad3a1d3Sopenharmony_ci        self.named == other.named
786fad3a1d3Sopenharmony_ci    }
787fad3a1d3Sopenharmony_ci}
788fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
789fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
790fad3a1d3Sopenharmony_ciimpl Eq for FieldsUnnamed {}
791fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
792fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
793fad3a1d3Sopenharmony_ciimpl PartialEq for FieldsUnnamed {
794fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
795fad3a1d3Sopenharmony_ci        self.unnamed == other.unnamed
796fad3a1d3Sopenharmony_ci    }
797fad3a1d3Sopenharmony_ci}
798fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
799fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
800fad3a1d3Sopenharmony_ciimpl Eq for File {}
801fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
802fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
803fad3a1d3Sopenharmony_ciimpl PartialEq for File {
804fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
805fad3a1d3Sopenharmony_ci        self.shebang == other.shebang && self.attrs == other.attrs
806fad3a1d3Sopenharmony_ci            && self.items == other.items
807fad3a1d3Sopenharmony_ci    }
808fad3a1d3Sopenharmony_ci}
809fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
810fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
811fad3a1d3Sopenharmony_ciimpl Eq for FnArg {}
812fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
813fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
814fad3a1d3Sopenharmony_ciimpl PartialEq for FnArg {
815fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
816fad3a1d3Sopenharmony_ci        match (self, other) {
817fad3a1d3Sopenharmony_ci            (FnArg::Receiver(self0), FnArg::Receiver(other0)) => self0 == other0,
818fad3a1d3Sopenharmony_ci            (FnArg::Typed(self0), FnArg::Typed(other0)) => self0 == other0,
819fad3a1d3Sopenharmony_ci            _ => false,
820fad3a1d3Sopenharmony_ci        }
821fad3a1d3Sopenharmony_ci    }
822fad3a1d3Sopenharmony_ci}
823fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
824fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
825fad3a1d3Sopenharmony_ciimpl Eq for ForeignItem {}
826fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
827fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
828fad3a1d3Sopenharmony_ciimpl PartialEq for ForeignItem {
829fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
830fad3a1d3Sopenharmony_ci        match (self, other) {
831fad3a1d3Sopenharmony_ci            (ForeignItem::Fn(self0), ForeignItem::Fn(other0)) => self0 == other0,
832fad3a1d3Sopenharmony_ci            (ForeignItem::Static(self0), ForeignItem::Static(other0)) => self0 == other0,
833fad3a1d3Sopenharmony_ci            (ForeignItem::Type(self0), ForeignItem::Type(other0)) => self0 == other0,
834fad3a1d3Sopenharmony_ci            (ForeignItem::Macro(self0), ForeignItem::Macro(other0)) => self0 == other0,
835fad3a1d3Sopenharmony_ci            (ForeignItem::Verbatim(self0), ForeignItem::Verbatim(other0)) => {
836fad3a1d3Sopenharmony_ci                TokenStreamHelper(self0) == TokenStreamHelper(other0)
837fad3a1d3Sopenharmony_ci            }
838fad3a1d3Sopenharmony_ci            _ => false,
839fad3a1d3Sopenharmony_ci        }
840fad3a1d3Sopenharmony_ci    }
841fad3a1d3Sopenharmony_ci}
842fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
843fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
844fad3a1d3Sopenharmony_ciimpl Eq for ForeignItemFn {}
845fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
846fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
847fad3a1d3Sopenharmony_ciimpl PartialEq for ForeignItemFn {
848fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
849fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.sig == other.sig
850fad3a1d3Sopenharmony_ci    }
851fad3a1d3Sopenharmony_ci}
852fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
853fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
854fad3a1d3Sopenharmony_ciimpl Eq for ForeignItemMacro {}
855fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
856fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
857fad3a1d3Sopenharmony_ciimpl PartialEq for ForeignItemMacro {
858fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
859fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.mac == other.mac
860fad3a1d3Sopenharmony_ci            && self.semi_token == other.semi_token
861fad3a1d3Sopenharmony_ci    }
862fad3a1d3Sopenharmony_ci}
863fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
864fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
865fad3a1d3Sopenharmony_ciimpl Eq for ForeignItemStatic {}
866fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
867fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
868fad3a1d3Sopenharmony_ciimpl PartialEq for ForeignItemStatic {
869fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
870fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis
871fad3a1d3Sopenharmony_ci            && self.mutability == other.mutability && self.ident == other.ident
872fad3a1d3Sopenharmony_ci            && self.ty == other.ty
873fad3a1d3Sopenharmony_ci    }
874fad3a1d3Sopenharmony_ci}
875fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
876fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
877fad3a1d3Sopenharmony_ciimpl Eq for ForeignItemType {}
878fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
879fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
880fad3a1d3Sopenharmony_ciimpl PartialEq for ForeignItemType {
881fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
882fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.ident == other.ident
883fad3a1d3Sopenharmony_ci            && self.generics == other.generics
884fad3a1d3Sopenharmony_ci    }
885fad3a1d3Sopenharmony_ci}
886fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
887fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
888fad3a1d3Sopenharmony_ciimpl Eq for GenericArgument {}
889fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
890fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
891fad3a1d3Sopenharmony_ciimpl PartialEq for GenericArgument {
892fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
893fad3a1d3Sopenharmony_ci        match (self, other) {
894fad3a1d3Sopenharmony_ci            (GenericArgument::Lifetime(self0), GenericArgument::Lifetime(other0)) => {
895fad3a1d3Sopenharmony_ci                self0 == other0
896fad3a1d3Sopenharmony_ci            }
897fad3a1d3Sopenharmony_ci            (GenericArgument::Type(self0), GenericArgument::Type(other0)) => {
898fad3a1d3Sopenharmony_ci                self0 == other0
899fad3a1d3Sopenharmony_ci            }
900fad3a1d3Sopenharmony_ci            (GenericArgument::Const(self0), GenericArgument::Const(other0)) => {
901fad3a1d3Sopenharmony_ci                self0 == other0
902fad3a1d3Sopenharmony_ci            }
903fad3a1d3Sopenharmony_ci            (GenericArgument::AssocType(self0), GenericArgument::AssocType(other0)) => {
904fad3a1d3Sopenharmony_ci                self0 == other0
905fad3a1d3Sopenharmony_ci            }
906fad3a1d3Sopenharmony_ci            (GenericArgument::AssocConst(self0), GenericArgument::AssocConst(other0)) => {
907fad3a1d3Sopenharmony_ci                self0 == other0
908fad3a1d3Sopenharmony_ci            }
909fad3a1d3Sopenharmony_ci            (GenericArgument::Constraint(self0), GenericArgument::Constraint(other0)) => {
910fad3a1d3Sopenharmony_ci                self0 == other0
911fad3a1d3Sopenharmony_ci            }
912fad3a1d3Sopenharmony_ci            _ => false,
913fad3a1d3Sopenharmony_ci        }
914fad3a1d3Sopenharmony_ci    }
915fad3a1d3Sopenharmony_ci}
916fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
917fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
918fad3a1d3Sopenharmony_ciimpl Eq for GenericParam {}
919fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
920fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
921fad3a1d3Sopenharmony_ciimpl PartialEq for GenericParam {
922fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
923fad3a1d3Sopenharmony_ci        match (self, other) {
924fad3a1d3Sopenharmony_ci            (GenericParam::Lifetime(self0), GenericParam::Lifetime(other0)) => {
925fad3a1d3Sopenharmony_ci                self0 == other0
926fad3a1d3Sopenharmony_ci            }
927fad3a1d3Sopenharmony_ci            (GenericParam::Type(self0), GenericParam::Type(other0)) => self0 == other0,
928fad3a1d3Sopenharmony_ci            (GenericParam::Const(self0), GenericParam::Const(other0)) => self0 == other0,
929fad3a1d3Sopenharmony_ci            _ => false,
930fad3a1d3Sopenharmony_ci        }
931fad3a1d3Sopenharmony_ci    }
932fad3a1d3Sopenharmony_ci}
933fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
934fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
935fad3a1d3Sopenharmony_ciimpl Eq for Generics {}
936fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
937fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
938fad3a1d3Sopenharmony_ciimpl PartialEq for Generics {
939fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
940fad3a1d3Sopenharmony_ci        self.lt_token == other.lt_token && self.params == other.params
941fad3a1d3Sopenharmony_ci            && self.gt_token == other.gt_token && self.where_clause == other.where_clause
942fad3a1d3Sopenharmony_ci    }
943fad3a1d3Sopenharmony_ci}
944fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
945fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
946fad3a1d3Sopenharmony_ciimpl Eq for ImplItem {}
947fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
948fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
949fad3a1d3Sopenharmony_ciimpl PartialEq for ImplItem {
950fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
951fad3a1d3Sopenharmony_ci        match (self, other) {
952fad3a1d3Sopenharmony_ci            (ImplItem::Const(self0), ImplItem::Const(other0)) => self0 == other0,
953fad3a1d3Sopenharmony_ci            (ImplItem::Fn(self0), ImplItem::Fn(other0)) => self0 == other0,
954fad3a1d3Sopenharmony_ci            (ImplItem::Type(self0), ImplItem::Type(other0)) => self0 == other0,
955fad3a1d3Sopenharmony_ci            (ImplItem::Macro(self0), ImplItem::Macro(other0)) => self0 == other0,
956fad3a1d3Sopenharmony_ci            (ImplItem::Verbatim(self0), ImplItem::Verbatim(other0)) => {
957fad3a1d3Sopenharmony_ci                TokenStreamHelper(self0) == TokenStreamHelper(other0)
958fad3a1d3Sopenharmony_ci            }
959fad3a1d3Sopenharmony_ci            _ => false,
960fad3a1d3Sopenharmony_ci        }
961fad3a1d3Sopenharmony_ci    }
962fad3a1d3Sopenharmony_ci}
963fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
964fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
965fad3a1d3Sopenharmony_ciimpl Eq for ImplItemConst {}
966fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
967fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
968fad3a1d3Sopenharmony_ciimpl PartialEq for ImplItemConst {
969fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
970fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis
971fad3a1d3Sopenharmony_ci            && self.defaultness == other.defaultness && self.ident == other.ident
972fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.ty == other.ty
973fad3a1d3Sopenharmony_ci            && self.expr == other.expr
974fad3a1d3Sopenharmony_ci    }
975fad3a1d3Sopenharmony_ci}
976fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
977fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
978fad3a1d3Sopenharmony_ciimpl Eq for ImplItemFn {}
979fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
980fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
981fad3a1d3Sopenharmony_ciimpl PartialEq for ImplItemFn {
982fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
983fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis
984fad3a1d3Sopenharmony_ci            && self.defaultness == other.defaultness && self.sig == other.sig
985fad3a1d3Sopenharmony_ci            && self.block == other.block
986fad3a1d3Sopenharmony_ci    }
987fad3a1d3Sopenharmony_ci}
988fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
989fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
990fad3a1d3Sopenharmony_ciimpl Eq for ImplItemMacro {}
991fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
992fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
993fad3a1d3Sopenharmony_ciimpl PartialEq for ImplItemMacro {
994fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
995fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.mac == other.mac
996fad3a1d3Sopenharmony_ci            && self.semi_token == other.semi_token
997fad3a1d3Sopenharmony_ci    }
998fad3a1d3Sopenharmony_ci}
999fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1000fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1001fad3a1d3Sopenharmony_ciimpl Eq for ImplItemType {}
1002fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1003fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1004fad3a1d3Sopenharmony_ciimpl PartialEq for ImplItemType {
1005fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1006fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis
1007fad3a1d3Sopenharmony_ci            && self.defaultness == other.defaultness && self.ident == other.ident
1008fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.ty == other.ty
1009fad3a1d3Sopenharmony_ci    }
1010fad3a1d3Sopenharmony_ci}
1011fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1012fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1013fad3a1d3Sopenharmony_ciimpl Eq for ImplRestriction {}
1014fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1015fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1016fad3a1d3Sopenharmony_ciimpl PartialEq for ImplRestriction {
1017fad3a1d3Sopenharmony_ci    fn eq(&self, _other: &Self) -> bool {
1018fad3a1d3Sopenharmony_ci        match *self {}
1019fad3a1d3Sopenharmony_ci    }
1020fad3a1d3Sopenharmony_ci}
1021fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1022fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1023fad3a1d3Sopenharmony_ciimpl Eq for Item {}
1024fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1025fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1026fad3a1d3Sopenharmony_ciimpl PartialEq for Item {
1027fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1028fad3a1d3Sopenharmony_ci        match (self, other) {
1029fad3a1d3Sopenharmony_ci            (Item::Const(self0), Item::Const(other0)) => self0 == other0,
1030fad3a1d3Sopenharmony_ci            (Item::Enum(self0), Item::Enum(other0)) => self0 == other0,
1031fad3a1d3Sopenharmony_ci            (Item::ExternCrate(self0), Item::ExternCrate(other0)) => self0 == other0,
1032fad3a1d3Sopenharmony_ci            (Item::Fn(self0), Item::Fn(other0)) => self0 == other0,
1033fad3a1d3Sopenharmony_ci            (Item::ForeignMod(self0), Item::ForeignMod(other0)) => self0 == other0,
1034fad3a1d3Sopenharmony_ci            (Item::Impl(self0), Item::Impl(other0)) => self0 == other0,
1035fad3a1d3Sopenharmony_ci            (Item::Macro(self0), Item::Macro(other0)) => self0 == other0,
1036fad3a1d3Sopenharmony_ci            (Item::Mod(self0), Item::Mod(other0)) => self0 == other0,
1037fad3a1d3Sopenharmony_ci            (Item::Static(self0), Item::Static(other0)) => self0 == other0,
1038fad3a1d3Sopenharmony_ci            (Item::Struct(self0), Item::Struct(other0)) => self0 == other0,
1039fad3a1d3Sopenharmony_ci            (Item::Trait(self0), Item::Trait(other0)) => self0 == other0,
1040fad3a1d3Sopenharmony_ci            (Item::TraitAlias(self0), Item::TraitAlias(other0)) => self0 == other0,
1041fad3a1d3Sopenharmony_ci            (Item::Type(self0), Item::Type(other0)) => self0 == other0,
1042fad3a1d3Sopenharmony_ci            (Item::Union(self0), Item::Union(other0)) => self0 == other0,
1043fad3a1d3Sopenharmony_ci            (Item::Use(self0), Item::Use(other0)) => self0 == other0,
1044fad3a1d3Sopenharmony_ci            (Item::Verbatim(self0), Item::Verbatim(other0)) => {
1045fad3a1d3Sopenharmony_ci                TokenStreamHelper(self0) == TokenStreamHelper(other0)
1046fad3a1d3Sopenharmony_ci            }
1047fad3a1d3Sopenharmony_ci            _ => false,
1048fad3a1d3Sopenharmony_ci        }
1049fad3a1d3Sopenharmony_ci    }
1050fad3a1d3Sopenharmony_ci}
1051fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1052fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1053fad3a1d3Sopenharmony_ciimpl Eq for ItemConst {}
1054fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1055fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1056fad3a1d3Sopenharmony_ciimpl PartialEq for ItemConst {
1057fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1058fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.ident == other.ident
1059fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.ty == other.ty
1060fad3a1d3Sopenharmony_ci            && self.expr == other.expr
1061fad3a1d3Sopenharmony_ci    }
1062fad3a1d3Sopenharmony_ci}
1063fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1064fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1065fad3a1d3Sopenharmony_ciimpl Eq for ItemEnum {}
1066fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1067fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1068fad3a1d3Sopenharmony_ciimpl PartialEq for ItemEnum {
1069fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1070fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.ident == other.ident
1071fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.variants == other.variants
1072fad3a1d3Sopenharmony_ci    }
1073fad3a1d3Sopenharmony_ci}
1074fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1075fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1076fad3a1d3Sopenharmony_ciimpl Eq for ItemExternCrate {}
1077fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1078fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1079fad3a1d3Sopenharmony_ciimpl PartialEq for ItemExternCrate {
1080fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1081fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.ident == other.ident
1082fad3a1d3Sopenharmony_ci            && self.rename == other.rename
1083fad3a1d3Sopenharmony_ci    }
1084fad3a1d3Sopenharmony_ci}
1085fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1086fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1087fad3a1d3Sopenharmony_ciimpl Eq for ItemFn {}
1088fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1089fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1090fad3a1d3Sopenharmony_ciimpl PartialEq for ItemFn {
1091fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1092fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.sig == other.sig
1093fad3a1d3Sopenharmony_ci            && self.block == other.block
1094fad3a1d3Sopenharmony_ci    }
1095fad3a1d3Sopenharmony_ci}
1096fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1097fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1098fad3a1d3Sopenharmony_ciimpl Eq for ItemForeignMod {}
1099fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1100fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1101fad3a1d3Sopenharmony_ciimpl PartialEq for ItemForeignMod {
1102fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1103fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.unsafety == other.unsafety
1104fad3a1d3Sopenharmony_ci            && self.abi == other.abi && self.items == other.items
1105fad3a1d3Sopenharmony_ci    }
1106fad3a1d3Sopenharmony_ci}
1107fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1108fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1109fad3a1d3Sopenharmony_ciimpl Eq for ItemImpl {}
1110fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1111fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1112fad3a1d3Sopenharmony_ciimpl PartialEq for ItemImpl {
1113fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1114fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.defaultness == other.defaultness
1115fad3a1d3Sopenharmony_ci            && self.unsafety == other.unsafety && self.generics == other.generics
1116fad3a1d3Sopenharmony_ci            && self.trait_ == other.trait_ && self.self_ty == other.self_ty
1117fad3a1d3Sopenharmony_ci            && self.items == other.items
1118fad3a1d3Sopenharmony_ci    }
1119fad3a1d3Sopenharmony_ci}
1120fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1121fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1122fad3a1d3Sopenharmony_ciimpl Eq for ItemMacro {}
1123fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1124fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1125fad3a1d3Sopenharmony_ciimpl PartialEq for ItemMacro {
1126fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1127fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.ident == other.ident && self.mac == other.mac
1128fad3a1d3Sopenharmony_ci            && self.semi_token == other.semi_token
1129fad3a1d3Sopenharmony_ci    }
1130fad3a1d3Sopenharmony_ci}
1131fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1132fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1133fad3a1d3Sopenharmony_ciimpl Eq for ItemMod {}
1134fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1135fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1136fad3a1d3Sopenharmony_ciimpl PartialEq for ItemMod {
1137fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1138fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis
1139fad3a1d3Sopenharmony_ci            && self.unsafety == other.unsafety && self.ident == other.ident
1140fad3a1d3Sopenharmony_ci            && self.content == other.content && self.semi == other.semi
1141fad3a1d3Sopenharmony_ci    }
1142fad3a1d3Sopenharmony_ci}
1143fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1144fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1145fad3a1d3Sopenharmony_ciimpl Eq for ItemStatic {}
1146fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1147fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1148fad3a1d3Sopenharmony_ciimpl PartialEq for ItemStatic {
1149fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1150fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis
1151fad3a1d3Sopenharmony_ci            && self.mutability == other.mutability && self.ident == other.ident
1152fad3a1d3Sopenharmony_ci            && self.ty == other.ty && self.expr == other.expr
1153fad3a1d3Sopenharmony_ci    }
1154fad3a1d3Sopenharmony_ci}
1155fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1156fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1157fad3a1d3Sopenharmony_ciimpl Eq for ItemStruct {}
1158fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1159fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1160fad3a1d3Sopenharmony_ciimpl PartialEq for ItemStruct {
1161fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1162fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.ident == other.ident
1163fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.fields == other.fields
1164fad3a1d3Sopenharmony_ci            && self.semi_token == other.semi_token
1165fad3a1d3Sopenharmony_ci    }
1166fad3a1d3Sopenharmony_ci}
1167fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1168fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1169fad3a1d3Sopenharmony_ciimpl Eq for ItemTrait {}
1170fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1171fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1172fad3a1d3Sopenharmony_ciimpl PartialEq for ItemTrait {
1173fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1174fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis
1175fad3a1d3Sopenharmony_ci            && self.unsafety == other.unsafety && self.auto_token == other.auto_token
1176fad3a1d3Sopenharmony_ci            && self.restriction == other.restriction && self.ident == other.ident
1177fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.colon_token == other.colon_token
1178fad3a1d3Sopenharmony_ci            && self.supertraits == other.supertraits && self.items == other.items
1179fad3a1d3Sopenharmony_ci    }
1180fad3a1d3Sopenharmony_ci}
1181fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1182fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1183fad3a1d3Sopenharmony_ciimpl Eq for ItemTraitAlias {}
1184fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1185fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1186fad3a1d3Sopenharmony_ciimpl PartialEq for ItemTraitAlias {
1187fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1188fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.ident == other.ident
1189fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.bounds == other.bounds
1190fad3a1d3Sopenharmony_ci    }
1191fad3a1d3Sopenharmony_ci}
1192fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1193fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1194fad3a1d3Sopenharmony_ciimpl Eq for ItemType {}
1195fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1196fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1197fad3a1d3Sopenharmony_ciimpl PartialEq for ItemType {
1198fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1199fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.ident == other.ident
1200fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.ty == other.ty
1201fad3a1d3Sopenharmony_ci    }
1202fad3a1d3Sopenharmony_ci}
1203fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1204fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1205fad3a1d3Sopenharmony_ciimpl Eq for ItemUnion {}
1206fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1207fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1208fad3a1d3Sopenharmony_ciimpl PartialEq for ItemUnion {
1209fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1210fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis && self.ident == other.ident
1211fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.fields == other.fields
1212fad3a1d3Sopenharmony_ci    }
1213fad3a1d3Sopenharmony_ci}
1214fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1215fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1216fad3a1d3Sopenharmony_ciimpl Eq for ItemUse {}
1217fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1218fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1219fad3a1d3Sopenharmony_ciimpl PartialEq for ItemUse {
1220fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1221fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.vis == other.vis
1222fad3a1d3Sopenharmony_ci            && self.leading_colon == other.leading_colon && self.tree == other.tree
1223fad3a1d3Sopenharmony_ci    }
1224fad3a1d3Sopenharmony_ci}
1225fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1226fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1227fad3a1d3Sopenharmony_ciimpl Eq for Label {}
1228fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1229fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1230fad3a1d3Sopenharmony_ciimpl PartialEq for Label {
1231fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1232fad3a1d3Sopenharmony_ci        self.name == other.name
1233fad3a1d3Sopenharmony_ci    }
1234fad3a1d3Sopenharmony_ci}
1235fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1236fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1237fad3a1d3Sopenharmony_ciimpl Eq for LifetimeParam {}
1238fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1239fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1240fad3a1d3Sopenharmony_ciimpl PartialEq for LifetimeParam {
1241fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1242fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.lifetime == other.lifetime
1243fad3a1d3Sopenharmony_ci            && self.colon_token == other.colon_token && self.bounds == other.bounds
1244fad3a1d3Sopenharmony_ci    }
1245fad3a1d3Sopenharmony_ci}
1246fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1247fad3a1d3Sopenharmony_ciimpl Eq for Lit {}
1248fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1249fad3a1d3Sopenharmony_ciimpl PartialEq for Lit {
1250fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1251fad3a1d3Sopenharmony_ci        match (self, other) {
1252fad3a1d3Sopenharmony_ci            (Lit::Str(self0), Lit::Str(other0)) => self0 == other0,
1253fad3a1d3Sopenharmony_ci            (Lit::ByteStr(self0), Lit::ByteStr(other0)) => self0 == other0,
1254fad3a1d3Sopenharmony_ci            (Lit::Byte(self0), Lit::Byte(other0)) => self0 == other0,
1255fad3a1d3Sopenharmony_ci            (Lit::Char(self0), Lit::Char(other0)) => self0 == other0,
1256fad3a1d3Sopenharmony_ci            (Lit::Int(self0), Lit::Int(other0)) => self0 == other0,
1257fad3a1d3Sopenharmony_ci            (Lit::Float(self0), Lit::Float(other0)) => self0 == other0,
1258fad3a1d3Sopenharmony_ci            (Lit::Bool(self0), Lit::Bool(other0)) => self0 == other0,
1259fad3a1d3Sopenharmony_ci            (Lit::Verbatim(self0), Lit::Verbatim(other0)) => {
1260fad3a1d3Sopenharmony_ci                self0.to_string() == other0.to_string()
1261fad3a1d3Sopenharmony_ci            }
1262fad3a1d3Sopenharmony_ci            _ => false,
1263fad3a1d3Sopenharmony_ci        }
1264fad3a1d3Sopenharmony_ci    }
1265fad3a1d3Sopenharmony_ci}
1266fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1267fad3a1d3Sopenharmony_ciimpl Eq for LitBool {}
1268fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1269fad3a1d3Sopenharmony_ciimpl PartialEq for LitBool {
1270fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1271fad3a1d3Sopenharmony_ci        self.value == other.value
1272fad3a1d3Sopenharmony_ci    }
1273fad3a1d3Sopenharmony_ci}
1274fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1275fad3a1d3Sopenharmony_ciimpl Eq for LitByte {}
1276fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1277fad3a1d3Sopenharmony_ciimpl Eq for LitByteStr {}
1278fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1279fad3a1d3Sopenharmony_ciimpl Eq for LitChar {}
1280fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1281fad3a1d3Sopenharmony_ciimpl Eq for LitFloat {}
1282fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1283fad3a1d3Sopenharmony_ciimpl Eq for LitInt {}
1284fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1285fad3a1d3Sopenharmony_ciimpl Eq for LitStr {}
1286fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1287fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1288fad3a1d3Sopenharmony_ciimpl Eq for Local {}
1289fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1290fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1291fad3a1d3Sopenharmony_ciimpl PartialEq for Local {
1292fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1293fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.pat == other.pat && self.init == other.init
1294fad3a1d3Sopenharmony_ci    }
1295fad3a1d3Sopenharmony_ci}
1296fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1297fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1298fad3a1d3Sopenharmony_ciimpl Eq for LocalInit {}
1299fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1300fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1301fad3a1d3Sopenharmony_ciimpl PartialEq for LocalInit {
1302fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1303fad3a1d3Sopenharmony_ci        self.expr == other.expr && self.diverge == other.diverge
1304fad3a1d3Sopenharmony_ci    }
1305fad3a1d3Sopenharmony_ci}
1306fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1307fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1308fad3a1d3Sopenharmony_ciimpl Eq for Macro {}
1309fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1310fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1311fad3a1d3Sopenharmony_ciimpl PartialEq for Macro {
1312fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1313fad3a1d3Sopenharmony_ci        self.path == other.path && self.delimiter == other.delimiter
1314fad3a1d3Sopenharmony_ci            && TokenStreamHelper(&self.tokens) == TokenStreamHelper(&other.tokens)
1315fad3a1d3Sopenharmony_ci    }
1316fad3a1d3Sopenharmony_ci}
1317fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1318fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1319fad3a1d3Sopenharmony_ciimpl Eq for MacroDelimiter {}
1320fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1321fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1322fad3a1d3Sopenharmony_ciimpl PartialEq for MacroDelimiter {
1323fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1324fad3a1d3Sopenharmony_ci        match (self, other) {
1325fad3a1d3Sopenharmony_ci            (MacroDelimiter::Paren(_), MacroDelimiter::Paren(_)) => true,
1326fad3a1d3Sopenharmony_ci            (MacroDelimiter::Brace(_), MacroDelimiter::Brace(_)) => true,
1327fad3a1d3Sopenharmony_ci            (MacroDelimiter::Bracket(_), MacroDelimiter::Bracket(_)) => true,
1328fad3a1d3Sopenharmony_ci            _ => false,
1329fad3a1d3Sopenharmony_ci        }
1330fad3a1d3Sopenharmony_ci    }
1331fad3a1d3Sopenharmony_ci}
1332fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1333fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1334fad3a1d3Sopenharmony_ciimpl Eq for Meta {}
1335fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1336fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1337fad3a1d3Sopenharmony_ciimpl PartialEq for Meta {
1338fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1339fad3a1d3Sopenharmony_ci        match (self, other) {
1340fad3a1d3Sopenharmony_ci            (Meta::Path(self0), Meta::Path(other0)) => self0 == other0,
1341fad3a1d3Sopenharmony_ci            (Meta::List(self0), Meta::List(other0)) => self0 == other0,
1342fad3a1d3Sopenharmony_ci            (Meta::NameValue(self0), Meta::NameValue(other0)) => self0 == other0,
1343fad3a1d3Sopenharmony_ci            _ => false,
1344fad3a1d3Sopenharmony_ci        }
1345fad3a1d3Sopenharmony_ci    }
1346fad3a1d3Sopenharmony_ci}
1347fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1348fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1349fad3a1d3Sopenharmony_ciimpl Eq for MetaList {}
1350fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1351fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1352fad3a1d3Sopenharmony_ciimpl PartialEq for MetaList {
1353fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1354fad3a1d3Sopenharmony_ci        self.path == other.path && self.delimiter == other.delimiter
1355fad3a1d3Sopenharmony_ci            && TokenStreamHelper(&self.tokens) == TokenStreamHelper(&other.tokens)
1356fad3a1d3Sopenharmony_ci    }
1357fad3a1d3Sopenharmony_ci}
1358fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1359fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1360fad3a1d3Sopenharmony_ciimpl Eq for MetaNameValue {}
1361fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1362fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1363fad3a1d3Sopenharmony_ciimpl PartialEq for MetaNameValue {
1364fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1365fad3a1d3Sopenharmony_ci        self.path == other.path && self.value == other.value
1366fad3a1d3Sopenharmony_ci    }
1367fad3a1d3Sopenharmony_ci}
1368fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1369fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1370fad3a1d3Sopenharmony_ciimpl Eq for ParenthesizedGenericArguments {}
1371fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1372fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1373fad3a1d3Sopenharmony_ciimpl PartialEq for ParenthesizedGenericArguments {
1374fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1375fad3a1d3Sopenharmony_ci        self.inputs == other.inputs && self.output == other.output
1376fad3a1d3Sopenharmony_ci    }
1377fad3a1d3Sopenharmony_ci}
1378fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1379fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1380fad3a1d3Sopenharmony_ciimpl Eq for Pat {}
1381fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1382fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1383fad3a1d3Sopenharmony_ciimpl PartialEq for Pat {
1384fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1385fad3a1d3Sopenharmony_ci        match (self, other) {
1386fad3a1d3Sopenharmony_ci            (Pat::Const(self0), Pat::Const(other0)) => self0 == other0,
1387fad3a1d3Sopenharmony_ci            (Pat::Ident(self0), Pat::Ident(other0)) => self0 == other0,
1388fad3a1d3Sopenharmony_ci            (Pat::Lit(self0), Pat::Lit(other0)) => self0 == other0,
1389fad3a1d3Sopenharmony_ci            (Pat::Macro(self0), Pat::Macro(other0)) => self0 == other0,
1390fad3a1d3Sopenharmony_ci            (Pat::Or(self0), Pat::Or(other0)) => self0 == other0,
1391fad3a1d3Sopenharmony_ci            (Pat::Paren(self0), Pat::Paren(other0)) => self0 == other0,
1392fad3a1d3Sopenharmony_ci            (Pat::Path(self0), Pat::Path(other0)) => self0 == other0,
1393fad3a1d3Sopenharmony_ci            (Pat::Range(self0), Pat::Range(other0)) => self0 == other0,
1394fad3a1d3Sopenharmony_ci            (Pat::Reference(self0), Pat::Reference(other0)) => self0 == other0,
1395fad3a1d3Sopenharmony_ci            (Pat::Rest(self0), Pat::Rest(other0)) => self0 == other0,
1396fad3a1d3Sopenharmony_ci            (Pat::Slice(self0), Pat::Slice(other0)) => self0 == other0,
1397fad3a1d3Sopenharmony_ci            (Pat::Struct(self0), Pat::Struct(other0)) => self0 == other0,
1398fad3a1d3Sopenharmony_ci            (Pat::Tuple(self0), Pat::Tuple(other0)) => self0 == other0,
1399fad3a1d3Sopenharmony_ci            (Pat::TupleStruct(self0), Pat::TupleStruct(other0)) => self0 == other0,
1400fad3a1d3Sopenharmony_ci            (Pat::Type(self0), Pat::Type(other0)) => self0 == other0,
1401fad3a1d3Sopenharmony_ci            (Pat::Verbatim(self0), Pat::Verbatim(other0)) => {
1402fad3a1d3Sopenharmony_ci                TokenStreamHelper(self0) == TokenStreamHelper(other0)
1403fad3a1d3Sopenharmony_ci            }
1404fad3a1d3Sopenharmony_ci            (Pat::Wild(self0), Pat::Wild(other0)) => self0 == other0,
1405fad3a1d3Sopenharmony_ci            _ => false,
1406fad3a1d3Sopenharmony_ci        }
1407fad3a1d3Sopenharmony_ci    }
1408fad3a1d3Sopenharmony_ci}
1409fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1410fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1411fad3a1d3Sopenharmony_ciimpl Eq for PatIdent {}
1412fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1413fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1414fad3a1d3Sopenharmony_ciimpl PartialEq for PatIdent {
1415fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1416fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.by_ref == other.by_ref
1417fad3a1d3Sopenharmony_ci            && self.mutability == other.mutability && self.ident == other.ident
1418fad3a1d3Sopenharmony_ci            && self.subpat == other.subpat
1419fad3a1d3Sopenharmony_ci    }
1420fad3a1d3Sopenharmony_ci}
1421fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1422fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1423fad3a1d3Sopenharmony_ciimpl Eq for PatOr {}
1424fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1425fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1426fad3a1d3Sopenharmony_ciimpl PartialEq for PatOr {
1427fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1428fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.leading_vert == other.leading_vert
1429fad3a1d3Sopenharmony_ci            && self.cases == other.cases
1430fad3a1d3Sopenharmony_ci    }
1431fad3a1d3Sopenharmony_ci}
1432fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1433fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1434fad3a1d3Sopenharmony_ciimpl Eq for PatParen {}
1435fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1436fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1437fad3a1d3Sopenharmony_ciimpl PartialEq for PatParen {
1438fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1439fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.pat == other.pat
1440fad3a1d3Sopenharmony_ci    }
1441fad3a1d3Sopenharmony_ci}
1442fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1443fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1444fad3a1d3Sopenharmony_ciimpl Eq for PatReference {}
1445fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1446fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1447fad3a1d3Sopenharmony_ciimpl PartialEq for PatReference {
1448fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1449fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.mutability == other.mutability
1450fad3a1d3Sopenharmony_ci            && self.pat == other.pat
1451fad3a1d3Sopenharmony_ci    }
1452fad3a1d3Sopenharmony_ci}
1453fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1454fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1455fad3a1d3Sopenharmony_ciimpl Eq for PatRest {}
1456fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1457fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1458fad3a1d3Sopenharmony_ciimpl PartialEq for PatRest {
1459fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1460fad3a1d3Sopenharmony_ci        self.attrs == other.attrs
1461fad3a1d3Sopenharmony_ci    }
1462fad3a1d3Sopenharmony_ci}
1463fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1464fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1465fad3a1d3Sopenharmony_ciimpl Eq for PatSlice {}
1466fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1467fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1468fad3a1d3Sopenharmony_ciimpl PartialEq for PatSlice {
1469fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1470fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.elems == other.elems
1471fad3a1d3Sopenharmony_ci    }
1472fad3a1d3Sopenharmony_ci}
1473fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1474fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1475fad3a1d3Sopenharmony_ciimpl Eq for PatStruct {}
1476fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1477fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1478fad3a1d3Sopenharmony_ciimpl PartialEq for PatStruct {
1479fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1480fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.qself == other.qself && self.path == other.path
1481fad3a1d3Sopenharmony_ci            && self.fields == other.fields && self.rest == other.rest
1482fad3a1d3Sopenharmony_ci    }
1483fad3a1d3Sopenharmony_ci}
1484fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1485fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1486fad3a1d3Sopenharmony_ciimpl Eq for PatTuple {}
1487fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1488fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1489fad3a1d3Sopenharmony_ciimpl PartialEq for PatTuple {
1490fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1491fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.elems == other.elems
1492fad3a1d3Sopenharmony_ci    }
1493fad3a1d3Sopenharmony_ci}
1494fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1495fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1496fad3a1d3Sopenharmony_ciimpl Eq for PatTupleStruct {}
1497fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1498fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1499fad3a1d3Sopenharmony_ciimpl PartialEq for PatTupleStruct {
1500fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1501fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.qself == other.qself && self.path == other.path
1502fad3a1d3Sopenharmony_ci            && self.elems == other.elems
1503fad3a1d3Sopenharmony_ci    }
1504fad3a1d3Sopenharmony_ci}
1505fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1506fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1507fad3a1d3Sopenharmony_ciimpl Eq for PatType {}
1508fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1509fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1510fad3a1d3Sopenharmony_ciimpl PartialEq for PatType {
1511fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1512fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.pat == other.pat && self.ty == other.ty
1513fad3a1d3Sopenharmony_ci    }
1514fad3a1d3Sopenharmony_ci}
1515fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1516fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1517fad3a1d3Sopenharmony_ciimpl Eq for PatWild {}
1518fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1519fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1520fad3a1d3Sopenharmony_ciimpl PartialEq for PatWild {
1521fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1522fad3a1d3Sopenharmony_ci        self.attrs == other.attrs
1523fad3a1d3Sopenharmony_ci    }
1524fad3a1d3Sopenharmony_ci}
1525fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1526fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1527fad3a1d3Sopenharmony_ciimpl Eq for Path {}
1528fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1529fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1530fad3a1d3Sopenharmony_ciimpl PartialEq for Path {
1531fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1532fad3a1d3Sopenharmony_ci        self.leading_colon == other.leading_colon && self.segments == other.segments
1533fad3a1d3Sopenharmony_ci    }
1534fad3a1d3Sopenharmony_ci}
1535fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1536fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1537fad3a1d3Sopenharmony_ciimpl Eq for PathArguments {}
1538fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1539fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1540fad3a1d3Sopenharmony_ciimpl PartialEq for PathArguments {
1541fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1542fad3a1d3Sopenharmony_ci        match (self, other) {
1543fad3a1d3Sopenharmony_ci            (PathArguments::None, PathArguments::None) => true,
1544fad3a1d3Sopenharmony_ci            (
1545fad3a1d3Sopenharmony_ci                PathArguments::AngleBracketed(self0),
1546fad3a1d3Sopenharmony_ci                PathArguments::AngleBracketed(other0),
1547fad3a1d3Sopenharmony_ci            ) => self0 == other0,
1548fad3a1d3Sopenharmony_ci            (
1549fad3a1d3Sopenharmony_ci                PathArguments::Parenthesized(self0),
1550fad3a1d3Sopenharmony_ci                PathArguments::Parenthesized(other0),
1551fad3a1d3Sopenharmony_ci            ) => self0 == other0,
1552fad3a1d3Sopenharmony_ci            _ => false,
1553fad3a1d3Sopenharmony_ci        }
1554fad3a1d3Sopenharmony_ci    }
1555fad3a1d3Sopenharmony_ci}
1556fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1557fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1558fad3a1d3Sopenharmony_ciimpl Eq for PathSegment {}
1559fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1560fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1561fad3a1d3Sopenharmony_ciimpl PartialEq for PathSegment {
1562fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1563fad3a1d3Sopenharmony_ci        self.ident == other.ident && self.arguments == other.arguments
1564fad3a1d3Sopenharmony_ci    }
1565fad3a1d3Sopenharmony_ci}
1566fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1567fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1568fad3a1d3Sopenharmony_ciimpl Eq for PredicateLifetime {}
1569fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1570fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1571fad3a1d3Sopenharmony_ciimpl PartialEq for PredicateLifetime {
1572fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1573fad3a1d3Sopenharmony_ci        self.lifetime == other.lifetime && self.bounds == other.bounds
1574fad3a1d3Sopenharmony_ci    }
1575fad3a1d3Sopenharmony_ci}
1576fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1577fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1578fad3a1d3Sopenharmony_ciimpl Eq for PredicateType {}
1579fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1580fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1581fad3a1d3Sopenharmony_ciimpl PartialEq for PredicateType {
1582fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1583fad3a1d3Sopenharmony_ci        self.lifetimes == other.lifetimes && self.bounded_ty == other.bounded_ty
1584fad3a1d3Sopenharmony_ci            && self.bounds == other.bounds
1585fad3a1d3Sopenharmony_ci    }
1586fad3a1d3Sopenharmony_ci}
1587fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1588fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1589fad3a1d3Sopenharmony_ciimpl Eq for QSelf {}
1590fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1591fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1592fad3a1d3Sopenharmony_ciimpl PartialEq for QSelf {
1593fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1594fad3a1d3Sopenharmony_ci        self.ty == other.ty && self.position == other.position
1595fad3a1d3Sopenharmony_ci            && self.as_token == other.as_token
1596fad3a1d3Sopenharmony_ci    }
1597fad3a1d3Sopenharmony_ci}
1598fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1599fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1600fad3a1d3Sopenharmony_ciimpl Eq for RangeLimits {}
1601fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1602fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1603fad3a1d3Sopenharmony_ciimpl PartialEq for RangeLimits {
1604fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1605fad3a1d3Sopenharmony_ci        match (self, other) {
1606fad3a1d3Sopenharmony_ci            (RangeLimits::HalfOpen(_), RangeLimits::HalfOpen(_)) => true,
1607fad3a1d3Sopenharmony_ci            (RangeLimits::Closed(_), RangeLimits::Closed(_)) => true,
1608fad3a1d3Sopenharmony_ci            _ => false,
1609fad3a1d3Sopenharmony_ci        }
1610fad3a1d3Sopenharmony_ci    }
1611fad3a1d3Sopenharmony_ci}
1612fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1613fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1614fad3a1d3Sopenharmony_ciimpl Eq for Receiver {}
1615fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1616fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1617fad3a1d3Sopenharmony_ciimpl PartialEq for Receiver {
1618fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1619fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.reference == other.reference
1620fad3a1d3Sopenharmony_ci            && self.mutability == other.mutability
1621fad3a1d3Sopenharmony_ci            && self.colon_token == other.colon_token && self.ty == other.ty
1622fad3a1d3Sopenharmony_ci    }
1623fad3a1d3Sopenharmony_ci}
1624fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1625fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1626fad3a1d3Sopenharmony_ciimpl Eq for ReturnType {}
1627fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1628fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1629fad3a1d3Sopenharmony_ciimpl PartialEq for ReturnType {
1630fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1631fad3a1d3Sopenharmony_ci        match (self, other) {
1632fad3a1d3Sopenharmony_ci            (ReturnType::Default, ReturnType::Default) => true,
1633fad3a1d3Sopenharmony_ci            (ReturnType::Type(_, self1), ReturnType::Type(_, other1)) => self1 == other1,
1634fad3a1d3Sopenharmony_ci            _ => false,
1635fad3a1d3Sopenharmony_ci        }
1636fad3a1d3Sopenharmony_ci    }
1637fad3a1d3Sopenharmony_ci}
1638fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1639fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1640fad3a1d3Sopenharmony_ciimpl Eq for Signature {}
1641fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1642fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1643fad3a1d3Sopenharmony_ciimpl PartialEq for Signature {
1644fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1645fad3a1d3Sopenharmony_ci        self.constness == other.constness && self.asyncness == other.asyncness
1646fad3a1d3Sopenharmony_ci            && self.unsafety == other.unsafety && self.abi == other.abi
1647fad3a1d3Sopenharmony_ci            && self.ident == other.ident && self.generics == other.generics
1648fad3a1d3Sopenharmony_ci            && self.inputs == other.inputs && self.variadic == other.variadic
1649fad3a1d3Sopenharmony_ci            && self.output == other.output
1650fad3a1d3Sopenharmony_ci    }
1651fad3a1d3Sopenharmony_ci}
1652fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1653fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1654fad3a1d3Sopenharmony_ciimpl Eq for StaticMutability {}
1655fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1656fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1657fad3a1d3Sopenharmony_ciimpl PartialEq for StaticMutability {
1658fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1659fad3a1d3Sopenharmony_ci        match (self, other) {
1660fad3a1d3Sopenharmony_ci            (StaticMutability::Mut(_), StaticMutability::Mut(_)) => true,
1661fad3a1d3Sopenharmony_ci            (StaticMutability::None, StaticMutability::None) => true,
1662fad3a1d3Sopenharmony_ci            _ => false,
1663fad3a1d3Sopenharmony_ci        }
1664fad3a1d3Sopenharmony_ci    }
1665fad3a1d3Sopenharmony_ci}
1666fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1667fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1668fad3a1d3Sopenharmony_ciimpl Eq for Stmt {}
1669fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1670fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1671fad3a1d3Sopenharmony_ciimpl PartialEq for Stmt {
1672fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1673fad3a1d3Sopenharmony_ci        match (self, other) {
1674fad3a1d3Sopenharmony_ci            (Stmt::Local(self0), Stmt::Local(other0)) => self0 == other0,
1675fad3a1d3Sopenharmony_ci            (Stmt::Item(self0), Stmt::Item(other0)) => self0 == other0,
1676fad3a1d3Sopenharmony_ci            (Stmt::Expr(self0, self1), Stmt::Expr(other0, other1)) => {
1677fad3a1d3Sopenharmony_ci                self0 == other0 && self1 == other1
1678fad3a1d3Sopenharmony_ci            }
1679fad3a1d3Sopenharmony_ci            (Stmt::Macro(self0), Stmt::Macro(other0)) => self0 == other0,
1680fad3a1d3Sopenharmony_ci            _ => false,
1681fad3a1d3Sopenharmony_ci        }
1682fad3a1d3Sopenharmony_ci    }
1683fad3a1d3Sopenharmony_ci}
1684fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1685fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1686fad3a1d3Sopenharmony_ciimpl Eq for StmtMacro {}
1687fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1688fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1689fad3a1d3Sopenharmony_ciimpl PartialEq for StmtMacro {
1690fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1691fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.mac == other.mac
1692fad3a1d3Sopenharmony_ci            && self.semi_token == other.semi_token
1693fad3a1d3Sopenharmony_ci    }
1694fad3a1d3Sopenharmony_ci}
1695fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1696fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1697fad3a1d3Sopenharmony_ciimpl Eq for TraitBound {}
1698fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1699fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1700fad3a1d3Sopenharmony_ciimpl PartialEq for TraitBound {
1701fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1702fad3a1d3Sopenharmony_ci        self.paren_token == other.paren_token && self.modifier == other.modifier
1703fad3a1d3Sopenharmony_ci            && self.lifetimes == other.lifetimes && self.path == other.path
1704fad3a1d3Sopenharmony_ci    }
1705fad3a1d3Sopenharmony_ci}
1706fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1707fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1708fad3a1d3Sopenharmony_ciimpl Eq for TraitBoundModifier {}
1709fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1710fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1711fad3a1d3Sopenharmony_ciimpl PartialEq for TraitBoundModifier {
1712fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1713fad3a1d3Sopenharmony_ci        match (self, other) {
1714fad3a1d3Sopenharmony_ci            (TraitBoundModifier::None, TraitBoundModifier::None) => true,
1715fad3a1d3Sopenharmony_ci            (TraitBoundModifier::Maybe(_), TraitBoundModifier::Maybe(_)) => true,
1716fad3a1d3Sopenharmony_ci            _ => false,
1717fad3a1d3Sopenharmony_ci        }
1718fad3a1d3Sopenharmony_ci    }
1719fad3a1d3Sopenharmony_ci}
1720fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1721fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1722fad3a1d3Sopenharmony_ciimpl Eq for TraitItem {}
1723fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1724fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1725fad3a1d3Sopenharmony_ciimpl PartialEq for TraitItem {
1726fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1727fad3a1d3Sopenharmony_ci        match (self, other) {
1728fad3a1d3Sopenharmony_ci            (TraitItem::Const(self0), TraitItem::Const(other0)) => self0 == other0,
1729fad3a1d3Sopenharmony_ci            (TraitItem::Fn(self0), TraitItem::Fn(other0)) => self0 == other0,
1730fad3a1d3Sopenharmony_ci            (TraitItem::Type(self0), TraitItem::Type(other0)) => self0 == other0,
1731fad3a1d3Sopenharmony_ci            (TraitItem::Macro(self0), TraitItem::Macro(other0)) => self0 == other0,
1732fad3a1d3Sopenharmony_ci            (TraitItem::Verbatim(self0), TraitItem::Verbatim(other0)) => {
1733fad3a1d3Sopenharmony_ci                TokenStreamHelper(self0) == TokenStreamHelper(other0)
1734fad3a1d3Sopenharmony_ci            }
1735fad3a1d3Sopenharmony_ci            _ => false,
1736fad3a1d3Sopenharmony_ci        }
1737fad3a1d3Sopenharmony_ci    }
1738fad3a1d3Sopenharmony_ci}
1739fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1740fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1741fad3a1d3Sopenharmony_ciimpl Eq for TraitItemConst {}
1742fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1743fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1744fad3a1d3Sopenharmony_ciimpl PartialEq for TraitItemConst {
1745fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1746fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.ident == other.ident
1747fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.ty == other.ty
1748fad3a1d3Sopenharmony_ci            && self.default == other.default
1749fad3a1d3Sopenharmony_ci    }
1750fad3a1d3Sopenharmony_ci}
1751fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1752fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1753fad3a1d3Sopenharmony_ciimpl Eq for TraitItemFn {}
1754fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1755fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1756fad3a1d3Sopenharmony_ciimpl PartialEq for TraitItemFn {
1757fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1758fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.sig == other.sig
1759fad3a1d3Sopenharmony_ci            && self.default == other.default && self.semi_token == other.semi_token
1760fad3a1d3Sopenharmony_ci    }
1761fad3a1d3Sopenharmony_ci}
1762fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1763fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1764fad3a1d3Sopenharmony_ciimpl Eq for TraitItemMacro {}
1765fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1766fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1767fad3a1d3Sopenharmony_ciimpl PartialEq for TraitItemMacro {
1768fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1769fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.mac == other.mac
1770fad3a1d3Sopenharmony_ci            && self.semi_token == other.semi_token
1771fad3a1d3Sopenharmony_ci    }
1772fad3a1d3Sopenharmony_ci}
1773fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1774fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1775fad3a1d3Sopenharmony_ciimpl Eq for TraitItemType {}
1776fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
1777fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1778fad3a1d3Sopenharmony_ciimpl PartialEq for TraitItemType {
1779fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1780fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.ident == other.ident
1781fad3a1d3Sopenharmony_ci            && self.generics == other.generics && self.colon_token == other.colon_token
1782fad3a1d3Sopenharmony_ci            && self.bounds == other.bounds && self.default == other.default
1783fad3a1d3Sopenharmony_ci    }
1784fad3a1d3Sopenharmony_ci}
1785fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1786fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1787fad3a1d3Sopenharmony_ciimpl Eq for Type {}
1788fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1789fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1790fad3a1d3Sopenharmony_ciimpl PartialEq for Type {
1791fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1792fad3a1d3Sopenharmony_ci        match (self, other) {
1793fad3a1d3Sopenharmony_ci            (Type::Array(self0), Type::Array(other0)) => self0 == other0,
1794fad3a1d3Sopenharmony_ci            (Type::BareFn(self0), Type::BareFn(other0)) => self0 == other0,
1795fad3a1d3Sopenharmony_ci            (Type::Group(self0), Type::Group(other0)) => self0 == other0,
1796fad3a1d3Sopenharmony_ci            (Type::ImplTrait(self0), Type::ImplTrait(other0)) => self0 == other0,
1797fad3a1d3Sopenharmony_ci            (Type::Infer(self0), Type::Infer(other0)) => self0 == other0,
1798fad3a1d3Sopenharmony_ci            (Type::Macro(self0), Type::Macro(other0)) => self0 == other0,
1799fad3a1d3Sopenharmony_ci            (Type::Never(self0), Type::Never(other0)) => self0 == other0,
1800fad3a1d3Sopenharmony_ci            (Type::Paren(self0), Type::Paren(other0)) => self0 == other0,
1801fad3a1d3Sopenharmony_ci            (Type::Path(self0), Type::Path(other0)) => self0 == other0,
1802fad3a1d3Sopenharmony_ci            (Type::Ptr(self0), Type::Ptr(other0)) => self0 == other0,
1803fad3a1d3Sopenharmony_ci            (Type::Reference(self0), Type::Reference(other0)) => self0 == other0,
1804fad3a1d3Sopenharmony_ci            (Type::Slice(self0), Type::Slice(other0)) => self0 == other0,
1805fad3a1d3Sopenharmony_ci            (Type::TraitObject(self0), Type::TraitObject(other0)) => self0 == other0,
1806fad3a1d3Sopenharmony_ci            (Type::Tuple(self0), Type::Tuple(other0)) => self0 == other0,
1807fad3a1d3Sopenharmony_ci            (Type::Verbatim(self0), Type::Verbatim(other0)) => {
1808fad3a1d3Sopenharmony_ci                TokenStreamHelper(self0) == TokenStreamHelper(other0)
1809fad3a1d3Sopenharmony_ci            }
1810fad3a1d3Sopenharmony_ci            _ => false,
1811fad3a1d3Sopenharmony_ci        }
1812fad3a1d3Sopenharmony_ci    }
1813fad3a1d3Sopenharmony_ci}
1814fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1815fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1816fad3a1d3Sopenharmony_ciimpl Eq for TypeArray {}
1817fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1818fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1819fad3a1d3Sopenharmony_ciimpl PartialEq for TypeArray {
1820fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1821fad3a1d3Sopenharmony_ci        self.elem == other.elem && self.len == other.len
1822fad3a1d3Sopenharmony_ci    }
1823fad3a1d3Sopenharmony_ci}
1824fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1825fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1826fad3a1d3Sopenharmony_ciimpl Eq for TypeBareFn {}
1827fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1828fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1829fad3a1d3Sopenharmony_ciimpl PartialEq for TypeBareFn {
1830fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1831fad3a1d3Sopenharmony_ci        self.lifetimes == other.lifetimes && self.unsafety == other.unsafety
1832fad3a1d3Sopenharmony_ci            && self.abi == other.abi && self.inputs == other.inputs
1833fad3a1d3Sopenharmony_ci            && self.variadic == other.variadic && self.output == other.output
1834fad3a1d3Sopenharmony_ci    }
1835fad3a1d3Sopenharmony_ci}
1836fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1837fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1838fad3a1d3Sopenharmony_ciimpl Eq for TypeGroup {}
1839fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1840fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1841fad3a1d3Sopenharmony_ciimpl PartialEq for TypeGroup {
1842fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1843fad3a1d3Sopenharmony_ci        self.elem == other.elem
1844fad3a1d3Sopenharmony_ci    }
1845fad3a1d3Sopenharmony_ci}
1846fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1847fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1848fad3a1d3Sopenharmony_ciimpl Eq for TypeImplTrait {}
1849fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1850fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1851fad3a1d3Sopenharmony_ciimpl PartialEq for TypeImplTrait {
1852fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1853fad3a1d3Sopenharmony_ci        self.bounds == other.bounds
1854fad3a1d3Sopenharmony_ci    }
1855fad3a1d3Sopenharmony_ci}
1856fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1857fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1858fad3a1d3Sopenharmony_ciimpl Eq for TypeInfer {}
1859fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1860fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1861fad3a1d3Sopenharmony_ciimpl PartialEq for TypeInfer {
1862fad3a1d3Sopenharmony_ci    fn eq(&self, _other: &Self) -> bool {
1863fad3a1d3Sopenharmony_ci        true
1864fad3a1d3Sopenharmony_ci    }
1865fad3a1d3Sopenharmony_ci}
1866fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1867fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1868fad3a1d3Sopenharmony_ciimpl Eq for TypeMacro {}
1869fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1870fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1871fad3a1d3Sopenharmony_ciimpl PartialEq for TypeMacro {
1872fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1873fad3a1d3Sopenharmony_ci        self.mac == other.mac
1874fad3a1d3Sopenharmony_ci    }
1875fad3a1d3Sopenharmony_ci}
1876fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1877fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1878fad3a1d3Sopenharmony_ciimpl Eq for TypeNever {}
1879fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1880fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1881fad3a1d3Sopenharmony_ciimpl PartialEq for TypeNever {
1882fad3a1d3Sopenharmony_ci    fn eq(&self, _other: &Self) -> bool {
1883fad3a1d3Sopenharmony_ci        true
1884fad3a1d3Sopenharmony_ci    }
1885fad3a1d3Sopenharmony_ci}
1886fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1887fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1888fad3a1d3Sopenharmony_ciimpl Eq for TypeParam {}
1889fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1890fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1891fad3a1d3Sopenharmony_ciimpl PartialEq for TypeParam {
1892fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1893fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.ident == other.ident
1894fad3a1d3Sopenharmony_ci            && self.colon_token == other.colon_token && self.bounds == other.bounds
1895fad3a1d3Sopenharmony_ci            && self.eq_token == other.eq_token && self.default == other.default
1896fad3a1d3Sopenharmony_ci    }
1897fad3a1d3Sopenharmony_ci}
1898fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1899fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1900fad3a1d3Sopenharmony_ciimpl Eq for TypeParamBound {}
1901fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1902fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1903fad3a1d3Sopenharmony_ciimpl PartialEq for TypeParamBound {
1904fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1905fad3a1d3Sopenharmony_ci        match (self, other) {
1906fad3a1d3Sopenharmony_ci            (TypeParamBound::Trait(self0), TypeParamBound::Trait(other0)) => {
1907fad3a1d3Sopenharmony_ci                self0 == other0
1908fad3a1d3Sopenharmony_ci            }
1909fad3a1d3Sopenharmony_ci            (TypeParamBound::Lifetime(self0), TypeParamBound::Lifetime(other0)) => {
1910fad3a1d3Sopenharmony_ci                self0 == other0
1911fad3a1d3Sopenharmony_ci            }
1912fad3a1d3Sopenharmony_ci            (TypeParamBound::Verbatim(self0), TypeParamBound::Verbatim(other0)) => {
1913fad3a1d3Sopenharmony_ci                TokenStreamHelper(self0) == TokenStreamHelper(other0)
1914fad3a1d3Sopenharmony_ci            }
1915fad3a1d3Sopenharmony_ci            _ => false,
1916fad3a1d3Sopenharmony_ci        }
1917fad3a1d3Sopenharmony_ci    }
1918fad3a1d3Sopenharmony_ci}
1919fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1920fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1921fad3a1d3Sopenharmony_ciimpl Eq for TypeParen {}
1922fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1923fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1924fad3a1d3Sopenharmony_ciimpl PartialEq for TypeParen {
1925fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1926fad3a1d3Sopenharmony_ci        self.elem == other.elem
1927fad3a1d3Sopenharmony_ci    }
1928fad3a1d3Sopenharmony_ci}
1929fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1930fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1931fad3a1d3Sopenharmony_ciimpl Eq for TypePath {}
1932fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1933fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1934fad3a1d3Sopenharmony_ciimpl PartialEq for TypePath {
1935fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1936fad3a1d3Sopenharmony_ci        self.qself == other.qself && self.path == other.path
1937fad3a1d3Sopenharmony_ci    }
1938fad3a1d3Sopenharmony_ci}
1939fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1940fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1941fad3a1d3Sopenharmony_ciimpl Eq for TypePtr {}
1942fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1943fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1944fad3a1d3Sopenharmony_ciimpl PartialEq for TypePtr {
1945fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1946fad3a1d3Sopenharmony_ci        self.const_token == other.const_token && self.mutability == other.mutability
1947fad3a1d3Sopenharmony_ci            && self.elem == other.elem
1948fad3a1d3Sopenharmony_ci    }
1949fad3a1d3Sopenharmony_ci}
1950fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1951fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1952fad3a1d3Sopenharmony_ciimpl Eq for TypeReference {}
1953fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1954fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1955fad3a1d3Sopenharmony_ciimpl PartialEq for TypeReference {
1956fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1957fad3a1d3Sopenharmony_ci        self.lifetime == other.lifetime && self.mutability == other.mutability
1958fad3a1d3Sopenharmony_ci            && self.elem == other.elem
1959fad3a1d3Sopenharmony_ci    }
1960fad3a1d3Sopenharmony_ci}
1961fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1962fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1963fad3a1d3Sopenharmony_ciimpl Eq for TypeSlice {}
1964fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1965fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1966fad3a1d3Sopenharmony_ciimpl PartialEq for TypeSlice {
1967fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1968fad3a1d3Sopenharmony_ci        self.elem == other.elem
1969fad3a1d3Sopenharmony_ci    }
1970fad3a1d3Sopenharmony_ci}
1971fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1972fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1973fad3a1d3Sopenharmony_ciimpl Eq for TypeTraitObject {}
1974fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1975fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1976fad3a1d3Sopenharmony_ciimpl PartialEq for TypeTraitObject {
1977fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1978fad3a1d3Sopenharmony_ci        self.dyn_token == other.dyn_token && self.bounds == other.bounds
1979fad3a1d3Sopenharmony_ci    }
1980fad3a1d3Sopenharmony_ci}
1981fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1982fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1983fad3a1d3Sopenharmony_ciimpl Eq for TypeTuple {}
1984fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1985fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1986fad3a1d3Sopenharmony_ciimpl PartialEq for TypeTuple {
1987fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1988fad3a1d3Sopenharmony_ci        self.elems == other.elems
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 Eq for UnOp {}
1994fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
1995fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
1996fad3a1d3Sopenharmony_ciimpl PartialEq for UnOp {
1997fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
1998fad3a1d3Sopenharmony_ci        match (self, other) {
1999fad3a1d3Sopenharmony_ci            (UnOp::Deref(_), UnOp::Deref(_)) => true,
2000fad3a1d3Sopenharmony_ci            (UnOp::Not(_), UnOp::Not(_)) => true,
2001fad3a1d3Sopenharmony_ci            (UnOp::Neg(_), UnOp::Neg(_)) => true,
2002fad3a1d3Sopenharmony_ci            _ => false,
2003fad3a1d3Sopenharmony_ci        }
2004fad3a1d3Sopenharmony_ci    }
2005fad3a1d3Sopenharmony_ci}
2006fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2007fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2008fad3a1d3Sopenharmony_ciimpl Eq for UseGlob {}
2009fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2010fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2011fad3a1d3Sopenharmony_ciimpl PartialEq for UseGlob {
2012fad3a1d3Sopenharmony_ci    fn eq(&self, _other: &Self) -> bool {
2013fad3a1d3Sopenharmony_ci        true
2014fad3a1d3Sopenharmony_ci    }
2015fad3a1d3Sopenharmony_ci}
2016fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2017fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2018fad3a1d3Sopenharmony_ciimpl Eq for UseGroup {}
2019fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2020fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2021fad3a1d3Sopenharmony_ciimpl PartialEq for UseGroup {
2022fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2023fad3a1d3Sopenharmony_ci        self.items == other.items
2024fad3a1d3Sopenharmony_ci    }
2025fad3a1d3Sopenharmony_ci}
2026fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2027fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2028fad3a1d3Sopenharmony_ciimpl Eq for UseName {}
2029fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2030fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2031fad3a1d3Sopenharmony_ciimpl PartialEq for UseName {
2032fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2033fad3a1d3Sopenharmony_ci        self.ident == other.ident
2034fad3a1d3Sopenharmony_ci    }
2035fad3a1d3Sopenharmony_ci}
2036fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2037fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2038fad3a1d3Sopenharmony_ciimpl Eq for UsePath {}
2039fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2040fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2041fad3a1d3Sopenharmony_ciimpl PartialEq for UsePath {
2042fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2043fad3a1d3Sopenharmony_ci        self.ident == other.ident && self.tree == other.tree
2044fad3a1d3Sopenharmony_ci    }
2045fad3a1d3Sopenharmony_ci}
2046fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2047fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2048fad3a1d3Sopenharmony_ciimpl Eq for UseRename {}
2049fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2050fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2051fad3a1d3Sopenharmony_ciimpl PartialEq for UseRename {
2052fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2053fad3a1d3Sopenharmony_ci        self.ident == other.ident && self.rename == other.rename
2054fad3a1d3Sopenharmony_ci    }
2055fad3a1d3Sopenharmony_ci}
2056fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2057fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2058fad3a1d3Sopenharmony_ciimpl Eq for UseTree {}
2059fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2060fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2061fad3a1d3Sopenharmony_ciimpl PartialEq for UseTree {
2062fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2063fad3a1d3Sopenharmony_ci        match (self, other) {
2064fad3a1d3Sopenharmony_ci            (UseTree::Path(self0), UseTree::Path(other0)) => self0 == other0,
2065fad3a1d3Sopenharmony_ci            (UseTree::Name(self0), UseTree::Name(other0)) => self0 == other0,
2066fad3a1d3Sopenharmony_ci            (UseTree::Rename(self0), UseTree::Rename(other0)) => self0 == other0,
2067fad3a1d3Sopenharmony_ci            (UseTree::Glob(self0), UseTree::Glob(other0)) => self0 == other0,
2068fad3a1d3Sopenharmony_ci            (UseTree::Group(self0), UseTree::Group(other0)) => self0 == other0,
2069fad3a1d3Sopenharmony_ci            _ => false,
2070fad3a1d3Sopenharmony_ci        }
2071fad3a1d3Sopenharmony_ci    }
2072fad3a1d3Sopenharmony_ci}
2073fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2074fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2075fad3a1d3Sopenharmony_ciimpl Eq for Variadic {}
2076fad3a1d3Sopenharmony_ci#[cfg(feature = "full")]
2077fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2078fad3a1d3Sopenharmony_ciimpl PartialEq for Variadic {
2079fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2080fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.pat == other.pat && self.comma == other.comma
2081fad3a1d3Sopenharmony_ci    }
2082fad3a1d3Sopenharmony_ci}
2083fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2084fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2085fad3a1d3Sopenharmony_ciimpl Eq for Variant {}
2086fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2087fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2088fad3a1d3Sopenharmony_ciimpl PartialEq for Variant {
2089fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2090fad3a1d3Sopenharmony_ci        self.attrs == other.attrs && self.ident == other.ident
2091fad3a1d3Sopenharmony_ci            && self.fields == other.fields && self.discriminant == other.discriminant
2092fad3a1d3Sopenharmony_ci    }
2093fad3a1d3Sopenharmony_ci}
2094fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2095fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2096fad3a1d3Sopenharmony_ciimpl Eq for VisRestricted {}
2097fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2098fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2099fad3a1d3Sopenharmony_ciimpl PartialEq for VisRestricted {
2100fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2101fad3a1d3Sopenharmony_ci        self.in_token == other.in_token && self.path == other.path
2102fad3a1d3Sopenharmony_ci    }
2103fad3a1d3Sopenharmony_ci}
2104fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2105fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2106fad3a1d3Sopenharmony_ciimpl Eq for Visibility {}
2107fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2108fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2109fad3a1d3Sopenharmony_ciimpl PartialEq for Visibility {
2110fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2111fad3a1d3Sopenharmony_ci        match (self, other) {
2112fad3a1d3Sopenharmony_ci            (Visibility::Public(_), Visibility::Public(_)) => true,
2113fad3a1d3Sopenharmony_ci            (Visibility::Restricted(self0), Visibility::Restricted(other0)) => {
2114fad3a1d3Sopenharmony_ci                self0 == other0
2115fad3a1d3Sopenharmony_ci            }
2116fad3a1d3Sopenharmony_ci            (Visibility::Inherited, Visibility::Inherited) => true,
2117fad3a1d3Sopenharmony_ci            _ => false,
2118fad3a1d3Sopenharmony_ci        }
2119fad3a1d3Sopenharmony_ci    }
2120fad3a1d3Sopenharmony_ci}
2121fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2122fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2123fad3a1d3Sopenharmony_ciimpl Eq for WhereClause {}
2124fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2125fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2126fad3a1d3Sopenharmony_ciimpl PartialEq for WhereClause {
2127fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2128fad3a1d3Sopenharmony_ci        self.predicates == other.predicates
2129fad3a1d3Sopenharmony_ci    }
2130fad3a1d3Sopenharmony_ci}
2131fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2132fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2133fad3a1d3Sopenharmony_ciimpl Eq for WherePredicate {}
2134fad3a1d3Sopenharmony_ci#[cfg(any(feature = "derive", feature = "full"))]
2135fad3a1d3Sopenharmony_ci#[cfg_attr(doc_cfg, doc(cfg(feature = "extra-traits")))]
2136fad3a1d3Sopenharmony_ciimpl PartialEq for WherePredicate {
2137fad3a1d3Sopenharmony_ci    fn eq(&self, other: &Self) -> bool {
2138fad3a1d3Sopenharmony_ci        match (self, other) {
2139fad3a1d3Sopenharmony_ci            (WherePredicate::Lifetime(self0), WherePredicate::Lifetime(other0)) => {
2140fad3a1d3Sopenharmony_ci                self0 == other0
2141fad3a1d3Sopenharmony_ci            }
2142fad3a1d3Sopenharmony_ci            (WherePredicate::Type(self0), WherePredicate::Type(other0)) => {
2143fad3a1d3Sopenharmony_ci                self0 == other0
2144fad3a1d3Sopenharmony_ci            }
2145fad3a1d3Sopenharmony_ci            _ => false,
2146fad3a1d3Sopenharmony_ci        }
2147fad3a1d3Sopenharmony_ci    }
2148fad3a1d3Sopenharmony_ci}
2149