Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit 75b2232

Browse files
committed
Auto merge of rust-lang#12681 - lnicola:bump-deps, r=lnicola
Bump deps
2 parents cc0bb71 + 993a19a commit 75b2232

File tree

26 files changed

+178
-170
lines changed

26 files changed

+178
-170
lines changed

Cargo.lock

Lines changed: 81 additions & 78 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/flycheck/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ rust-version = "1.57"
1010
doctest = false
1111

1212
[dependencies]
13-
crossbeam-channel = "0.5.4"
13+
crossbeam-channel = "0.5.5"
1414
tracing = "0.1.35"
15-
cargo_metadata = "0.14.2"
15+
cargo_metadata = "0.15.0"
1616
serde = { version = "1.0.137", features = ["derive"] }
1717
serde_json = "1.0.81"
1818
jod-thread = "0.1.2"

crates/hir-def/Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@ cov-mark = "2.0.0-pre.1"
1717
# We need to freeze the version of the crate, as the raw-api feature is considered unstable
1818
dashmap = { version = "=5.3.4", features = ["raw-api"] }
1919
drop_bomb = "0.1.5"
20-
either = "1.6.1"
20+
either = "1.7.0"
2121
fst = { version = "0.4.7", default-features = false }
2222
hashbrown = { version = "0.12.1", default-features = false }
23-
indexmap = "1.8.2"
23+
indexmap = "1.9.1"
2424
itertools = "0.10.3"
2525
la-arena = { version = "0.3.0", path = "../../lib/la-arena" }
2626
once_cell = "1.12.0"
2727
rustc-hash = "1.1.0"
28-
smallvec = "1.8.0"
28+
smallvec = "1.9.0"
2929
tracing = "0.1.35"
3030

3131
stdx = { path = "../stdx", version = "0.0.0" }

crates/hir-expand/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ doctest = false
1212
[dependencies]
1313
cov-mark = "2.0.0-pre.1"
1414
tracing = "0.1.35"
15-
either = "1.6.1"
15+
either = "1.7.0"
1616
rustc-hash = "1.1.0"
1717
la-arena = { version = "0.3.0", path = "../../lib/la-arena" }
1818
itertools = "0.10.3"

