Unnamed repository; edit this file 'description' to name the repository.
Rollup merge of #157410 - erickt:rustc-public, r=makai410
Implement rustc_public::CrateDef{,Type} for FieldDef
This makes a few changes to rustc_public to make it a little easier to analyze ADT types.
* It implements `CrateDef` and `CrateDefType` for `FieldDef`, which allows easy access to the underlying `DefId`, names, and tool annotations.
* It adds `Crate::adts` to simplify stepping through all the ADTs in the crate.
Note that I did use Gemini to assist with writing this patch, but I wrote most of it, reviewed all the vode, and verified the tests pass locally.