diff options
Diffstat (limited to 'crates/syntax/src/ast/node_ext.rs')
-rw-r--r-- | crates/syntax/src/ast/node_ext.rs | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/crates/syntax/src/ast/node_ext.rs b/crates/syntax/src/ast/node_ext.rs index 42a7b9c2a..bdf907a21 100644 --- a/crates/syntax/src/ast/node_ext.rs +++ b/crates/syntax/src/ast/node_ext.rs | |||
@@ -58,10 +58,7 @@ impl From<ast::MacroDef> for Macro { | |||
58 | 58 | ||
59 | impl AstNode for Macro { | 59 | impl AstNode for Macro { |
60 | fn can_cast(kind: SyntaxKind) -> bool { | 60 | fn can_cast(kind: SyntaxKind) -> bool { |
61 | match kind { | 61 | matches!(kind, SyntaxKind::MACRO_RULES | SyntaxKind::MACRO_DEF) |
62 | SyntaxKind::MACRO_RULES | SyntaxKind::MACRO_DEF => true, | ||
63 | _ => false, | ||
64 | } | ||
65 | } | 62 | } |
66 | fn cast(syntax: SyntaxNode) -> Option<Self> { | 63 | fn cast(syntax: SyntaxNode) -> Option<Self> { |
67 | let res = match syntax.kind() { | 64 | let res = match syntax.kind() { |
@@ -462,10 +459,8 @@ impl ast::FieldExpr { | |||
462 | pub fn field_access(&self) -> Option<FieldKind> { | 459 | pub fn field_access(&self) -> Option<FieldKind> { |
463 | if let Some(nr) = self.name_ref() { | 460 | if let Some(nr) = self.name_ref() { |
464 | Some(FieldKind::Name(nr)) | 461 | Some(FieldKind::Name(nr)) |
465 | } else if let Some(tok) = self.index_token() { | ||
466 | Some(FieldKind::Index(tok)) | ||
467 | } else { | 462 | } else { |
468 | None | 463 | self.index_token().map(FieldKind::Index) |
469 | } | 464 | } |
470 | } | 465 | } |
471 | } | 466 | } |
@@ -482,16 +477,10 @@ impl ast::SlicePat { | |||
482 | let prefix = args | 477 | let prefix = args |
483 | .peeking_take_while(|p| match p { | 478 | .peeking_take_while(|p| match p { |
484 | ast::Pat::RestPat(_) => false, | 479 | ast::Pat::RestPat(_) => false, |
485 | ast::Pat::IdentPat(bp) => match bp.pat() { | 480 | ast::Pat::IdentPat(bp) => !matches!(bp.pat(), Some(ast::Pat::RestPat(_))), |
486 | Some(ast::Pat::RestPat(_)) => false, | ||
487 | _ => true, | ||
488 | }, | ||
489 | ast::Pat::RefPat(rp) => match rp.pat() { | 481 | ast::Pat::RefPat(rp) => match rp.pat() { |
490 | Some(ast::Pat::RestPat(_)) => false, | 482 | Some(ast::Pat::RestPat(_)) => false, |
491 | Some(ast::Pat::IdentPat(bp)) => match bp.pat() { | 483 | Some(ast::Pat::IdentPat(bp)) => !matches!(bp.pat(), Some(ast::Pat::RestPat(_))), |
492 | Some(ast::Pat::RestPat(_)) => false, | ||
493 | _ => true, | ||
494 | }, | ||
495 | _ => true, | 484 | _ => true, |
496 | }, | 485 | }, |
497 | _ => true, | 486 | _ => true, |