diff options
Diffstat (limited to 'crates/ra_ide_api/src/db.rs')
-rw-r--r-- | crates/ra_ide_api/src/db.rs | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/crates/ra_ide_api/src/db.rs b/crates/ra_ide_api/src/db.rs index 60f84675d..36778b955 100644 --- a/crates/ra_ide_api/src/db.rs +++ b/crates/ra_ide_api/src/db.rs | |||
@@ -1,7 +1,9 @@ | |||
1 | use std::{fmt, sync::Arc}; | 1 | use std::{fmt, sync::Arc}; |
2 | 2 | ||
3 | use salsa::{self, Database}; | 3 | use ra_db::{ |
4 | use ra_db::{LocationIntener, BaseDatabase, FileId, Canceled}; | 4 | LocationIntener, BaseDatabase, FileId, Canceled, |
5 | salsa::{self, Database}, | ||
6 | }; | ||
5 | 7 | ||
6 | use crate::{symbol_index, LineIndex}; | 8 | use crate::{symbol_index, LineIndex}; |
7 | 9 | ||
@@ -73,12 +75,9 @@ impl AsRef<LocationIntener<hir::MacroCallLoc, hir::MacroCallId>> for RootDatabas | |||
73 | } | 75 | } |
74 | } | 76 | } |
75 | 77 | ||
76 | salsa::query_group! { | 78 | #[salsa::query_group] |
77 | pub(crate) trait LineIndexDatabase: ra_db::FilesDatabase + BaseDatabase { | 79 | pub(crate) trait LineIndexDatabase: ra_db::FilesDatabase + BaseDatabase { |
78 | fn line_index(file_id: FileId) -> Arc<LineIndex> { | 80 | fn line_index(&self, file_id: FileId) -> Arc<LineIndex>; |
79 | type LineIndexQuery; | ||
80 | } | ||
81 | } | ||
82 | } | 81 | } |
83 | 82 | ||
84 | fn line_index(db: &impl ra_db::FilesDatabase, file_id: FileId) -> Arc<LineIndex> { | 83 | fn line_index(db: &impl ra_db::FilesDatabase, file_id: FileId) -> Arc<LineIndex> { |
@@ -109,10 +108,10 @@ salsa::database_storage! { | |||
109 | } | 108 | } |
110 | impl hir::db::HirDatabase { | 109 | impl hir::db::HirDatabase { |
111 | fn hir_source_file() for hir::db::HirSourceFileQuery; | 110 | fn hir_source_file() for hir::db::HirSourceFileQuery; |
112 | fn expand_macro_invocation() for hir::db::ExpandMacroCallQuery; | 111 | fn expand_macro_invocation() for hir::db::ExpandMacroInvocationQuery; |
113 | fn module_tree() for hir::db::ModuleTreeQuery; | 112 | fn module_tree() for hir::db::ModuleTreeQuery; |
114 | fn fn_scopes() for hir::db::FnScopesQuery; | 113 | fn fn_scopes() for hir::db::FnScopesQuery; |
115 | fn file_items() for hir::db::SourceFileItemsQuery; | 114 | fn file_items() for hir::db::FileItemsQuery; |
116 | fn file_item() for hir::db::FileItemQuery; | 115 | fn file_item() for hir::db::FileItemQuery; |
117 | fn input_module_items() for hir::db::InputModuleItemsQuery; | 116 | fn input_module_items() for hir::db::InputModuleItemsQuery; |
118 | fn item_map() for hir::db::ItemMapQuery; | 117 | fn item_map() for hir::db::ItemMapQuery; |