41 #ifdef PB_DS_CLASS_C_DEC 47 copy_from_range(It first_it, It last_it)
49 while (first_it != last_it)
51 PB_DS_ASSERT_VALID((*
this))
56 thin_heap() : m_p_max(0)
59 PB_DS_ASSERT_VALID((*
this))
64 thin_heap(
const Cmp_Fn& r_cmp_fn)
65 : base_type(r_cmp_fn), m_p_max(0)
68 PB_DS_ASSERT_VALID((*
this))
73 thin_heap(
const PB_DS_CLASS_C_DEC& other)
77 m_p_max = base_type::m_p_root;
78 for (node_pointer p_nd = base_type::m_p_root; p_nd != 0;
79 p_nd = p_nd->m_p_next_sibling)
80 if (Cmp_Fn::operator()(m_p_max->m_value, p_nd->m_value))
83 PB_DS_ASSERT_VALID((*
this))
89 swap(PB_DS_CLASS_C_DEC& other)
91 PB_DS_ASSERT_VALID((*
this))
92 base_type::swap(other);
93 std::swap(m_p_max, other.m_p_max);
94 PB_DS_ASSERT_VALID((*this))
106 {
std::fill(m_a_aux, m_a_aux + max_rank, static_cast<node_pointer>(0)); }
constexpr void fill(_ForwardIterator __first, _ForwardIterator __last, const _Tp &__value)
Fills the range [first,last) with copies of value.
ISO C++ entities toplevel namespace is std.