Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir/src/attrs.rs')
-rw-r--r--crates/hir/src/attrs.rs20
1 files changed, 11 insertions, 9 deletions
diff --git a/crates/hir/src/attrs.rs b/crates/hir/src/attrs.rs
index c8645b6282..c230bbad0b 100644
--- a/crates/hir/src/attrs.rs
+++ b/crates/hir/src/attrs.rs
@@ -14,12 +14,16 @@ use hir_expand::{
mod_path::{ModPath, PathKind},
name::Name,
};
-use hir_ty::{db::HirDatabase, method_resolution};
+use hir_ty::{
+ db::HirDatabase,
+ method_resolution,
+ next_solver::{DbInterner, mapping::ChalkToNextSolver},
+};
use crate::{
Adt, AsAssocItem, AssocItem, BuiltinType, Const, ConstParam, DocLinkDef, Enum, ExternCrateDecl,
Field, Function, GenericParam, HasCrate, Impl, LifetimeParam, Macro, Module, ModuleDef, Static,
- Struct, Trait, TraitAlias, Type, TypeAlias, TypeParam, Union, Variant, VariantDef,
+ Struct, Trait, Type, TypeAlias, TypeParam, Union, Variant, VariantDef,
};
pub trait HasAttrs {
@@ -48,7 +52,6 @@ impl_has_attrs![
(Static, StaticId),
(Const, ConstId),
(Trait, TraitId),
- (TraitAlias, TraitAliasId),
(TypeAlias, TypeAliasId),
(Macro, MacroId),
(Function, FunctionId),
@@ -137,7 +140,6 @@ fn resolve_doc_path_on_(
AttrDefId::StaticId(it) => it.resolver(db),
AttrDefId::ConstId(it) => it.resolver(db),
AttrDefId::TraitId(it) => it.resolver(db),
- AttrDefId::TraitAliasId(it) => it.resolver(db),
AttrDefId::TypeAliasId(it) => it.resolver(db),
AttrDefId::ImplId(it) => it.resolver(db),
AttrDefId::ExternBlockId(it) => it.resolver(db),
@@ -216,10 +218,6 @@ fn resolve_assoc_or_field(
DocLinkDef::ModuleDef(def)
});
}
- TypeNs::TraitAliasId(_) => {
- // XXX: Do these get resolved?
- return None;
- }
TypeNs::ModuleId(_) => {
return None;
}
@@ -277,7 +275,11 @@ fn resolve_impl_trait_item<'db>(
//
// FIXME: resolve type aliases (which are not yielded by iterate_path_candidates)
_ = method_resolution::iterate_path_candidates(
- &canonical,
+ &canonical.to_nextsolver(DbInterner::new_with(
+ db,
+ Some(environment.krate),
+ environment.block,
+ )),
db,
environment,
&traits_in_scope,