aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_ide_api/src/display
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_ide_api/src/display')
-rw-r--r--crates/ra_ide_api/src/display/navigation_target.rs8
-rw-r--r--crates/ra_ide_api/src/display/snapshots/tests__file_structure.snap68
2 files changed, 42 insertions, 34 deletions
diff --git a/crates/ra_ide_api/src/display/navigation_target.rs b/crates/ra_ide_api/src/display/navigation_target.rs
index 1c694cbc9..7f81483f7 100644
--- a/crates/ra_ide_api/src/display/navigation_target.rs
+++ b/crates/ra_ide_api/src/display/navigation_target.rs
@@ -154,6 +154,10 @@ impl NavigationTarget {
154 let (file_id, node) = s.source(db); 154 let (file_id, node) = s.source(db);
155 NavigationTarget::from_named(file_id.original_file(db), &*node) 155 NavigationTarget::from_named(file_id.original_file(db), &*node)
156 } 156 }
157 hir::AdtDef::Union(s) => {
158 let (file_id, node) = s.source(db);
159 NavigationTarget::from_named(file_id.original_file(db), &*node)
160 }
157 hir::AdtDef::Enum(s) => { 161 hir::AdtDef::Enum(s) => {
158 let (file_id, node) = s.source(db); 162 let (file_id, node) = s.source(db);
159 NavigationTarget::from_named(file_id.original_file(db), &*node) 163 NavigationTarget::from_named(file_id.original_file(db), &*node)
@@ -169,6 +173,10 @@ impl NavigationTarget {
169 let (file_id, node) = s.source(db); 173 let (file_id, node) = s.source(db);
170 NavigationTarget::from_named(file_id.original_file(db), &*node) 174 NavigationTarget::from_named(file_id.original_file(db), &*node)
171 } 175 }
176 hir::ModuleDef::Union(s) => {
177 let (file_id, node) = s.source(db);
178 NavigationTarget::from_named(file_id.original_file(db), &*node)
179 }
172 hir::ModuleDef::Const(s) => { 180 hir::ModuleDef::Const(s) => {
173 let (file_id, node) = s.source(db); 181 let (file_id, node) = s.source(db);
174 NavigationTarget::from_named(file_id.original_file(db), &*node) 182 NavigationTarget::from_named(file_id.original_file(db), &*node)
diff --git a/crates/ra_ide_api/src/display/snapshots/tests__file_structure.snap b/crates/ra_ide_api/src/display/snapshots/tests__file_structure.snap
index 32dd99484..3097977de 100644
--- a/crates/ra_ide_api/src/display/snapshots/tests__file_structure.snap
+++ b/crates/ra_ide_api/src/display/snapshots/tests__file_structure.snap
@@ -1,6 +1,6 @@
1--- 1---
2created: "2019-04-08T09:44:50.196004400Z" 2created: "2019-05-23T22:23:35.168422050Z"
3creator: insta@0.7.4 3creator: insta@0.8.1
4source: crates/ra_ide_api/src/display/structure.rs 4source: crates/ra_ide_api/src/display/structure.rs
5expression: structure 5expression: structure
6--- 6---
@@ -12,20 +12,20 @@ expression: structure
12 node_range: [1; 26), 12 node_range: [1; 26),
13 kind: STRUCT_DEF, 13 kind: STRUCT_DEF,
14 detail: None, 14 detail: None,
15 deprecated: false 15 deprecated: false,
16 }, 16 },
17 StructureNode { 17 StructureNode {
18 parent: Some( 18 parent: Some(
19 0 19 0,
20 ), 20 ),
21 label: "x", 21 label: "x",
22 navigation_range: [18; 19), 22 navigation_range: [18; 19),
23 node_range: [18; 24), 23 node_range: [18; 24),
24 kind: NAMED_FIELD_DEF, 24 kind: NAMED_FIELD_DEF,
25 detail: Some( 25 detail: Some(
26 "i32" 26 "i32",
27 ), 27 ),
28 deprecated: false 28 deprecated: false,
29 }, 29 },
30 StructureNode { 30 StructureNode {
31 parent: None, 31 parent: None,
@@ -34,46 +34,46 @@ expression: structure
34 node_range: [28; 158), 34 node_range: [28; 158),
35 kind: MODULE, 35 kind: MODULE,
36 detail: None, 36 detail: None,
37 deprecated: false 37 deprecated: false,
38 }, 38 },
39 StructureNode { 39 StructureNode {
40 parent: Some( 40 parent: Some(
41 2 41 2,
42 ), 42 ),
43 label: "bar1", 43 label: "bar1",
44 navigation_range: [43; 47), 44 navigation_range: [43; 47),
45 node_range: [40; 52), 45 node_range: [40; 52),
46 kind: FN_DEF, 46 kind: FN_DEF,
47 detail: Some( 47 detail: Some(
48 "fn()" 48 "fn()",
49 ), 49 ),
50 deprecated: false 50 deprecated: false,
51 }, 51 },
52 StructureNode { 52 StructureNode {
53 parent: Some( 53 parent: Some(
54 2 54 2,
55 ), 55 ),
56 label: "bar2", 56 label: "bar2",
57 navigation_range: [60; 64), 57 navigation_range: [60; 64),
58 node_range: [57; 81), 58 node_range: [57; 81),
59 kind: FN_DEF, 59 kind: FN_DEF,
60 detail: Some( 60 detail: Some(
61 "fn<T>(t: T) -> T" 61 "fn<T>(t: T) -> T",
62 ), 62 ),
63 deprecated: false 63 deprecated: false,
64 }, 64 },
65 StructureNode { 65 StructureNode {
66 parent: Some( 66 parent: Some(
67 2 67 2,
68 ), 68 ),
69 label: "bar3", 69 label: "bar3",
70 navigation_range: [89; 93), 70 navigation_range: [89; 93),
71 node_range: [86; 156), 71 node_range: [86; 156),
72 kind: FN_DEF, 72 kind: FN_DEF,
73 detail: Some( 73 detail: Some(
74 "fn<A, B>(a: A, b: B) -> Vec< u32 >" 74 "fn<A, B>(a: A, b: B) -> Vec< u32 >",
75 ), 75 ),
76 deprecated: false 76 deprecated: false,
77 }, 77 },
78 StructureNode { 78 StructureNode {
79 parent: None, 79 parent: None,
@@ -82,29 +82,29 @@ expression: structure
82 node_range: [160; 180), 82 node_range: [160; 180),
83 kind: ENUM_DEF, 83 kind: ENUM_DEF,
84 detail: None, 84 detail: None,
85 deprecated: false 85 deprecated: false,
86 }, 86 },
87 StructureNode { 87 StructureNode {
88 parent: Some( 88 parent: Some(
89 6 89 6,
90 ), 90 ),
91 label: "X", 91 label: "X",
92 navigation_range: [169; 170), 92 navigation_range: [169; 170),
93 node_range: [169; 170), 93 node_range: [169; 170),
94 kind: ENUM_VARIANT, 94 kind: ENUM_VARIANT,
95 detail: None, 95 detail: None,
96 deprecated: false 96 deprecated: false,
97 }, 97 },
98 StructureNode { 98 StructureNode {
99 parent: Some( 99 parent: Some(
100 6 100 6,
101 ), 101 ),
102 label: "Y", 102 label: "Y",
103 navigation_range: [172; 173), 103 navigation_range: [172; 173),
104 node_range: [172; 178), 104 node_range: [172; 178),
105 kind: ENUM_VARIANT, 105 kind: ENUM_VARIANT,
106 detail: None, 106 detail: None,
107 deprecated: false 107 deprecated: false,
108 }, 108 },
109 StructureNode { 109 StructureNode {
110 parent: None, 110 parent: None,
@@ -113,9 +113,9 @@ expression: structure
113 node_range: [181; 193), 113 node_range: [181; 193),
114 kind: TYPE_ALIAS_DEF, 114 kind: TYPE_ALIAS_DEF,
115 detail: Some( 115 detail: Some(
116 "()" 116 "()",
117 ), 117 ),
118 deprecated: false 118 deprecated: false,
119 }, 119 },
120 StructureNode { 120 StructureNode {
121 parent: None, 121 parent: None,
@@ -124,9 +124,9 @@ expression: structure
124 node_range: [194; 213), 124 node_range: [194; 213),
125 kind: STATIC_DEF, 125 kind: STATIC_DEF,
126 detail: Some( 126 detail: Some(
127 "i32" 127 "i32",
128 ), 128 ),
129 deprecated: false 129 deprecated: false,
130 }, 130 },
131 StructureNode { 131 StructureNode {
132 parent: None, 132 parent: None,
@@ -135,9 +135,9 @@ expression: structure
135 node_range: [214; 232), 135 node_range: [214; 232),
136 kind: CONST_DEF, 136 kind: CONST_DEF,
137 detail: Some( 137 detail: Some(
138 "i32" 138 "i32",
139 ), 139 ),
140 deprecated: false 140 deprecated: false,
141 }, 141 },
142 StructureNode { 142 StructureNode {
143 parent: None, 143 parent: None,
@@ -146,7 +146,7 @@ expression: structure
146 node_range: [234; 243), 146 node_range: [234; 243),
147 kind: IMPL_BLOCK, 147 kind: IMPL_BLOCK,
148 detail: None, 148 detail: None,
149 deprecated: false 149 deprecated: false,
150 }, 150 },
151 StructureNode { 151 StructureNode {
152 parent: None, 152 parent: None,
@@ -155,7 +155,7 @@ expression: structure
155 node_range: [245; 269), 155 node_range: [245; 269),
156 kind: IMPL_BLOCK, 156 kind: IMPL_BLOCK,
157 detail: None, 157 detail: None,
158 deprecated: false 158 deprecated: false,
159 }, 159 },
160 StructureNode { 160 StructureNode {
161 parent: None, 161 parent: None,
@@ -164,9 +164,9 @@ expression: structure
164 node_range: [271; 301), 164 node_range: [271; 301),
165 kind: FN_DEF, 165 kind: FN_DEF,
166 detail: Some( 166 detail: Some(
167 "fn()" 167 "fn()",
168 ), 168 ),
169 deprecated: true 169 deprecated: true,
170 }, 170 },
171 StructureNode { 171 StructureNode {
172 parent: None, 172 parent: None,
@@ -175,8 +175,8 @@ expression: structure
175 node_range: [303; 359), 175 node_range: [303; 359),
176 kind: FN_DEF, 176 kind: FN_DEF,
177 detail: Some( 177 detail: Some(
178 "fn()" 178 "fn()",
179 ), 179 ),
180 deprecated: true 180 deprecated: true,
181 } 181 },
182] 182]