mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-27 09:14:20 +00:00
379233242b
Rename HIR `TypeBinding` to `AssocItemConstraint` and related cleanup Rename `hir::TypeBinding` and `ast::AssocConstraint` to `AssocItemConstraint` and update all items and locals using the old terminology. Motivation: The terminology *type binding* is extremely outdated. "Type bindings" not only include constraints on associated *types* but also on associated *constants* (feature `associated_const_equality`) and on RPITITs of associated *functions* (feature `return_type_notation`). Hence the word *item* in the new name. Furthermore, the word *binding* commonly refers to a mapping from a binder/identifier to a "value" for some definition of "value". Its use in "type binding" made sense when equality constraints (e.g., `AssocTy = Ty`) were the only kind of associated item constraint. Nowadays however, we also have *associated type bounds* (e.g., `AssocTy: Bound`) for which the term *binding* doesn't make sense. --- Old terminology (HIR, rustdoc): ``` `TypeBinding`: (associated) type binding ├── `Constraint`: associated type bound └── `Equality`: (associated) equality constraint (?) ├── `Ty`: (associated) type binding └── `Const`: associated const equality (constraint) ``` Old terminology (AST, abbrev.): ``` `AssocConstraint` ├── `Bound` └── `Equality` ├── `Ty` └── `Const` ``` New terminology (AST, HIR, rustdoc): ``` `AssocItemConstraint`: associated item constraint ├── `Bound`: associated type bound └── `Equality`: associated item equality constraint OR associated item binding (for short) ├── `Ty`: associated type equality constraint OR associated type binding (for short) └── `Const`: associated const equality constraint OR associated const binding (for short) ``` r? compiler-errors |
||
---|---|---|
.. | ||
auxiliary | ||
issues | ||
assign-to-method.rs | ||
assign-to-method.stderr | ||
call_method_unknown_pointee.rs | ||
call_method_unknown_pointee.stderr | ||
disambiguate-associated-function-first-arg.rs | ||
disambiguate-associated-function-first-arg.stderr | ||
disambiguate-multiple-blanket-impl.rs | ||
disambiguate-multiple-blanket-impl.stderr | ||
disambiguate-multiple-impl.rs | ||
disambiguate-multiple-impl.stderr | ||
disambiguate-multiple-trait-2.rs | ||
disambiguate-multiple-trait-2.stderr | ||
disambiguate-multiple-trait.rs | ||
disambiguate-multiple-trait.stderr | ||
field-method-suggestion-using-return-ty.rs | ||
field-method-suggestion-using-return-ty.stderr | ||
fulfillment-disqualifies-method.rs | ||
inherent-bound-in-probe.rs | ||
inherent-bound-in-probe.stderr | ||
issue-3707.rs | ||
issue-3707.stderr | ||
issue-7950.rs | ||
issue-7950.stderr | ||
issue-19521.rs | ||
issue-19521.stderr | ||
leak-check-disquality.rs | ||
method-ambig-one-trait-unknown-int-type.rs | ||
method-ambig-one-trait-unknown-int-type.stderr | ||
method-ambig-two-traits-cross-crate.rs | ||
method-ambig-two-traits-cross-crate.stderr | ||
method-ambig-two-traits-from-bounds.rs | ||
method-ambig-two-traits-from-bounds.stderr | ||
method-ambig-two-traits-from-impls2.rs | ||
method-ambig-two-traits-from-impls2.stderr | ||
method-ambig-two-traits-from-impls.rs | ||
method-ambig-two-traits-from-impls.stderr | ||
method-ambig-two-traits-with-default-method.rs | ||
method-ambig-two-traits-with-default-method.stderr | ||
method-ambiguity-no-rcvr.rs | ||
method-ambiguity-no-rcvr.stderr | ||
method-argument-inference-associated-type.rs | ||
method-call-err-msg.rs | ||
method-call-err-msg.stderr | ||
method-call-lifetime-args-fail.rs | ||
method-call-lifetime-args-fail.stderr | ||
method-call-lifetime-args-lint-fail.rs | ||
method-call-lifetime-args-lint-fail.stderr | ||
method-call-lifetime-args-lint.rs | ||
method-call-lifetime-args-lint.stderr | ||
method-call-lifetime-args-subst-index.rs | ||
method-call-lifetime-args-unresolved.rs | ||
method-call-lifetime-args-unresolved.stderr | ||
method-call-lifetime-args.rs | ||
method-call-lifetime-args.stderr | ||
method-call-type-binding.rs | ||
method-call-type-binding.stderr | ||
method-deref-to-same-trait-object-with-separate-params.rs | ||
method-deref-to-same-trait-object-with-separate-params.stderr | ||
method-early-bound-lifetimes-on-self.rs | ||
method-lookup-order.rs | ||
method-macro-backtrace.rs | ||
method-macro-backtrace.stderr | ||
method-missing-call.rs | ||
method-missing-call.stderr | ||
method-mut-self-modifies-mut-slice-lvalue.rs | ||
method-normalize-bounds-issue-20604.rs | ||
method-not-found-but-doc-alias.rs | ||
method-not-found-but-doc-alias.stderr | ||
method-not-found-generic-arg-elision.rs | ||
method-not-found-generic-arg-elision.stderr | ||
method-on-ambiguous-numeric-type.rs | ||
method-on-ambiguous-numeric-type.stderr | ||
method-path-in-pattern.rs | ||
method-path-in-pattern.stderr | ||
method-probe-no-guessing-dyn-trait.rs | ||
method-projection.rs | ||
method-recursive-blanket-impl.rs | ||
method-recursive-blanket-impl.stderr | ||
method-resolvable-path-in-pattern.rs | ||
method-resolvable-path-in-pattern.stderr | ||
method-self-arg-1.rs | ||
method-self-arg-1.stderr | ||
method-self-arg-2.rs | ||
method-self-arg-2.stderr | ||
method-self-arg-aux1.rs | ||
method-self-arg-aux2.rs | ||
method-self-arg-trait.rs | ||
method-self-arg.rs | ||
method-trait-object-with-hrtb.rs | ||
method-two-trait-defer-resolution-1.rs | ||
method-two-trait-defer-resolution-2.rs | ||
method-two-trait-defer-resolution-2.stderr | ||
method-two-traits-distinguished-via-where-clause.rs | ||
method-two-traits-distinguished-via-where-clause.stderr | ||
method-where-clause.rs | ||
opaque_param_in_ufc.rs | ||
opaque_param_in_ufc.stderr | ||
probe-for-diagnostic-doesnt-do-extra-work.rs | ||
probe-for-diagnostic-doesnt-do-extra-work.stderr | ||
probe-overflow-due-to-sized-predicate-ordering.rs | ||
self-type-is-sup-no-eq.rs | ||
suggest-convert-ptr-to-ref.rs | ||
suggest-convert-ptr-to-ref.stderr | ||
suggest-method-on-call-for-ambig-receiver.rs | ||
suggest-method-on-call-for-ambig-receiver.stderr | ||
suggest-method-on-call-with-macro-rcvr.rs | ||
suggest-method-on-call-with-macro-rcvr.stderr |