Module rustc_trait_selection::traits::util [−][src]
Structs
| Elaborator | “Elaboration” is the process of identifying all the predicates that
are implied by a source predicate. Currently, this basically means
walking the “supertraits” and other similar assumptions. For example,
if we know that |
| FilterToTraits | A filter around an iterator of predicates that makes it yield up just trait references. |
| SupertraitDefIds | |
| TraitAliasExpander | “Trait alias expansion” is the process of expanding a sequence of trait
references into another sequence by transitively following all trait
aliases. e.g. If you have bounds like |
| TraitAliasExpansionInfo | Stores information about the expansion of a trait via a path of zero or more trait aliases. |
Enums
| TupleArgumentsFlag |
Functions
| anonymize_predicate | |
| closure_trait_ref_and_return_type | |
| count_own_vtable_entries | Given a trait |
| elaborate_obligations | |
| elaborate_predicates | |
| elaborate_trait_ref | |
| elaborate_trait_refs | |
| expand_trait_aliases | |
| generator_trait_ref_and_outputs | |
| get_vtable_index_of_object_method | Given an upcast trait object described by |
| impl_item_is_final | |
| impl_trait_ref_and_oblig | Instantiate all bound parameters of the impl with the given substs, returning the resulting trait ref and all obligations that arise. The obligations are closed under normalization. |
| predicate_for_trait_def | |
| predicate_for_trait_ref | |
| predicates_for_generics | |
| supertrait_def_ids | |
| supertraits | |
| transitive_bounds | |
| transitive_bounds_that_define_assoc_type | A specialized variant of |
| upcast_choices | Casts a trait reference into a reference to one of its super
traits; returns |
Type Definitions
| Supertraits |