diff options
author | Toby Dimmick <[email protected]> | 2020-02-06 11:44:00 +0000 |
---|---|---|
committer | Toby Dimmick <[email protected]> | 2020-02-06 19:45:51 +0000 |
commit | 7e66785859fc4a31fc3faf4848174699d3a2c020 (patch) | |
tree | 94a61899b4628eeca7a21a58c061b343bcf32e62 /crates/ra_parser/src/grammar/paths.rs | |
parent | a4431e83025223d5aea0ae3d49a6356775cb5f75 (diff) |
Rework value parameter parsing
- `Fn__(...)` parameters with idents/patterns no longer parse
- Trait function parameters with arbitrary patterns parse
- Trait function parameters without idents/patterns no longer parse
- `fn(...)` parameters no longer parse with patterns other than a single ident
Diffstat (limited to 'crates/ra_parser/src/grammar/paths.rs')
-rw-r--r-- | crates/ra_parser/src/grammar/paths.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/crates/ra_parser/src/grammar/paths.rs b/crates/ra_parser/src/grammar/paths.rs index ca8e075a1..186064320 100644 --- a/crates/ra_parser/src/grammar/paths.rs +++ b/crates/ra_parser/src/grammar/paths.rs | |||
@@ -97,9 +97,9 @@ fn opt_path_type_args(p: &mut Parser, mode: Mode) { | |||
97 | Mode::Use => return, | 97 | Mode::Use => return, |
98 | Mode::Type => { | 98 | Mode::Type => { |
99 | // test path_fn_trait_args | 99 | // test path_fn_trait_args |
100 | // type F = Box<Fn(x: i32) -> ()>; | 100 | // type F = Box<Fn(i32) -> ()>; |
101 | if p.at(T!['(']) { | 101 | if p.at(T!['(']) { |
102 | params::param_list_opt_patterns(p); | 102 | params::param_list_impl_fn(p); |
103 | opt_fn_ret_type(p); | 103 | opt_fn_ret_type(p); |
104 | } else { | 104 | } else { |
105 | type_args::opt_type_arg_list(p, false) | 105 | type_args::opt_type_arg_list(p, false) |