diff options
Diffstat (limited to 'src/jrummikub/ai/fdsolver/Solver.java')
-rw-r--r-- | src/jrummikub/ai/fdsolver/Solver.java | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/jrummikub/ai/fdsolver/Solver.java b/src/jrummikub/ai/fdsolver/Solver.java index c3ede1b..2277ba4 100644 --- a/src/jrummikub/ai/fdsolver/Solver.java +++ b/src/jrummikub/ai/fdsolver/Solver.java @@ -99,7 +99,7 @@ public class Solver { finishedConstraint(constraint, dirtyVar); continue; } - for (Propagator propagator : constraint.getPropagators(false)) { + for (Propagator propagator : constraint.cachedPropagators) { if (propagator.getWatchedVars().contains(dirtyVar)) { propagator.propagate(); if (contradiction) { @@ -124,8 +124,8 @@ public class Solver { } public void addConstraint(Constraint constraint) { + constraint.cachedPropagators = constraint.getPropagators(false); constraints.add(constraint); - for (Var<?> var : constraint.getWatchedVars()) { var.makeDirty(); var.getConstraints().add(constraint); |