MCPcopy Create free account
hub / github.com/Gecode/gecode / ~Space

Method ~Space

gecode/kernel/core.cpp:186–210  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

184 }
185
186 Space::~Space(void) {
187 // Mark space as failed
188 fail();
189 // Delete actors that must be deleted
190 {
191 Actor** a = d_fst;
192 Actor** e = d_cur;
193 // So that d_unforce knows that deletion is in progress
194 d_fst = nullptr;
195 while (a < e) {
196 // Ignore entries for tracers
197 if (!Support::marked(*a))
198 (void) (*a)->dispose(*this);
199 a++;
200 }
201 }
202#ifdef GECODE_HAS_VAR_DISPOSE
203 // Delete variables that were registered for disposal
204 for (int i=0; i<AllVarConf::idx_d; i++)
205 if (_vars_d[i] != nullptr)
206 vd[i]->dispose(*this, _vars_d[i]);
207#endif
208 // Release memory from memory manager
209 mm.release(ssd.data().sm);
210 }
211
212
213

Callers

nothing calls this directly

Calls 4

markedFunction · 0.85
dataMethod · 0.80
disposeMethod · 0.45
releaseMethod · 0.45

Tested by

no test coverage detected