42 typename PB_DS_CLASS_C_DEC::node_allocator
 
   43 PB_DS_CLASS_C_DEC::s_node_allocator;
 
   46 typename PB_DS_CLASS_C_DEC::no_throw_copies_t
 
   47 PB_DS_CLASS_C_DEC::s_no_throw_copies_ind;
 
   51 left_child_next_sibling_heap() :
 
   55   PB_DS_ASSERT_VALID((*
this))
 
   60 left_child_next_sibling_heap(
const Cmp_Fn& r_cmp_fn) :
 
   65   PB_DS_ASSERT_VALID((*
this))
 
   70 left_child_next_sibling_heap(
const PB_DS_CLASS_C_DEC& other) 
 
   71 : Cmp_Fn(other), m_p_root(0), m_size(0)
 
   73   m_size = other.m_size;
 
   74   PB_DS_ASSERT_VALID(other)
 
   75   m_p_root = recursive_copy_node(other.m_p_root);
 
   76   m_size = other.m_size;
 
   77   PB_DS_ASSERT_VALID((*this))
 
   83 swap(PB_DS_CLASS_C_DEC& other)
 
   85   PB_DS_ASSERT_VALID((*
this))
 
   86   PB_DS_ASSERT_VALID(other)
 
   88   std::
swap((Cmp_Fn& )(*this), (Cmp_Fn& )other);
 
   89   PB_DS_ASSERT_VALID((*this))
 
   90   PB_DS_ASSERT_VALID(other)
 
   96 value_swap(PB_DS_CLASS_C_DEC& other)
 
  104 ~left_child_next_sibling_heap()
 
  110 typename PB_DS_CLASS_C_DEC::node_pointer
 
  112 recursive_copy_node(node_const_pointer p_nd)
 
  117   node_pointer p_ret = s_node_allocator.allocate(1);
 
  121       new (p_ret) node(*p_nd);
 
  125       s_node_allocator.deallocate(p_ret, 1);
 
  126       __throw_exception_again;
 
  129   p_ret->m_p_l_child = p_ret->m_p_next_sibling =
 
  130     p_ret->m_p_prev_or_parent = 0;
 
  134       p_ret->m_p_l_child = recursive_copy_node(p_nd->m_p_l_child);
 
  135       p_ret->m_p_next_sibling = recursive_copy_node(p_nd->m_p_next_sibling);
 
  140       __throw_exception_again;
 
  143   if (p_ret->m_p_l_child != 0)
 
  144     p_ret->m_p_l_child->m_p_prev_or_parent = p_ret;
 
  146   if (p_ret->m_p_next_sibling != 0)
 
  147     p_ret->m_p_next_sibling->m_p_prev_or_parent =
 
  148       p_nd->m_p_next_sibling->m_p_prev_or_parent == p_nd ? p_ret : 0;
 
ISO C++ entities toplevel namespace is std. 
void swap(_Tp &, _Tp &) noexcept(__and_< is_nothrow_move_constructible< _Tp >, is_nothrow_move_assignable< _Tp >>::value)
Swaps two values.