Skip to main content

Module traits

Module traits 

Source
Expand description

Trait Resolution. See the rustc-dev-guide for more information on how this works.

Structs§

Obligation
An Obligation represents some trait reference (e.g., i32: Eq) for which the “impl_source” must be found. The process of finding an “impl_source” is called “resolving” the Obligation. This process consists of either identifying an impl (e.g., impl Eq for i32) that satisfies the obligation, or else finding a bound that is in scope. The eventual result is usually a Selection (defined below).
ObligationCause
The reason why we incurred this obligation; used for error reporting.

Functions§

pred_known_to_hold_modulo_regions 🔒
FIXME(@lcnr): this function doesn’t seem right and shouldn’t exist?
type_known_to_meet_bound_modulo_regions 🔒
Determines whether the type ty is known to meet bound and returns true if so. Returns false if ty either does not meet bound or is not known to meet bound (note that this is conservative towards no impl, which is the opposite of the evaluate methods).

Type Aliases§

ObligationInspector
A callback that can be provided to inspect_typeck. Invoked on evaluation of root obligations.
PredicateObligation 🔒
PredicateObligations 🔒
TraitObligation 🔒