| 403 | |
| 404 | template <class C, class L> |
| 405 | inline void |
| 406 | DLL<C, L>::insert(C *e, C *after) |
| 407 | { |
| 408 | if (!after) { |
| 409 | push(e); |
| 410 | return; |
| 411 | } |
| 412 | prev(e) = after; |
| 413 | next(e) = next(after); |
| 414 | next(after) = e; |
| 415 | if (next(e)) { |
| 416 | prev(next(e)) = e; |
| 417 | } |
| 418 | } |
| 419 | |
| 420 | template <class C, class L> |
| 421 | auto |
no outgoing calls