diff options
Diffstat (limited to 'crates/ra_hir/src/source_binder.rs')
-rw-r--r-- | crates/ra_hir/src/source_binder.rs | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/crates/ra_hir/src/source_binder.rs b/crates/ra_hir/src/source_binder.rs index 42399622a..2959e3eca 100644 --- a/crates/ra_hir/src/source_binder.rs +++ b/crates/ra_hir/src/source_binder.rs | |||
@@ -14,12 +14,11 @@ use ra_syntax::{ | |||
14 | ast::{self, AstNode, NameOwner}, | 14 | ast::{self, AstNode, NameOwner}, |
15 | algo::find_node_at_offset, | 15 | algo::find_node_at_offset, |
16 | SyntaxKind::*, | 16 | SyntaxKind::*, |
17 | SmolStr, | ||
18 | }; | 17 | }; |
19 | 18 | ||
20 | use crate::{ | 19 | use crate::{ |
21 | HirDatabase, Function, Struct, Enum, Const, Static, Either, DefWithBody, PerNs, Name, | 20 | HirDatabase, Function, Struct, Enum, Const, Static, Either, DefWithBody, PerNs, Name, |
22 | AsName, Module, HirFileId, Crate, Trait, Resolver, Ty, ImportResolver, | 21 | AsName, Module, HirFileId, Crate, Trait, Resolver, Ty, |
23 | expr::{BodySourceMap, scope::{ScopeId, ExprScopes}}, | 22 | expr::{BodySourceMap, scope::{ScopeId, ExprScopes}}, |
24 | ids::LocationCtx, | 23 | ids::LocationCtx, |
25 | expr, AstId, | 24 | expr, AstId, |
@@ -171,7 +170,6 @@ fn def_with_body_from_child_node( | |||
171 | #[derive(Debug)] | 170 | #[derive(Debug)] |
172 | pub struct SourceAnalyzer { | 171 | pub struct SourceAnalyzer { |
173 | resolver: Resolver, | 172 | resolver: Resolver, |
174 | import_resolver: ImportResolver, | ||
175 | body_source_map: Option<Arc<BodySourceMap>>, | 173 | body_source_map: Option<Arc<BodySourceMap>>, |
176 | infer: Option<Arc<crate::ty::InferenceResult>>, | 174 | infer: Option<Arc<crate::ty::InferenceResult>>, |
177 | scopes: Option<Arc<crate::expr::ExprScopes>>, | 175 | scopes: Option<Arc<crate::expr::ExprScopes>>, |
@@ -219,7 +217,6 @@ impl SourceAnalyzer { | |||
219 | offset: Option<TextUnit>, | 217 | offset: Option<TextUnit>, |
220 | ) -> SourceAnalyzer { | 218 | ) -> SourceAnalyzer { |
221 | let def_with_body = def_with_body_from_child_node(db, file_id, node); | 219 | let def_with_body = def_with_body_from_child_node(db, file_id, node); |
222 | let import_resolver = ImportResolver::new(); | ||
223 | if let Some(def) = def_with_body { | 220 | if let Some(def) = def_with_body { |
224 | let source_map = def.body_source_map(db); | 221 | let source_map = def.body_source_map(db); |
225 | let scopes = db.expr_scopes(def); | 222 | let scopes = db.expr_scopes(def); |
@@ -230,7 +227,6 @@ impl SourceAnalyzer { | |||
230 | let resolver = expr::resolver_for_scope(def.body(db), db, scope); | 227 | let resolver = expr::resolver_for_scope(def.body(db), db, scope); |
231 | SourceAnalyzer { | 228 | SourceAnalyzer { |
232 | resolver, | 229 | resolver, |
233 | import_resolver, | ||
234 | body_source_map: Some(source_map), | 230 | body_source_map: Some(source_map), |
235 | infer: Some(def.infer(db)), | 231 | infer: Some(def.infer(db)), |
236 | scopes: Some(scopes), | 232 | scopes: Some(scopes), |
@@ -241,7 +237,6 @@ impl SourceAnalyzer { | |||
241 | .ancestors() | 237 | .ancestors() |
242 | .find_map(|node| try_get_resolver_for_node(db, file_id, node)) | 238 | .find_map(|node| try_get_resolver_for_node(db, file_id, node)) |
243 | .unwrap_or_default(), | 239 | .unwrap_or_default(), |
244 | import_resolver, | ||
245 | body_source_map: None, | 240 | body_source_map: None, |
246 | infer: None, | 241 | infer: None, |
247 | scopes: None, | 242 | scopes: None, |
@@ -328,14 +323,6 @@ impl SourceAnalyzer { | |||
328 | self.resolver.all_names(db) | 323 | self.resolver.all_names(db) |
329 | } | 324 | } |
330 | 325 | ||
331 | pub fn all_import_names( | ||
332 | &self, | ||
333 | db: &impl HirDatabase, | ||
334 | name: &Name, | ||
335 | ) -> FxHashMap<SmolStr, Vec<SmolStr>> { | ||
336 | self.import_resolver.all_names(db, name) | ||
337 | } | ||
338 | |||
339 | pub fn find_all_refs(&self, pat: &ast::BindPat) -> Vec<ReferenceDescriptor> { | 326 | pub fn find_all_refs(&self, pat: &ast::BindPat) -> Vec<ReferenceDescriptor> { |
340 | // FIXME: at least, this should work with any DefWithBody, but ideally | 327 | // FIXME: at least, this should work with any DefWithBody, but ideally |
341 | // this should be hir-based altogether | 328 | // this should be hir-based altogether |