diff options
Diffstat (limited to 'crates/ra_hir/src/query_definitions.rs')
-rw-r--r-- | crates/ra_hir/src/query_definitions.rs | 20 |
1 files changed, 1 insertions, 19 deletions
diff --git a/crates/ra_hir/src/query_definitions.rs b/crates/ra_hir/src/query_definitions.rs index 380ea5410..ab4e6e629 100644 --- a/crates/ra_hir/src/query_definitions.rs +++ b/crates/ra_hir/src/query_definitions.rs | |||
@@ -11,13 +11,12 @@ use ra_syntax::{ | |||
11 | use ra_db::{SourceRootId, Cancelable,}; | 11 | use ra_db::{SourceRootId, Cancelable,}; |
12 | 12 | ||
13 | use crate::{ | 13 | use crate::{ |
14 | SourceFileItems, SourceItemId, DefKind, DefId, HirFileId, ModuleSource, | 14 | SourceFileItems, SourceItemId, DefId, HirFileId, ModuleSource, |
15 | MacroCallLoc, | 15 | MacroCallLoc, |
16 | db::HirDatabase, | 16 | db::HirDatabase, |
17 | function::FnScopes, | 17 | function::FnScopes, |
18 | module_tree::ModuleId, | 18 | module_tree::ModuleId, |
19 | nameres::{InputModuleItems, ItemMap, Resolver}, | 19 | nameres::{InputModuleItems, ItemMap, Resolver}, |
20 | adt::{StructData, EnumData}, | ||
21 | }; | 20 | }; |
22 | 21 | ||
23 | pub(super) fn fn_scopes(db: &impl HirDatabase, def_id: DefId) -> Cancelable<Arc<FnScopes>> { | 22 | pub(super) fn fn_scopes(db: &impl HirDatabase, def_id: DefId) -> Cancelable<Arc<FnScopes>> { |
@@ -26,23 +25,6 @@ pub(super) fn fn_scopes(db: &impl HirDatabase, def_id: DefId) -> Cancelable<Arc< | |||
26 | Ok(Arc::new(res)) | 25 | Ok(Arc::new(res)) |
27 | } | 26 | } |
28 | 27 | ||
29 | pub(super) fn struct_data(db: &impl HirDatabase, def_id: DefId) -> Cancelable<Arc<StructData>> { | ||
30 | let def_loc = def_id.loc(db); | ||
31 | assert!(def_loc.kind == DefKind::Struct); | ||
32 | let syntax = db.file_item(def_loc.source_item_id); | ||
33 | let struct_def = | ||
34 | ast::StructDef::cast(&syntax).expect("struct def should point to StructDef node"); | ||
35 | Ok(Arc::new(StructData::new(struct_def))) | ||
36 | } | ||
37 | |||
38 | pub(super) fn enum_data(db: &impl HirDatabase, def_id: DefId) -> Cancelable<Arc<EnumData>> { | ||
39 | let def_loc = def_id.loc(db); | ||
40 | assert!(def_loc.kind == DefKind::Enum); | ||
41 | let syntax = db.file_item(def_loc.source_item_id); | ||
42 | let enum_def = ast::EnumDef::cast(&syntax).expect("enum def should point to EnumDef node"); | ||
43 | Ok(Arc::new(EnumData::new(enum_def))) | ||
44 | } | ||
45 | |||
46 | pub(super) fn file_items(db: &impl HirDatabase, file_id: HirFileId) -> Arc<SourceFileItems> { | 28 | pub(super) fn file_items(db: &impl HirDatabase, file_id: HirFileId) -> Arc<SourceFileItems> { |
47 | let source_file = db.hir_source_file(file_id); | 29 | let source_file = db.hir_source_file(file_id); |
48 | let res = SourceFileItems::new(file_id, &source_file); | 30 | let res = SourceFileItems::new(file_id, &source_file); |