Skip to content

Commit 62a49c3

Browse files
committed
Add tcx lifetime to Binder
1 parent 74851f4 commit 62a49c3

File tree

46 files changed

+274
-228
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+274
-228
lines changed

compiler/rustc_infer/src/infer/canonical/canonicalizer.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,7 @@ impl<'cx, 'tcx> TypeFolder<'tcx> for Canonicalizer<'cx, 'tcx> {
293293
self.tcx
294294
}
295295

296-
fn fold_binder<T>(&mut self, t: ty::Binder<T>) -> ty::Binder<T>
296+
fn fold_binder<T>(&mut self, t: ty::Binder<'tcx, T>) -> ty::Binder<'tcx, T>
297297
where
298298
T: TypeFoldable<'tcx>,
299299
{

compiler/rustc_infer/src/infer/combine.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -545,9 +545,9 @@ impl TypeRelation<'tcx> for Generalizer<'_, 'tcx> {
545545

546546
fn binders<T>(
547547
&mut self,
548-
a: ty::Binder<T>,
549-
b: ty::Binder<T>,
550-
) -> RelateResult<'tcx, ty::Binder<T>>
548+
a: ty::Binder<'tcx, T>,
549+
b: ty::Binder<'tcx, T>,
550+
) -> RelateResult<'tcx, ty::Binder<'tcx, T>>
551551
where
552552
T: Relate<'tcx>,
553553
{
@@ -840,9 +840,9 @@ impl TypeRelation<'tcx> for ConstInferUnifier<'_, 'tcx> {
840840

841841
fn binders<T>(
842842
&mut self,
843-
a: ty::Binder<T>,
844-
b: ty::Binder<T>,
845-
) -> RelateResult<'tcx, ty::Binder<T>>
843+
a: ty::Binder<'tcx, T>,
844+
b: ty::Binder<'tcx, T>,
845+
) -> RelateResult<'tcx, ty::Binder<'tcx, T>>
846846
where
847847
T: Relate<'tcx>,
848848
{

compiler/rustc_infer/src/infer/equate.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -124,9 +124,9 @@ impl TypeRelation<'tcx> for Equate<'combine, 'infcx, 'tcx> {
124124

125125
fn binders<T>(
126126
&mut self,
127-
a: ty::Binder<T>,
128-
b: ty::Binder<T>,
129-
) -> RelateResult<'tcx, ty::Binder<T>>
127+
a: ty::Binder<'tcx, T>,
128+
b: ty::Binder<'tcx, T>,
129+
) -> RelateResult<'tcx, ty::Binder<'tcx, T>>
130130
where
131131
T: Relate<'tcx>,
132132
{

compiler/rustc_infer/src/infer/error_reporting/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -514,7 +514,7 @@ impl<'a, 'tcx> InferCtxt<'a, 'tcx> {
514514

515515
fn print_dyn_existential(
516516
self,
517-
_predicates: &'tcx ty::List<ty::Binder<ty::ExistentialPredicate<'tcx>>>,
517+
_predicates: &'tcx ty::List<ty::Binder<'tcx, ty::ExistentialPredicate<'tcx>>>,
518518
) -> Result<Self::DynExistential, Self::Error> {
519519
Err(NonTrivialPath)
520520
}

compiler/rustc_infer/src/infer/glb.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,9 +85,9 @@ impl TypeRelation<'tcx> for Glb<'combine, 'infcx, 'tcx> {
8585

8686
fn binders<T>(
8787
&mut self,
88-
a: ty::Binder<T>,
89-
b: ty::Binder<T>,
90-
) -> RelateResult<'tcx, ty::Binder<T>>
88+
a: ty::Binder<'tcx, T>,
89+
b: ty::Binder<'tcx, T>,
90+
) -> RelateResult<'tcx, ty::Binder<'tcx, T>>
9191
where
9292
T: Relate<'tcx>,
9393
{

compiler/rustc_infer/src/infer/higher_ranked/mod.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ use rustc_middle::ty::{self, Binder, TypeFoldable};
1111
impl<'a, 'tcx> CombineFields<'a, 'tcx> {
1212
pub fn higher_ranked_sub<T>(
1313
&mut self,
14-
a: Binder<T>,
15-
b: Binder<T>,
14+
a: Binder<'tcx, T>,
15+
b: Binder<'tcx, T>,
1616
a_is_expected: bool,
17-
) -> RelateResult<'tcx, Binder<T>>
17+
) -> RelateResult<'tcx, Binder<'tcx, T>>
1818
where
1919
T: Relate<'tcx>,
2020
{
@@ -69,7 +69,7 @@ impl<'a, 'tcx> InferCtxt<'a, 'tcx> {
6969
/// the [rustc dev guide].
7070
///
7171
/// [rustc dev guide]: https://rustc-dev-guide.rust-lang.org/traits/hrtb.html
72-
pub fn replace_bound_vars_with_placeholders<T>(&self, binder: ty::Binder<T>) -> T
72+
pub fn replace_bound_vars_with_placeholders<T>(&self, binder: ty::Binder<'tcx, T>) -> T
7373
where
7474
T: TypeFoldable<'tcx>,
7575
{

compiler/rustc_infer/src/infer/lub.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,9 +85,9 @@ impl TypeRelation<'tcx> for Lub<'combine, 'infcx, 'tcx> {
8585

8686
fn binders<T>(
8787
&mut self,
88-
a: ty::Binder<T>,
89-
b: ty::Binder<T>,
90-
) -> RelateResult<'tcx, ty::Binder<T>>
88+
a: ty::Binder<'tcx, T>,
89+
b: ty::Binder<'tcx, T>,
90+
) -> RelateResult<'tcx, ty::Binder<'tcx, T>>
9191
where
9292
T: Relate<'tcx>,
9393
{

compiler/rustc_infer/src/infer/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1406,7 +1406,7 @@ impl<'a, 'tcx> InferCtxt<'a, 'tcx> {
14061406
&self,
14071407
span: Span,
14081408
lbrct: LateBoundRegionConversionTime,
1409-
value: ty::Binder<T>,
1409+
value: ty::Binder<'tcx, T>,
14101410
) -> (T, BTreeMap<ty::BoundRegion, ty::Region<'tcx>>)
14111411
where
14121412
T: TypeFoldable<'tcx>,

compiler/rustc_infer/src/infer/nll_relate/mod.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ where
157157

158158
fn create_scope(
159159
&mut self,
160-
value: ty::Binder<impl Relate<'tcx>>,
160+
value: ty::Binder<'tcx, impl Relate<'tcx>>,
161161
universally_quantified: UniversallyQuantified,
162162
) -> BoundRegionScope<'tcx> {
163163
let mut scope = BoundRegionScope::default();
@@ -608,9 +608,9 @@ where
608608

609609
fn binders<T>(
610610
&mut self,
611-
a: ty::Binder<T>,
612-
b: ty::Binder<T>,
613-
) -> RelateResult<'tcx, ty::Binder<T>>
611+
a: ty::Binder<'tcx, T>,
612+
b: ty::Binder<'tcx, T>,
613+
) -> RelateResult<'tcx, ty::Binder<'tcx, T>>
614614
where
615615
T: Relate<'tcx>,
616616
{
@@ -744,7 +744,7 @@ struct ScopeInstantiator<'me, 'tcx> {
744744
impl<'me, 'tcx> TypeVisitor<'tcx> for ScopeInstantiator<'me, 'tcx> {
745745
fn visit_binder<T: TypeFoldable<'tcx>>(
746746
&mut self,
747-
t: &ty::Binder<T>,
747+
t: &ty::Binder<'tcx, T>,
748748
) -> ControlFlow<Self::BreakTy> {
749749
self.target_index.shift_in(1);
750750
t.super_visit_with(self);
@@ -997,9 +997,9 @@ where
997997

998998
fn binders<T>(
999999
&mut self,
1000-
a: ty::Binder<T>,
1001-
_: ty::Binder<T>,
1002-
) -> RelateResult<'tcx, ty::Binder<T>>
1000+
a: ty::Binder<'tcx, T>,
1001+
_: ty::Binder<'tcx, T>,
1002+
) -> RelateResult<'tcx, ty::Binder<'tcx, T>>
10031003
where
10041004
T: Relate<'tcx>,
10051005
{

compiler/rustc_infer/src/infer/sub.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -162,9 +162,9 @@ impl TypeRelation<'tcx> for Sub<'combine, 'infcx, 'tcx> {
162162

163163
fn binders<T>(
164164
&mut self,
165-
a: ty::Binder<T>,
166-
b: ty::Binder<T>,
167-
) -> RelateResult<'tcx, ty::Binder<T>>
165+
a: ty::Binder<'tcx, T>,
166+
b: ty::Binder<'tcx, T>,
167+
) -> RelateResult<'tcx, ty::Binder<'tcx, T>>
168168
where
169169
T: Relate<'tcx>,
170170
{

compiler/rustc_infer/src/traits/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ impl<'tcx> FulfillmentError<'tcx> {
128128
}
129129

130130
impl<'tcx> TraitObligation<'tcx> {
131-
pub fn self_ty(&self) -> ty::Binder<Ty<'tcx>> {
131+
pub fn self_ty(&self) -> ty::Binder<'tcx, Ty<'tcx>> {
132132
self.predicate.map_bound(|p| p.self_ty())
133133
}
134134
}

compiler/rustc_lint/src/context.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -909,7 +909,7 @@ impl<'tcx> LateContext<'tcx> {
909909

910910
fn print_dyn_existential(
911911
self,
912-
_predicates: &'tcx ty::List<ty::Binder<ty::ExistentialPredicate<'tcx>>>,
912+
_predicates: &'tcx ty::List<ty::Binder<'tcx, ty::ExistentialPredicate<'tcx>>>,
913913
) -> Result<Self::DynExistential, Self::Error> {
914914
Ok(())
915915
}

compiler/rustc_middle/src/ich/impls_ty.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ impl<'tcx> HashStable<StableHashingContext<'tcx>> for ty::BoundVar {
118118
}
119119
}
120120

121-
impl<'a, T> HashStable<StableHashingContext<'a>> for ty::Binder<T>
121+
impl<'a, 'tcx, T> HashStable<StableHashingContext<'a>> for ty::Binder<'tcx, T>
122122
where
123123
T: HashStable<StableHashingContext<'a>>,
124124
{

compiler/rustc_middle/src/infer/canonical.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,7 +277,7 @@ impl<'tcx, V> Canonical<'tcx, V> {
277277
}
278278

279279
pub type QueryOutlivesConstraint<'tcx> =
280-
ty::Binder<ty::OutlivesPredicate<GenericArg<'tcx>, Region<'tcx>>>;
280+
ty::Binder<'tcx, ty::OutlivesPredicate<GenericArg<'tcx>, Region<'tcx>>>;
281281

282282
TrivialTypeFoldableAndLiftImpls! {
283283
for <'tcx> {

compiler/rustc_middle/src/ty/_match.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -112,9 +112,9 @@ impl TypeRelation<'tcx> for Match<'tcx> {
112112

113113
fn binders<T>(
114114
&mut self,
115-
a: ty::Binder<T>,
116-
b: ty::Binder<T>,
117-
) -> RelateResult<'tcx, ty::Binder<T>>
115+
a: ty::Binder<'tcx, T>,
116+
b: ty::Binder<'tcx, T>,
117+
) -> RelateResult<'tcx, ty::Binder<'tcx, T>>
118118
where
119119
T: Relate<'tcx>,
120120
{

compiler/rustc_middle/src/ty/codec.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ impl<'tcx, E: TyEncoder<'tcx>> Encodable<E> for Ty<'tcx> {
120120
}
121121
}
122122

123-
impl<'tcx, E: TyEncoder<'tcx>> Encodable<E> for ty::Binder<ty::PredicateKind<'tcx>> {
123+
impl<'tcx, E: TyEncoder<'tcx>> Encodable<E> for ty::Binder<'tcx, ty::PredicateKind<'tcx>> {
124124
fn encode(&self, e: &mut E) -> Result<(), E::Error> {
125125
encode_with_shorthand(e, &self.skip_binder(), TyEncoder::predicate_shorthands)
126126
}
@@ -226,8 +226,8 @@ impl<'tcx, D: TyDecoder<'tcx>> Decodable<D> for Ty<'tcx> {
226226
}
227227
}
228228

229-
impl<'tcx, D: TyDecoder<'tcx>> Decodable<D> for ty::Binder<ty::PredicateKind<'tcx>> {
230-
fn decode(decoder: &mut D) -> Result<ty::Binder<ty::PredicateKind<'tcx>>, D::Error> {
229+
impl<'tcx, D: TyDecoder<'tcx>> Decodable<D> for ty::Binder<'tcx, ty::PredicateKind<'tcx>> {
230+
fn decode(decoder: &mut D) -> Result<ty::Binder<'tcx, ty::PredicateKind<'tcx>>, D::Error> {
231231
// Handle shorthands first, if we have an usize > 0x80.
232232
Ok(ty::Binder::bind(if decoder.positioned_at_shorthand() {
233233
let pos = decoder.read_usize()?;
@@ -319,7 +319,7 @@ impl<'tcx, D: TyDecoder<'tcx>> RefDecodable<'tcx, D> for ty::List<Ty<'tcx>> {
319319
}
320320

321321
impl<'tcx, D: TyDecoder<'tcx>> RefDecodable<'tcx, D>
322-
for ty::List<ty::Binder<ty::ExistentialPredicate<'tcx>>>
322+
for ty::List<ty::Binder<'tcx, ty::ExistentialPredicate<'tcx>>>
323323
{
324324
fn decode(decoder: &mut D) -> Result<&'tcx Self, D::Error> {
325325
let len = decoder.read_usize()?;
@@ -382,7 +382,7 @@ impl<'tcx, D: TyDecoder<'tcx>> RefDecodable<'tcx, D> for [mir::abstract_const::N
382382
impl_decodable_via_ref! {
383383
&'tcx ty::TypeckResults<'tcx>,
384384
&'tcx ty::List<Ty<'tcx>>,
385-
&'tcx ty::List<ty::Binder<ty::ExistentialPredicate<'tcx>>>,
385+
&'tcx ty::List<ty::Binder<'tcx, ty::ExistentialPredicate<'tcx>>>,
386386
&'tcx Allocation,
387387
&'tcx mir::Body<'tcx>,
388388
&'tcx mir::UnsafetyCheckResult,
@@ -488,12 +488,12 @@ macro_rules! implement_ty_decoder {
488488
macro_rules! impl_binder_encode_decode {
489489
($($t:ty),+ $(,)?) => {
490490
$(
491-
impl<'tcx, E: TyEncoder<'tcx>> Encodable<E> for ty::Binder<$t> {
491+
impl<'tcx, E: TyEncoder<'tcx>> Encodable<E> for ty::Binder<'tcx, $t> {
492492
fn encode(&self, e: &mut E) -> Result<(), E::Error> {
493493
self.as_ref().skip_binder().encode(e)
494494
}
495495
}
496-
impl<'tcx, D: TyDecoder<'tcx>> Decodable<D> for ty::Binder<$t> {
496+
impl<'tcx, D: TyDecoder<'tcx>> Decodable<D> for ty::Binder<'tcx, $t> {
497497
fn decode(decoder: &mut D) -> Result<Self, D::Error> {
498498
Ok(ty::Binder::bind(Decodable::decode(decoder)?))
499499
}

compiler/rustc_middle/src/ty/context.rs

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,8 @@ pub struct CtxtInterners<'tcx> {
8787
substs: InternedSet<'tcx, InternalSubsts<'tcx>>,
8888
canonical_var_infos: InternedSet<'tcx, List<CanonicalVarInfo<'tcx>>>,
8989
region: InternedSet<'tcx, RegionKind>,
90-
poly_existential_predicates: InternedSet<'tcx, List<ty::Binder<ExistentialPredicate<'tcx>>>>,
90+
poly_existential_predicates:
91+
InternedSet<'tcx, List<ty::Binder<'tcx, ExistentialPredicate<'tcx>>>>,
9192
predicate: InternedSet<'tcx, PredicateInner<'tcx>>,
9293
predicates: InternedSet<'tcx, List<Predicate<'tcx>>>,
9394
projs: InternedSet<'tcx, List<ProjectionKind>>,
@@ -136,7 +137,10 @@ impl<'tcx> CtxtInterners<'tcx> {
136137
}
137138

138139
#[inline(never)]
139-
fn intern_predicate(&self, kind: Binder<PredicateKind<'tcx>>) -> &'tcx PredicateInner<'tcx> {
140+
fn intern_predicate(
141+
&self,
142+
kind: Binder<'tcx, PredicateKind<'tcx>>,
143+
) -> &'tcx PredicateInner<'tcx> {
140144
self.predicate
141145
.intern(kind, |kind| {
142146
let flags = super::flags::FlagComputation::for_predicate(kind);
@@ -449,7 +453,7 @@ pub struct TypeckResults<'tcx> {
449453

450454
/// Stores the type, expression, span and optional scope span of all types
451455
/// that are live across the yield of this generator (if a generator).
452-
pub generator_interior_types: ty::Binder<Vec<GeneratorInteriorTypeCause<'tcx>>>,
456+
pub generator_interior_types: ty::Binder<'tcx, Vec<GeneratorInteriorTypeCause<'tcx>>>,
453457

454458
/// We sometimes treat byte string literals (which are of type `&[u8; N]`)
455459
/// as `&[u8]`, depending on the pattern in which they are used.
@@ -1616,7 +1620,7 @@ nop_lift! {allocation; &'a Allocation => &'tcx Allocation}
16161620
nop_lift! {predicate; &'a PredicateInner<'a> => &'tcx PredicateInner<'tcx>}
16171621

16181622
nop_list_lift! {type_list; Ty<'a> => Ty<'tcx>}
1619-
nop_list_lift! {poly_existential_predicates; ty::Binder<ExistentialPredicate<'a>> => ty::Binder<ExistentialPredicate<'tcx>>}
1623+
nop_list_lift! {poly_existential_predicates; ty::Binder<'a, ExistentialPredicate<'a>> => ty::Binder<'tcx, ExistentialPredicate<'tcx>>}
16201624
nop_list_lift! {predicates; Predicate<'a> => Predicate<'tcx>}
16211625
nop_list_lift! {canonical_var_infos; CanonicalVarInfo<'a> => CanonicalVarInfo<'tcx>}
16221626
nop_list_lift! {projs; ProjectionKind => ProjectionKind}
@@ -1965,8 +1969,8 @@ impl<'tcx> Hash for Interned<'tcx, PredicateInner<'tcx>> {
19651969
}
19661970
}
19671971

1968-
impl<'tcx> Borrow<Binder<PredicateKind<'tcx>>> for Interned<'tcx, PredicateInner<'tcx>> {
1969-
fn borrow<'a>(&'a self) -> &'a Binder<PredicateKind<'tcx>> {
1972+
impl<'tcx> Borrow<Binder<'tcx, PredicateKind<'tcx>>> for Interned<'tcx, PredicateInner<'tcx>> {
1973+
fn borrow<'a>(&'a self) -> &'a Binder<'tcx, PredicateKind<'tcx>> {
19701974
&self.0.kind
19711975
}
19721976
}
@@ -2072,7 +2076,7 @@ slice_interners!(
20722076
substs: _intern_substs(GenericArg<'tcx>),
20732077
canonical_var_infos: _intern_canonical_var_infos(CanonicalVarInfo<'tcx>),
20742078
poly_existential_predicates:
2075-
_intern_poly_existential_predicates(ty::Binder<ExistentialPredicate<'tcx>>),
2079+
_intern_poly_existential_predicates(ty::Binder<'tcx, ExistentialPredicate<'tcx>>),
20762080
predicates: _intern_predicates(Predicate<'tcx>),
20772081
projs: _intern_projs(ProjectionKind),
20782082
place_elems: _intern_place_elems(PlaceElem<'tcx>),
@@ -2158,7 +2162,7 @@ impl<'tcx> TyCtxt<'tcx> {
21582162
}
21592163

21602164
#[inline]
2161-
pub fn mk_predicate(self, binder: Binder<PredicateKind<'tcx>>) -> Predicate<'tcx> {
2165+
pub fn mk_predicate(self, binder: Binder<'tcx, PredicateKind<'tcx>>) -> Predicate<'tcx> {
21622166
let inner = self.interners.intern_predicate(binder);
21632167
Predicate { inner }
21642168
}
@@ -2167,7 +2171,7 @@ impl<'tcx> TyCtxt<'tcx> {
21672171
pub fn reuse_or_mk_predicate(
21682172
self,
21692173
pred: Predicate<'tcx>,
2170-
binder: Binder<PredicateKind<'tcx>>,
2174+
binder: Binder<'tcx, PredicateKind<'tcx>>,
21712175
) -> Predicate<'tcx> {
21722176
if pred.kind() != binder { self.mk_predicate(binder) } else { pred }
21732177
}
@@ -2334,7 +2338,7 @@ impl<'tcx> TyCtxt<'tcx> {
23342338
#[inline]
23352339
pub fn mk_dynamic(
23362340
self,
2337-
obj: &'tcx List<ty::Binder<ExistentialPredicate<'tcx>>>,
2341+
obj: &'tcx List<ty::Binder<'tcx, ExistentialPredicate<'tcx>>>,
23382342
reg: ty::Region<'tcx>,
23392343
) -> Ty<'tcx> {
23402344
self.mk_ty(Dynamic(obj, reg))
@@ -2361,7 +2365,7 @@ impl<'tcx> TyCtxt<'tcx> {
23612365
}
23622366

23632367
#[inline]
2364-
pub fn mk_generator_witness(self, types: ty::Binder<&'tcx List<Ty<'tcx>>>) -> Ty<'tcx> {
2368+
pub fn mk_generator_witness(self, types: ty::Binder<'tcx, &'tcx List<Ty<'tcx>>>) -> Ty<'tcx> {
23652369
self.mk_ty(GeneratorWitness(types))
23662370
}
23672371

@@ -2466,8 +2470,8 @@ impl<'tcx> TyCtxt<'tcx> {
24662470

24672471
pub fn intern_poly_existential_predicates(
24682472
self,
2469-
eps: &[ty::Binder<ExistentialPredicate<'tcx>>],
2470-
) -> &'tcx List<ty::Binder<ExistentialPredicate<'tcx>>> {
2473+
eps: &[ty::Binder<'tcx, ExistentialPredicate<'tcx>>],
2474+
) -> &'tcx List<ty::Binder<'tcx, ExistentialPredicate<'tcx>>> {
24712475
assert!(!eps.is_empty());
24722476
assert!(
24732477
eps.array_windows()
@@ -2533,8 +2537,8 @@ impl<'tcx> TyCtxt<'tcx> {
25332537

25342538
pub fn mk_poly_existential_predicates<
25352539
I: InternAs<
2536-
[ty::Binder<ExistentialPredicate<'tcx>>],
2537-
&'tcx List<ty::Binder<ExistentialPredicate<'tcx>>>,
2540+
[ty::Binder<'tcx, ExistentialPredicate<'tcx>>],
2541+
&'tcx List<ty::Binder<'tcx, ExistentialPredicate<'tcx>>>,
25382542
>,
25392543
>(
25402544
self,

0 commit comments

Comments
 (0)