diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2019-08-25 10:47:44 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2019-08-25 10:47:44 +0100 |
commit | 866b41ddd86cbe9c3e8d9cb2896477bab060a044 (patch) | |
tree | 2108601228076d62e833b732de52e182b8be4a0b /crates/ra_hir | |
parent | fdece911fe8e2f3c22760ea22038a6d00cb70dfa (diff) | |
parent | c93903e9c7f64be2edcae0dfe62d8390514658b1 (diff) |
Merge #1733
1733: Parse arbitrarily complex `box` patterns. r=matklad a=ecstatic-morse
This fully resolves the pattern part of #1412 by enabling the parsing of complex `box` patterns such as:
```rust
let box Struct { box i, j: box Inner(box &x) } = todo!();
```
This introduces a new `ast::BoxPat` (in the mold of `ast::RefPat`) that gets translated to `hir::Pat::Missing`.
Co-authored-by: Dylan MacKenzie <[email protected]>
Diffstat (limited to 'crates/ra_hir')
-rw-r--r-- | crates/ra_hir/src/expr.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/crates/ra_hir/src/expr.rs b/crates/ra_hir/src/expr.rs index 9e8584908..7cdc7555c 100644 --- a/crates/ra_hir/src/expr.rs +++ b/crates/ra_hir/src/expr.rs | |||
@@ -1020,6 +1020,7 @@ where | |||
1020 | } | 1020 | } |
1021 | 1021 | ||
1022 | // FIXME: implement | 1022 | // FIXME: implement |
1023 | ast::Pat::BoxPat(_) => Pat::Missing, | ||
1023 | ast::Pat::LiteralPat(_) => Pat::Missing, | 1024 | ast::Pat::LiteralPat(_) => Pat::Missing, |
1024 | ast::Pat::SlicePat(_) | ast::Pat::RangePat(_) => Pat::Missing, | 1025 | ast::Pat::SlicePat(_) | ast::Pat::RangePat(_) => Pat::Missing, |
1025 | }; | 1026 | }; |