fix goal_expansion
This commit is contained in:
parent
1b5038cc9e
commit
0546df7ac3
@ -297,7 +297,8 @@ module(N) :-
|
||||
'$module_expansion'(M:G,G1,GO,_,CM,_,HVars) :- !,
|
||||
'$module_expansion'(G,G1,GO,M,M,HM,HVars).
|
||||
'$module_expansion'(G, G1, GO, CurMod, MM, HM, HVars) :-
|
||||
'$do_expand'(CurMod:G, CurMod:GI), !,
|
||||
'$pred_goal_expansion_on',
|
||||
'$do_expand'(G, CurMod, GI), !,
|
||||
'$module_expansion'(GI, G1, GO, CurMod, MM, HM, HVars).
|
||||
'$module_expansion'(G, G1, GO, CurMod, MM, HM,HVars) :-
|
||||
% is this imported from some other module M1?
|
||||
@ -310,24 +311,25 @@ module(N) :-
|
||||
'$module_expansion'(G, G1, GO, CurMod, MM, HM, HVars) :-
|
||||
'$complete_goal_expansion'(G, CurMod, MM, HM, G1, GO, HVars).
|
||||
|
||||
expand_goal(G, G) :-
|
||||
var(G), !.
|
||||
expand_goal(M:G, M:NG) :-
|
||||
'$do_expand'(G, M, NG), !.
|
||||
expand_goal(G, NG) :-
|
||||
'$current_module'(Mod),
|
||||
'$do_expand'(G, M, NG), !.
|
||||
expand_goal(M:G, M:NG) :-
|
||||
'$do_expand'(G, M, NG), !.
|
||||
expand_goal(G, G).
|
||||
|
||||
'$do_expand'(G, CurMod, NG) :-
|
||||
'$pred_goal_expansion_on',
|
||||
( user:goal_expansion(G, CurMod, GI)
|
||||
'$do_expand'(G, CurMod, GI) :-
|
||||
(
|
||||
'$pred_exists'(goal_expansion(G,GI), CurMod),
|
||||
call(CurMod:goal_expansion(G, GI))
|
||||
->
|
||||
true
|
||||
;
|
||||
(
|
||||
'$pred_exists'(goal_expansion(G,GI), CurMod)
|
||||
user:goal_expansion(G, CurMod, GI)
|
||||
->
|
||||
call(CurMod:goal_expansion(G, GI))
|
||||
)
|
||||
true
|
||||
;
|
||||
user:goal_expansion(G, GI)
|
||||
).
|
||||
|
Reference in New Issue
Block a user