pub(super) fn resolvent_pending(
    infer: &mut InferenceTable,
    pending_ex_clause: &CanonicalPendingExClause,
    answer_table_goal: &CanonicalGoal,
    answer_subst: &CanonicalConstrainedSubst,
) -> Satisfiable<(StackIndex, ExClause)> {
    let PendingExClause {
        goal_depth,
        subst,
        selected_goal,
        delayed_literals,
        constraints,
        subgoals,
    } = infer.instantiate_canonical(pending_ex_clause);

    let ex_clause = ExClause {
        subst,
        delayed_literals,
        constraints,
        subgoals,
    };

    resolvent::resolvent_answer(
        infer,
        &ex_clause,
        &selected_goal,
        answer_table_goal,
        answer_subst,
    ).map(|r| (goal_depth, r))
}
/// Applies the SLG resolvent algorithm to incorporate a new
/// answer and apply it to a previously blocked ex-clause.
Applies the SLG resolvent algorithm to incorporate a new
answer and apply it to a previously blocked ex-clause.
Applies the SLG resolvent algorithm to incorporate a new answer and apply it to a previously blocked ex - clause .
pub(super) fn resolvent_pending(
    infer: &mut InferenceTable,
    pending_ex_clause: &CanonicalPendingExClause,
    answer_table_goal: &CanonicalGoal,
    answer_subst: &CanonicalConstrainedSubst,
) -> Satisfiable<(StackIndex, ExClause)> {
    let PendingExClause {
        goal_depth,
        subst,
        selected_goal,
        delayed_literals,
        constraints,
        subgoals,
    } = infer.instantiate_canonical(pending_ex_clause);
    let ex_clause = ExClause {
        subst,
        delayed_literals,
        constraints,
        subgoals,
    };
    resolvent::resolvent_answer(
        infer,
        &ex_clause,
        &selected_goal,
        answer_table_goal,
        answer_subst,
    ).map(|r| (goal_depth, r))
}
pub ( super ) fn resolvent_pending ( infer : & mut InferenceTable , pending_ex_clause : & CanonicalPendingExClause , answer_table_goal : & CanonicalGoal , answer_subst : & CanonicalConstrainedSubst , ) -> Satisfiable < ( StackIndex , ExClause ) > { let PendingExClause { goal_depth , subst , selected_goal , delayed_literals , constraints , subgoals , } = infer . instantiate_canonical ( pending_ex_clause ) ; let ex_clause = ExClause { subst , delayed_literals , constraints , subgoals , } ; resolvent :: resolvent_answer ( infer , & ex_clause , & selected_goal , answer_table_goal , answer_subst , ) . map ( | r | ( goal_depth , r ) ) }
Applies the SLG resolvent algorithm to incorporate a new
answer and apply it to a previously blocked ex-clause.
Applies the SLG resolvent algorithm to incorporate a new answer and apply it to a previously blocked ex - clause .
infer
&mut InferenceTable
pending_ex_clause
&CanonicalPendingExClause
answer_table_goal
&CanonicalGoal
answer_subst
&CanonicalConstrainedSubst