shed module names from arguments of the (->)/2, (,)/2, (;)/2 predicates
This commit is contained in:
@@ -243,15 +243,26 @@ call_or_cut(G, B, ErrorPI) :-
|
|||||||
|
|
||||||
call_or_cut(!, B) :-
|
call_or_cut(!, B) :-
|
||||||
'$set_cp_by_default'(B).
|
'$set_cp_by_default'(B).
|
||||||
|
call_or_cut(_:!, B) :-
|
||||||
|
'$set_cp_by_default'(B).
|
||||||
call_or_cut((G1, G2), B) :-
|
call_or_cut((G1, G2), B) :-
|
||||||
!,
|
!,
|
||||||
'$call_with_default_policy'(','(G1, G2, B)).
|
'$call_with_default_policy'(','(G1, G2, B)).
|
||||||
|
call_or_cut(_:(G1, G2), B) :-
|
||||||
|
!,
|
||||||
|
'$call_with_default_policy'(','(G1, G2, B)).
|
||||||
call_or_cut((G1 ; G2), B) :-
|
call_or_cut((G1 ; G2), B) :-
|
||||||
!,
|
!,
|
||||||
'$call_with_default_policy'(';'(G1, G2, B)).
|
'$call_with_default_policy'(';'(G1, G2, B)).
|
||||||
|
call_or_cut(_:(G1 ; G2), B) :-
|
||||||
|
!,
|
||||||
|
'$call_with_default_policy'(';'(G1, G2, B)).
|
||||||
call_or_cut((G1 -> G2), B) :-
|
call_or_cut((G1 -> G2), B) :-
|
||||||
!,
|
!,
|
||||||
'$call_with_default_policy'(->(G1, G2, B)).
|
'$call_with_default_policy'(->(G1, G2, B)).
|
||||||
|
call_or_cut(_:(G1 -> G2), B) :-
|
||||||
|
!,
|
||||||
|
'$call_with_default_policy'(->(G1, G2, B)).
|
||||||
call_or_cut(G, _) :-
|
call_or_cut(G, _) :-
|
||||||
'$call_with_default_policy'(G).
|
'$call_with_default_policy'(G).
|
||||||
|
|
||||||
@@ -261,14 +272,26 @@ call_or_cut(G, _) :-
|
|||||||
!,
|
!,
|
||||||
'$call_with_default_policy'(','(G1, G2, B)),
|
'$call_with_default_policy'(','(G1, G2, B)),
|
||||||
'$call_with_default_policy'(call_or_cut(G3, B, (',')/2)).
|
'$call_with_default_policy'(call_or_cut(G3, B, (',')/2)).
|
||||||
|
','(_:(G1, G2), G3, B) :-
|
||||||
|
!,
|
||||||
|
'$call_with_default_policy'(','(G1, G2, B)),
|
||||||
|
'$call_with_default_policy'(call_or_cut(G3, B, (',')/2)).
|
||||||
','((G1; G2), G3, B) :-
|
','((G1; G2), G3, B) :-
|
||||||
!,
|
!,
|
||||||
'$call_with_default_policy'(';'(G1, G2, B)),
|
'$call_with_default_policy'(';'(G1, G2, B)),
|
||||||
'$call_with_default_policy'(call_or_cut(G3, B, (',')/2)).
|
'$call_with_default_policy'(call_or_cut(G3, B, (',')/2)).
|
||||||
|
','(_:(G1; G2), G3, B) :-
|
||||||
|
!,
|
||||||
|
'$call_with_default_policy'(';'(G1, G2, B)),
|
||||||
|
'$call_with_default_policy'(call_or_cut(G3, B, (',')/2)).
|
||||||
','((G1 -> G2), G3, B) :-
|
','((G1 -> G2), G3, B) :-
|
||||||
!,
|
!,
|
||||||
'$call_with_default_policy'(->(G1, G2, B)),
|
'$call_with_default_policy'(->(G1, G2, B)),
|
||||||
'$call_with_default_policy'(call_or_cut(G3, B, (',')/2)).
|
'$call_with_default_policy'(call_or_cut(G3, B, (',')/2)).
|
||||||
|
','(_:(G1 -> G2), G3, B) :-
|
||||||
|
!,
|
||||||
|
'$call_with_default_policy'(->(G1, G2, B)),
|
||||||
|
'$call_with_default_policy'(call_or_cut(G3, B, (',')/2)).
|
||||||
','(G1, G2, B) :-
|
','(G1, G2, B) :-
|
||||||
'$call_with_default_policy'(call_or_cut(G1, B, (',')/2)),
|
'$call_with_default_policy'(call_or_cut(G1, B, (',')/2)),
|
||||||
'$call_with_default_policy'(call_or_cut(G2, B, (',')/2)).
|
'$call_with_default_policy'(call_or_cut(G2, B, (',')/2)).
|
||||||
@@ -280,17 +303,33 @@ call_or_cut(G, _) :-
|
|||||||
( '$call_with_default_policy'(','(G1, G2, B))
|
( '$call_with_default_policy'(','(G1, G2, B))
|
||||||
; '$call_with_default_policy'(call_or_cut(G3, B, (;)/2))
|
; '$call_with_default_policy'(call_or_cut(G3, B, (;)/2))
|
||||||
).
|
).
|
||||||
|
';'(_:(G1, G2), G3, B) :-
|
||||||
|
!,
|
||||||
|
( '$call_with_default_policy'(','(G1, G2, B))
|
||||||
|
; '$call_with_default_policy'(call_or_cut(G3, B, (;)/2))
|
||||||
|
).
|
||||||
';'((G1; G2), G3, B) :-
|
';'((G1; G2), G3, B) :-
|
||||||
!,
|
!,
|
||||||
( '$call_with_default_policy'(';'(G1, G2, B))
|
( '$call_with_default_policy'(';'(G1, G2, B))
|
||||||
; '$call_with_default_policy'(call_or_cut(G3, B, (;)/2))
|
; '$call_with_default_policy'(call_or_cut(G3, B, (;)/2))
|
||||||
).
|
).
|
||||||
|
';'(_:(G1; G2), G3, B) :-
|
||||||
|
!,
|
||||||
|
( '$call_with_default_policy'(';'(G1, G2, B))
|
||||||
|
; '$call_with_default_policy'(call_or_cut(G3, B, (;)/2))
|
||||||
|
).
|
||||||
';'((G1 -> G2), G3, B) :-
|
';'((G1 -> G2), G3, B) :-
|
||||||
!,
|
!,
|
||||||
( '$call_with_default_policy'(call_or_cut(G1, B, (->)/2)) ->
|
( '$call_with_default_policy'(call_or_cut(G1, B, (->)/2)) ->
|
||||||
'$call_with_default_policy'(call_or_cut(G2, B, (->)/2))
|
'$call_with_default_policy'(call_or_cut(G2, B, (->)/2))
|
||||||
; '$call_with_default_policy'(call_or_cut(G3, B, (;)/2))
|
; '$call_with_default_policy'(call_or_cut(G3, B, (;)/2))
|
||||||
).
|
).
|
||||||
|
';'(_:(G1 -> G2), G3, B) :-
|
||||||
|
!,
|
||||||
|
( '$call_with_default_policy'(call_or_cut(G1, B, (->)/2)) ->
|
||||||
|
'$call_with_default_policy'(call_or_cut(G2, B, (->)/2))
|
||||||
|
; '$call_with_default_policy'(call_or_cut(G3, B, (;)/2))
|
||||||
|
).
|
||||||
';'(G1, G2, B) :-
|
';'(G1, G2, B) :-
|
||||||
( '$call_with_default_policy'(call_or_cut(G1, B, (;)/2))
|
( '$call_with_default_policy'(call_or_cut(G1, B, (;)/2))
|
||||||
; '$call_with_default_policy'(call_or_cut(G2, B, (;)/2))
|
; '$call_with_default_policy'(call_or_cut(G2, B, (;)/2))
|
||||||
@@ -303,16 +342,31 @@ call_or_cut(G, _) :-
|
|||||||
( '$call_with_default_policy'(','(G1, G2, B)) ->
|
( '$call_with_default_policy'(','(G1, G2, B)) ->
|
||||||
'$call_with_default_policy'(call_or_cut(G3, B, (->)/2))
|
'$call_with_default_policy'(call_or_cut(G3, B, (->)/2))
|
||||||
).
|
).
|
||||||
|
->(_:(G1, G2), G3, B) :-
|
||||||
|
!,
|
||||||
|
( '$call_with_default_policy'(','(G1, G2, B)) ->
|
||||||
|
'$call_with_default_policy'(call_or_cut(G3, B, (->)/2))
|
||||||
|
).
|
||||||
->((G1 ; G2), G3, B) :-
|
->((G1 ; G2), G3, B) :-
|
||||||
!,
|
!,
|
||||||
( '$call_with_default_policy'(';'(G1, G2, B)) ->
|
( '$call_with_default_policy'(';'(G1, G2, B)) ->
|
||||||
'$call_with_default_policy'(call_or_cut(G3, B, (->)/2))
|
'$call_with_default_policy'(call_or_cut(G3, B, (->)/2))
|
||||||
).
|
).
|
||||||
|
->(_:(G1 ; G2), G3, B) :-
|
||||||
|
!,
|
||||||
|
( '$call_with_default_policy'(';'(G1, G2, B)) ->
|
||||||
|
'$call_with_default_policy'(call_or_cut(G3, B, (->)/2))
|
||||||
|
).
|
||||||
->((G1 -> G2), G3, B) :-
|
->((G1 -> G2), G3, B) :-
|
||||||
!,
|
!,
|
||||||
( '$call_with_default_policy'(->(G1, G2, B)) ->
|
( '$call_with_default_policy'(->(G1, G2, B)) ->
|
||||||
'$call_with_default_policy'(call_or_cut(G3, B, (->)/2))
|
'$call_with_default_policy'(call_or_cut(G3, B, (->)/2))
|
||||||
).
|
).
|
||||||
|
->(_:(G1 -> G2), G3, B) :-
|
||||||
|
!,
|
||||||
|
( '$call_with_default_policy'(->(G1, G2, B)) ->
|
||||||
|
'$call_with_default_policy'(call_or_cut(G3, B, (->)/2))
|
||||||
|
).
|
||||||
->(G1, G2, B) :-
|
->(G1, G2, B) :-
|
||||||
( '$call_with_default_policy'(call_or_cut(G1, B, (->)/2))
|
( '$call_with_default_policy'(call_or_cut(G1, B, (->)/2))
|
||||||
-> '$call_with_default_policy'(call_or_cut(G2, B, (->)/2))
|
-> '$call_with_default_policy'(call_or_cut(G2, B, (->)/2))
|
||||||
|
|||||||
@@ -398,16 +398,16 @@ predicate_property(Callable, Property) :-
|
|||||||
).
|
).
|
||||||
|
|
||||||
|
|
||||||
strip_module_(M0, G0, M1, G1) :-
|
strip_module(M0, G0, M1, G1) :-
|
||||||
( nonvar(G0),
|
( nonvar(G0),
|
||||||
G0 = (MG1:G2) ->
|
G0 = (MG1:G2) ->
|
||||||
strip_module_(MG1, G2, M1, G1)
|
strip_module(MG1, G2, M1, G1)
|
||||||
; M0 = M1,
|
; M0 = M1,
|
||||||
G0 = G1
|
G0 = G1
|
||||||
).
|
).
|
||||||
strip_module(Goal, M, G) :-
|
|
||||||
strip_module_(_, Goal, M, G).
|
|
||||||
|
|
||||||
|
strip_module(Goal, M, G) :-
|
||||||
|
strip_module(_, Goal, M, G).
|
||||||
|
|
||||||
|
|
||||||
expand_subgoal(UnexpandedGoals, MS, Module, ExpandedGoals, HeadVars) :-
|
expand_subgoal(UnexpandedGoals, MS, Module, ExpandedGoals, HeadVars) :-
|
||||||
|
|||||||
Reference in New Issue
Block a user