diff options
author | pcpthm <[email protected]> | 2019-03-18 05:34:08 +0000 |
---|---|---|
committer | pcpthm <[email protected]> | 2019-03-18 05:34:08 +0000 |
commit | 76075c74103b3204ebc1bde54a330629d9e00811 (patch) | |
tree | 316ffdffb672856e7d897736e280261a11a07efd /crates/ra_parser/src/grammar/items/consts.rs | |
parent | 3d9c2beb8e0d4e0fbaded7dac259cadf7616a3ad (diff) |
Use Marker argument for item parsers
- Fix pub_expr
- Fix incorrect parsing of crate::path
Diffstat (limited to 'crates/ra_parser/src/grammar/items/consts.rs')
-rw-r--r-- | crates/ra_parser/src/grammar/items/consts.rs | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/crates/ra_parser/src/grammar/items/consts.rs b/crates/ra_parser/src/grammar/items/consts.rs index 5a5852f83..e6e6011c6 100644 --- a/crates/ra_parser/src/grammar/items/consts.rs +++ b/crates/ra_parser/src/grammar/items/consts.rs | |||
@@ -1,14 +1,14 @@ | |||
1 | use super::*; | 1 | use super::*; |
2 | 2 | ||
3 | pub(super) fn static_def(p: &mut Parser) { | 3 | pub(super) fn static_def(p: &mut Parser, m: Marker) { |
4 | const_or_static(p, STATIC_KW) | 4 | const_or_static(p, m, STATIC_KW, STATIC_DEF) |
5 | } | 5 | } |
6 | 6 | ||
7 | pub(super) fn const_def(p: &mut Parser) { | 7 | pub(super) fn const_def(p: &mut Parser, m: Marker) { |
8 | const_or_static(p, CONST_KW) | 8 | const_or_static(p, m, CONST_KW, CONST_DEF) |
9 | } | 9 | } |
10 | 10 | ||
11 | fn const_or_static(p: &mut Parser, kw: SyntaxKind) { | 11 | fn const_or_static(p: &mut Parser, m: Marker, kw: SyntaxKind, def: SyntaxKind) { |
12 | assert!(p.at(kw)); | 12 | assert!(p.at(kw)); |
13 | p.bump(); | 13 | p.bump(); |
14 | p.eat(MUT_KW); // TODO: validator to forbid const mut | 14 | p.eat(MUT_KW); // TODO: validator to forbid const mut |
@@ -18,4 +18,5 @@ fn const_or_static(p: &mut Parser, kw: SyntaxKind) { | |||
18 | expressions::expr(p); | 18 | expressions::expr(p); |
19 | } | 19 | } |
20 | p.expect(SEMI); | 20 | p.expect(SEMI); |
21 | m.complete(p, def); | ||
21 | } | 22 | } |