23 Containers library [containers]

23.2 Container requirements [container.requirements]

23.2.4 Node handles [container.node]

23.2.4.5 node_handle modifiers [container.node.modifiers]

void swap(node_handle& nh) noexcept(ator_traits::propagate_on_container_swap::value || ator_traits::is_always_equal::value);

Requires: !alloc_, or !nh.alloc_, or ator_traits::propagate_on_container_swap is true, or alloc_ == nh.alloc_.

Effects: Calls swap(ptr_, nh.ptr_). If !alloc_, or !nh.alloc_, or ator_traits::propagate_on_container_swap is true calls swap(alloc_, nh.alloc_).