-
Notifications
You must be signed in to change notification settings - Fork 13.9k
Open
Labels
A-async-closures`async || {}``async || {}`C-cleanupCategory: PRs that clean code up or issues documenting cleanup.Category: PRs that clean code up or issues documenting cleanup.C-enhancementCategory: An issue proposing an enhancement or a PR with one.Category: An issue proposing an enhancement or a PR with one.T-typesRelevant to the types team, which will review and decide on the PR/issue.Relevant to the types team, which will review and decide on the PR/issue.
Description
This will allow us to avoid annoying trait duplication if we want to add gen || and async gen || closures.
We need to lower impl async Fn() bounds to LendingFn bounds using the associated_type_bounds feature. This doesn't work currently until:
- For a rigid projection, recursively look at the self type's item bounds to fix the
associated_type_boundsfeature #120584 fixes associated type bounds in some positions - We fix hrtb + infer types break auto traits with return type notation #109924 (well, the general problem of HRTB with projections that have infer vars in them)
- Figure out if we want to add a new associated type to
Fn/FnMut, or just have two new traits, i.e. figure out how to unify the fact thatLendingFnMutdoesn't necessarily haveFnOnceas a supertrait.
Metadata
Metadata
Assignees
Labels
A-async-closures`async || {}``async || {}`C-cleanupCategory: PRs that clean code up or issues documenting cleanup.Category: PRs that clean code up or issues documenting cleanup.C-enhancementCategory: An issue proposing an enhancement or a PR with one.Category: An issue proposing an enhancement or a PR with one.T-typesRelevant to the types team, which will review and decide on the PR/issue.Relevant to the types team, which will review and decide on the PR/issue.