aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_ty/src/test_db.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_hir_ty/src/test_db.rs')
-rw-r--r--crates/ra_hir_ty/src/test_db.rs18
1 files changed, 16 insertions, 2 deletions
diff --git a/crates/ra_hir_ty/src/test_db.rs b/crates/ra_hir_ty/src/test_db.rs
index 0be2fea4b..5bbeabf51 100644
--- a/crates/ra_hir_ty/src/test_db.rs
+++ b/crates/ra_hir_ty/src/test_db.rs
@@ -6,8 +6,10 @@ use std::{
6}; 6};
7 7
8use hir_def::{db::DefDatabase, AssocItemId, ModuleDefId, ModuleId}; 8use hir_def::{db::DefDatabase, AssocItemId, ModuleDefId, ModuleId};
9use hir_expand::diagnostics::DiagnosticSink; 9use hir_expand::{db::AstDatabase, diagnostics::DiagnosticSink};
10use ra_db::{salsa, CrateId, FileId, FileLoader, FileLoaderDelegate, RelativePath, SourceDatabase}; 10use ra_db::{
11 salsa, CrateId, FileId, FileLoader, FileLoaderDelegate, RelativePath, SourceDatabase, Upcast,
12};
11 13
12use crate::{db::HirDatabase, expr::ExprValidator}; 14use crate::{db::HirDatabase, expr::ExprValidator};
13 15
@@ -25,6 +27,18 @@ pub struct TestDB {
25 runtime: salsa::Runtime<TestDB>, 27 runtime: salsa::Runtime<TestDB>,
26} 28}
27 29
30impl Upcast<dyn AstDatabase> for TestDB {
31 fn upcast(&self) -> &(dyn AstDatabase + 'static) {
32 &*self
33 }
34}
35
36impl Upcast<dyn DefDatabase> for TestDB {
37 fn upcast(&self) -> &(dyn DefDatabase + 'static) {
38 &*self
39 }
40}
41
28impl salsa::Database for TestDB { 42impl salsa::Database for TestDB {
29 fn salsa_runtime(&self) -> &salsa::Runtime<TestDB> { 43 fn salsa_runtime(&self) -> &salsa::Runtime<TestDB> {
30 &self.runtime 44 &self.runtime