diff options
author | bors[bot] <bors[bot]@users.noreply.github.com> | 2019-05-04 19:38:10 +0100 |
---|---|---|
committer | bors[bot] <bors[bot]@users.noreply.github.com> | 2019-05-04 19:38:10 +0100 |
commit | aa7bdfd37f999607806cf47c0108d33a5b44b3e5 (patch) | |
tree | 83e606dd367454ce65262b77e0a64d723c858d35 /crates/ra_syntax/src | |
parent | 9c49f6c36e1e097f938946811d1e2f5eb70edca9 (diff) | |
parent | 8198e13c26fe985af5893af7bdac04041880b461 (diff) |
Merge #1208
1208: [WIP] Goto for Macro's r=matklad a=Lapz
Adds goto definition for macros. Currently only works for macros in the current crate ~~otherwise it panics~~. Proper macro resolution needs to be added for it to resolve macros in other crates.
Todo
- [X] Allow goto from macro calls
- [X] Fix panics
- [x] Add tests
![Screen Recording 2019-04-25 at 18 00 24](https://user-images.githubusercontent.com/19998186/56754499-1dd01c00-6785-11e9-9e9a-1e36de70cfa3.gif)
Co-authored-by: Lenard Pratt <[email protected]>
Diffstat (limited to 'crates/ra_syntax/src')
-rw-r--r-- | crates/ra_syntax/src/ast/generated.rs | 1 | ||||
-rw-r--r-- | crates/ra_syntax/src/grammar.ron | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/crates/ra_syntax/src/ast/generated.rs b/crates/ra_syntax/src/ast/generated.rs index 19a3362ca..89d3a35c5 100644 --- a/crates/ra_syntax/src/ast/generated.rs +++ b/crates/ra_syntax/src/ast/generated.rs | |||
@@ -1761,6 +1761,7 @@ impl ToOwned for MacroCall { | |||
1761 | 1761 | ||
1762 | impl ast::NameOwner for MacroCall {} | 1762 | impl ast::NameOwner for MacroCall {} |
1763 | impl ast::AttrsOwner for MacroCall {} | 1763 | impl ast::AttrsOwner for MacroCall {} |
1764 | impl ast::DocCommentsOwner for MacroCall {} | ||
1764 | impl MacroCall { | 1765 | impl MacroCall { |
1765 | pub fn token_tree(&self) -> Option<&TokenTree> { | 1766 | pub fn token_tree(&self) -> Option<&TokenTree> { |
1766 | super::child_opt(self) | 1767 | super::child_opt(self) |
diff --git a/crates/ra_syntax/src/grammar.ron b/crates/ra_syntax/src/grammar.ron index 011ef0616..c7abdd6dc 100644 --- a/crates/ra_syntax/src/grammar.ron +++ b/crates/ra_syntax/src/grammar.ron | |||
@@ -552,7 +552,7 @@ Grammar( | |||
552 | "Name": (), | 552 | "Name": (), |
553 | "NameRef": (), | 553 | "NameRef": (), |
554 | "MacroCall": ( | 554 | "MacroCall": ( |
555 | traits: [ "NameOwner", "AttrsOwner" ], | 555 | traits: [ "NameOwner", "AttrsOwner","DocCommentsOwner" ], |
556 | options: [ "TokenTree", "Path" ], | 556 | options: [ "TokenTree", "Path" ], |
557 | ), | 557 | ), |
558 | "Attr": ( options: [ ["value", "TokenTree"] ] ), | 558 | "Attr": ( options: [ ["value", "TokenTree"] ] ), |