pub fn check_orphan_rules<'db>(
db: &'db (dyn HirDatabase + 'static),
impl_: ImplId,
) -> boolExpand description
Checks whether the impl satisfies the orphan rules.
Given impl<P1..=Pn> Trait<T1..=Tn> for T0, an impl is valid only if at least one of the following is true:
- Trait is a local trait
- All of
- At least one of the types
T0..=Tnmust be a local type. LetTibe the first such type. - No uncovered type parameters
P1..=Pnmay appear inT0..Ti(excludingTi)
- At least one of the types