coverage: Simplify internal representation of debug types by Zalathar · Pull Request #115867 · rust-lang/rust
rustbot
added
S-waiting-on-review
labels
Sep 15, 2023
bors
added
S-waiting-on-bors
and removed S-waiting-on-review
Status: Awaiting review from the assignee but also interested parties.labels
Sep 16, 2023bors added a commit to rust-lang-ci/rust that referenced this pull request
Sep 16, 2023…iaskrgr Rollup of 3 pull requests Successful merges: - rust-lang#115860 (Enable varargs support for AAPCS calling convention) - rust-lang#115867 (coverage: Simplify internal representation of debug types) - rust-lang#115885 (don't globally ignore rustc-ice files) Failed merges: - rust-lang#115873 (Make `TyKind::Adt`'s `Debug` impl be more pretty) - rust-lang#115884 (make ty::Const debug printing less verbose) r? `@ghost` `@rustbot` modify labels: rollup
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request
Sep 16, 2023Rollup merge of rust-lang#115867 - Zalathar:debug, r=oli-obk coverage: Simplify internal representation of debug types Most of these debug helper types store each of their fields as `Option<T>`, and then set them to `Some` when the relevant debug checks are enabled. This makes the struct fields awkward to read and results in some contortions when accessing the field values. This PR addresses those problems by changing each of the helper types to have a single `state: Option<FooState>` field. Each individual method can then obtain the state up-front (or return early if it is absent), allowing the rest of the code to just access the state's contents directly. --- There are some more improvements I'd like to make to the debug code, but for this PR I'm focusing on a straightforward mechanical change that should be fairly easy to review. (I did thrown in a few trivial changes to imports and docs, along with one switch from `FxHashMap` to `FxHashSet`.) --- Most of the changed lines are just indentation churn, so ignoring whitespace is recommended.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters