| 212 | |
| 213 | template<class Iter> |
| 214 | forceinline void |
| 215 | RangeList::copy(Space& home, RangeList*& r, Iter& i) { |
| 216 | RangeList sentinel; sentinel.next(r); |
| 217 | RangeList* p = &sentinel; |
| 218 | while (i()) { |
| 219 | RangeList* n = new (home) RangeList(i.min(),i.max()); |
| 220 | p->next(n); p=n; ++i; |
| 221 | } |
| 222 | p->next(nullptr); |
| 223 | r = sentinel.next(); |
| 224 | } |
| 225 | |
| 226 | template<class Iter> |
| 227 | forceinline void |