rust/compiler/rustc_mir_transform/src
bors ee5d8d37ba Auto merge of #90986 - camsteffen:nested-filter, r=cjgillot
Replace `NestedVisitorMap` with generic `NestedFilter`

This is an attempt to make the `intravisit::Visitor` API simpler and "more const" with regard to nested visiting.

With this change, `intravisit::Visitor` does not visit nested things by default, unless you specify `type NestedFilter = nested_filter::OnlyBodies` (or `All`). `nested_visit_map` returns `Self::Map` instead of `NestedVisitorMap<Self::Map>`. It panics by default (unreachable if `type NestedFilter` is omitted).

One somewhat trixty thing here is that `nested_filter::{OnlyBodies, All}` live in `rustc_middle` so that they may have `type Map = map::Map` and so that `impl Visitor`s never need to specify `type Map` - it has a default of `Self::NestedFilter::Map`.
2022-01-17 14:50:50 +00:00
..
coverage Auto merge of #92816 - tmiasko:rm-llvm-asm, r=Amanieu 2022-01-17 09:40:29 +00:00
inline initial revert 2022-01-15 01:16:55 +00:00
abort_unwinding_calls.rs Treat drop_in_place as nounwind with -Z panic-in-drop=abort 2021-09-10 14:18:15 +01:00
add_call_guards.rs Move rustc_mir::transform to rustc_mir_transform. 2021-09-07 00:43:14 +02:00
add_moves_for_packed_drops.rs Move the dataflow framework to its own crate. 2021-09-07 19:57:07 +02:00
add_retag.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
check_const_item_mutation.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
check_packed_ref.rs give more help in the unaligned_references lint 2021-12-09 16:48:51 -05:00
check_unsafety.rs Auto merge of #90986 - camsteffen:nested-filter, r=cjgillot 2022-01-17 14:50:50 +00:00
cleanup_post_borrowck.rs Move rustc_mir::transform to rustc_mir_transform. 2021-09-07 00:43:14 +02:00
const_debuginfo.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
const_goto.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
const_prop.rs Auto merge of #92816 - tmiasko:rm-llvm-asm, r=Amanieu 2022-01-17 09:40:29 +00:00
deaggregator.rs Move rustc_mir::transform to rustc_mir_transform. 2021-09-07 00:43:14 +02:00
deduplicate_blocks.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
dest_prop.rs Remove deprecated LLVM-style inline assembly 2022-01-12 18:51:31 +01:00
dump_mir.rs Inline on_mir_pass and add inline to dump_mir 2021-10-14 15:26:59 -05:00
early_otherwise_branch.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
elaborate_drops.rs Delay remaining span_bugs in drop elaboration 2021-12-22 21:32:06 +01:00
function_item_references.rs initial revert 2022-01-15 01:16:55 +00:00
generator.rs Remove deprecated LLVM-style inline assembly 2022-01-12 18:51:31 +01:00
inline.rs Remove PartialOrd and Ord from LocalDefId 2021-12-22 10:50:57 -06:00
instcombine.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
lib.rs Replace NestedVisitorMap with NestedFilter 2022-01-16 16:02:36 -06:00
lower_intrinsics.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
lower_slice_len.rs Update passes with new interface 2021-12-02 17:31:38 -08:00
marker.rs Add pass for simple phase change 2021-12-02 17:31:38 -08:00
match_branches.rs Update passes with new interface 2021-12-02 17:31:38 -08:00
multiple_return_terminators.rs Update passes with new interface 2021-12-02 17:31:38 -08:00
normalize_array_len.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
nrvo.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
pass_manager.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
remove_false_edges.rs Separate RemoveFalseEdges from SimplifyBranches 2021-11-30 17:14:48 -08:00
remove_noop_landing_pads.rs Remove deprecated LLVM-style inline assembly 2022-01-12 18:51:31 +01:00
remove_storage_markers.rs Update passes with new interface 2021-12-02 17:31:38 -08:00
remove_uninit_drops.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
remove_unneeded_drops.rs Add rationale for RemoveUnneededDrops 2021-11-30 17:25:30 -08:00
remove_zsts.rs Update passes with new interface 2021-12-02 17:31:38 -08:00
required_consts.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
reveal_all.rs use try_normalize_erasing_regions in RevealAllVisitor 2021-12-13 23:13:24 +01:00
separate_const_switch.rs Remove deprecated LLVM-style inline assembly 2022-01-12 18:51:31 +01:00
shim.rs initial revert 2022-01-15 01:16:55 +00:00
simplify_branches.rs Auto merge of #91279 - scottmcm:small-refactor, r=nagisa 2021-12-06 13:04:18 +00:00
simplify_comparison_integral.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
simplify_try.rs Remove deprecated LLVM-style inline assembly 2022-01-12 18:51:31 +01:00
simplify.rs Remove deprecated LLVM-style inline assembly 2022-01-12 18:51:31 +01:00
uninhabited_enum_branching.rs Update passes with new interface 2021-12-02 17:31:38 -08:00
unreachable_prop.rs Remove deprecated LLVM-style inline assembly 2022-01-12 18:51:31 +01:00