rust/compiler/rustc_ty_utils/src
bors 2a8a0fc423 Auto merge of #96883 - jackh726:early-binder-2, r=oli-obk
Add EarlyBinder

Chalk has no concept of `Param` (e0ade19d13/chalk-ir/src/lib.rs (L579)) or `ReEarlyBound` (e0ade19d13/chalk-ir/src/lib.rs (L1308)). Everything  is just "bound" - the equivalent of rustc's late-bound. It's not completely clear yet whether to move everything to the same time of binder in rustc or add `Param` and `ReEarlyBound` in Chalk.

Either way, tracking when we have or haven't already substituted out these in rustc can be helpful.

As a first step, I'm just adding a `EarlyBinder` newtype that is required to call `subst`. I also add a couple "transparent" `bound_*` wrappers around a couple query that are often immediately substituted.

r? `@nikomatsakis`
2022-05-14 23:53:11 +00:00
..
assoc.rs Store a Symbol instead of an Ident in AssocItem 2022-01-19 17:13:21 -05:00
common_traits.rs Don't consider !Unpin references as noalias 2021-03-21 20:10:53 +01:00
instance.rs Gracefully fail to resolve associated items instead of delay_span_bug. 2022-05-11 08:28:02 +02:00
lib.rs Adopt let else in more places 2022-02-19 17:27:43 +01:00
needs_drop.rs Add bound_type_of 2022-05-13 18:27:18 -04:00
representability.rs Specialize suggestion for Option<T> 2022-03-31 08:04:53 -07:00
ty.rs Add bound_type_of 2022-05-13 18:27:18 -04:00