about summary refs log tree commit diff
path: root/compiler/rustc_data_structures/src/graph/reference.rs
diff options
context:
space:
mode:
authorAmanda Stjerna <amanda.stjerna@it.uu.se>2024-05-13 13:47:45 +0200
committerAmanda Stjerna <amanda.stjerna@it.uu.se>2024-06-12 15:47:32 +0200
commitb1ace388c0c493e01b9ee1295dea406588afda11 (patch)
tree14f09c0643db39ac49547d7ebb2113c50ffc4268 /compiler/rustc_data_structures/src/graph/reference.rs
parentbbe9a9c20bac888efae2c7f033fb6cb3925a65b7 (diff)
downloadrust-b1ace388c0c493e01b9ee1295dea406588afda11.tar.gz
rust-b1ace388c0c493e01b9ee1295dea406588afda11.zip
Extend SCC construction to enable extra functionality
This patch has been extracted from #123720. It specifically enhances
`Sccs` to allow tracking arbitrary commutative properties of SCCs, including
- reachable values (max/min)
- SCC-internal values (max/min)

This helps with among other things universe computation: we can now identify
SCC universes as a straightforward "find max/min" operation during SCC construction.

It's also more or less zero-cost; don't use the new features, don't pay for them.

This commit also vastly extends the documentation of the SCCs module, which I had a very hard time following.
Diffstat (limited to 'compiler/rustc_data_structures/src/graph/reference.rs')
0 files changed, 0 insertions, 0 deletions