From b7049ea543d5ea9a965dfa51d9da923739f2420d Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Tue, 27 Nov 2018 23:33:36 +0300 Subject: move query definitions --- crates/ra_analysis/src/db.rs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'crates/ra_analysis/src/db.rs') diff --git a/crates/ra_analysis/src/db.rs b/crates/ra_analysis/src/db.rs index 08aa9053b..78bbfcf2d 100644 --- a/crates/ra_analysis/src/db.rs +++ b/crates/ra_analysis/src/db.rs @@ -10,7 +10,7 @@ use crate::{ hir, symbol_index::SymbolIndex, syntax_ptr::SyntaxPtr, - loc2id::{IdMaps, IdDatabase}, + loc2id::{IdMaps}, Cancelable, Canceled, FileId, }; @@ -77,7 +77,14 @@ impl salsa::ParallelDatabase for RootDatabase { } } -impl IdDatabase for RootDatabase { +pub(crate) trait BaseDatabase: salsa::Database { + fn id_maps(&self) -> &IdMaps; + fn check_canceled(&self) -> Cancelable<()> { + check_canceled(self) + } +} + +impl BaseDatabase for RootDatabase { fn id_maps(&self) -> &IdMaps { &self.id_maps } @@ -136,7 +143,7 @@ salsa::database_storage! { } salsa::query_group! { - pub(crate) trait SyntaxDatabase: crate::input::FilesDatabase { + pub(crate) trait SyntaxDatabase: crate::input::FilesDatabase + BaseDatabase { fn file_syntax(file_id: FileId) -> SourceFileNode { type FileSyntaxQuery; } -- cgit v1.2.3