aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/db.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_hir/src/db.rs')
-rw-r--r--crates/ra_hir/src/db.rs14
1 files changed, 10 insertions, 4 deletions
diff --git a/crates/ra_hir/src/db.rs b/crates/ra_hir/src/db.rs
index d2d6f95b7..651f0d4ca 100644
--- a/crates/ra_hir/src/db.rs
+++ b/crates/ra_hir/src/db.rs
@@ -16,9 +16,8 @@ use crate::{
16 adt::{StructData, EnumData}, 16 adt::{StructData, EnumData},
17 impl_block::{ModuleImplBlocks, ImplSourceMap, ImplBlock}, 17 impl_block::{ModuleImplBlocks, ImplSourceMap, ImplBlock},
18 generics::{GenericParams, GenericDef}, 18 generics::{GenericParams, GenericDef},
19 type_ref::TypeRef,
20 traits::TraitData, 19 traits::TraitData,
21 lang_item::{LangItems, LangItemTarget}, 20 lang_item::{LangItems, LangItemTarget}, type_alias::TypeAliasData,
22}; 21};
23 22
24// This database has access to source code, so queries here are not really 23// This database has access to source code, so queries here are not really
@@ -113,8 +112,8 @@ pub trait DefDatabase: SourceDatabase {
113 #[salsa::invoke(crate::FnSignature::fn_signature_query)] 112 #[salsa::invoke(crate::FnSignature::fn_signature_query)]
114 fn fn_signature(&self, func: Function) -> Arc<FnSignature>; 113 fn fn_signature(&self, func: Function) -> Arc<FnSignature>;
115 114
116 #[salsa::invoke(crate::type_alias::type_alias_ref_query)] 115 #[salsa::invoke(crate::type_alias::type_alias_data_query)]
117 fn type_alias_ref(&self, typ: TypeAlias) -> Arc<TypeRef>; 116 fn type_alias_data(&self, typ: TypeAlias) -> Arc<TypeAliasData>;
118 117
119 #[salsa::invoke(crate::ConstSignature::const_signature_query)] 118 #[salsa::invoke(crate::ConstSignature::const_signature_query)]
120 fn const_signature(&self, konst: Const) -> Arc<ConstSignature>; 119 fn const_signature(&self, konst: Const) -> Arc<ConstSignature>;
@@ -185,6 +184,13 @@ pub trait HirDatabase: DefDatabase + AstDatabase {
185 krate: Crate, 184 krate: Crate,
186 goal: crate::ty::Canonical<crate::ty::TraitRef>, 185 goal: crate::ty::Canonical<crate::ty::TraitRef>,
187 ) -> Option<crate::ty::traits::Solution>; 186 ) -> Option<crate::ty::traits::Solution>;
187
188 #[salsa::invoke(crate::ty::traits::normalize)]
189 fn normalize(
190 &self,
191 krate: Crate,
192 goal: crate::ty::Canonical<crate::ty::traits::ProjectionPredicate>,
193 ) -> Option<crate::ty::traits::Solution>;
188} 194}
189 195
190#[test] 196#[test]