MCPcopy Create free account
hub / github.com/Gecode/gecode / propagate

Method propagate

gecode/set/rel/nq.hpp:81–95  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

79
80 template<class View0, class View1>
81 ExecStatus
82 Distinct<View0,View1>::propagate(Space& home, const ModEventDelta&) {
83 assert(x0.assigned()||x1.assigned());
84 if (x0.assigned()) {
85 GlbRanges<View0> xr(x0);
86 IntSet xs(xr);
87 ConstSetView cv(home, xs);
88 GECODE_REWRITE(*this,(DistinctDoit<View1>::post(home(*this),x1,cv)));
89 } else {
90 GlbRanges<View1> yr(x1);
91 IntSet ys(yr);
92 ConstSetView cv(home, ys);
93 GECODE_REWRITE(*this,(DistinctDoit<View0>::post(home(*this),x0,cv)));
94 }
95 }
96
97 template<class View0>
98 ExecStatus

Callers

nothing calls this directly

Calls 9

ES_SUBSUMEDMethod · 0.80
postFunction · 0.50
equalFunction · 0.50
subsetFunction · 0.50
assignedMethod · 0.45
lubSizeMethod · 0.45
glbSizeMethod · 0.45
cardMinMethod · 0.45
cardMaxMethod · 0.45

Tested by

no test coverage detected