-
Notifications
You must be signed in to change notification settings - Fork 13.8k
Open
Labels
A-technical-debtArea: Internal cleanup work A-type-systemArea: Type system C-cleanupCategory: PRs that clean code up or issues documenting cleanup. T-compilerRelevant to the compiler team, which will review and decide on the PR/issue. T-typesRelevant to the types team, which will review and decide on the PR/issue. WG-trait-system-refactorThe Rustc Trait System Refactor Initiative (-Znext-solver)
@lcnr
Description
we should try to clean up our type relations further:
- try to unify
Equate
andSub
to make them closer tonll::TypeRelating
- merge
Lub
andGlb
into the same (maybe generic) type relation, prolly just with a field - reuse more components, e.g. instantiating infer vars should be shared, not only
generalize
- completely merge
Equate/Sub
andnll:TypeRelating
I intend to look into this myself but would also appreciate some help. This is a quite involved and sometimes subtle area however and I don't have the capacity for in-depth mentoring rn
Metadata
Metadata
Assignees
Labels
A-technical-debtArea: Internal cleanup work A-type-systemArea: Type system C-cleanupCategory: PRs that clean code up or issues documenting cleanup. T-compilerRelevant to the compiler team, which will review and decide on the PR/issue. T-typesRelevant to the types team, which will review and decide on the PR/issue. WG-trait-system-refactorThe Rustc Trait System Refactor Initiative (-Znext-solver)