Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir/src/lib.rs')
| -rw-r--r-- | crates/hir/src/lib.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/crates/hir/src/lib.rs b/crates/hir/src/lib.rs index b0ff797275..2c91a11e15 100644 --- a/crates/hir/src/lib.rs +++ b/crates/hir/src/lib.rs @@ -1610,6 +1610,12 @@ pub struct Trait { } impl Trait { + pub fn lang(db: &dyn HirDatabase, krate: Crate, name: &Name) -> Option<Trait> { + db.lang_item(krate.into(), name.to_smol_str()) + .and_then(LangItemTarget::as_trait) + .map(Into::into) + } + pub fn module(self, db: &dyn HirDatabase) -> Module { Module { id: self.id.lookup(db.upcast()).container } } |