rust/compiler/rustc_mir_dataflow/src
Nicholas Nethercote c904c6aaff Remove ResultsVisitable.
Now that `Results` is the only impl of `ResultsVisitable`, the trait can
be removed. This simplifies things by removining unnecessary layers of
indirection and abstraction.

- `ResultsVisitor` is simpler.
  - Its type parameter changes from `R` (an analysis result) to the
    simpler `A` (an analysis).
  - It no longer needs the `Domain` associated type, because it can use
    `A::Domain`.
  - Occurrences of `R` become `Results<'tcx, A>`, because there is now
    only one kind of analysis results.

- `save_as_intervals` also changes type parameter from `R` to `A`.

- The `results.reconstruct_*` method calls are replaced with
  `results.analysis.apply_*` method calls, which are equivalent.

- `Direction::visit_results_in_block` is simpler, with a single generic
  param (`A`) instead of two (`D` and `R`/`F`, with a bound connecting
  them). Likewise for `visit_results`.

- The `ResultsVisitor` impls for `MirBorrowCtxt` and
  `StorageConflictVisitor` are now specific about the type of the
  analysis results they work with. They both used to have a type param
  `R` but they weren't genuinely generic. In both cases there was only a
  single results type that made sense to instantiate them with.
2024-11-05 10:18:03 +11:00
..
framework Remove ResultsVisitable. 2024-11-05 10:18:03 +11:00
impls Add defaults for Analysis::apply_{call_return_effect,terminator_effect}. 2024-10-14 16:35:47 +11:00
move_paths Get rid of const eval_* and try_eval_* helpers 2024-10-19 18:07:35 +00:00
debuginfo.rs Preserve DebugInfo in DeadStoreElimination. 2023-10-06 15:46:11 +00:00
drop_flag_effects.rs compiler: Add rustc_abi dependence to the compiler 2024-10-27 21:10:58 -07:00
elaborate_drops.rs compiler: Add rustc_abi dependence to the compiler 2024-10-27 21:10:58 -07:00
errors.rs Migrate all diagnostics 2022-10-23 10:09:44 +02:00
lib.rs Remove ResultsVisitable. 2024-11-05 10:18:03 +11:00
points.rs Remove ResultsVisitable. 2024-11-05 10:18:03 +11:00
rustc_peek.rs Remove Analysis::into_engine. 2024-10-30 09:41:46 +11:00
storage.rs Replace Body::basic_blocks() with field access 2022-08-26 14:27:08 +02:00
un_derefer.rs Avoid unnecessary exports. 2023-11-23 14:06:57 +11:00
value_analysis.rs Remove ValueAnalysis and ValueAnalysisWrapper. 2024-10-31 12:46:26 +11:00