[−][src]Module rustc_trait_selection::traits::specialize
Logic and data structures related to impl specialization, explained in greater detail below.
At the moment, this implementation support only the simple "chain" rule: If any two impls overlap, one must be a strict subset of the other.
See the rustc dev guide for a bit more detail on how specialization fits together with the rest of the trait machinery.
Modules
| specialization_graph |
Structs
| OverlapError | Information pertinent to an overlapping impl error. |
Functions
| fulfill_implication | Attempt to fulfill all obligations of |
| report_conflicting_impls | |
| report_negative_positive_conflict | |
| report_overlap_conflict | |
| specialization_graph_provider | |
| specializes | Is |
| to_pretty_impl_header | Recovers the "impl X for Y" signature from |
| translate_substs | Given a subst for the requested impl, translate it to a subst appropriate for the actual item definition (whether it be in that impl, a parent impl, or the trait). |