aboutsummaryrefslogtreecommitdiff
path: root/crates/ide/src/goto_definition.rs
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2021-04-11 00:33:18 +0100
committerGitHub <[email protected]>2021-04-11 00:33:18 +0100
commiteccd0efedb230985c582edbf9d272bf5f0224acf (patch)
treee9d878c43c5b487a8788ea2000e6e00cac883cc2 /crates/ide/src/goto_definition.rs
parenta8a25863f6e1e6da94b60813b2daee73b55132f7 (diff)
parente2c1da36f59cd99d4da4c1d5f8f323626d3dbe61 (diff)
Merge #8463
8463: Support macros in pattern position r=jonas-schievink a=jonas-schievink This was fairly easy, because patterns are limited to bodies, so almost all changes were inside body lowering. Co-authored-by: Jonas Schievink <[email protected]>
Diffstat (limited to 'crates/ide/src/goto_definition.rs')
-rw-r--r--crates/ide/src/goto_definition.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/crates/ide/src/goto_definition.rs b/crates/ide/src/goto_definition.rs
index ca8ccb2da..d057d5402 100644
--- a/crates/ide/src/goto_definition.rs
+++ b/crates/ide/src/goto_definition.rs
@@ -1188,4 +1188,30 @@ pub fn gimme() -> theitem::TheItem {
1188"#, 1188"#,
1189 ); 1189 );
1190 } 1190 }
1191
1192 #[test]
1193 fn goto_ident_from_pat_macro() {
1194 check(
1195 r#"
1196macro_rules! pat {
1197 ($name:ident) => { Enum::Variant1($name) }
1198}
1199
1200enum Enum {
1201 Variant1(u8),
1202 Variant2,
1203}
1204
1205fn f(e: Enum) {
1206 match e {
1207 pat!(bind) => {
1208 //^^^^
1209 bind$0
1210 }
1211 Enum::Variant2 => {}
1212 }
1213}
1214"#,
1215 );
1216 }
1191} 1217}