diff options
author | robojumper <[email protected]> | 2019-04-05 21:34:45 +0100 |
---|---|---|
committer | robojumper <[email protected]> | 2019-04-06 00:07:35 +0100 |
commit | ca40ca93a55ffa08d3e699fc877e7e189b526c66 (patch) | |
tree | 8b56a9250db5c713da3fc14758c0583bbb029638 /crates/ra_hir/src/expr.rs | |
parent | 0372eca5b2e6dade5132a08db46992ca73a25188 (diff) |
Parse and infer tuple indices
Diffstat (limited to 'crates/ra_hir/src/expr.rs')
-rw-r--r-- | crates/ra_hir/src/expr.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/crates/ra_hir/src/expr.rs b/crates/ra_hir/src/expr.rs index b2a237ece..cfa824458 100644 --- a/crates/ra_hir/src/expr.rs +++ b/crates/ra_hir/src/expr.rs | |||
@@ -671,7 +671,10 @@ impl ExprCollector { | |||
671 | } | 671 | } |
672 | ast::ExprKind::FieldExpr(e) => { | 672 | ast::ExprKind::FieldExpr(e) => { |
673 | let expr = self.collect_expr_opt(e.expr()); | 673 | let expr = self.collect_expr_opt(e.expr()); |
674 | let name = e.name_ref().map(|nr| nr.as_name()).unwrap_or_else(Name::missing); | 674 | let name = match e.field_access() { |
675 | Some(kind) => kind.as_name(), | ||
676 | _ => Name::missing(), | ||
677 | }; | ||
675 | self.alloc_expr(Expr::Field { expr, name }, syntax_ptr) | 678 | self.alloc_expr(Expr::Field { expr, name }, syntax_ptr) |
676 | } | 679 | } |
677 | ast::ExprKind::TryExpr(e) => { | 680 | ast::ExprKind::TryExpr(e) => { |