Module resolution

Module resolution 

Source
Expand description

Trait resolution: given a trait reference, we track which local clause caused it to be true. This module is independent from the rest of hax, in particular it doesn’t use its state-tracking machinery.

Structs§

AnnotatedTraitPred
ImplExpr
PredicateSearcher
Stores a set of predicates along with where they came from.

Enums§

BoundPredicateOrigin
Items have various predicates in scope. path_to uses them as a starting point for trait resolution. This tracks where each of them comes from.
BuiltinTraitData
DestructData
ImplExprAtom
PathChunk

Functions§

shallow_resolve_trait_ref
Attempts to resolve an obligation to an ImplSource. The result is a shallow ImplSource resolution, meaning that we do not resolve all nested obligations on the impl. Note that type check should guarantee to us that all nested obligations could be resolved if we wanted to.

Type Aliases§

Path