Skip to content

Instantly share code, notes, and snippets.

@ShoyuVanilla
Created July 22, 2025 00:43
Show Gist options
  • Select an option

  • Save ShoyuVanilla/ba75bd58763460637cf13f9b380b012d to your computer and use it in GitHub Desktop.

Select an option

Save ShoyuVanilla/ba75bd58763460637cf13f9b380b012d to your computer and use it in GitHub Desktop.
`rust-analyzer analysis-stats` comparision for `rust-analyzer/master` to https://github.com/jackh726/rust-analyzer/tree/f3a877231866c3699774b62dc1b5ebbcd7a641c9 on
diff --git a/master b/next-solver
index e5b5143..8265e6d 100644
--- a/master
+++ b/next-solver
@@ -1,8 +1,8 @@
-Database loaded: 579.10ms, 472minstr, 93mb (metadata 253.26ms, 4728kinstr, 1180kb; build 148.70ms, 16minstr, 89kb)
+Database loaded: 532.84ms, 504minstr, 93mb (metadata 240.89ms, 4731kinstr, 1177kb; build 150.74ms, 17minstr, 86kb)
item trees: 1349
dependency lines of code: 2_163_737, item trees: 4_899
dependency item stats: traits: 1_606, impl: 25_196, mods: 5_553, macro calls: 7_942, macro rules: 2_004
-Item Tree Collection: 4.39s, 48ginstr, 787mb
+Item Tree Collection: 4.37s, 48ginstr, 787mb
Total Statistics:
crates: 57, mods: 1199, decls: 31204, bodies: 30176, adts: 2193, consts: 1348
Workspace:
@@ -12,25 +12,9 @@ Item Tree Collection: 4.39s, 48ginstr, 787mb
Dependencies:
lines of code: 2_163_737, item trees: 4_899
declarations: traits: 1_606, impl: 25_196, mods: 5_553, macro calls: 7_942, macro rules: 2_004
-Item Collection: 12.61s, 57ginstr, 1091mb
-Body lowering: 4.10s, 31ginstr, 600mb
-/home/shoyu/projects/rust-analyzer-git/lib/la-arena/src/lib.rs,454:8,454:26,type,"&mut {unknown}"
+Item Collection: 12.12s, 60ginstr, 1091mb
+Body lowering: 4.03s, 31ginstr, 600mb
/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/tests/slow-tests/support.rs,463:4,463:11,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/config.rs,1445:63,1445:72,type,"fn leak<DefaultConfigData, {unknown}, '_>(Box<DefaultConfigData, {unknown}>) -> &mut DefaultConfigData"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/config.rs,1445:73,1445:85,type,"fn default<Box<{unknown}, {unknown}>>() -> Box<{unknown}, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/config.rs,1445:73,1445:87,type,"Box<{unknown}, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,88:16,93:46,type,"Filtered<HierarchicalLayer<fn stderr() -> Stderr, ()>, Targets, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,88:16,94:28,type,"Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,79:34,95:13,type,"Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,96:20,96:75,type,"Filtered<Option<HierarchicalLayer<fn() -> Stderr, ()>>, LevelFilter, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,96:20,96:83,type,"Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,78:26,97:9,type,"Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,125:18,125:29,type,"Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,121:25,125:30,type,"Layered<Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>, Layered<Filtered<Option<impl Layer<Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>, LevelFilter, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Option<impl Layer<Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>, LevelFilter, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,127:8,127:47,type,"fn set_global_default<Layered<Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>, Layered<Filtered<Option<impl Layer<Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>, LevelFilter, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Option<impl Layer<Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>, LevelFilter, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>>(Layered<Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>, Layered<Filtered<Option<impl Layer<Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>, LevelFilter, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Option<impl Layer<Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>, LevelFilter, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>) -> Result<(), SetGlobalDefaultError>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,127:48,127:58,type,"Layered<Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>, Layered<Filtered<Option<impl Layer<Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>, LevelFilter, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Option<impl Layer<Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>, LevelFilter, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,78:12,78:23,type,"Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/tracing/config.rs,121:12,121:22,type,"Layered<Box<dyn Layer<{unknown}> + Send + Sync + 'static, Global>, Layered<Filtered<Option<impl Layer<Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>, LevelFilter, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Option<impl Layer<Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>, LevelFilter, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>, Layered<Option<Filtered<TimingLayer<Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, fn stderr() -> Stderr>, FilterFn<impl Fn(&Metadata<'_>) -> bool>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>, Layered<Filtered<Box<dyn Layer<Registry> + Send + Sync + 'static, Global>, Targets, Registry>, Registry, Registry>>>>"
/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/handlers/dispatch.rs,123:37,123:42,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/handlers/dispatch.rs,152:37,152:42,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/handlers/dispatch.rs,152:44,152:49,type,"{unknown}"
@@ -40,9 +24,6 @@ Body lowering: 4.10s, 31ginstr, 600mb
/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/handlers/dispatch.rs,217:43,217:48,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/main_loop.rs,266:8,266:15,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/flycheck.rs,299:8,299:22,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/rust-analyzer/src/cli/progress_report.rs,35:23,35:33,type,"{unknown}"
-synthetic,,,type,"&{unknown}"
-synthetic,,,type,"fn new_display<{unknown}>(&{unknown}) -> Argument<'_>"
/home/shoyu/projects/rust-analyzer-git/crates/proc-macro-srv/src/dylib/version.rs,140:26,140:28,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/vfs-notify/src/lib.rs,91:8,91:15,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/proc-macro-api/src/process.rs,52:25,62:9,type,"impl Fn() -> Result<ProcMacroServerProcess, {unknown}>"
@@ -61,7 +42,23 @@ synthetic,,,type,"fn new_display<{unknown}>(&{unknown}) -> Argument<'_>"
synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, ProcMacroServerProcess>"
synthetic,,,type,"Result<Infallible, {unknown}>"
synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, ProcMacroServerProcess>"
+/home/shoyu/projects/rust-analyzer-git/crates/proc-macro-api/src/legacy_protocol/msg/flat.rs,259:44,259:60,type,"Result<[u32; N], TryFromSliceError>"
+/home/shoyu/projects/rust-analyzer-git/crates/proc-macro-api/src/legacy_protocol/msg/flat.rs,259:44,259:69,type,"[u32; N]"
+/home/shoyu/projects/rust-analyzer-git/crates/proc-macro-api/src/legacy_protocol/msg/flat.rs,265:4,265:30,type,"FlatMap<IntoIter<T, Global>, [u32; N], F>"
/home/shoyu/projects/rust-analyzer-git/crates/ide/src/runnables.rs,722:38,722:39,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,101:65,101:77,type,"impl FnOnce(&mut IntoIter<Adjustment<'_>, Global>) -> &mut (dyn Iterator<Item = {unknown}>)"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,101:70,101:77,type,"&mut (dyn Iterator<Item = {unknown}>)"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,101:79,101:91,type,"impl FnOnce(&mut Rev<IntoIter<Adjustment<'_>, Global>>) -> &mut (dyn Iterator<Item = {unknown}>)"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,101:84,101:91,type,"&mut (dyn Iterator<Item = {unknown}>)"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,101:44,101:92,type,"&mut (dyn Iterator<Item = {unknown}>)"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,105:47,105:51,type,"&mut (dyn Iterator<Item = {unknown}>)"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,105:4,214:5,type,"fn into_iter<&mut (dyn Iterator<Item = {unknown}>)>(&mut (dyn Iterator<Item = {unknown}>)) -> <&mut (dyn Iterator<Item = {unknown}>) as IntoIterator>::IntoIter"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,105:4,214:5,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,105:4,214:5,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,105:4,214:5,type,"&mut {unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,105:4,214:5,type,"fn next<{unknown}>(&mut {unknown}) -> Option<<{unknown} as Iterator>::Item>"
+/home/shoyu/projects/rust-analyzer-git/crates/ide/src/inlay_hints/adjustment.rs,101:8,101:12,type,"&mut (dyn Iterator<Item = {unknown}>)"
+synthetic,,,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/ide/src/hover.rs,278:28,278:32,type,"fn into_vec<((Definition, Option<GenericSubstitution<'_>>), Option<{unknown}>, bool, SyntaxNode<RustLanguage>), Global>(Box<[((Definition, Option<GenericSubstitution<'_>>), Option<{unknown}>, bool, SyntaxNode<RustLanguage>)], Global>) -> Vec<((Definition, Option<GenericSubstitution<'_>>), Option<{unknown}>, bool, SyntaxNode<RustLanguage>), Global>"
/home/shoyu/projects/rust-analyzer-git/crates/ide/src/hover.rs,278:28,278:32,type,"fn box_new<[((Definition, Option<GenericSubstitution<'_>>), Option<{unknown}>, bool, SyntaxNode<RustLanguage>); 1]>([((Definition, Option<GenericSubstitution<'_>>), Option<{unknown}>, bool, SyntaxNode<RustLanguage>); 1]) -> Box<[((Definition, Option<GenericSubstitution<'_>>), Option<{unknown}>, bool, SyntaxNode<RustLanguage>); 1], Global>"
/home/shoyu/projects/rust-analyzer-git/crates/ide/src/hover.rs,278:77,278:81,type,"Option<{unknown}>"
@@ -80,32 +77,6 @@ synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, ProcMacroServerProc
/home/shoyu/projects/rust-analyzer-git/crates/ide/src/hover.rs,281:33,292:25,type,"Vec<((Definition, Option<GenericSubstitution<'_>>), Option<{unknown}>, bool, SyntaxNode<RustLanguage>), Global>"
/home/shoyu/projects/rust-analyzer-git/crates/ide/src/hover.rs,269:20,293:21,type,"Vec<((Definition, Option<GenericSubstitution<'_>>), Option<{unknown}>, bool, SyntaxNode<RustLanguage>), Global>"
/home/shoyu/projects/rust-analyzer-git/crates/ide/src/navigation_target.rs,784:35,784:36,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,728:29,731:18,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,732:26,735:18,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,738:35,738:49,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,738:30,738:49,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,738:56,738:67,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,738:51,738:67,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,739:32,739:46,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,739:27,739:46,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,739:53,739:64,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,739:48,739:64,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,742:8,742:22,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,742:8,742:34,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,742:39,742:70,type,"impl FnMut({unknown}) -> GenericParam"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,742:44,742:46,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,742:44,742:51,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,742:8,742:71,type,"Map<{unknown}, impl FnMut({unknown}) -> GenericParam>"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,744:8,744:19,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,744:8,744:31,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,744:36,744:67,type,"impl FnMut({unknown}) -> WherePred"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,744:41,744:43,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,744:41,744:48,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,744:8,744:68,type,"Map<{unknown}, impl FnMut({unknown}) -> WherePred>"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,728:8,728:26,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,732:8,732:23,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,742:40,742:42,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/generate_function.rs,744:37,744:39,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/ide-assists/src/handlers/extract_module.rs,651:24,651:25,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/syntax_helpers/format_string.rs,71:16,71:19,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/syntax_helpers/format_string.rs,71:22,71:25,type,"{unknown}"
@@ -113,7 +84,6 @@ synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, ProcMacroServerProc
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/syntax_helpers/format_string.rs,121:26,121:29,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/syntax_helpers/format_string.rs,178:24,178:27,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/syntax_helpers/format_string.rs,178:30,178:33,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/source_change.rs,66:44,66:58,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/search.rs,512:47,512:50,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/search.rs,512:53,512:56,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/search.rs,512:59,512:62,type,"{unknown}"
@@ -128,34 +98,19 @@ synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, ProcMacroServerProc
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/prime_caches.rs,127:20,127:53,mismatch,"&dyn SelectHandle","&Receiver<(Crate, Symbol)>"
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/prime_caches.rs,127:20,127:53,mismatch,"&dyn SelectHandle","&Receiver<Crate>"
/home/shoyu/projects/rust-analyzer-git/crates/ide-db/src/prime_caches.rs,127:20,127:53,mismatch,"&dyn SelectHandle","&Receiver<Module>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir/src/lib.rs,958:12,958:23,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir/src/lib.rs,975:42,975:53,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir/src/symbols.rs,388:18,388:33,type,"fn from<ModuleDef, {unknown}>({unknown}) -> ModuleDef"
-/home/shoyu/projects/rust-analyzer-git/crates/hir/src/symbols.rs,388:34,388:43,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir/src/semantics.rs,882:40,882:41,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir/src/semantics.rs,924:42,924:43,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir/src/semantics.rs,1132:40,1132:41,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir/src/semantics.rs,1144:44,1144:45,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir/src/semantics.rs,1241:68,1241:69,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/test_db.rs,134:33,134:47,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/traits.rs,55:33,55:45,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/traits.rs,55:33,55:47,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir.rs,125:25,125:37,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir.rs,125:25,125:39,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir.rs,136:28,136:40,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir.rs,136:28,136:42,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,651:51,651:63,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,651:51,651:65,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,664:55,664:67,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,664:55,664:69,type,"Box<{unknown}, Global>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,1420:35,1420:53,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,1429:35,1429:53,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,1436:35,1436:53,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,1444:49,1444:58,type,"fn from<Box<{unknown}, Global>, &[u8]>(&[u8]) -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,1444:49,1444:89,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,1445:50,1445:59,type,"fn from<Box<{unknown}, Global>, &[u8]>(&[u8]) -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/lower.rs,1445:50,1445:90,type,"Box<{unknown}, Global>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/eval.rs,2969:54,2969:56,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/eval/shim.rs,515:46,515:75,type,"Result<[u8; _], {unknown}>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/eval/shim.rs,515:28,515:39,type,"Result<[u8; _], {unknown}>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/eval/shim.rs,515:28,515:39,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/mir/eval/shim.rs,515:28,515:39,type,"Result<[u8; _], {unknown}>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/method_resolution.rs,857:32,857:33,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/layout_nextsolver/adt.rs,47:43,47:44,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/layout_nextsolver/adt.rs,75:36,75:37,type,"{unknown}"
@@ -165,791 +120,97 @@ synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, ProcMacroServerProc
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/display.rs,1539:57,1539:58,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/display.rs,1622:45,1622:46,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/diagnostics/match_check/pat_analysis.rs,348:30,348:31,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,465:35,465:50,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,465:35,465:66,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,466:45,466:60,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,466:45,466:80,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,467:41,467:56,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,467:41,467:72,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,486:19,486:47,type,"fn new_from_iter<'_, >(DbInterner<'_>, Map<<IndexMap<GenericArg<'_>, usize, BuildHasherDefault<FxHasher>> as SliceLike>::IntoIter, impl FnMut(({unknown}, {unknown})) -> CanonicalVarKind<{unknown}>>) -> CanonicalVars<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,488:28,509:13,type,"impl FnMut(({unknown}, {unknown})) -> CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,489:33,489:34,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,489:33,489:42,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,489:33,489:49,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,490:54,490:56,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,491:62,491:97,type,"fn Ty<{unknown}>(CanonicalTyVarKind) -> CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,491:62,493:25,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,494:45,494:80,type,"fn Ty<{unknown}>(CanonicalTyVarKind) -> CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,494:45,496:25,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,497:29,497:64,type,"fn Ty<{unknown}>(CanonicalTyVarKind) -> CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,497:29,499:25,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,490:48,500:21,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,502:24,502:63,type,"fn Region<{unknown}>(UniverseIndex) -> CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,502:24,502:84,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,501:51,503:21,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,505:24,505:62,type,"fn Const<{unknown}>(UniverseIndex) -> CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,505:24,505:83,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,504:48,506:21,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,489:27,507:17,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,508:16,508:20,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,488:37,509:13,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,488:12,509:14,type,"Map<<IndexMap<GenericArg<'_>, usize, BuildHasherDefault<FxHasher>> as SliceLike>::IntoIter, impl FnMut(({unknown}, {unknown})) -> CanonicalVarKind<{unknown}>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,488:30,488:31,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,488:33,488:34,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,488:29,488:35,type,"({unknown}, {unknown})"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,489:20,489:24,type,"CanonicalVarKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,490:41,490:43,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,490:20,490:44,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,501:45,501:46,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,501:20,501:47,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,504:42,504:43,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,504:20,504:44,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,274:14,274:33,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,323:11,323:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"Map<{unknown}, impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"Result<SmallVec<[Ty<'_>; 2]>, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"fn branch<Result<SmallVec<[Ty<'_>; 2]>, {unknown}>>(Result<SmallVec<[Ty<'_>; 2]>, {unknown}>) -> ControlFlow<<Result<SmallVec<[Ty<'_>; 2]>, {unknown}> as Try>::Residual, <Result<SmallVec<[Ty<'_>; 2]>, {unknown}> as Try>::Output>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[Ty<'_>; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"Result<Infallible, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"fn from_residual<Result<Tys<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, Result<Infallible, {unknown}>>(Result<Infallible, {unknown}>) -> Result<Tys<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[Ty<'_>; 2]>>"
-synthetic,,,type,"Result<Infallible, {unknown}>"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[Ty<'_>; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"impl FnMut({unknown}) -> {unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,468:74,468:79,mismatch,"&mut dyn FnMut(BoundTy) -> Ty<'_>","&mut impl Fn(BoundTy) -> <DbInterner<'db> as Interner>::Ty"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,468:81,468:88,mismatch,"&mut dyn FnMut(BoundRegion) -> Region<'_>","&mut impl Fn(BoundRegion) -> <DbInterner<'db> as Interner>::Region"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/util.rs,468:90,468:96,mismatch,"&mut dyn FnMut(BoundVar) -> Const<'_>","&mut impl Fn(BoundVar) -> <DbInterner<'db> as Interner>::Const"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"Map<{unknown}, impl FnMut({unknown}) -> {unknown}>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"fn into_iter<Iter<'_, {unknown}>>(Iter<'_, {unknown}>) -> <Iter<'_, {unknown}> as IntoIterator>::IntoIter"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"&mut Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"fn next<Iter<'_, {unknown}>>(&mut Iter<'_, {unknown}>) -> Option<<Iter<'_, {unknown}> as Iterator>::Item>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"Option<{unknown}>"
-synthetic,,,type,"Option<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-synthetic,,,type,"Option<{unknown}>"
-synthetic,,,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/ty.rs,649:0,649:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/solver.rs,44:72,44:83,type,"fn dummy<Span, {unknown}>() -> Span"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,126:30,126:51,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,126:30,126:61,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,127:30,127:51,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,127:30,127:61,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,129:8,129:11,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,129:20,131:9,type,"impl Fn({unknown}, {unknown}) -> Ordering"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,130:45,130:46,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,130:45,130:55,type,"&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,130:71,130:72,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,130:71,130:81,type,"&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,129:8,131:10,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,132:8,132:11,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,133:8,133:11,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,133:20,135:9,type,"impl Fn({unknown}, {unknown}) -> Ordering"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,134:45,134:46,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,134:45,134:55,type,"&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,134:71,134:72,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,134:71,134:81,type,"&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,133:8,135:10,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,136:8,136:11,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,137:11,137:14,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,137:24,137:27,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:16,141:30,type,"fn zip<Vec<{unknown}, Global>, Vec<{unknown}, Global>>(Vec<{unknown}, Global>, Vec<{unknown}, Global>) -> Zip<<Vec<{unknown}, Global> as IntoIterator>::IntoIter, <Vec<{unknown}, Global> as IntoIterator>::IntoIter>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:31,141:34,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:36,141:39,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:16,141:40,type,"Zip<{unknown}, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:45,160:9,type,"impl FnMut(({unknown}, {unknown})) -> Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,142:19,142:23,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,142:19,142:31,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,142:19,142:45,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,142:47,142:51,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,142:47,142:59,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,142:47,142:73,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,142:18,142:74,type,"(ExistentialPredicate<{unknown}>, ExistentialPredicate<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,144:20,144:22,type,"fn Ok<{unknown}, TypeError<DbInterner<'db>>>({unknown}) -> Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,144:23,144:27,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,144:35,144:66,type,"fn Trait<{unknown}>(ExistentialTraitRef<{unknown}>) -> ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,145:40,145:44,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,145:52,145:53,type,"ExistentialTraitRef<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,145:56,145:60,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,145:68,145:69,type,"ExistentialTraitRef<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,145:24,145:72,type,"fn from_residual<Result<{unknown}, TypeError<DbInterner<'db>>>, Result<Infallible, TypeError<DbInterner<'db>>>>(Result<Infallible, TypeError<DbInterner<'db>>>) -> Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,145:24,145:72,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,145:24,145:86,type,"ExistentialTraitRef<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,144:35,146:21,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,144:23,146:22,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,144:20,146:23,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,143:92,147:17,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,151:21,151:23,type,"fn Ok<{unknown}, TypeError<DbInterner<'db>>>({unknown}) -> Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,151:24,151:28,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,151:36,151:72,type,"fn Projection<{unknown}>(ExistentialProjection<{unknown}>) -> ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,152:36,152:40,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,152:48,152:49,type,"ExistentialProjection<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,152:52,152:56,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,152:64,152:65,type,"ExistentialProjection<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,152:20,152:68,type,"fn from_residual<Result<{unknown}, TypeError<DbInterner<'db>>>, Result<Infallible, TypeError<DbInterner<'db>>>>(Result<Infallible, TypeError<DbInterner<'db>>>) -> Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,152:20,152:68,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,152:20,152:82,type,"ExistentialProjection<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,151:36,153:17,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,151:24,153:18,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,151:21,153:19,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,157:31,157:33,type,"fn Ok<{unknown}, TypeError<DbInterner<'db>>>({unknown}) -> Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,157:34,157:38,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,157:46,157:81,type,"fn AutoTrait<{unknown}>(<{unknown} as Interner>::DefId) -> ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,157:82,157:83,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,157:46,157:84,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,157:34,157:85,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,157:31,157:86,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,157:21,157:22,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,157:26,157:27,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,158:21,158:24,type,"fn Err<{unknown}, TypeError<DbInterner<'db>>>(TypeError<DbInterner<'db>>) -> Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,158:21,158:98,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,142:12,159:13,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:60,160:9,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:16,160:10,type,"Map<Zip<{unknown}, {unknown}>, impl FnMut(({unknown}, {unknown})) -> Result<{unknown}, TypeError<DbInterner<'db>>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,162:8,162:42,type,"fn collect_and_apply<{unknown}, {unknown}, BoundExistentialPredicates<'_>, Map<Zip<{unknown}, {unknown}>, impl FnMut(({unknown}, {unknown})) -> Result<{unknown}, TypeError<DbInterner<'db>>>>, impl FnOnce(&[{unknown}]) -> BoundExistentialPredicates<'_>>(Map<Zip<{unknown}, {unknown}>, impl FnMut(({unknown}, {unknown})) -> Result<{unknown}, TypeError<DbInterner<'db>>>>, impl FnOnce(&[{unknown}]) -> BoundExistentialPredicates<'_>) -> <{unknown} as CollectAndApply<Self, BoundExistentialPredicates<'_>>>::Output"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,162:43,162:44,type,"Map<Zip<{unknown}, {unknown}>, impl FnMut(({unknown}, {unknown})) -> Result<{unknown}, TypeError<DbInterner<'db>>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,162:46,164:9,type,"impl FnOnce(&[{unknown}]) -> BoundExistentialPredicates<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,163:12,163:53,type,"fn new_from_iter<'_, >(DbInterner<'_>, Cloned<Iter<'_, {unknown}>>) -> BoundExistentialPredicates<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,163:73,163:74,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,163:73,163:81,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,163:73,163:90,type,"Cloned<Iter<'_, {unknown}>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,126:12,126:19,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,127:12,127:19,type,"Vec<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,129:21,129:22,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,129:24,129:25,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,133:21,133:22,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,133:24,133:25,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:12,141:13,type,"Map<Zip<{unknown}, {unknown}>, impl FnMut(({unknown}, {unknown})) -> Result<{unknown}, TypeError<DbInterner<'db>>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:47,141:51,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:53,141:57,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,141:46,141:58,type,"({unknown}, {unknown})"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,143:49,143:50,type,"ExistentialTraitRef<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,143:17,143:51,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,143:85,143:86,type,"ExistentialTraitRef<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,143:53,143:87,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,143:16,143:88,type,"(ExistentialPredicate<{unknown}>, ExistentialPredicate<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,149:57,149:58,type,"ExistentialProjection<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,149:20,149:59,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,150:57,150:58,type,"ExistentialProjection<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,150:20,150:59,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,148:16,151:17,type,"(ExistentialPredicate<{unknown}>, ExistentialPredicate<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,155:56,155:57,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,155:20,155:58,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,156:56,156:57,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,156:20,156:58,type,"ExistentialPredicate<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,154:16,157:17,type,"(ExistentialPredicate<{unknown}>, ExistentialPredicate<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,158:16,158:17,type,"(ExistentialPredicate<{unknown}>, ExistentialPredicate<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,162:47,162:48,type,"&[{unknown}]"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,346:38,346:39,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,347:8,349:9,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,348:25,348:26,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,347:8,349:9,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,347:8,349:9,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,347:8,349:9,type,"fn next<{unknown}>(&mut {unknown}) -> Option<<{unknown} as Iterator>::Item>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,347:8,349:9,type,"Option<{unknown}>"
-synthetic,,,type,"Option<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,347:12,347:13,type,"{unknown}"
-synthetic,,,type,"Option<{unknown}>"
-synthetic,,,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,357:38,357:39,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,357:44,357:67,type,"fn with_capacity<[{unknown}; 2]>(usize) -> SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,357:44,357:89,type,"SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,358:8,360:9,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,359:12,359:19,type,"SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,359:25,359:26,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,359:25,359:44,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,358:8,360:9,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,358:8,360:9,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,358:8,360:9,type,"fn next<{unknown}>(&mut {unknown}) -> Option<<{unknown} as Iterator>::Item>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,358:8,360:9,type,"Option<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,361:8,361:30,type,"fn new_from_iter<'_, >(DbInterner<'_>, SmallVec<[{unknown}; 2]>) -> Clauses<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,361:44,361:51,type,"SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,357:12,357:23,type,"SmallVec<[{unknown}; 2]>"
-synthetic,,,type,"Option<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,358:12,358:13,type,"{unknown}"
-synthetic,,,type,"Option<{unknown}>"
-synthetic,,,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,371:42,371:43,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:12,372:23,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:28,372:55,type,"impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:32,372:33,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:32,372:55,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:12,372:56,type,"Map<{unknown}, impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:12,372:82,type,"Result<SmallVec<[{unknown}; 2]>, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:12,372:83,type,"fn branch<Result<SmallVec<[{unknown}; 2]>, {unknown}>>(Result<SmallVec<[{unknown}; 2]>, {unknown}>) -> ControlFlow<<Result<SmallVec<[{unknown}; 2]>, {unknown}> as Try>::Residual, <Result<SmallVec<[{unknown}; 2]>, {unknown}> as Try>::Output>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:12,372:83,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[{unknown}; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:12,372:83,type,"SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:12,372:83,type,"Result<Infallible, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:12,372:83,type,"fn from_residual<Result<Clauses<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, Result<Infallible, {unknown}>>(Result<Infallible, {unknown}>) -> Result<Clauses<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:12,372:83,type,"SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,373:11,373:33,type,"fn new_from_iter<'_, >(DbInterner<'_>, {unknown}) -> Clauses<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,373:47,373:52,type,"SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,373:47,373:64,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,371:12,371:17,type,"SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,372:29,372:30,type,"{unknown}"
-synthetic,,,type,"SmallVec<[{unknown}; 2]>"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[{unknown}; 2]>>"
-synthetic,,,type,"Result<Infallible, {unknown}>"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[{unknown}; 2]>>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,377:42,377:43,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,377:48,377:59,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,377:64,377:87,type,"impl FnMut({unknown}) -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,377:68,377:69,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,377:68,377:87,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,377:48,377:88,type,"Map<{unknown}, impl FnMut({unknown}) -> {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,377:48,377:98,type,"SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,378:8,378:30,type,"fn new_from_iter<'_, >(DbInterner<'_>, {unknown}) -> Clauses<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,378:44,378:49,type,"SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,378:44,378:61,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,377:12,377:17,type,"SmallVec<[{unknown}; 2]>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,377:65,377:66,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,389:52,389:67,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,389:52,389:74,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,389:43,389:74,type,"fn into_iter<Iter<'_, {unknown}>>(Iter<'_, {unknown}>) -> <Iter<'_, {unknown}> as IntoIterator>::IntoIter"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,389:43,389:74,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,389:8,389:42,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,389:43,389:74,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,389:43,389:74,type,"&mut Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,389:43,389:74,type,"fn next<Iter<'_, {unknown}>>(&mut Iter<'_, {unknown}>) -> Option<<Iter<'_, {unknown}> as Iterator>::Item>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,389:43,389:74,type,"Option<{unknown}>"
-synthetic,,,type,"Option<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,389:8,389:42,type,"{unknown}"
-synthetic,,,type,"Option<{unknown}>"
-synthetic,,,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,409:8,409:23,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,482:8,482:27,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,503:18,503:29,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,510:18,510:29,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"Map<{unknown}, impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"Result<SmallVec<[Binder<DbInterner<'_>, ExistentialPredicate<DbInterner<'_>>>; 2]>, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"fn branch<Result<SmallVec<[Binder<DbInterner<'_>, ExistentialPredicate<DbInterner<'_>>>; 2]>, {unknown}>>(Result<SmallVec<[Binder<DbInterner<'_>, ExistentialPredicate<DbInterner<'_>>>; 2]>, {unknown}>) -> ControlFlow<<Result<SmallVec<[Binder<DbInterner<'_>, ExistentialPredicate<DbInterner<'_>>>; 2]>, {unknown}> as Try>::Residual, <Result<SmallVec<[Binder<DbInterner<'_>, ExistentialPredicate<DbInterner<'_>>>; 2]>, {unknown}> as Try>::Output>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[Binder<DbInterner<'_>, ExistentialPredicate<DbInterner<'_>>>; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"Result<Infallible, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"fn from_residual<Result<BoundExistentialPredicates<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, Result<Infallible, {unknown}>>(Result<Infallible, {unknown}>) -> Result<BoundExistentialPredicates<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[Binder<DbInterner<'_>, ExistentialPredicate<DbInterner<'_>>>; 2]>>"
-synthetic,,,type,"Result<Infallible, {unknown}>"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[Binder<DbInterner<'_>, ExistentialPredicate<DbInterner<'_>>>; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"impl FnMut({unknown}) -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"Map<{unknown}, impl FnMut({unknown}) -> {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"fn into_iter<Iter<'_, {unknown}>>(Iter<'_, {unknown}>) -> <Iter<'_, {unknown}> as IntoIterator>::IntoIter"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"&mut Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"fn next<Iter<'_, {unknown}>>(&mut Iter<'_, {unknown}>) -> Option<<Iter<'_, {unknown}> as Iterator>::Item>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"Option<{unknown}>"
-synthetic,,,type,"Option<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-synthetic,,,type,"Option<{unknown}>"
-synthetic,,,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/predicate.rs,68:0,68:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,38:8,38:25,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,50:30,51:33,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,50:30,52:27,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,50:30,53:29,type,"Cloned<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,54:25,54:62,type,"impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,54:34,54:40,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,54:34,54:62,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,50:30,54:63,type,"Map<Cloned<{unknown}>, impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,54:26,54:32,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,63:30,64:33,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,63:30,65:27,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,63:30,66:29,type,"Cloned<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,67:25,67:58,type,"impl FnMut({unknown}) -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,67:34,67:40,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,67:34,67:58,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,63:30,67:59,type,"Map<Cloned<{unknown}>, impl FnMut({unknown}) -> {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,67:26,67:32,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,117:19,117:42,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,118:19,118:36,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,119:8,119:39,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,131:36,131:59,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,131:36,131:67,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,132:30,133:33,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,132:30,134:27,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,132:30,135:29,type,"Cloned<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,136:25,136:62,type,"impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,136:34,136:40,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,136:34,136:62,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,132:30,136:63,type,"Map<Cloned<{unknown}>, impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,138:44,139:47,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,138:44,140:28,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,136:26,136:32,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,149:36,149:59,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,149:36,149:67,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,150:30,151:33,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,150:30,152:27,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,150:30,153:29,type,"Cloned<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,154:25,154:58,type,"impl FnMut({unknown}) -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,154:34,154:40,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,154:34,154:58,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,150:30,154:59,type,"Map<Cloned<{unknown}>, impl FnMut({unknown}) -> {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,156:44,157:47,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,156:44,158:28,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,154:26,154:32,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"Map<{unknown}, impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"Result<SmallVec<[SolverDefId; 2]>, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"fn branch<Result<SmallVec<[SolverDefId; 2]>, {unknown}>>(Result<SmallVec<[SolverDefId; 2]>, {unknown}>) -> ControlFlow<<Result<SmallVec<[SolverDefId; 2]>, {unknown}> as Try>::Residual, <Result<SmallVec<[SolverDefId; 2]>, {unknown}> as Try>::Output>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[SolverDefId; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"Result<Infallible, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"fn from_residual<Result<SolverDefIds, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, Result<Infallible, {unknown}>>(Result<Infallible, {unknown}>) -> Result<SolverDefIds, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[SolverDefId; 2]>>"
-synthetic,,,type,"Result<Infallible, {unknown}>"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[SolverDefId; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"impl FnMut({unknown}) -> {unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"Map<{unknown}, impl FnMut({unknown}) -> {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"fn into_iter<Iter<'_, {unknown}>>(Iter<'_, {unknown}>) -> <Iter<'_, {unknown}> as IntoIterator>::IntoIter"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"&mut Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"fn next<Iter<'_, {unknown}>>(&mut Iter<'_, {unknown}>) -> Option<<Iter<'_, {unknown}> as Iterator>::Item>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"Option<{unknown}>"
-synthetic,,,type,"Option<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
-synthetic,,,type,"Option<{unknown}>"
-synthetic,,,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/opaques.rs,82:0,82:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1824:22,1824:38,type,"fn default<{unknown}>() -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1824:22,1824:40,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1825:61,1825:64,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1825:56,1825:64,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1827:25,1827:59,type,"fn collect_and_apply<{unknown}, {unknown}, BoundVarKinds, {unknown}, impl FnOnce(&[{unknown}]) -> BoundVarKinds>({unknown}, impl FnOnce(&[{unknown}]) -> BoundVarKinds) -> <{unknown} as CollectAndApply<Self, BoundVarKinds>>::Output"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1827:60,1827:63,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1827:60,1827:77,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1827:79,1829:9,type,"impl FnOnce(&[{unknown}]) -> BoundVarKinds"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1828:12,1828:40,type,"fn new_from_iter<'_>(DbInterner<'_>, Cloned<Iter<'_, {unknown}>>) -> BoundVarKinds"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1828:47,1828:49,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1828:47,1828:56,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1828:47,1828:65,type,"Cloned<Iter<'_, {unknown}>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1824:12,1824:19,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1827:80,1827:82,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1948:24,1948:70,mismatch,"BoundRegion","BoundTy"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,1951:77,1951:88,mismatch,"BoundRegion","BoundVar"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,277:0,277:30,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,309:0,309:16,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,325:0,325:30,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"Map<{unknown}, impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"Result<SmallVec<[Pattern<'_>; 2]>, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"fn branch<Result<SmallVec<[Pattern<'_>; 2]>, {unknown}>>(Result<SmallVec<[Pattern<'_>; 2]>, {unknown}>) -> ControlFlow<<Result<SmallVec<[Pattern<'_>; 2]>, {unknown}> as Try>::Residual, <Result<SmallVec<[Pattern<'_>; 2]>, {unknown}> as Try>::Output>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[Pattern<'_>; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"Result<Infallible, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"fn from_residual<Result<PatList<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, Result<Infallible, {unknown}>>(Result<Infallible, {unknown}>) -> Result<PatList<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[Pattern<'_>; 2]>>"
-synthetic,,,type,"Result<Infallible, {unknown}>"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[Pattern<'_>; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"impl FnMut({unknown}) -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"Map<{unknown}, impl FnMut({unknown}) -> {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"fn into_iter<Iter<'_, {unknown}>>(Iter<'_, {unknown}>) -> <Iter<'_, {unknown}> as IntoIterator>::IntoIter"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"&mut Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"fn next<Iter<'_, {unknown}>>(&mut Iter<'_, {unknown}>) -> Option<<Iter<'_, {unknown}> as Iterator>::Item>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"Option<{unknown}>"
-synthetic,,,type,"Option<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
-synthetic,,,type,"Option<{unknown}>"
-synthetic,,,type,"Iter<'_, {unknown}>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/interner.rs,769:0,769:16,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/mod.rs,999:8,1008:9,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/mod.rs,999:8,1008:9,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/mod.rs,999:8,1008:9,type,"&mut {unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/mod.rs,999:8,1008:9,type,"fn next<{unknown}>(&mut {unknown}) -> Option<<{unknown} as Iterator>::Item>"
synthetic,,,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,49:22,49:62,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,49:22,49:93,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,71:12,71:51,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,71:12,71:87,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,73:12,75:32,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,73:12,76:62,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,81:42,81:64,type,"fn WellFormed<{unknown}>(<{unknown} as Interner>::Term) -> ClauseKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,81:65,81:93,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,81:42,81:93,type,"ClauseKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,81:41,81:93,type,"[ClauseKind<{unknown}>; 1]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,98:21,98:41,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,98:44,98:59,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,98:20,98:92,type,"({unknown}, {unknown}, AliasRelationDirection)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,97:39,98:92,type,"({unknown}, {unknown}, AliasRelationDirection)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,101:21,101:41,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,101:44,101:59,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,101:20,101:93,type,"({unknown}, {unknown}, AliasRelationDirection)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,100:39,101:93,type,"({unknown}, {unknown}, AliasRelationDirection)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,104:21,104:36,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,104:39,104:59,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,104:20,104:93,type,"({unknown}, {unknown}, AliasRelationDirection)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,103:43,104:93,type,"({unknown}, {unknown}, AliasRelationDirection)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,106:52,106:78,type,"({unknown}, {unknown}, AliasRelationDirection)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,96:40,106:80,type,"({unknown}, {unknown}, AliasRelationDirection)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,109:42,109:68,type,"fn AliasRelate<{unknown}>(<{unknown} as Interner>::Term, <{unknown} as Interner>::Term, AliasRelationDirection) -> PredicateKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,109:69,109:72,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,109:74,109:77,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,109:42,109:88,type,"PredicateKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,109:41,109:88,type,"[PredicateKind<{unknown}>; 1]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,96:17,96:20,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,96:22,96:25,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,96:16,96:36,type,"({unknown}, {unknown}, AliasRelationDirection)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,197:8,199:37,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,197:8,200:93,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,240:31,240:80,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/relate/generalize.rs,240:31,240:93,type,"Option<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/context.rs,173:12,173:23,type,"fn dummy<Span, {unknown}>() -> Span"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/mod.rs,80:61,80:92,type,"impl FnMut({unknown}) -> UniverseIndex"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/mod.rs,80:19,80:93,type,"Map<RangeInclusive<u32>, impl FnMut({unknown}) -> UniverseIndex>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/mod.rs,79:52,80:94,type,"Chain<Once<UniverseIndex>, Map<RangeInclusive<u32>, impl FnMut({unknown}) -> UniverseIndex>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/mod.rs,79:52,81:22,type,"IndexVec<UniverseIndex, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/mod.rs,84:84,84:93,type,"IndexVec<UniverseIndex, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/mod.rs,79:12,79:21,type,"IndexVec<UniverseIndex, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/mod.rs,80:62,80:63,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,78:50,78:83,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,80:70,80:71,type,"GenericArgKind<{unknown}>"
-synthetic,,,type,"&GenericArgKind<{unknown}>"
-synthetic,,,type,"fn new_debug<GenericArgKind<{unknown}>>(&GenericArgKind<{unknown}>) -> Argument<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,82:50,82:89,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,84:74,84:75,type,"GenericArgKind<{unknown}>"
-synthetic,,,type,"&GenericArgKind<{unknown}>"
-synthetic,,,type,"fn new_debug<GenericArgKind<{unknown}>>(&GenericArgKind<{unknown}>) -> Argument<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,86:52,86:87,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,88:75,88:76,type,"GenericArgKind<{unknown}>"
-synthetic,,,type,"&GenericArgKind<{unknown}>"
-synthetic,,,type,"fn new_debug<GenericArgKind<{unknown}>>(&GenericArgKind<{unknown}>) -> Argument<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,79:16,79:43,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,80:16,80:17,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,83:16,83:40,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,84:16,84:17,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,87:16,87:41,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/canonical/instantiate.rs,88:16,88:17,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/at.rs,123:12,123:23,type,"fn dummy<Span, {unknown}>() -> Span"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/at.rs,144:12,144:23,type,"fn dummy<Span, {unknown}>() -> Span"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/infer/at.rs,184:12,184:23,type,"fn dummy<Span, {unknown}>() -> Span"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,109:14,109:25,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,110:44,110:46,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,110:44,110:68,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,110:73,110:83,type,"fn into<{unknown}, GenericArg<'db>>({unknown}) -> GenericArg<'db>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,111:40,111:42,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,111:40,111:64,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,111:69,111:79,type,"fn into<{unknown}, GenericArg<'db>>({unknown}) -> GenericArg<'db>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,112:41,112:43,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,112:41,112:65,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,112:70,112:80,type,"fn into<{unknown}, GenericArg<'db>>({unknown}) -> GenericArg<'db>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,110:37,110:39,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,110:12,110:40,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,111:33,111:35,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,111:12,111:36,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,112:34,112:36,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,112:12,112:37,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,116:14,116:25,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,117:44,117:46,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,117:44,117:64,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,118:40,118:42,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,118:40,118:60,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,119:41,119:43,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,119:41,119:61,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,117:37,117:39,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,117:12,117:40,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,118:33,118:35,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,118:12,118:36,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,119:34,119:36,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,119:12,119:37,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,130:15,130:23,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,130:25,130:33,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,130:14,130:34,type,"(GenericArgKind<{unknown}>, GenericArgKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,141:86,141:94,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,141:96,141:97,type,"GenericArgKind<{unknown}>"
-synthetic,,,type,"&{unknown}"
-synthetic,,,type,"fn new_debug<{unknown}>(&{unknown}) -> Argument<'_>"
-synthetic,,,type,"&GenericArgKind<{unknown}>"
-synthetic,,,type,"fn new_debug<GenericArgKind<{unknown}>>(&GenericArgKind<{unknown}>) -> Argument<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,144:86,144:94,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,144:96,144:97,type,"GenericArgKind<{unknown}>"
-synthetic,,,type,"&{unknown}"
-synthetic,,,type,"fn new_debug<{unknown}>(&{unknown}) -> Argument<'_>"
-synthetic,,,type,"&GenericArgKind<{unknown}>"
-synthetic,,,type,"fn new_debug<GenericArgKind<{unknown}>>(&GenericArgKind<{unknown}>) -> Argument<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,147:86,147:94,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,147:96,147:97,type,"GenericArgKind<{unknown}>"
-synthetic,,,type,"&{unknown}"
-synthetic,,,type,"fn new_debug<{unknown}>(&{unknown}) -> Argument<'_>"
-synthetic,,,type,"&GenericArgKind<{unknown}>"
-synthetic,,,type,"fn new_debug<GenericArgKind<{unknown}>>(&GenericArgKind<{unknown}>) -> Argument<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,131:13,131:43,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,131:45,131:75,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,131:12,131:76,type,"(GenericArgKind<{unknown}>, GenericArgKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,134:13,134:39,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,134:41,134:67,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,134:12,134:68,type,"(GenericArgKind<{unknown}>, GenericArgKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,137:13,137:40,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,137:42,137:69,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,137:12,137:70,type,"(GenericArgKind<{unknown}>, GenericArgKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,140:38,140:46,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,140:13,140:47,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,140:49,140:50,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,140:12,140:51,type,"(GenericArgKind<{unknown}>, GenericArgKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,143:34,143:42,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,143:13,143:43,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,143:45,143:46,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,143:12,143:47,type,"(GenericArgKind<{unknown}>, GenericArgKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,146:35,146:43,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,146:13,146:44,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,146:46,146:47,type,"GenericArgKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,146:12,146:48,type,"(GenericArgKind<{unknown}>, GenericArgKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,214:8,214:42,type,"fn collect_and_apply<{unknown}, {unknown}, GenericArgs<'_>, Map<Zip<{unknown}, {unknown}>, impl FnMut(({unknown}, {unknown})) -> Result<{unknown}, TypeError<DbInterner<'db>>>>, impl FnOnce(&[{unknown}]) -> GenericArgs<'_>>(Map<Zip<{unknown}, {unknown}>, impl FnMut(({unknown}, {unknown})) -> Result<{unknown}, TypeError<DbInterner<'db>>>>, impl FnOnce(&[{unknown}]) -> GenericArgs<'_>) -> <{unknown} as CollectAndApply<Self, GenericArgs<'_>>>::Output"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,215:12,215:26,type,"fn zip<{unknown}, {unknown}>({unknown}, {unknown}) -> Zip<<{unknown} as IntoIterator>::IntoIter, <{unknown} as IntoIterator>::IntoIter>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,215:27,215:35,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,215:37,215:45,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,215:12,215:46,type,"Zip<{unknown}, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,215:51,222:13,type,"impl FnMut(({unknown}, {unknown})) -> Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,219:20,219:21,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,220:20,220:21,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,216:16,221:17,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,215:60,222:13,type,"Result<{unknown}, TypeError<DbInterner<'db>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,215:12,222:14,type,"Map<Zip<{unknown}, {unknown}>, impl FnMut(({unknown}, {unknown})) -> Result<{unknown}, TypeError<DbInterner<'db>>>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,223:12,223:71,type,"impl FnOnce(&[{unknown}]) -> GenericArgs<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,223:16,223:42,type,"fn new_from_iter<'_, >(DbInterner<'_>, Cloned<Iter<'_, {unknown}>>) -> GenericArgs<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,223:53,223:54,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,223:53,223:61,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,223:53,223:70,type,"Cloned<Iter<'_, {unknown}>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,215:53,215:54,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,215:56,215:57,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,215:52,215:58,type,"({unknown}, {unknown})"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,223:13,223:14,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,443:14,443:25,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,444:32,444:34,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,444:32,444:56,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,444:61,444:71,type,"fn into<{unknown}, Term<'db>>({unknown}) -> Term<'db>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,445:35,445:37,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,445:35,445:59,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,445:64,445:74,type,"fn into<{unknown}, Term<'db>>({unknown}) -> Term<'db>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,444:25,444:27,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,444:12,444:28,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,445:28,445:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,445:12,445:31,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,449:14,449:25,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,450:32,450:34,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,450:32,450:52,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,451:35,451:37,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,451:35,451:55,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,450:25,450:27,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,450:12,450:28,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,451:28,451:30,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,451:12,451:31,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,462:15,462:23,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,462:25,462:33,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,462:14,462:34,type,"(TermKind<{unknown}>, TermKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,468:86,468:94,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,468:96,468:97,type,"TermKind<{unknown}>"
-synthetic,,,type,"&{unknown}"
-synthetic,,,type,"fn new_debug<{unknown}>(&{unknown}) -> Argument<'_>"
-synthetic,,,type,"&TermKind<{unknown}>"
-synthetic,,,type,"fn new_debug<TermKind<{unknown}>>(&TermKind<{unknown}>) -> Argument<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,471:86,471:94,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,471:96,471:97,type,"TermKind<{unknown}>"
-synthetic,,,type,"&{unknown}"
-synthetic,,,type,"fn new_debug<{unknown}>(&{unknown}) -> Argument<'_>"
-synthetic,,,type,"&TermKind<{unknown}>"
-synthetic,,,type,"fn new_debug<TermKind<{unknown}>>(&TermKind<{unknown}>) -> Argument<'_>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,463:13,463:31,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,463:33,463:51,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,463:12,463:52,type,"(TermKind<{unknown}>, TermKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,464:13,464:34,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,464:36,464:57,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,464:12,464:58,type,"(TermKind<{unknown}>, TermKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,467:26,467:34,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,467:13,467:35,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,467:37,467:38,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,467:12,467:39,type,"(TermKind<{unknown}>, TermKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,470:29,470:37,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,470:13,470:38,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,470:40,470:41,type,"TermKind<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,470:12,470:42,type,"(TermKind<{unknown}>, TermKind<{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"Map<{unknown}, impl FnMut({unknown}) -> Result<{unknown}, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"Result<SmallVec<[GenericArg<'_>; 2]>, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"fn branch<Result<SmallVec<[GenericArg<'_>; 2]>, {unknown}>>(Result<SmallVec<[GenericArg<'_>; 2]>, {unknown}>) -> ControlFlow<<Result<SmallVec<[GenericArg<'_>; 2]>, {unknown}> as Try>::Residual, <Result<SmallVec<[GenericArg<'_>; 2]>, {unknown}> as Try>::Output>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[GenericArg<'_>; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"Result<Infallible, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"fn from_residual<Result<GenericArgs<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, Result<Infallible, {unknown}>>(Result<Infallible, {unknown}>) -> Result<GenericArgs<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[GenericArg<'_>; 2]>>"
-synthetic,,,type,"Result<Infallible, {unknown}>"
-synthetic,,,type,"ControlFlow<Result<Infallible, {unknown}>, SmallVec<[GenericArg<'_>; 2]>>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"impl FnMut({unknown}) -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"Map<{unknown}, impl FnMut({unknown}) -> {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"&[{unknown}]"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"fn into_iter<Iter<'_, {unknown}>>(Iter<'_, {unknown}>) -> <Iter<'_, {unknown}> as IntoIterator>::IntoIter"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"&mut Iter<'_, {unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"fn next<Iter<'_, {unknown}>>(&mut Iter<'_, {unknown}>) -> Option<<Iter<'_, {unknown}> as Iterator>::Item>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"Option<{unknown}>"
-synthetic,,,type,"Option<{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
-synthetic,,,type,"Option<{unknown}>"
-synthetic,,,type,"Iter<'_, {unknown}>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/generic_arg.rs,153:0,153:16,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,203:52,203:75,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,203:52,203:76,type,"fn branch<{unknown}>({unknown}) -> ControlFlow<<{unknown} as Try>::Residual, <{unknown} as Try>::Output>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,203:52,203:76,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::ParamConst>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,203:52,203:76,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,203:52,203:76,type,"fn from_residual<Result<Const<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, {unknown}>({unknown}) -> Result<Const<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,208:59,208:82,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,208:59,208:83,type,"fn branch<{unknown}>({unknown}) -> ControlFlow<<{unknown} as Try>::Residual, <{unknown} as Try>::Output>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,208:59,208:83,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::BoundConst>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,208:59,208:83,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,208:59,208:83,type,"fn from_residual<Result<Const<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, {unknown}>({unknown}) -> Result<Const<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,210:64,210:87,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,210:64,210:88,type,"fn branch<{unknown}>({unknown}) -> ControlFlow<<{unknown} as Try>::Residual, <{unknown} as Try>::Output>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,210:64,210:88,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::PlaceholderConst>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,210:64,210:88,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,210:64,210:88,type,"fn from_residual<Result<Const<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, {unknown}>({unknown}) -> Result<Const<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,212:52,212:75,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,212:52,212:76,type,"fn branch<{unknown}>({unknown}) -> ControlFlow<<{unknown} as Try>::Residual, <{unknown} as Try>::Output>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,212:52,212:76,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::ValueConst>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,212:52,212:76,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,212:52,212:76,type,"fn from_residual<Result<Const<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, {unknown}>({unknown}) -> Result<Const<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,213:52,213:75,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,213:52,213:76,type,"fn branch<{unknown}>({unknown}) -> ControlFlow<<{unknown} as Try>::Residual, <{unknown} as Try>::Output>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,213:52,213:76,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::ErrorGuaranteed>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,213:52,213:76,type,"{unknown}"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/next_solver/consts.rs,213:52,213:76,type,"fn from_residual<Result<Const<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>, {unknown}>({unknown}) -> Result<Const<'db>, <F as FallibleTypeFolder<DbInterner<'db>>>::Error>"
+synthetic,,,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::ParamConst>"
+synthetic,,,type,"{unknown}"
+synthetic,,,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::ParamConst>"
+synthetic,,,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::BoundConst>"
+synthetic,,,type,"{unknown}"
+synthetic,,,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::BoundConst>"
+synthetic,,,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::PlaceholderConst>"
+synthetic,,,type,"{unknown}"
+synthetic,,,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::PlaceholderConst>"
+synthetic,,,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::ValueConst>"
+synthetic,,,type,"{unknown}"
+synthetic,,,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::ValueConst>"
+synthetic,,,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::ErrorGuaranteed>"
+synthetic,,,type,"{unknown}"
+synthetic,,,type,"ControlFlow<{unknown}, <DbInterner<'_> as Interner>::ErrorGuaranteed>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/lower_nextsolver/path.rs,556:40,556:41,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/lower_nextsolver/path.rs,1015:49,1015:50,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/lower.rs,1262:52,1262:54,mismatch,"&dyn DefDatabase","&'db dyn HirDatabase"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/lower.rs,1264:46,1264:48,mismatch,"&dyn DefDatabase","&'db dyn HirDatabase"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/lower/path.rs,897:49,897:50,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/inhabitedness.rs,88:21,88:22,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/infer/unify.rs,482:54,482:55,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/infer/unify.rs,1128:45,1128:46,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-ty/src/infer/closure.rs,336:47,336:48,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,22:43,22:59,type,"fn default<{unknown}>() -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,22:43,22:61,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,22:38,22:61,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,31:43,31:59,type,"fn default<{unknown}>() -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,31:43,31:61,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,31:38,31:61,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,70:43,70:59,type,"fn default<{unknown}>() -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,70:43,70:61,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,70:38,70:61,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,215:23,215:39,type,"fn default<{unknown}>() -> {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,215:23,215:41,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,218:81,218:89,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,218:76,218:89,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,222:90,222:98,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,222:85,222:98,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/tests.rs,215:8,215:20,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/project-model/src/cargo_workspace.rs,200:35,200:36,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/nameres/proc_macro.rs,46:59,46:71,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/nameres/proc_macro.rs,46:59,46:73,type,"Box<{unknown}, Global>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/nameres/mod_resolution.rs,68:48,68:49,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/resolver.rs,1287:38,1287:39,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/resolver.rs,1331:18,1331:29,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/resolver.rs,1332:8,1332:11,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/resolver.rs,1332:66,1332:69,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/resolver.rs,1331:12,1331:15,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/path.rs,290:18,290:30,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/path.rs,290:18,290:32,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/path.rs,292:22,292:34,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/path.rs,292:22,292:36,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/path.rs,299:18,299:30,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/path.rs,299:18,299:32,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/path.rs,301:22,301:34,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/path.rs,301:22,301:36,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,405:20,405:32,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,405:20,405:34,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,823:24,823:36,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,823:24,823:38,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,832:24,832:36,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,832:24,832:38,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,1255:52,1255:64,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,1255:52,1255:66,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,1502:47,1502:59,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,1502:47,1502:61,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,1837:28,1837:40,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,1837:28,1837:42,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,2853:81,2853:93,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,2853:81,2853:95,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,2913:81,2913:93,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,2913:81,2913:95,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,2963:30,2963:42,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,2963:30,2963:44,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,3096:49,3096:61,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store/lower.rs,3096:49,3096:63,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,170:50,170:72,type,"impl FnOnce(EscapeError) -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,170:54,170:70,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,170:54,170:72,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,170:74,170:83,type,"fn from<Box<{unknown}, Global>, Cow<'_, [u8]>>(Cow<'_, [u8]>) -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,170:27,170:84,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,171:36,171:40,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,178:49,178:71,type,"impl FnOnce(EscapeError) -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,178:53,178:69,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,178:53,178:71,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,178:73,178:82,type,"fn from<Box<{unknown}, Global>, Cow<'_, [u8]>>(Cow<'_, [u8]>) -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,178:27,178:83,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,179:33,179:37,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,170:20,170:24,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir.rs,178:20,178:24,type,"Box<{unknown}, Global>"
+/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/expr_store.rs,942:77,942:89,type,"fn deref<SmallVec<[Idx<Pat>; _]>>(&SmallVec<[Idx<Pat>; _]>) -> &<SmallVec<[Idx<Pat>; _]> as Deref>::Target"
/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir/type_ref.rs,177:25,177:47,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir/generics.rs,182:26,182:38,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/hir/generics.rs,182:26,182:40,type,"Box<{unknown}, Global>"
/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/item_tree.rs,295:84,295:85,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/item_tree.rs,295:56,295:89,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/item_tree.rs,297:86,297:87,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/item_tree.rs,297:58,297:91,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-def/src/attr.rs,73:40,73:45,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-expand/src/files.rs,262:57,262:76,type,"&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-expand/src/files.rs,302:8,302:27,type,"&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-expand/src/files.rs,306:8,306:27,type,"&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-expand/src/files.rs,333:57,333:76,type,"&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-expand/src/files.rs,333:57,333:84,type,"&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-expand/src/files.rs,333:57,333:84,mismatch,"SyntaxNode<RustLanguage>","&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/hir-expand/src/files.rs,346:12,346:31,type,"&{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-expand/src/attrs.rs,52:49,52:53,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-expand/src/attrs.rs,71:40,71:44,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/hir-expand/src/attrs.rs,340:41,340:42,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/mbe/src/lib.rs,146:34,146:46,type,"fn default<Box<{unknown}, Global>>() -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/mbe/src/lib.rs,146:34,146:48,type,"Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/mbe/src/expander/transcriber.rs,20:60,20:69,type,"fn from<Box<{unknown}, Global>, &str>(&str) -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/mbe/src/expander/transcriber.rs,20:60,20:84,type,"Box<{unknown}, Global>"
/home/shoyu/projects/rust-analyzer-git/crates/mbe/src/expander/matcher.rs,630:47,630:48,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/span/src/map.rs,183:19,183:28,type,"fn from<Box<{unknown}, Global>, [(TextSize, ErasedFileAstId); 1]>([(TextSize, ErasedFileAstId); 1]) -> Box<{unknown}, Global>"
-/home/shoyu/projects/rust-analyzer-git/crates/span/src/map.rs,183:19,183:75,type,"Box<{unknown}, Global>"
/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,312:68,312:69,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,351:34,351:77,mismatch,"fn(&(usize, char)) -> bool","impl Fn(&(usize, char)) -> bool"
/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,351:55,351:58,type,"{unknown}"
@@ -957,24 +218,10 @@ synthetic,,,type,"Iter<'_, {unknown}>"
/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,351:67,351:70,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,351:73,351:76,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,352:17,352:49,mismatch,"fn(&(usize, char)) -> bool","impl Fn(&(usize, char)) -> bool"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:12,555:27,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:32,555:50,type,"impl FnMut({unknown}) -> &{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:41,555:46,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:41,555:50,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:40,555:50,type,"&{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:12,555:51,type,"Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:12,555:51,type,"&Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,551:12,555:51,type,"(&Option<&[u8]>, &Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>)"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,550:8,550:18,type,"fn assert_failed<Option<&[u8]>, Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>>(AssertKind, &Option<&[u8]>, &Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>, Option<Arguments<'_>>) -> !"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,550:8,550:18,type,"&Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,550:8,550:18,type,"Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,550:8,550:18,type,"&Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,550:8,550:18,type,"&Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,550:8,550:18,type,"Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,550:8,550:18,mismatch,"Option<&[u8]>","Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:33,555:38,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,550:8,550:18,type,"&Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>"
-/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,550:8,550:18,type,"(&Option<&[u8]>, &Map<{unknown}, impl FnMut({unknown}) -> &{unknown}>)"
+/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:12,555:27,type,"Option<&'a [u8; N]>"
+/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:32,555:50,type,"impl FnOnce(&'a [u8; N]) -> &[u8]"
+/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:41,555:46,type,"&'a [u8; N]"
+/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,555:33,555:38,type,"&'a [u8; N]"
/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/token_ext.rs,562:57,562:58,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/prec.rs,362:43,362:44,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/syntax/src/ast/prec.rs,366:40,366:41,type,"{unknown}"
@@ -982,12 +229,9 @@ synthetic,,,type,"Iter<'_, {unknown}>"
/home/shoyu/projects/rust-analyzer-git/crates/parser/src/token_set.rs,18:26,18:27,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/parser/src/grammar/expressions.rs,436:46,436:51,type,"{unknown}"
/home/shoyu/projects/rust-analyzer-git/crates/parser/src/grammar/expressions.rs,588:35,588:39,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/stdx/src/lib.rs,290:27,290:39,type,"Option<{unknown}>"
/home/shoyu/projects/rust-analyzer-git/crates/stdx/src/process.rs,103:36,103:37,type,"{unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/stdx/src/anymap.rs,175:17,175:63,type,"&mut {unknown}"
-/home/shoyu/projects/rust-analyzer-git/crates/stdx/src/anymap.rs,184:17,184:77,type,"&mut {unknown}"
- exprs: 913562, ??ty: 292 (0%), ?ty: 472 (0%), !ty: 11
- pats: 198682, ??ty: 68 (0%), ?ty: 129 (0%), !ty: 0
+ exprs: 913562, ??ty: 119 (0%), ?ty: 63 (0%), !ty: 8
+ pats: 198682, ??ty: 8 (0%), ?ty: 18 (0%), !ty: 0
panics: 0
-Inference: 241.93s, 1547ginstr, 1252mb
-Total: 264.38s, 1690ginstr, 1976mb
+Inference: 111.82s, 1027ginstr, 1738mb
+Total: 133.69s, 1174ginstr, 2462mb
@ShoyuVanilla
Copy link
Author

ShoyuVanilla commented Jul 22, 2025

The title has been truncated 😅
The target codebase for analysis-stats is https://github.com/jackh726/rust-analyzer/tree/f3a877231866c3699774b62dc1b5ebbcd7a641c9

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment