diff options
Diffstat (limited to 'syntax/impls.rs')
-rw-r--r-- | syntax/impls.rs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/syntax/impls.rs b/syntax/impls.rs index 06d68dc2..36e1f322 100644 --- a/syntax/impls.rs +++ b/syntax/impls.rs @@ -8,12 +8,14 @@ use std::ops::{Deref, DerefMut}; impl PartialEq for Include { fn eq(&self, other: &Self) -> bool { let Include { + cfg: _, path, kind, begin_span: _, end_span: _, } = self; let Include { + cfg: _, path: path2, kind: kind2, begin_span: _, @@ -307,6 +309,7 @@ impl Eq for Signature {} impl PartialEq for Signature { fn eq(&self, other: &Self) -> bool { let Signature { + asyncness, unsafety, fn_token: _, generics: _, @@ -318,6 +321,7 @@ impl PartialEq for Signature { throws_tokens: _, } = self; let Signature { + asyncness: asyncness2, unsafety: unsafety2, fn_token: _, generics: _, @@ -328,13 +332,15 @@ impl PartialEq for Signature { paren_token: _, throws_tokens: _, } = other; - unsafety.is_some() == unsafety2.is_some() + asyncness.is_some() == asyncness2.is_some() + && unsafety.is_some() == unsafety2.is_some() && receiver == receiver2 && ret == ret2 && throws == throws2 && args.len() == args2.len() && args.iter().zip(args2).all(|(arg, arg2)| { let Var { + cfg: _, doc: _, attrs: _, visibility: _, @@ -343,6 +349,7 @@ impl PartialEq for Signature { ty, } = arg; let Var { + cfg: _, doc: _, attrs: _, visibility: _, @@ -358,6 +365,7 @@ impl PartialEq for Signature { impl Hash for Signature { fn hash<H: Hasher>(&self, state: &mut H) { let Signature { + asyncness, unsafety, fn_token: _, generics: _, @@ -368,10 +376,12 @@ impl Hash for Signature { paren_token: _, throws_tokens: _, } = self; + asyncness.is_some().hash(state); unsafety.is_some().hash(state); receiver.hash(state); for arg in args { let Var { + cfg: _, doc: _, attrs: _, visibility: _, |