# Function rustc_trait_selection::solve::eval_ctxt::canonical::make_canonical_state

source ·

    pub(in solve) fn make_canonical_state<'tcx, T: TypeFoldable<TyCtxt<'tcx>>>(
        infcx: &InferCtxt<'tcx>,
        var_values: &[GenericArg<'tcx>],
        max_input_universe: UniverseIndex,
        data: T
    ) -> CanonicalState<'tcx, T>

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.