aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/src/grammar.ron
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2019-08-25 10:47:44 +0100
committerGitHub <[email protected]>2019-08-25 10:47:44 +0100
commit866b41ddd86cbe9c3e8d9cb2896477bab060a044 (patch)
tree2108601228076d62e833b732de52e182b8be4a0b /crates/ra_syntax/src/grammar.ron
parentfdece911fe8e2f3c22760ea22038a6d00cb70dfa (diff)
parentc93903e9c7f64be2edcae0dfe62d8390514658b1 (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_syntax/src/grammar.ron')
-rw-r--r--crates/ra_syntax/src/grammar.ron3
1 files changed, 3 insertions, 0 deletions
diff --git a/crates/ra_syntax/src/grammar.ron b/crates/ra_syntax/src/grammar.ron
index 4659192cd..1836862fe 100644
--- a/crates/ra_syntax/src/grammar.ron
+++ b/crates/ra_syntax/src/grammar.ron
@@ -158,6 +158,7 @@ Grammar(
158 "DYN_TRAIT_TYPE", 158 "DYN_TRAIT_TYPE",
159 159
160 "REF_PAT", 160 "REF_PAT",
161 "BOX_PAT",
161 "BIND_PAT", 162 "BIND_PAT",
162 "PLACEHOLDER_PAT", 163 "PLACEHOLDER_PAT",
163 "PATH_PAT", 164 "PATH_PAT",
@@ -523,6 +524,7 @@ Grammar(
523 ), 524 ),
524 525
525 "RefPat": ( options: [ "Pat" ]), 526 "RefPat": ( options: [ "Pat" ]),
527 "BoxPat": ( options: [ "Pat" ]),
526 "BindPat": ( 528 "BindPat": (
527 options: [ "Pat" ], 529 options: [ "Pat" ],
528 traits: ["NameOwner"] 530 traits: ["NameOwner"]
@@ -552,6 +554,7 @@ Grammar(
552 "Pat": ( 554 "Pat": (
553 enum: [ 555 enum: [
554 "RefPat", 556 "RefPat",
557 "BoxPat",
555 "BindPat", 558 "BindPat",
556 "PlaceholderPat", 559 "PlaceholderPat",
557 "PathPat", 560 "PathPat",