void swap(node_alloc_holder &x) { NodeAlloc& this_alloc = this->node_alloc(); NodeAlloc& other_alloc = x.node_alloc(); if (this_alloc != other_alloc){ detail::do_swap(this_alloc, other_alloc); } this->icont().swap(x.icont()); }