aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_parser/src/grammar/paths.rs
diff options
context:
space:
mode:
authorToby Dimmick <[email protected]>2020-02-06 11:44:00 +0000
committerToby Dimmick <[email protected]>2020-02-06 19:45:51 +0000
commit7e66785859fc4a31fc3faf4848174699d3a2c020 (patch)
tree94a61899b4628eeca7a21a58c061b343bcf32e62 /crates/ra_parser/src/grammar/paths.rs
parenta4431e83025223d5aea0ae3d49a6356775cb5f75 (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.rs4
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)