| 290 | |
| 291 | template<class VX, class VY> |
| 292 | forceinline void |
| 293 | Clause<VX,VY>::cancel(Space& home) { |
| 294 | for (Advisors<Tagged> as(c); as(); ++as) { |
| 295 | if (as.advisor().x) |
| 296 | x.cancel(home,as.advisor()); |
| 297 | else |
| 298 | y.cancel(home,as.advisor()); |
| 299 | as.advisor().dispose(home,c); |
| 300 | } |
| 301 | c.dispose(home); |
| 302 | z.cancel(home,*this,PC_BOOL_VAL); |
| 303 | } |
| 304 | |
| 305 | template<class VX, class VY> |
| 306 | forceinline size_t |