| 53 | |
| 54 | template<class Tracer> |
| 55 | forceinline void |
| 56 | DFS<Tracer>::reset(Space* s) { |
| 57 | tracer.round(); |
| 58 | delete cur; |
| 59 | path.reset(); |
| 60 | d = 0; |
| 61 | if ((s == nullptr) || (s->status(*this) == SS_FAILED)) { |
| 62 | delete s; |
| 63 | cur = nullptr; |
| 64 | } else { |
| 65 | cur = s; |
| 66 | } |
| 67 | Worker::reset(); |
| 68 | } |
| 69 | |
| 70 | template<class Tracer> |
| 71 | forceinline NoGoods& |