crates/hir-ty/Cargo.toml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,14 @@ doctest = false
1313
cov-mark = "2.0.0-pre.1"
1414
itertools = "0.10.3"
1515
arrayvec = "0.7.2"
16-
smallvec = "1.8.0"
16+
smallvec = "1.9.0"
1717
ena = "0.14.0"
1818
tracing = "0.1.35"
1919
rustc-hash = "1.1.0"
2020
scoped-tls = "1.0.0"
21-
chalk-solve = { version = "0.82.0", default-features = false }
22-
chalk-ir = "0.82.0"
23-
chalk-recursive = { version = "0.82.0", default-features = false }
21+
chalk-solve = { version = "0.83.0", default-features = false }
22+
chalk-ir = "0.83.0"
23+
chalk-recursive = { version = "0.83.0", default-features = false }
2424
la-arena = { version = "0.3.0", path = "../../lib/la-arena" }
2525
once_cell = "1.12.0"
2626
typed-arena = "2.0.1"
@@ -37,7 +37,7 @@ limit = { path = "../limit", version = "0.0.0" }
3737
test-utils = { path = "../test-utils" }
3838
expect-test = "1.3.0"
3939
tracing = "0.1.35"
40-
tracing-subscriber = { version = "0.3.11", default-features = false, features = [
40+
tracing-subscriber = { version = "0.3.14", default-features = false, features = [
4141
"env-filter",
4242
"registry",
4343
] }

crates/hir-ty/src/builder.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use std::iter;
44

55
use chalk_ir::{
66
cast::{Cast, CastTo, Caster},
7-
fold::Fold,
7+
fold::TypeFoldable,
88
interner::HasInterner,
99
AdtId, BoundVar, DebruijnIndex, Scalar,
1010
};
@@ -276,7 +276,7 @@ impl TyBuilder<TypeAliasId> {
276276
}
277277
}
278278

279-
impl<T: HasInterner<Interner = Interner> + Fold<Interner>> TyBuilder<Binders<T>> {
279+
impl<T: HasInterner<Interner = Interner> + TypeFoldable<Interner>> TyBuilder<Binders<T>> {
280280
fn subst_binders(b: Binders<T>) -> Self {
281281
let param_kinds = b
282282
.binders
@@ -290,7 +290,7 @@ impl<T: HasInterner<Interner = Interner> + Fold<Interner>> TyBuilder<Binders<T>>
290290
TyBuilder::new(b, param_kinds)
291291
}
292292

293-
pub fn build(self) -> <T as Fold<Interner>>::Result {
293+
pub fn build(self) -> T {
294294
let (b, subst) = self.build_internal();
295295
b.substitute(Interner, &subst)
296296
}

crates/hir-ty/src/infer/unify.rs

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
use std::{fmt, mem, sync::Arc};
44

55
use chalk_ir::{
6-
cast::Cast, fold::Fold, interner::HasInterner, zip::Zip, CanonicalVarKind, FloatTy, IntTy,
7-
NoSolution, TyVariableKind, UniverseIndex,
6+
cast::Cast, fold::TypeFoldable, interner::HasInterner, zip::Zip, CanonicalVarKind, FloatTy,
7+
IntTy, NoSolution, TyVariableKind, UniverseIndex,
88
};
99
use chalk_solve::infer::ParameterEnaVariableExt;
1010
use ena::unify::UnifyKey;
@@ -20,12 +20,12 @@ use crate::{
2020
};
2121

2222
impl<'a> InferenceContext<'a> {
23-
pub(super) fn canonicalize<T: Fold<Interner> + HasInterner<Interner = Interner>>(
23+
pub(super) fn canonicalize<T: TypeFoldable<Interner> + HasInterner<Interner = Interner>>(
2424
&mut self,
2525
t: T,
26-
) -> Canonicalized<T::Result>
26+
) -> Canonicalized<T>
2727
where
28-
T::Result: HasInterner<Interner = Interner>,
28+
T: HasInterner<Interner = Interner>,
2929
{
3030
self.table.canonicalize(t)
3131
}
@@ -200,12 +200,12 @@ impl<'a> InferenceTable<'a> {
200200
.intern(Interner)
201201
}
202202

203-
pub(crate) fn canonicalize<T: Fold<Interner> + HasInterner<Interner = Interner>>(
203+
pub(crate) fn canonicalize<T: TypeFoldable<Interner> + HasInterner<Interner = Interner>>(
204204
&mut self,
205205
t: T,
206-
) -> Canonicalized<T::Result>
206+
) -> Canonicalized<T>
207207
where
208-
T::Result: HasInterner<Interner = Interner>,
208+
T: HasInterner<Interner = Interner>,
209209
{
210210
// try to resolve obligations before canonicalizing, since this might
211211
// result in new knowledge about variables
@@ -292,9 +292,9 @@ impl<'a> InferenceTable<'a> {
292292
&mut self,
293293
t: T,
294294
fallback: &dyn Fn(InferenceVar, VariableKind, GenericArg, DebruijnIndex) -> GenericArg,
295-
) -> T::Result
295+
) -> T
296296
where
297-
T: HasInterner<Interner = Interner> + Fold<Interner>,
297+
T: HasInterner<Interner = Interner> + TypeFoldable<Interner>,
298298
{
299299
self.resolve_with_fallback_inner(&mut Vec::new(), t, &fallback)
300300
}
@@ -310,9 +310,9 @@ impl<'a> InferenceTable<'a> {
310310
)
311311
}
312312

313-
pub(crate) fn instantiate_canonical<T>(&mut self, canonical: Canonical<T>) -> T::Result
313+
pub(crate) fn instantiate_canonical<T>(&mut self, canonical: Canonical<T>) -> T
314314
where
315-
T: HasInterner<Interner = Interner> + Fold<Interner> + std::fmt::Debug,
315+
T: HasInterner<Interner = Interner> + TypeFoldable<Interner> + std::fmt::Debug,
316316
{
317317
let subst = self.fresh_subst(canonical.binders.as_slice(Interner));
318318
subst.apply(canonical.value, Interner)
@@ -323,9 +323,9 @@ impl<'a> InferenceTable<'a> {
323323
var_stack: &mut Vec<InferenceVar>,
324324
t: T,
325325
fallback: &dyn Fn(InferenceVar, VariableKind, GenericArg, DebruijnIndex) -> GenericArg,
326-
) -> T::Result
326+
) -> T
327327
where
328-
T: HasInterner<Interner = Interner> + Fold<Interner>,
328+
T: HasInterner<Interner = Interner> + TypeFoldable<Interner>,
329329
{
330330
t.fold_with(
331331
&mut resolve::Resolver { table: self, var_stack, fallback },
@@ -334,9 +334,9 @@ impl<'a> InferenceTable<'a> {
334334
.expect("fold failed unexpectedly")
335335
}
336336

337-
pub(crate) fn resolve_completely<T>(&mut self, t: T) -> T::Result
337+
pub(crate) fn resolve_completely<T>(&mut self, t: T) -> T
338338
where
339-
T: HasInterner<Interner = Interner> + Fold<Interner>,
339+
T: HasInterner<Interner = Interner> + TypeFoldable<Interner>,
340340
{
341341
self.resolve_with_fallback(t, &|_, _, d, _| d)
342342
}
@@ -447,19 +447,19 @@ impl<'a> InferenceTable<'a> {
447447
}
448448
}
449449

450-
pub(crate) fn fudge_inference<T: Fold<Interner>>(
450+
pub(crate) fn fudge_inference<T: TypeFoldable<Interner>>(
451451
&mut self,
452452
f: impl FnOnce(&mut Self) -> T,
453-
) -> T::Result {
454-
use chalk_ir::fold::Folder;
453+
) -> T {
454+
use chalk_ir::fold::TypeFolder;
455455
struct VarFudger<'a, 'b> {
456456
table: &'a mut InferenceTable<'b>,
457457
highest_known_var: InferenceVar,
458458
}
459-
impl<'a, 'b> Folder<Interner> for VarFudger<'a, 'b> {
459+
impl<'a, 'b> TypeFolder<Interner> for VarFudger<'a, 'b> {
460460
type Error = NoSolution;
461461

462-
fn as_dyn(&mut self) -> &mut dyn Folder<Interner, Error = Self::Error> {
462+
fn as_dyn(&mut self) -> &mut dyn TypeFolder<Interner, Error = Self::Error> {
463463
self
464464
}
465465

@@ -635,7 +635,7 @@ mod resolve {
635635
};
636636
use chalk_ir::{
637637
cast::Cast,
638-
fold::{Fold, Folder},
638+
fold::{TypeFoldable, TypeFolder},
639639
Fallible, NoSolution,
640640
};
641641
use hir_def::type_ref::ConstScalar;
@@ -645,13 +645,13 @@ mod resolve {
645645
pub(super) var_stack: &'a mut Vec<InferenceVar>,
646646
pub(super) fallback: F,
647647
}
648-
impl<'a, 'b, 'i, F> Folder<Interner> for Resolver<'a, 'b, F>
648+
impl<'a, 'b, 'i, F> TypeFolder<Interner> for Resolver<'a, 'b, F>
649649
where
650650
F: Fn(InferenceVar, VariableKind, GenericArg, DebruijnIndex) -> GenericArg + 'i,
651651
{
652652
type Error = NoSolution;
653653

654-
fn as_dyn(&mut self) -> &mut dyn Folder<Interner, Error = Self::Error> {
654+
fn as_dyn(&mut self) -> &mut dyn TypeFolder<Interner, Error = Self::Error> {
655655
self
656656
}
657657

crates/hir-ty/src/lib.rs

Lines changed: 24 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ mod test_db;
3333
use std::sync::Arc;
3434

3535
use chalk_ir::{
36-
fold::{Fold, Shift},
36+
fold::{Shift, TypeFoldable},
3737
interner::HasInterner,
3838
NoSolution,
3939
};
@@ -136,7 +136,7 @@ pub fn param_idx(db: &dyn HirDatabase, id: TypeOrConstParamId) -> Option<usize>
136136

137137
pub(crate) fn wrap_empty_binders<T>(value: T) -> Binders<T>
138138
where
139-
T: Fold<Interner, Result = T> + HasInterner<Interner = Interner>,
139+
T: TypeFoldable<Interner> + HasInterner<Interner = Interner>,
140140
{
141141
Binders::empty(Interner, value.shifted_in_from(Interner, DebruijnIndex::ONE))
142142
}
@@ -264,14 +264,12 @@ impl CallableSig {
264264
}
265265
}
266266

267-
impl Fold<Interner> for CallableSig {
268-
type Result = CallableSig;
269-
267+
impl TypeFoldable<Interner> for CallableSig {
270268
fn fold_with<E>(
271269
self,
272-
folder: &mut dyn chalk_ir::fold::Folder<Interner, Error = E>,
270+
folder: &mut dyn chalk_ir::fold::TypeFolder<Interner, Error = E>,
273271
outer_binder: DebruijnIndex,
274-
) -> Result<Self::Result, E> {
272+
) -> Result<Self, E> {
275273
let vec = self.params_and_return.to_vec();
276274
let folded = vec.fold_with(folder, outer_binder)?;
277275
Ok(CallableSig { params_and_return: folded.into(), is_varargs: self.is_varargs })
@@ -300,22 +298,22 @@ pub fn static_lifetime() -> Lifetime {
300298
LifetimeData::Static.intern(Interner)
301299
}
302300

303-
pub(crate) fn fold_free_vars<T: HasInterner<Interner = Interner> + Fold<Interner>>(
301+
pub(crate) fn fold_free_vars<T: HasInterner<Interner = Interner> + TypeFoldable<Interner>>(
304302
t: T,
305303
for_ty: impl FnMut(BoundVar, DebruijnIndex) -> Ty,
306304
for_const: impl FnMut(Ty, BoundVar, DebruijnIndex) -> Const,
307-
) -> T::Result {
308-
use chalk_ir::{fold::Folder, Fallible};
305+
) -> T {
306+
use chalk_ir::{fold::TypeFolder, Fallible};
309307
struct FreeVarFolder<F1, F2>(F1, F2);
310308
impl<
311309
'i,
312310
F1: FnMut(BoundVar, DebruijnIndex) -> Ty + 'i,
313311
F2: FnMut(Ty, BoundVar, DebruijnIndex) -> Const + 'i,
314-
> Folder<Interner> for FreeVarFolder<F1, F2>
312+
> TypeFolder<Interner> for FreeVarFolder<F1, F2>
315313
{
316314
type Error = NoSolution;
317315

318-
fn as_dyn(&mut self) -> &mut dyn Folder<Interner, Error = Self::Error> {
316+
fn as_dyn(&mut self) -> &mut dyn TypeFolder<Interner, Error = Self::Error> {
319317
self
320318
}
321319

@@ -344,11 +342,11 @@ pub(crate) fn fold_free_vars<T: HasInterner<Interner = Interner> + Fold<Interner
344342
.expect("fold failed unexpectedly")
345343
}
346344

347-
pub(crate) fn fold_tys<T: HasInterner<Interner = Interner> + Fold<Interner>>(
345+
pub(crate) fn fold_tys<T: HasInterner<Interner = Interner> + TypeFoldable<Interner>>(
348346
t: T,
349347
mut for_ty: impl FnMut(Ty, DebruijnIndex) -> Ty,
350348
binders: DebruijnIndex,
351-
) -> T::Result {
349+
) -> T {
352350
fold_tys_and_consts(
353351
t,
354352
|x, d| match x {
@@ -359,22 +357,22 @@ pub(crate) fn fold_tys<T: HasInterner<Interner = Interner> + Fold<Interner>>(
359357
)
360358
}
361359

362-
pub(crate) fn fold_tys_and_consts<T: HasInterner<Interner = Interner> + Fold<Interner>>(
360+
pub(crate) fn fold_tys_and_consts<T: HasInterner<Interner = Interner> + TypeFoldable<Interner>>(
363361
t: T,
364362
f: impl FnMut(Either<Ty, Const>, DebruijnIndex) -> Either<Ty, Const>,
365363
binders: DebruijnIndex,
366-
) -> T::Result {
364+
) -> T {
367365
use chalk_ir::{
368-
fold::{Folder, SuperFold},
366+
fold::{TypeFolder, TypeSuperFoldable},
369367
Fallible,
370368
};
371369
struct TyFolder<F>(F);
372-
impl<'i, F: FnMut(Either<Ty, Const>, DebruijnIndex) -> Either<Ty, Const> + 'i> Folder<Interner>
373-
for TyFolder<F>
370+
impl<'i, F: FnMut(Either<Ty, Const>, DebruijnIndex) -> Either<Ty, Const> + 'i>
371+
TypeFolder<Interner> for TyFolder<F>
374372
{
375373
type Error = NoSolution;
376374

377-
fn as_dyn(&mut self) -> &mut dyn Folder<Interner, Error = Self::Error> {
375+
fn as_dyn(&mut self) -> &mut dyn TypeFolder<Interner, Error = Self::Error> {
378376
self
379377
}
380378

@@ -397,22 +395,22 @@ pub(crate) fn fold_tys_and_consts<T: HasInterner<Interner = Interner> + Fold<Int
397395
/// 'Canonicalizes' the `t` by replacing any errors with new variables. Also
398396
/// ensures there are no unbound variables or inference variables anywhere in
399397
/// the `t`.
400-
pub fn replace_errors_with_variables<T>(t: &T) -> Canonical<T::Result>
398+
pub fn replace_errors_with_variables<T>(t: &T) -> Canonical<T>
401399
where
402-
T: HasInterner<Interner = Interner> + Fold<Interner> + Clone,
403-
T::Result: HasInterner<Interner = Interner>,
400+
T: HasInterner<Interner = Interner> + TypeFoldable<Interner> + Clone,
401+
T: HasInterner<Interner = Interner>,
404402
{
405403
use chalk_ir::{
406-
fold::{Folder, SuperFold},
404+
fold::{TypeFolder, TypeSuperFoldable},
407405
Fallible,
408406
};
409407
struct ErrorReplacer {
410408
vars: usize,
411409
}
412-
impl Folder<Interner> for ErrorReplacer {
410+
impl TypeFolder<Interner> for ErrorReplacer {
413411
type Error = NoSolution;
414412

415-
fn as_dyn(&mut self) -> &mut dyn Folder<Interner, Error = Self::Error> {
413+
fn as_dyn(&mut self) -> &mut dyn TypeFolder<Interner, Error = Self::Error> {
416414
self
417415
}
418416

crates/hir-ty/src/lower.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@ use std::{
1212
};
1313

1414
use base_db::CrateId;
15-
use chalk_ir::{cast::Cast, fold::Fold, fold::Shift, interner::HasInterner, Mutability, Safety};
15+
use chalk_ir::{
16+
cast::Cast, fold::Shift, fold::TypeFoldable, interner::HasInterner, Mutability, Safety,
17+
};
1618

1719
use hir_def::{
1820
adt::StructKind,
@@ -1751,10 +1753,10 @@ pub(crate) fn const_or_path_to_chalk(
17511753

17521754
/// This replaces any 'free' Bound vars in `s` (i.e. those with indices past
17531755
/// num_vars_to_keep) by `TyKind::Unknown`.
1754-
fn fallback_bound_vars<T: Fold<Interner> + HasInterner<Interner = Interner>>(
1756+
fn fallback_bound_vars<T: TypeFoldable<Interner> + HasInterner<Interner = Interner>>(
17551757
s: T,
17561758
num_vars_to_keep: usize,
1757-
) -> T::Result {
1759+
) -> T {
17581760
crate::fold_free_vars(
17591761
s,
17601762
|bound, binders| {

0 commit comments

Comments
 (0)