diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2020-08-27 17:42:37 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2020-08-27 17:42:37 +0100 |
commit | dddc4c6370ab8e7684352302a5ff282673c6e8ec (patch) | |
tree | 07b240aeff385331e1e39cb68b068b5b780ce11b /crates/parser/src/grammar/patterns.rs | |
parent | 6f6580dec764e136148f3fe55c203a9452176bdd (diff) | |
parent | 4b989009e3839cfc6f021d1552a46561cee6cde2 (diff) |
Merge #5899
5899: Add track_env_var to the proc macro server
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <[email protected]>
Diffstat (limited to 'crates/parser/src/grammar/patterns.rs')
-rw-r--r-- | crates/parser/src/grammar/patterns.rs | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/crates/parser/src/grammar/patterns.rs b/crates/parser/src/grammar/patterns.rs index 07b1d6dd5..796f206e1 100644 --- a/crates/parser/src/grammar/patterns.rs +++ b/crates/parser/src/grammar/patterns.rs | |||
@@ -2,9 +2,18 @@ | |||
2 | 2 | ||
3 | use super::*; | 3 | use super::*; |
4 | 4 | ||
5 | pub(super) const PATTERN_FIRST: TokenSet = expressions::LITERAL_FIRST | 5 | pub(super) const PATTERN_FIRST: TokenSet = |
6 | .union(paths::PATH_FIRST) | 6 | expressions::LITERAL_FIRST.union(paths::PATH_FIRST).union(TokenSet::new(&[ |
7 | .union(token_set![T![box], T![ref], T![mut], T!['('], T!['['], T![&], T![_], T![-], T![.]]); | 7 | T![box], |
8 | T![ref], | ||
9 | T![mut], | ||
10 | T!['('], | ||
11 | T!['['], | ||
12 | T![&], | ||
13 | T![_], | ||
14 | T![-], | ||
15 | T![.], | ||
16 | ])); | ||
8 | 17 | ||
9 | pub(crate) fn pattern(p: &mut Parser) { | 18 | pub(crate) fn pattern(p: &mut Parser) { |
10 | pattern_r(p, PAT_RECOVERY_SET); | 19 | pattern_r(p, PAT_RECOVERY_SET); |
@@ -74,7 +83,7 @@ fn pattern_single_r(p: &mut Parser, recovery_set: TokenSet) { | |||
74 | } | 83 | } |
75 | 84 | ||
76 | const PAT_RECOVERY_SET: TokenSet = | 85 | const PAT_RECOVERY_SET: TokenSet = |
77 | token_set![LET_KW, IF_KW, WHILE_KW, LOOP_KW, MATCH_KW, R_PAREN, COMMA]; | 86 | TokenSet::new(&[LET_KW, IF_KW, WHILE_KW, LOOP_KW, MATCH_KW, R_PAREN, COMMA]); |
78 | 87 | ||
79 | fn atom_pat(p: &mut Parser, recovery_set: TokenSet) -> Option<CompletedMarker> { | 88 | fn atom_pat(p: &mut Parser, recovery_set: TokenSet) -> Option<CompletedMarker> { |
80 | let m = match p.nth(0) { | 89 | let m = match p.nth(0) { |