45 for (uint i=0; i<siz; ++i)
55 CHECK (siz == mySiz_,
"using wrong type information for de-allocation");
56 for (uint i=0; i<siz; ++i)
57 checksum -= myCrap_[i];
112 CHECK (0 == killer.size());
114 killer.manage<
short> (NULL);
115 CHECK (0 == killer.size());
117 Probe<5> *p = makeViktim<5>();
118 Probe<7> &r = *makeViktim<7>();
119 void *v = makeViktim<9>();
120 CHECK (0 < checksum);
124 killer.manage (
static_cast<Probe<9>*
> (v));
126 CHECK (3 == killer.size());
129 CHECK (2 == killer.size());
132 CHECK (1 == killer.size());
135 CHECK (1 == killer.size());
138 CHECK (0 == killer.size());
139 CHECK (0 == checksum);
146 for (uint i=1; i <= MAX_MASS; ++i)
148 case 0: feedViktim<12> (killer);
break;
149 case 1: feedViktim<23> (killer);
break;
150 case 2: feedViktim<34> (killer);
break;
151 case 3: feedViktim<45> (killer);
break;
152 case 4: feedViktim<56> (killer);
break;
161 CHECK (0 == killer.size());
163 CHECK (0 == checksum);
164 CHECK (0 == killer.size());
166 feedViktims (killer);
167 CHECK (MAX_MASS == killer.size());
170 CHECK (0 == killer.size());
171 CHECK (0 == checksum);
180 CHECK (0 == killer.size());
181 CHECK (0 == checksum);
183 feedViktims (killer);
184 Probe<444> * individuum = makeViktim<444>();
185 killer.manage (individuum);
186 feedViktims (killer);
187 killer.manage (makeViktim<5555>());
188 feedViktims (killer);
190 CHECK (3*MAX_MASS + 2 == killer.size());
192 killer.kill(individuum);
193 CHECK (3*MAX_MASS + 1 == killer.size());
195 CHECK (0 < checksum);
198 CHECK (0 == checksum);
209 CHECK (0 == killer.size());
224 , secret_(
'a' +
rani(
'z'-
'a' +1))
232 Special *
self =
static_cast<Special*
> (it);
233 checksum -=
self->secret_;
239 void * type_erased =
new Special();
240 CHECK (0 < checksum);
242 killer.manage (type_erased, &Special::selfKill);
243 CHECK (1 == killer.size());
245 killer.kill(type_erased);
246 CHECK (0 == killer.size());
247 CHECK (0 == checksum);
int rani(uint bound=_iBOUND())
Collecting and finally triggering deleter functions.
Implementation namespace for support and library code.
Simplistic test class runner.
Manage a collection of deleter functions.