diff options
Diffstat (limited to 'crates/libsyntax2/src/grammar')
-rw-r--r-- | crates/libsyntax2/src/grammar/expressions/atom.rs | 2 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/expressions/mod.rs | 2 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/items/mod.rs | 10 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/items/structs.rs | 8 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/items/traits.rs | 8 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/mod.rs | 2 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/params.rs | 4 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/paths.rs | 10 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/type_args.rs | 2 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/type_params.rs | 4 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/types.rs | 4 |
11 files changed, 28 insertions, 28 deletions
diff --git a/crates/libsyntax2/src/grammar/expressions/atom.rs b/crates/libsyntax2/src/grammar/expressions/atom.rs index 4f03862b1..57a887f84 100644 --- a/crates/libsyntax2/src/grammar/expressions/atom.rs +++ b/crates/libsyntax2/src/grammar/expressions/atom.rs | |||
@@ -130,7 +130,7 @@ fn lambda_expr(p: &mut Parser) -> CompletedMarker { | |||
130 | let m = p.start(); | 130 | let m = p.start(); |
131 | p.eat(MOVE_KW); | 131 | p.eat(MOVE_KW); |
132 | params::param_list_opt_types(p); | 132 | params::param_list_opt_types(p); |
133 | if fn_ret_type(p) { | 133 | if opt_fn_ret_type(p) { |
134 | block(p); | 134 | block(p); |
135 | } else { | 135 | } else { |
136 | expr(p); | 136 | expr(p); |
diff --git a/crates/libsyntax2/src/grammar/expressions/mod.rs b/crates/libsyntax2/src/grammar/expressions/mod.rs index 3da539699..9ce0c1f8f 100644 --- a/crates/libsyntax2/src/grammar/expressions/mod.rs +++ b/crates/libsyntax2/src/grammar/expressions/mod.rs | |||
@@ -265,7 +265,7 @@ fn method_call_expr(p: &mut Parser, lhs: CompletedMarker) -> CompletedMarker { | |||
265 | let m = lhs.precede(p); | 265 | let m = lhs.precede(p); |
266 | p.bump(); | 266 | p.bump(); |
267 | name_ref(p); | 267 | name_ref(p); |
268 | type_args::type_arg_list(p, true); | 268 | type_args::opt_type_arg_list(p, true); |
269 | if p.at(L_PAREN) { | 269 | if p.at(L_PAREN) { |
270 | arg_list(p); | 270 | arg_list(p); |
271 | } | 271 | } |
diff --git a/crates/libsyntax2/src/grammar/items/mod.rs b/crates/libsyntax2/src/grammar/items/mod.rs index d460612b4..18b681ee2 100644 --- a/crates/libsyntax2/src/grammar/items/mod.rs +++ b/crates/libsyntax2/src/grammar/items/mod.rs | |||
@@ -225,7 +225,7 @@ fn function(p: &mut Parser, flavor: ItemFlavor) { | |||
225 | name(p); | 225 | name(p); |
226 | // test function_type_params | 226 | // test function_type_params |
227 | // fn foo<T: Clone + Copy>(){} | 227 | // fn foo<T: Clone + Copy>(){} |
228 | type_params::type_param_list(p); | 228 | type_params::opt_type_param_list(p); |
229 | 229 | ||
230 | if p.at(L_PAREN) { | 230 | if p.at(L_PAREN) { |
231 | match flavor { | 231 | match flavor { |
@@ -240,11 +240,11 @@ fn function(p: &mut Parser, flavor: ItemFlavor) { | |||
240 | // test function_ret_type | 240 | // test function_ret_type |
241 | // fn foo() {} | 241 | // fn foo() {} |
242 | // fn bar() -> () {} | 242 | // fn bar() -> () {} |
243 | fn_ret_type(p); | 243 | opt_fn_ret_type(p); |
244 | 244 | ||
245 | // test function_where_clause | 245 | // test function_where_clause |
246 | // fn foo<T>() where T: Copy {} | 246 | // fn foo<T>() where T: Copy {} |
247 | type_params::where_clause(p); | 247 | type_params::opt_where_clause(p); |
248 | 248 | ||
249 | // test fn_decl | 249 | // test fn_decl |
250 | // trait T { fn foo(); } | 250 | // trait T { fn foo(); } |
@@ -263,7 +263,7 @@ fn type_def(p: &mut Parser) { | |||
263 | 263 | ||
264 | // test type_item_type_params | 264 | // test type_item_type_params |
265 | // type Result<T> = (); | 265 | // type Result<T> = (); |
266 | type_params::type_param_list(p); | 266 | type_params::opt_type_param_list(p); |
267 | 267 | ||
268 | if p.at(COLON) { | 268 | if p.at(COLON) { |
269 | type_params::bounds(p); | 269 | type_params::bounds(p); |
@@ -271,7 +271,7 @@ fn type_def(p: &mut Parser) { | |||
271 | 271 | ||
272 | // test type_item_where_clause | 272 | // test type_item_where_clause |
273 | // type Foo where Foo: Copy = (); | 273 | // type Foo where Foo: Copy = (); |
274 | type_params::where_clause(p); | 274 | type_params::opt_where_clause(p); |
275 | 275 | ||
276 | if p.eat(EQ) { | 276 | if p.eat(EQ) { |
277 | types::type_(p); | 277 | types::type_(p); |
diff --git a/crates/libsyntax2/src/grammar/items/structs.rs b/crates/libsyntax2/src/grammar/items/structs.rs index b3ed94fe3..cde9d0ae6 100644 --- a/crates/libsyntax2/src/grammar/items/structs.rs +++ b/crates/libsyntax2/src/grammar/items/structs.rs | |||
@@ -5,10 +5,10 @@ pub(super) fn struct_def(p: &mut Parser) { | |||
5 | p.bump(); | 5 | p.bump(); |
6 | 6 | ||
7 | name(p); | 7 | name(p); |
8 | type_params::type_param_list(p); | 8 | type_params::opt_type_param_list(p); |
9 | match p.current() { | 9 | match p.current() { |
10 | WHERE_KW => { | 10 | WHERE_KW => { |
11 | type_params::where_clause(p); | 11 | type_params::opt_where_clause(p); |
12 | match p.current() { | 12 | match p.current() { |
13 | SEMI => { | 13 | SEMI => { |
14 | p.bump(); | 14 | p.bump(); |
@@ -42,8 +42,8 @@ pub(super) fn enum_def(p: &mut Parser) { | |||
42 | assert!(p.at(ENUM_KW)); | 42 | assert!(p.at(ENUM_KW)); |
43 | p.bump(); | 43 | p.bump(); |
44 | name(p); | 44 | name(p); |
45 | type_params::type_param_list(p); | 45 | type_params::opt_type_param_list(p); |
46 | type_params::where_clause(p); | 46 | type_params::opt_where_clause(p); |
47 | if p.expect(L_CURLY) { | 47 | if p.expect(L_CURLY) { |
48 | while !p.at(EOF) && !p.at(R_CURLY) { | 48 | while !p.at(EOF) && !p.at(R_CURLY) { |
49 | let var = p.start(); | 49 | let var = p.start(); |
diff --git a/crates/libsyntax2/src/grammar/items/traits.rs b/crates/libsyntax2/src/grammar/items/traits.rs index daecaff5c..73ecd4bef 100644 --- a/crates/libsyntax2/src/grammar/items/traits.rs +++ b/crates/libsyntax2/src/grammar/items/traits.rs | |||
@@ -6,11 +6,11 @@ pub(super) fn trait_def(p: &mut Parser) { | |||
6 | assert!(p.at(TRAIT_KW)); | 6 | assert!(p.at(TRAIT_KW)); |
7 | p.bump(); | 7 | p.bump(); |
8 | name(p); | 8 | name(p); |
9 | type_params::type_param_list(p); | 9 | type_params::opt_type_param_list(p); |
10 | if p.at(COLON) { | 10 | if p.at(COLON) { |
11 | type_params::bounds(p); | 11 | type_params::bounds(p); |
12 | } | 12 | } |
13 | type_params::where_clause(p); | 13 | type_params::opt_where_clause(p); |
14 | p.expect(L_CURLY); | 14 | p.expect(L_CURLY); |
15 | // test trait_item_items | 15 | // test trait_item_items |
16 | // impl F { | 16 | // impl F { |
@@ -31,7 +31,7 @@ pub(super) fn impl_item(p: &mut Parser) { | |||
31 | assert!(p.at(IMPL_KW)); | 31 | assert!(p.at(IMPL_KW)); |
32 | p.bump(); | 32 | p.bump(); |
33 | if choose_type_params_over_qpath(p) { | 33 | if choose_type_params_over_qpath(p) { |
34 | type_params::type_param_list(p); | 34 | type_params::opt_type_param_list(p); |
35 | } | 35 | } |
36 | 36 | ||
37 | // TODO: never type | 37 | // TODO: never type |
@@ -44,7 +44,7 @@ pub(super) fn impl_item(p: &mut Parser) { | |||
44 | if p.eat(FOR_KW) { | 44 | if p.eat(FOR_KW) { |
45 | types::type_(p); | 45 | types::type_(p); |
46 | } | 46 | } |
47 | type_params::where_clause(p); | 47 | type_params::opt_where_clause(p); |
48 | p.expect(L_CURLY); | 48 | p.expect(L_CURLY); |
49 | 49 | ||
50 | // test impl_item_items | 50 | // test impl_item_items |
diff --git a/crates/libsyntax2/src/grammar/mod.rs b/crates/libsyntax2/src/grammar/mod.rs index d09a9dc9c..0f168eb60 100644 --- a/crates/libsyntax2/src/grammar/mod.rs +++ b/crates/libsyntax2/src/grammar/mod.rs | |||
@@ -113,7 +113,7 @@ fn abi(p: &mut Parser) { | |||
113 | abi.complete(p, ABI); | 113 | abi.complete(p, ABI); |
114 | } | 114 | } |
115 | 115 | ||
116 | fn fn_ret_type(p: &mut Parser) -> bool { | 116 | fn opt_fn_ret_type(p: &mut Parser) -> bool { |
117 | if p.at(THIN_ARROW) { | 117 | if p.at(THIN_ARROW) { |
118 | p.bump(); | 118 | p.bump(); |
119 | types::type_(p); | 119 | types::type_(p); |
diff --git a/crates/libsyntax2/src/grammar/params.rs b/crates/libsyntax2/src/grammar/params.rs index 47567ec8a..5b1322b3a 100644 --- a/crates/libsyntax2/src/grammar/params.rs +++ b/crates/libsyntax2/src/grammar/params.rs | |||
@@ -45,7 +45,7 @@ fn list_(p: &mut Parser, flavor: Flavor) { | |||
45 | let m = p.start(); | 45 | let m = p.start(); |
46 | p.bump(); | 46 | p.bump(); |
47 | if flavor.type_required() { | 47 | if flavor.type_required() { |
48 | self_param(p); | 48 | opt_self_param(p); |
49 | } | 49 | } |
50 | while !p.at(EOF) && !p.at(ket) { | 50 | while !p.at(EOF) && !p.at(ket) { |
51 | value_parameter(p, flavor); | 51 | value_parameter(p, flavor); |
@@ -94,7 +94,7 @@ fn value_parameter(p: &mut Parser, flavor: Flavor) { | |||
94 | // fn d(&'a mut self, x: i32) {} | 94 | // fn d(&'a mut self, x: i32) {} |
95 | // fn e(mut self) {} | 95 | // fn e(mut self) {} |
96 | // } | 96 | // } |
97 | fn self_param(p: &mut Parser) { | 97 | fn opt_self_param(p: &mut Parser) { |
98 | let m; | 98 | let m; |
99 | if p.at(SELF_KW) || p.at(MUT_KW) && p.nth(1) == SELF_KW { | 99 | if p.at(SELF_KW) || p.at(MUT_KW) && p.nth(1) == SELF_KW { |
100 | m = p.start(); | 100 | m = p.start(); |
diff --git a/crates/libsyntax2/src/grammar/paths.rs b/crates/libsyntax2/src/grammar/paths.rs index 97ab1880b..8f5e82d91 100644 --- a/crates/libsyntax2/src/grammar/paths.rs +++ b/crates/libsyntax2/src/grammar/paths.rs | |||
@@ -69,7 +69,7 @@ fn path_segment(p: &mut Parser, mode: Mode, first: bool) { | |||
69 | match p.current() { | 69 | match p.current() { |
70 | IDENT => { | 70 | IDENT => { |
71 | name_ref(p); | 71 | name_ref(p); |
72 | path_generic_args(p, mode); | 72 | opt_path_type_args(p, mode); |
73 | } | 73 | } |
74 | SELF_KW | SUPER_KW => p.bump(), | 74 | SELF_KW | SUPER_KW => p.bump(), |
75 | _ => { | 75 | _ => { |
@@ -80,7 +80,7 @@ fn path_segment(p: &mut Parser, mode: Mode, first: bool) { | |||
80 | m.complete(p, PATH_SEGMENT); | 80 | m.complete(p, PATH_SEGMENT); |
81 | } | 81 | } |
82 | 82 | ||
83 | fn path_generic_args(p: &mut Parser, mode: Mode) { | 83 | fn opt_path_type_args(p: &mut Parser, mode: Mode) { |
84 | match mode { | 84 | match mode { |
85 | Mode::Use => return, | 85 | Mode::Use => return, |
86 | Mode::Type => { | 86 | Mode::Type => { |
@@ -88,11 +88,11 @@ fn path_generic_args(p: &mut Parser, mode: Mode) { | |||
88 | // type F = Box<Fn(x: i32) -> ()>; | 88 | // type F = Box<Fn(x: i32) -> ()>; |
89 | if p.at(L_PAREN) { | 89 | if p.at(L_PAREN) { |
90 | params::param_list_opt_patterns(p); | 90 | params::param_list_opt_patterns(p); |
91 | fn_ret_type(p); | 91 | opt_fn_ret_type(p); |
92 | } else { | 92 | } else { |
93 | type_args::type_arg_list(p, false) | 93 | type_args::opt_type_arg_list(p, false) |
94 | } | 94 | } |
95 | }, | 95 | }, |
96 | Mode::Expr => type_args::type_arg_list(p, true), | 96 | Mode::Expr => type_args::opt_type_arg_list(p, true), |
97 | } | 97 | } |
98 | } | 98 | } |
diff --git a/crates/libsyntax2/src/grammar/type_args.rs b/crates/libsyntax2/src/grammar/type_args.rs index 5b960f10b..29ff6e534 100644 --- a/crates/libsyntax2/src/grammar/type_args.rs +++ b/crates/libsyntax2/src/grammar/type_args.rs | |||
@@ -1,6 +1,6 @@ | |||
1 | use super::*; | 1 | use super::*; |
2 | 2 | ||
3 | pub(super) fn type_arg_list(p: &mut Parser, colon_colon_required: bool) { | 3 | pub(super) fn opt_type_arg_list(p: &mut Parser, colon_colon_required: bool) { |
4 | let m; | 4 | let m; |
5 | match (colon_colon_required, p.nth(0), p.nth(1)) { | 5 | match (colon_colon_required, p.nth(0), p.nth(1)) { |
6 | (_, COLONCOLON, L_ANGLE) => { | 6 | (_, COLONCOLON, L_ANGLE) => { |
diff --git a/crates/libsyntax2/src/grammar/type_params.rs b/crates/libsyntax2/src/grammar/type_params.rs index a97eeb142..3fb4bd356 100644 --- a/crates/libsyntax2/src/grammar/type_params.rs +++ b/crates/libsyntax2/src/grammar/type_params.rs | |||
@@ -1,6 +1,6 @@ | |||
1 | use super::*; | 1 | use super::*; |
2 | 2 | ||
3 | pub(super) fn type_param_list(p: &mut Parser) { | 3 | pub(super) fn opt_type_param_list(p: &mut Parser) { |
4 | if !p.at(L_ANGLE) { | 4 | if !p.at(L_ANGLE) { |
5 | return; | 5 | return; |
6 | } | 6 | } |
@@ -96,7 +96,7 @@ pub(super) fn bounds_without_colon(p: &mut Parser) { | |||
96 | // T: Clone + Copy + 'static, | 96 | // T: Clone + Copy + 'static, |
97 | // Iterator::Item: 'a, | 97 | // Iterator::Item: 'a, |
98 | // {} | 98 | // {} |
99 | pub(super) fn where_clause(p: &mut Parser) { | 99 | pub(super) fn opt_where_clause(p: &mut Parser) { |
100 | if !p.at(WHERE_KW) { | 100 | if !p.at(WHERE_KW) { |
101 | return; | 101 | return; |
102 | } | 102 | } |
diff --git a/crates/libsyntax2/src/grammar/types.rs b/crates/libsyntax2/src/grammar/types.rs index f58b545c7..2088a38e3 100644 --- a/crates/libsyntax2/src/grammar/types.rs +++ b/crates/libsyntax2/src/grammar/types.rs | |||
@@ -174,7 +174,7 @@ fn fn_pointer_type(p: &mut Parser) { | |||
174 | } | 174 | } |
175 | // test fn_pointer_type_with_ret | 175 | // test fn_pointer_type_with_ret |
176 | // type F = fn() -> (); | 176 | // type F = fn() -> (); |
177 | fn_ret_type(p); | 177 | opt_fn_ret_type(p); |
178 | m.complete(p, FN_POINTER_TYPE); | 178 | m.complete(p, FN_POINTER_TYPE); |
179 | } | 179 | } |
180 | 180 | ||
@@ -184,7 +184,7 @@ fn for_type(p: &mut Parser) { | |||
184 | assert!(p.at(FOR_KW)); | 184 | assert!(p.at(FOR_KW)); |
185 | let m = p.start(); | 185 | let m = p.start(); |
186 | p.bump(); | 186 | p.bump(); |
187 | type_params::type_param_list(p); | 187 | type_params::opt_type_param_list(p); |
188 | type_(p); | 188 | type_(p); |
189 | m.complete(p, FOR_TYPE); | 189 | m.complete(p, FOR_TYPE); |
190 | } | 190 | } |