rustc: Harmonize DefKind
and DefPathData
`DefPathData::(ClosureExpr,ImplTrait)` are renamed to match `DefKind::(Closure,OpaqueTy)`. `DefPathData::ImplTraitAssocTy` is replaced with `DefPathData::TypeNS(kw::Empty)` because both correspond to `DefKind::AssocTy`. It's possible that introducing `(DefKind,DefPathData)::AssocOpaqueTy` could be a better solution, but that would be a much more invasive change. Const generic parameters introduced for effects are moved from `DefPathData::TypeNS` to `DefPathData::ValueNS`, because constants are values. `DefPathData` is no longer passed to `create_def` functions to avoid redundancy.
This commit is contained in:
parent
7ceaf19868
commit
17e799c270
17 changed files with 133 additions and 132 deletions
|
@ -594,7 +594,7 @@ fn push_unqualified_item_name(
|
|||
DefPathData::CrateRoot => {
|
||||
output.push_str(tcx.crate_name(def_id.krate).as_str());
|
||||
}
|
||||
DefPathData::ClosureExpr => {
|
||||
DefPathData::Closure => {
|
||||
let label = coroutine_kind_label(tcx.coroutine_kind(def_id));
|
||||
|
||||
push_disambiguated_special_name(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue