aboutsummaryrefslogtreecommitdiff
path: root/src/parser/event_parser/grammar
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser/event_parser/grammar')
-rw-r--r--src/parser/event_parser/grammar/items.rs15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/parser/event_parser/grammar/items.rs b/src/parser/event_parser/grammar/items.rs
index 12b6d06c7..d341dce38 100644
--- a/src/parser/event_parser/grammar/items.rs
+++ b/src/parser/event_parser/grammar/items.rs
@@ -127,18 +127,21 @@ fn pos_fields(p: &mut Parser) {
127 if !p.expect(L_PAREN) { 127 if !p.expect(L_PAREN) {
128 return; 128 return;
129 } 129 }
130 comma_list(p, R_PAREN, |p| { 130 loop {
131 pos_field(p); 131 if p.at(R_PAREN) || p.at(EOF) {
132 true 132 break;
133 }); 133 }
134 p.expect(R_PAREN);
135 134
136 fn pos_field(p: &mut Parser) {
137 let pos_field = p.start(); 135 let pos_field = p.start();
138 visibility(p); 136 visibility(p);
139 types::type_ref(p); 137 types::type_ref(p);
140 pos_field.complete(p, POS_FIELD); 138 pos_field.complete(p, POS_FIELD);
139
140 if !p.at(R_PAREN) {
141 p.expect(COMMA);
142 }
141 } 143 }
144 p.expect(R_PAREN);
142} 145}
143 146
144fn generic_parameters(_: &mut Parser) {} 147fn generic_parameters(_: &mut Parser) {}