diff options
Diffstat (limited to 'crates/ra_hir/src/db.rs')
-rw-r--r-- | crates/ra_hir/src/db.rs | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/crates/ra_hir/src/db.rs b/crates/ra_hir/src/db.rs index ec848f1b2..21d22aa7f 100644 --- a/crates/ra_hir/src/db.rs +++ b/crates/ra_hir/src/db.rs | |||
@@ -48,14 +48,14 @@ pub trait PersistentHirDatabase: SourceDatabase + AsRef<HirInterner> { | |||
48 | delc_id: Option<SourceFileItemId>, | 48 | delc_id: Option<SourceFileItemId>, |
49 | ) -> Arc<Vec<crate::module_tree::Submodule>>; | 49 | ) -> Arc<Vec<crate::module_tree::Submodule>>; |
50 | 50 | ||
51 | #[salsa::invoke(crate::nameres::lower::LoweredModule::lower_module_query)] | 51 | #[salsa::invoke(crate::nameres::lower::LoweredModule::lower_module_with_source_map_query)] |
52 | fn lower_module(&self, module: Module) -> (Arc<LoweredModule>, Arc<ImportSourceMap>); | 52 | fn lower_module_with_source_map( |
53 | 53 | &self, | |
54 | #[salsa::invoke(crate::nameres::lower::LoweredModule::lower_module_module_query)] | 54 | module: Module, |
55 | fn lower_module_module(&self, module: Module) -> Arc<LoweredModule>; | 55 | ) -> (Arc<LoweredModule>, Arc<ImportSourceMap>); |
56 | 56 | ||
57 | #[salsa::invoke(crate::nameres::lower::LoweredModule::lower_module_source_map_query)] | 57 | #[salsa::invoke(crate::nameres::lower::LoweredModule::lower_module_query)] |
58 | fn lower_module_source_map(&self, module: Module) -> Arc<ImportSourceMap>; | 58 | fn lower_module(&self, module: Module) -> Arc<LoweredModule>; |
59 | 59 | ||
60 | #[salsa::invoke(crate::nameres::ItemMap::item_map_query)] | 60 | #[salsa::invoke(crate::nameres::ItemMap::item_map_query)] |
61 | fn item_map(&self, krate: Crate) -> Arc<ItemMap>; | 61 | fn item_map(&self, krate: Crate) -> Arc<ItemMap>; |
@@ -105,11 +105,14 @@ pub trait HirDatabase: PersistentHirDatabase { | |||
105 | #[salsa::invoke(crate::ty::type_for_field)] | 105 | #[salsa::invoke(crate::ty::type_for_field)] |
106 | fn type_for_field(&self, field: StructField) -> Ty; | 106 | fn type_for_field(&self, field: StructField) -> Ty; |
107 | 107 | ||
108 | #[salsa::invoke(crate::expr::body_hir)] | 108 | #[salsa::invoke(crate::expr::body_with_source_map_query)] |
109 | fn body_hir(&self, func: Function) -> Arc<crate::expr::Body>; | 109 | fn body_with_source_map( |
110 | &self, | ||
111 | func: Function, | ||
112 | ) -> (Arc<crate::expr::Body>, Arc<crate::expr::BodySourceMap>); | ||
110 | 113 | ||
111 | #[salsa::invoke(crate::expr::body_syntax_mapping)] | 114 | #[salsa::invoke(crate::expr::body_hir_query)] |
112 | fn body_syntax_mapping(&self, func: Function) -> Arc<crate::expr::BodySyntaxMapping>; | 115 | fn body_hir(&self, func: Function) -> Arc<crate::expr::Body>; |
113 | 116 | ||
114 | #[salsa::invoke(crate::ty::method_resolution::CrateImplBlocks::impls_in_crate_query)] | 117 | #[salsa::invoke(crate::ty::method_resolution::CrateImplBlocks::impls_in_crate_query)] |
115 | fn impls_in_crate(&self, krate: Crate) -> Arc<CrateImplBlocks>; | 118 | fn impls_in_crate(&self, krate: Crate) -> Arc<CrateImplBlocks>; |