rust/compiler/rustc_borrowck/src
Guillaume Gomez b0b98a078d
Rollup merge of #141823 - amandasystems:reverse_scc_graph_once_cell, r=jieyouxu
Drive-by refactor: use `OnceCell` for the reverse region SCC graph

During region inference, the reverse SCC region graph is sometimes computed lazily. This changes the implementation for that from using an `Option` to a `OnceCell` which clearly communicates the intention and simplifies the code somewhat.

There shouldn't be any performance impact, except that this pulls the computation of the reverse SCC graph slightly later than before, and so may avoid computing it in some instances.

Note that this changes a mutable reference into an immutable (interior mutable) one.
2025-06-01 19:35:44 +02:00
..
constraints Decouple SCC annotations from SCCs 2025-04-28 14:59:04 +02:00
diagnostics Fix some var names 2025-05-27 11:14:47 +00:00
polonius AsyncDrop implementation using shim codegen of async_drop_in_place::{closure}, scoped async drop added. 2025-04-28 16:23:13 +07:00
region_infer Drive-by refactor: use OnceCell for the reverse region SCC graph 2025-05-31 17:46:07 +02:00
type_check Auto merge of #141667 - lqd:lazy-maybe-init, r=matthewjasper 2025-05-31 04:52:37 +00:00
borrow_set.rs rename BitSet to DenseBitSet 2025-01-11 11:34:01 +00:00
borrowck_errors.rs Use closure parse code 2025-03-06 17:58:32 -03:00
consumers.rs borrowck typeck children together with their parent 2025-04-08 00:34:40 +02:00
dataflow.rs move out of scope precomputer code 2025-01-12 07:39:20 +00:00
def_use.rs Visit place in BackwardIncompatibleDropHint statement 2025-04-13 22:01:54 +00:00
lib.rs move MaybeInitializedPlaces computation to where it's used 2025-05-27 21:21:28 +00:00
member_constraints.rs Greatly simplify lifetime captures in edition 2024 2025-02-22 22:24:52 +00:00
nll.rs move MaybeInitializedPlaces computation to where it's used 2025-05-27 21:21:28 +00:00
path_utils.rs remove borrowck duplicate of std::ops::ControlFlow 2025-01-01 12:13:33 +00:00
place_ext.rs Remove #[macro_use] extern crate tracing from rustc_borrowck. 2024-08-30 17:14:53 +10:00
places_conflict.rs Implement MIR, CTFE, and codegen for unsafe binders 2025-01-31 17:19:53 +00:00
prefixes.rs Implement MIR, CTFE, and codegen for unsafe binders 2025-01-31 17:19:53 +00:00
renumber.rs Squash fold into ty 2025-03-15 06:34:36 +00:00
root_cx.rs borrowck nested items in dead code 2025-05-02 18:45:28 +00:00
session_diagnostics.rs move check_opaque_type_parameter_valid 2025-04-03 11:13:10 +02:00
universal_regions.rs remove redundant fields 2025-04-11 15:18:29 +02:00
used_muts.rs Remove unnecessary lifetimes in dataflow structs. 2024-09-09 16:14:18 +10:00