Implement use associated items of traits

This commit is contained in:
Frank King
2024-12-25 14:54:49 +08:00
parent 4e5fec2f1e
commit 5079acc060
21 changed files with 374 additions and 42 deletions

View File

@@ -920,10 +920,13 @@ impl<'ra> NameBindingData<'ra> {
}
fn is_importable(&self) -> bool {
!matches!(
self.res(),
Res::Def(DefKind::AssocConst | DefKind::AssocFn | DefKind::AssocTy, _)
)
!matches!(self.res(), Res::Def(DefKind::AssocTy, _))
}
// FIXME(import_trait_associated_functions): associate `const` or `fn` are not importable unless
// the feature `import_trait_associated_functions` is enable
fn is_assoc_const_or_fn(&self) -> bool {
matches!(self.res(), Res::Def(DefKind::AssocConst | DefKind::AssocFn, _))
}
fn macro_kind(&self) -> Option<MacroKind> {