Add pub fn all_supertraits(…) HIR-level method to hir::Trait type

This commit is contained in:
Vincent Esche 2024-11-06 09:53:56 +01:00
parent b51f9bc736
commit 89a002ef9b

View file

@ -2704,6 +2704,11 @@ impl Trait {
db.trait_data(self.id).name.clone() db.trait_data(self.id).name.clone()
} }
pub fn all_supertraits(self, db: &dyn HirDatabase) -> Vec<Trait> {
let traits = all_super_traits(db.upcast(), self.into());
traits.iter().map(|tr| Trait::from(*tr)).collect()
}
pub fn items(self, db: &dyn HirDatabase) -> Vec<AssocItem> { pub fn items(self, db: &dyn HirDatabase) -> Vec<AssocItem> {
db.trait_data(self.id).items.iter().map(|(_name, it)| (*it).into()).collect() db.trait_data(self.id).items.iter().map(|(_name, it)| (*it).into()).collect()
} }