# Function rustc_next_trait_solver::solve::eval_ctxt::canonical::make_canonical_state

source ·

    pub(in solve) fn make_canonical_state<D, T, I>(
        delegate: &D,
        var_values: &[I::GenericArg],
        max_input_universe: UniverseIndex,
        data: T,
    ) -> CanonicalState<I, T>where
        D: SolverDelegate<Interner = I>,
        I: Interner,
        T: TypeFoldable<I>,

Expand description

Used by proof trees to be able to recompute intermediate actions while evaluating a goal. The `var_values` not only include the bound variables of the query input, but also contain all unconstrained inference vars created while evaluating this goal.