diff options
Diffstat (limited to 'crates/hir/src/code_model.rs')
-rw-r--r-- | crates/hir/src/code_model.rs | 19 |
1 files changed, 1 insertions, 18 deletions
diff --git a/crates/hir/src/code_model.rs b/crates/hir/src/code_model.rs index 9395efe4f..bd80102fa 100644 --- a/crates/hir/src/code_model.rs +++ b/crates/hir/src/code_model.rs | |||
@@ -43,8 +43,8 @@ use tt::{Ident, Leaf, Literal, TokenTree}; | |||
43 | 43 | ||
44 | use crate::{ | 44 | use crate::{ |
45 | db::{DefDatabase, HirDatabase}, | 45 | db::{DefDatabase, HirDatabase}, |
46 | doc_links::Resolvable, | ||
46 | has_source::HasSource, | 47 | has_source::HasSource, |
47 | link_rewrite::Resolvable, | ||
48 | HirDisplay, InFile, Name, | 48 | HirDisplay, InFile, Name, |
49 | }; | 49 | }; |
50 | 50 | ||
@@ -234,23 +234,6 @@ impl ModuleDef { | |||
234 | ModuleDef::BuiltinType(it) => Some(it.as_name()), | 234 | ModuleDef::BuiltinType(it) => Some(it.as_name()), |
235 | } | 235 | } |
236 | } | 236 | } |
237 | |||
238 | pub fn resolver<D: DefDatabase + HirDatabase>(&self, db: &D) -> Option<Resolver> { | ||
239 | Some(match self { | ||
240 | ModuleDef::Module(m) => ModuleId::from(m.clone()).resolver(db), | ||
241 | ModuleDef::Function(f) => FunctionId::from(f.clone()).resolver(db), | ||
242 | ModuleDef::Adt(adt) => AdtId::from(adt.clone()).resolver(db), | ||
243 | ModuleDef::EnumVariant(ev) => { | ||
244 | GenericDefId::from(GenericDef::from(ev.clone())).resolver(db) | ||
245 | } | ||
246 | ModuleDef::Const(c) => GenericDefId::from(GenericDef::from(c.clone())).resolver(db), | ||
247 | ModuleDef::Static(s) => StaticId::from(s.clone()).resolver(db), | ||
248 | ModuleDef::Trait(t) => TraitId::from(t.clone()).resolver(db), | ||
249 | ModuleDef::TypeAlias(t) => ModuleId::from(t.module(db)).resolver(db), | ||
250 | // FIXME: This should be a resolver relative to `std/core` | ||
251 | ModuleDef::BuiltinType(_t) => None?, | ||
252 | }) | ||
253 | } | ||
254 | } | 237 | } |
255 | 238 | ||
256 | pub use hir_def::{ | 239 | pub use hir_def::{ |