remove no longer needed clpz_relation attributes

This commit is contained in:
Markus Triska
2023-04-11 21:16:02 +02:00
parent fd1e902492
commit 94efb9ffe3

View File

@@ -4490,14 +4490,20 @@ run_propagator(pgeq(A,B), MState) -->
run_propagator(rel_tuple(R, Tuple), MState) --> run_propagator(rel_tuple(R, Tuple), MState) -->
{ get_attr(R, clpz_relation, Relation) }, { get_attr(R, clpz_relation, Relation) },
( { ground(Tuple) } -> kill(MState), { memberchk(Tuple, Relation) } ( { ground(Tuple) } ->
kill(MState),
{ del_attr(R, clpz_relation),
memberchk(Tuple, Relation) }
; { relation_unifiable(Relation, Tuple, Us, false, Changed), ; { relation_unifiable(Relation, Tuple, Us, false, Changed),
Us = [_|_] }, Us = [_|_] },
( { Tuple = [First,Second], ( ground(First) ; ground(Second) ) } -> ( { Tuple = [First,Second], ( ground(First) ; ground(Second) ) } ->
kill(MState) kill(MState)
; [] ; []
), ),
( { Us = [Single] } -> kill(MState), Single = Tuple ( { Us = [Single] } ->
kill(MState),
{ del_attr(R, clpz_relation) },
Single = Tuple
; { Changed } -> ; { Changed } ->
{ put_attr(R, clpz_relation, Us), { put_attr(R, clpz_relation, Us),
disable_queue }, disable_queue },