wrap variable goals in module-expanded call/1
This commit is contained in:
@@ -603,7 +603,7 @@ expand_meta_predicate_subgoals([SG | SGs], [MS | MSs], M, [ESG | ESGs], HeadVars
|
|||||||
) ->
|
) ->
|
||||||
( var(SG),
|
( var(SG),
|
||||||
pairs:same_key(SG, HeadVars, [_|_], _) ->
|
pairs:same_key(SG, HeadVars, [_|_], _) ->
|
||||||
expand_subgoal(SG, MS, M, ESG, HeadVars) %%TODO: Shortcut this.. set SG = ESG. Or wrap it in '$call', ie. ESG = '$call'(SG).
|
expand_subgoal(SG, MS, M, ESG, HeadVars)
|
||||||
; expand_subgoal(SG, MS, M, ESG0, HeadVars),
|
; expand_subgoal(SG, MS, M, ESG0, HeadVars),
|
||||||
expand_module_name(ESG0, M, ESG)
|
expand_module_name(ESG0, M, ESG)
|
||||||
),
|
),
|
||||||
@@ -654,7 +654,7 @@ expand_goal_cases((Module:Goals0), _, ExpandedGoals, HeadVars) :-
|
|||||||
|
|
||||||
expand_goal(UnexpandedGoals, Module, ExpandedGoals, HeadVars) :-
|
expand_goal(UnexpandedGoals, Module, ExpandedGoals, HeadVars) :-
|
||||||
( var(UnexpandedGoals) ->
|
( var(UnexpandedGoals) ->
|
||||||
UnexpandedGoals = ExpandedGoals
|
call(Module:UnexpandedGoals) = ExpandedGoals
|
||||||
; goal_expansion(UnexpandedGoals, Module, UnexpandedGoals1),
|
; goal_expansion(UnexpandedGoals, Module, UnexpandedGoals1),
|
||||||
( Module \== user ->
|
( Module \== user ->
|
||||||
goal_expansion(UnexpandedGoals1, user, Goals)
|
goal_expansion(UnexpandedGoals1, user, Goals)
|
||||||
|
|||||||
Reference in New Issue
Block a user