MCPcopy Create free account
hub / github.com/Gecode/gecode / operator ++

Method operator ++

gecode/int/extensional/compact.hpp:238–263  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

236 }
237 template<class View, bool pos>
238 forceinline void
239 Compact<View,pos>::ValidSupports::operator ++(void) {
240 n++;
241 if (pos) {
242 if (n <= xr.max()) {
243 assert(n <= sr->max);
244 s += n_words;
245 } else if (n <= max) {
246 while (n > xr.max())
247 ++xr;
248 n = xr.min();
249 while (n > sr->max)
250 sr++;
251 s = sr->supports(n_words,n);
252 assert((xr.min() <= n) && (n <= xr.max()));
253 assert((sr->min <= n) && (n <= sr->max));
254 assert(sr->min <= xr.min());
255 }
256 } else {
257 if ((n <= sr->max) && (n <= xr.max())) {
258 s += n_words;
259 } else if (n <= max) {
260 find();
261 }
262 }
263 }
264 template<class View, bool pos>
265 forceinline bool
266 Compact<View,pos>::ValidSupports::operator ()(void) const {

Callers

nothing calls this directly

Calls 3

maxMethod · 0.45
minMethod · 0.45
supportsMethod · 0.45

Tested by

no test coverage detected