Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir/src/source_analyzer.rs')
-rw-r--r--crates/hir/src/source_analyzer.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/crates/hir/src/source_analyzer.rs b/crates/hir/src/source_analyzer.rs
index 56ed81f053..4329a888b3 100644
--- a/crates/hir/src/source_analyzer.rs
+++ b/crates/hir/src/source_analyzer.rs
@@ -642,6 +642,14 @@ impl SourceAnalyzer {
}
}
+ pub(crate) fn resolve_use_type_arg(&self, name: &ast::NameRef) -> Option<crate::TypeParam> {
+ let name = name.as_name();
+ self.resolver
+ .all_generic_params()
+ .find_map(|(params, parent)| params.find_type_by_name(&name, *parent))
+ .map(crate::TypeParam::from)
+ }
+
pub(crate) fn resolve_path(
&self,
db: &dyn HirDatabase,