Adjust Doxygen processing of pb_ds containers

Several of the pb_ds headers are intended to be included multiple times,
within the definition of various class templates. The including files
define macros like PB_DS_CLASS_C_DEC and PB_DS_GEN_POS before including
these headers.

In some cases the types defined in the headers are actually nested types
within other classes, and so should not have been documented as though
they are declared in the global namespace, as in:
https://gcc.gnu.org/onlinedocs/gcc-8.3.0/libstdc++/api/a12028.html

In other cases the headers provide inline member function definitions,
but when processed by Doxygen the class name "PB_DS_CLASS_C_DEC" is not
recognised.

This patch makes Doxygen ignore definitions that only make sense when
included in the right context with the right macros defined.

	* include/ext/pb_ds/detail/bin_search_tree_/*_imps.hpp: Do not define
	anything unless PB_DS_CLASS_C_DEC is defined.
	* include/ext/pb_ds/detail/binary_heap_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/binomial_heap_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/binomial_heap_base_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/cc_hash_table_map_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/gp_hash_table_map_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/hash_fn/*_imp.hpp: Likewise.
	* include/ext/pb_ds/detail/left_child_next_sibling_heap_/*_imps.hpp:
	Likewise.
	* include/ext/pb_ds/detail/list_update_map_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/ov_tree_map_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/pairing_heap_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/pat_trie_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/rb_tree_map_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/rc_binomial_heap_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/resize_policy*_imp.hpp: Likewise.
	* include/ext/pb_ds/detail/splay_tree_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/thin_heap_/*_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/trie_policy*_imp.hpp: Likewise.
	* include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp:
	Likewise.
	* include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Likewise.
	* include/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp:
	Likewise.
	* include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp:
	Likewise.

From-SVN: r270803
This commit is contained in:
Jonathan Wakely 2019-05-02 16:44:46 +01:00 committed by Jonathan Wakely
parent acd482ba72
commit 574dfb67be
158 changed files with 509 additions and 5 deletions

View File

@ -1,5 +1,33 @@
2019-05-02 Jonathan Wakely <jwakely@redhat.com>
* include/ext/pb_ds/detail/bin_search_tree_/*_imps.hpp: Do not define
anything unless PB_DS_CLASS_C_DEC is defined.
* include/ext/pb_ds/detail/binary_heap_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binomial_heap_base_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/hash_fn/*_imp.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/*_imps.hpp:
Likewise.
* include/ext/pb_ds/detail/list_update_map_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/ov_tree_map_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pairing_heap_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rb_tree_map_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/rc_binomial_heap_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/resize_policy*_imp.hpp: Likewise.
* include/ext/pb_ds/detail/splay_tree_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/thin_heap_/*_imps.hpp: Likewise.
* include/ext/pb_ds/detail/trie_policy*_imp.hpp: Likewise.
* include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp:
Likewise.
* include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Likewise.
* include/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp:
Likewise.
* include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp:
Likewise.
* doc/doxygen/user.cfg.in: Regenerate with Doxygen 1.8.14 and set
GROUP_NESTED_COMPOUNDS=YES and SORT_BY_SCOPE_NAME=NO. Add various
_GLIBCXX_xxx macros and __attribute__(X) to PREDEFINED macros that

View File

@ -38,6 +38,8 @@
* Contains an implementation class for bin_search_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
typename PB_DS_CLASS_C_DEC::node_allocator
PB_DS_CLASS_C_DEC::s_node_allocator;
@ -215,4 +217,4 @@ initialize_min_max()
m_p_head->m_p_right = p_max;
}
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for bin_search_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -275,3 +277,4 @@ assert_size(const char* __file, int __line) const
{ PB_DS_DEBUG_VERIFY(recursive_count(m_p_head->m_p_parent) == m_size); }
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for bin_search_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -101,3 +103,4 @@ clear_imp(node_pointer p_nd)
p_nd->~node();
s_node_allocator.deallocate(p_nd, 1);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for bin_search_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::point_const_iterator
PB_DS_CLASS_C_DEC::
@ -169,3 +171,4 @@ find(key_const_reference r_key) const
}
return point_const_iterator(ret);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for bin_search_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
_GLIBCXX_NODISCARD
inline bool
@ -63,3 +65,4 @@ max_size() const
return (s_node_allocator.max_size());
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for bin_search_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline std::pair<typename PB_DS_CLASS_C_DEC::point_iterator, bool>
PB_DS_CLASS_C_DEC::
@ -178,3 +180,4 @@ get_new_node_for_leaf_insert(const_reference r_val, true_type)
++m_size;
return p_new_nd;
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for bin_search_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::iterator
PB_DS_CLASS_C_DEC::
@ -134,3 +136,4 @@ node_end()
return (node_iterator(0));
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for bin_search_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
Cmp_Fn&
PB_DS_CLASS_C_DEC::
@ -50,3 +52,4 @@ PB_DS_CLASS_C_DEC::
get_cmp_fn() const
{ return (*this); }
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for bin_search_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -101,3 +103,4 @@ clear_imp(node_pointer p_nd)
p_nd->~Node();
s_node_allocator.deallocate(p_nd, 1);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains imps for rotating nodes.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -153,3 +155,4 @@ PB_DS_CLASS_C_DEC::
update_to_top(node_pointer /*p_nd*/, null_node_update_pointer /*p_update*/)
{ }
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for bin_search_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
bool
PB_DS_CLASS_C_DEC::
@ -148,3 +150,4 @@ recursive_count(node_pointer p) const
return 1 + recursive_count(p->m_p_left) + recursive_count(p->m_p_right);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for binary_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
typename PB_DS_CLASS_C_DEC::entry_allocator
PB_DS_CLASS_C_DEC::s_entry_allocator;
@ -137,3 +139,4 @@ PB_DS_CLASS_C_DEC::
erase_at(m_a_entries, i, s_no_throw_copies_ind);
s_entry_allocator.deallocate(m_a_entries, m_actual_size);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a binary_heap.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -70,3 +72,4 @@ assert_valid(const char* __file, int __line) const
}
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a binary_heap.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
void
PB_DS_CLASS_C_DEC::
@ -206,3 +208,4 @@ partition(Pred pred)
return left;
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a binary_heap.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::const_reference
PB_DS_CLASS_C_DEC::
@ -77,3 +79,4 @@ inline typename PB_DS_CLASS_C_DEC::size_type
PB_DS_CLASS_C_DEC::
parent(size_type i)
{ return (i - 1) / 2; }
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a binary_heap.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
_GLIBCXX_NODISCARD
inline bool
@ -57,3 +59,4 @@ PB_DS_CLASS_C_DEC::
max_size() const
{ return s_entry_allocator.max_size(); }
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a binary_heap.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::point_iterator
PB_DS_CLASS_C_DEC::
@ -171,3 +173,4 @@ swap_value_imp(entry_pointer p_e, const_reference r_new_val, false_type)
value_type tmp(r_new_val);
(*p_e)->swap(tmp);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a binary_heap.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::iterator
PB_DS_CLASS_C_DEC::
@ -62,3 +64,4 @@ PB_DS_CLASS_C_DEC::
end() const
{ return const_iterator(m_a_entries + m_size); }
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a binary_heap.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
Cmp_Fn&
PB_DS_CLASS_C_DEC::
@ -54,3 +56,4 @@ get_cmp_fn() const
return (*this);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a binary_heap.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
template<typename Pred>
void
@ -158,3 +160,4 @@ join(PB_DS_CLASS_C_DEC& other)
PB_DS_ASSERT_VALID((*this))
PB_DS_ASSERT_VALID(other)
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a binary_heap.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef PB_DS_BINARY_HEAP_TRACE_
PB_DS_CLASS_T_DEC
@ -76,3 +78,4 @@ trace_entry(const entry& r_e, true_type) const
}
#endif // #ifdef PB_DS_BINARY_HEAP_TRACE_
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation for binomial_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
PB_DS_CLASS_C_DEC::
binomial_heap()
@ -58,3 +60,4 @@ binomial_heap(const PB_DS_CLASS_C_DEC& other)
PB_DS_CLASS_T_DEC
PB_DS_CLASS_C_DEC::
~binomial_heap() { }
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation for binomial_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -47,3 +49,4 @@ assert_valid(const char* __file, int __line) const
{ base_type::assert_valid(true, __file, __line); }
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a base of binomial heaps.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
template<typename It>
void
@ -83,3 +85,4 @@ PB_DS_CLASS_T_DEC
PB_DS_CLASS_C_DEC::
~binomial_heap_base()
{ }
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a base of binomial heaps.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -98,3 +100,4 @@ assert_node_consistent(node_const_pointer p_nd, bool strictly_binomial,
}
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a base of binomial heaps.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
void
PB_DS_CLASS_C_DEC::
@ -159,3 +161,4 @@ erase_if(Pred pred)
PB_DS_ASSERT_VALID_COND((*this),true)
return ersd;
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a base of binomial heaps.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::const_reference
PB_DS_CLASS_C_DEC::
@ -68,3 +70,4 @@ find_max()
}
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a base of binomial heaps.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::point_iterator
PB_DS_CLASS_C_DEC::
@ -176,3 +178,4 @@ modify(point_iterator it, const_reference r_new_val)
m_p_max = 0;
PB_DS_ASSERT_VALID_COND((*this),true)
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for a base of binomial heaps.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
template<typename Pred>
void
@ -195,3 +197,4 @@ join(node_pointer p_lhs, node_pointer p_rhs) const
return p_ret;
}
#endif

View File

@ -39,6 +39,8 @@
* functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
template<typename Other_HT_Map_Type>
bool
@ -81,3 +83,4 @@ bool
PB_DS_CLASS_C_DEC::
operator!=(const Other_HT_Map_Type& other) const
{ return !operator==(other); }
#endif

View File

@ -39,6 +39,8 @@
* and related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
typename PB_DS_CLASS_C_DEC::entry_allocator
PB_DS_CLASS_C_DEC::s_entry_allocator;
@ -189,3 +191,4 @@ initialize()
Resize_Policy::notify_cleared();
ranged_hash_fn_base::notify_resized(m_num_e);
}
#endif

View File

@ -39,6 +39,8 @@
* and related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -53,3 +55,4 @@ constructor_insert_new_imp(mapped_const_reference r_val, size_type pos,
m_entries[pos] = p;
_GLIBCXX_DEBUG_ONLY(debug_base::insert_new(r_key);)
}
#endif

View File

@ -39,6 +39,8 @@
* and related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -54,3 +56,4 @@ constructor_insert_new_imp(const_reference r_val, size_type pos, true_type)
m_entries[pos] = p;
_GLIBCXX_DEBUG_ONLY(debug_base::insert_new(r_key);)
}
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of cc_ht_map_'s debug-mode functions.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -74,3 +76,4 @@ assert_entry_pointer_array_valid(const entry_pointer_array a_p_entries,
#include <ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp>
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of cc_ht_map_'s debug-mode functions.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -48,3 +50,4 @@ assert_entry_pointer_valid(const entry_pointer p, false_type,
{ debug_base::check_key_exists(PB_DS_V2F(p->m_value), __file, __line); }
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of cc_ht_map_'s debug-mode functions.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -52,3 +54,4 @@ assert_entry_pointer_valid(const entry_pointer p_e, true_type,
}
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of cc_ht_map_'s entry-list related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
void
PB_DS_CLASS_C_DEC::
@ -89,3 +91,4 @@ rels_entry(entry_pointer p_e)
s_entry_allocator.deallocate(p_e, 1);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of cc_ht_map_'s erase related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -101,3 +103,4 @@ clear()
#include <ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp>
#include <ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp>
#endif

View File

@ -39,6 +39,8 @@
* when the hash value is not stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline bool
PB_DS_CLASS_C_DEC::
@ -98,3 +100,4 @@ erase_in_pos_imp(key_const_reference r_key, size_type pos)
p_e = p_next_e;
}
}
#endif

View File

@ -39,6 +39,8 @@
* when the hash value is stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline bool
PB_DS_CLASS_C_DEC::
@ -92,3 +94,4 @@ erase_in_pos_imp(key_const_reference r_key, const comp_hash& r_pos_hash_pair)
p_e = p_next_e;
}
}
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of cc_ht_map_'s find related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::point_iterator
PB_DS_CLASS_C_DEC::
@ -69,3 +71,4 @@ PB_DS_CLASS_C_DEC::
find_end() const
{ return 0; }
#endif

View File

@ -39,6 +39,8 @@
* functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::size_type
PB_DS_CLASS_C_DEC::
@ -99,3 +101,4 @@ bool
PB_DS_CLASS_C_DEC::
operator!=(const Other_HT_Map_Type& other) const
{ return !operator==(other); }
#endif

View File

@ -39,6 +39,8 @@
* when the hash value is not stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline std::pair<typename PB_DS_CLASS_C_DEC::point_iterator, bool>
PB_DS_CLASS_C_DEC::
@ -68,3 +70,4 @@ insert_imp(const_reference r_val, false_type)
return std::make_pair(insert_new_imp(r_val, pos), true);
}
#endif

View File

@ -39,6 +39,8 @@
* when the hash value is stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline std::pair<typename PB_DS_CLASS_C_DEC::point_iterator, bool>
PB_DS_CLASS_C_DEC::
@ -69,3 +71,4 @@ insert_imp(const_reference r_val, true_type)
return std::make_pair(insert_new_imp(r_val, pos_hash_pair), true);
}
#endif

View File

@ -39,6 +39,8 @@
* begin().
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
typename PB_DS_CLASS_C_DEC::iterator
PB_DS_CLASS_C_DEC::s_end_it;
@ -81,3 +83,4 @@ PB_DS_CLASS_C_DEC::
end() const
{ return s_const_end_it; }
#endif

View File

@ -39,6 +39,8 @@
* functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
Hash_Fn&
PB_DS_CLASS_C_DEC::
@ -86,3 +88,4 @@ const Resize_Policy&
PB_DS_CLASS_C_DEC::
get_resize_policy() const
{ return *this; }
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of cc_ht_map_'s resize related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline bool
PB_DS_CLASS_C_DEC::
@ -132,3 +134,4 @@ resize_imp_no_exceptions(size_type new_size, entry_pointer_array a_p_entries_res
#include <ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp>
#include <ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp>
#endif

View File

@ -39,6 +39,8 @@
* hash value is not stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::entry_pointer
PB_DS_CLASS_C_DEC::
@ -52,3 +54,4 @@ resize_imp_no_exceptions_reassign_pointer(entry_pointer p_e, entry_pointer_array
a_p_entries_resized[hash_pos] = p_e;
return p_next_e;
}
#endif

View File

@ -39,6 +39,8 @@
* hash value is stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::entry_pointer
PB_DS_CLASS_C_DEC::
@ -52,3 +54,4 @@ resize_imp_no_exceptions_reassign_pointer(entry_pointer p_e, entry_pointer_array
a_p_entries_resized[pos_hash_pair.first] = p_e;
return p_next_e;
}
#endif

View File

@ -39,6 +39,8 @@
* functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::size_type
PB_DS_CLASS_C_DEC::
@ -58,3 +60,4 @@ PB_DS_CLASS_C_DEC::
max_size() const
{ return s_entry_allocator.max_size(); }
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of cc_ht_map_'s trace-mode functions.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef PB_DS_HT_MAP_TRACE_
PB_DS_CLASS_T_DEC
@ -70,3 +72,4 @@ trace_list(const_entry_pointer p_l) const
}
#endif
#endif

View File

@ -39,6 +39,8 @@
* and related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
typename PB_DS_CLASS_C_DEC::entry_allocator
PB_DS_CLASS_C_DEC::s_entry_allocator;
@ -221,3 +223,4 @@ initialize()
m_entries[i].m_stat = empty_entry_status;
}
#endif

View File

@ -39,6 +39,8 @@
* and related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -51,3 +53,4 @@ constructor_insert_new_imp(mapped_const_reference r_val, size_type pos,
p_e->m_stat = valid_entry_status;
_GLIBCXX_DEBUG_ONLY(debug_base::insert_new(p_e->m_value.first);)
}
#endif

View File

@ -39,6 +39,8 @@
* and related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -52,3 +54,4 @@ constructor_insert_new_imp(mapped_const_reference r_val, size_type pos,
p_e->m_stat = valid_entry_status;
_GLIBCXX_DEBUG_ONLY(debug_base::insert_new(p_e->m_value.first);)
}
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of gp_ht_map_'s debug-mode functions.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -54,3 +56,4 @@ assert_valid(const char* __file, int __line) const
#include <ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp>
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of gp_ht_map_'s debug-mode functions.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -70,3 +72,4 @@ assert_entry_array_valid(const entry_array a_entries, false_type,
}
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of gp_ht_map_'s debug-mode functions.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -76,3 +78,4 @@ assert_entry_array_valid(const entry_array a_entries, true_type,
}
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of gp_ht_map_'s erase related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -98,3 +100,4 @@ erase(key_const_reference r_key)
#include <ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp>
#include <ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp>
#endif

View File

@ -39,6 +39,8 @@
* when the hash value is not stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline bool
PB_DS_CLASS_C_DEC::
@ -82,3 +84,4 @@ erase_imp(key_const_reference r_key, false_type)
return false;
}
#endif

View File

@ -39,6 +39,8 @@
* when the hash value is stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline bool
PB_DS_CLASS_C_DEC::
@ -83,3 +85,4 @@ erase_imp(key_const_reference r_key, true_type)
return false;
}
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of gp_ht_map_'s find related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::point_iterator
PB_DS_CLASS_C_DEC::
@ -68,3 +70,4 @@ PB_DS_CLASS_C_DEC::
find_end() const
{ return 0; }
#endif

View File

@ -39,6 +39,8 @@
* when the hash value is not stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::pointer
PB_DS_CLASS_C_DEC::

View File

@ -39,6 +39,8 @@
* functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::size_type
PB_DS_CLASS_C_DEC::
@ -57,3 +59,4 @@ inline bool
PB_DS_CLASS_C_DEC::
empty() const
{ return (size() == 0); }
#endif

View File

@ -39,6 +39,8 @@
* when the hash value is not stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::size_type
PB_DS_CLASS_C_DEC::
@ -109,3 +111,4 @@ insert_imp(const_reference r_val, false_type)
return std::make_pair(insert_new_imp(r_val, pos), true);
}
#endif

View File

@ -39,6 +39,8 @@
* when the hash value is stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::comp_hash
PB_DS_CLASS_C_DEC::
@ -116,3 +118,4 @@ insert_imp(const_reference r_val, true_type)
return std::make_pair(insert_new_imp(r_val, pos_hash_pair), true);
}
#endif

View File

@ -39,6 +39,8 @@
* begin().
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
typename PB_DS_CLASS_C_DEC::iterator
PB_DS_CLASS_C_DEC::s_end_it;
@ -81,3 +83,4 @@ PB_DS_CLASS_C_DEC::
end() const
{ return s_const_end_it; }
#endif

View File

@ -39,6 +39,8 @@
* functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
Hash_Fn&
PB_DS_CLASS_C_DEC::
@ -98,3 +100,4 @@ const Resize_Policy&
PB_DS_CLASS_C_DEC::
get_resize_policy() const
{ return *this; }
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of gp_ht_map_'s resize related functions.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline bool
PB_DS_CLASS_C_DEC::
@ -137,3 +139,4 @@ resize_imp(entry_array a_entries_resized, size_type old_size)
#include <ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp>
#include <ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp>
#endif

View File

@ -39,6 +39,8 @@
* hash value is not stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -70,3 +72,4 @@ resize_imp_reassign(entry_pointer p_e, entry_array a_entries_resized,
__throw_insert_error();
}
#endif

View File

@ -39,6 +39,8 @@
* hash value is stored.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -72,3 +74,4 @@ resize_imp_reassign(entry_pointer p_e, entry_array a_entries_resized,
__throw_insert_error();
}
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of gp_ht_map_'s trace-mode functions.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef PB_DS_HT_MAP_TRACE_
PB_DS_CLASS_T_DEC
@ -72,3 +74,4 @@ trace() const
}
#endif // #ifdef PB_DS_HT_MAP_TRACE_
#endif

View File

@ -38,6 +38,8 @@
* Contains a range-hashing policy implementation
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
void
PB_DS_CLASS_C_DEC::
@ -56,3 +58,4 @@ PB_DS_CLASS_C_DEC::
operator()(size_type hash) const
{ return mask_based_base::range_hash(hash); }
#endif

View File

@ -38,6 +38,8 @@
* Contains a range-hashing policy implementation
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
void
PB_DS_CLASS_C_DEC::
@ -56,3 +58,4 @@ PB_DS_CLASS_C_DEC::
operator()(size_type hash) const
{ return mod_based_base::range_hash(hash); }
#endif

View File

@ -38,6 +38,8 @@
* Contains a probe policy implementation
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -51,3 +53,4 @@ operator()(size_type i) const
{
return (i);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains a probe policy implementation
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline void
PB_DS_CLASS_C_DEC::
@ -51,3 +53,4 @@ operator()(size_type i) const
{
return (i* i);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for left_child_next_sibling_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
typename PB_DS_CLASS_C_DEC::node_allocator
PB_DS_CLASS_C_DEC::s_node_allocator;
@ -150,3 +152,4 @@ recursive_copy_node(node_const_pointer p_nd)
return p_ret;
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for left_child_next_sibling_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -135,3 +137,4 @@ degree(node_const_pointer p_nd)
}
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for left_child_next_sibling_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
void
PB_DS_CLASS_C_DEC::
@ -148,3 +150,4 @@ bubble_to_top(node_pointer p_nd)
}
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for left_child_next_sibling_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
_GLIBCXX_NODISCARD
inline bool
@ -63,3 +65,4 @@ max_size() const
return (s_node_allocator.max_size());
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for left_child_next_sibling_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::node_pointer
PB_DS_CLASS_C_DEC::
@ -173,3 +175,4 @@ swap_with_parent(node_pointer p_nd, node_pointer p_parent)
_GLIBCXX_DEBUG_ASSERT(parent(p_parent) == p_nd);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for left_child_next_sibling_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::iterator
PB_DS_CLASS_C_DEC::
@ -86,3 +88,4 @@ end() const
return (const_iterator(0));
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for left_child_next_sibling_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
Cmp_Fn&
PB_DS_CLASS_C_DEC::
@ -50,3 +52,4 @@ PB_DS_CLASS_C_DEC::
get_cmp_fn() const
{ return *this; }
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for left_child_next_sibling_heap_.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef PB_DS_LC_NS_HEAP_TRACE_
PB_DS_CLASS_T_DEC
@ -88,3 +90,4 @@ trace_node_metadata(node_const_pointer, type_to_type<null_type>)
{ }
#endif // #ifdef PB_DS_LC_NS_HEAP_TRACE_
#endif

View File

@ -37,6 +37,8 @@
* @file list_update_map_/constructor_destructor_fn_imps.hpp
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
typename PB_DS_CLASS_C_DEC::entry_allocator
PB_DS_CLASS_C_DEC::s_entry_allocator;
@ -134,3 +136,4 @@ PB_DS_CLASS_T_DEC
PB_DS_CLASS_C_DEC::
~PB_DS_LU_NAME()
{ deallocate_all(); }
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of cc_ht_map_'s debug-mode functions.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -55,3 +57,4 @@ assert_valid(const char* __file, int __line) const
}
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of lu_map_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline bool
PB_DS_CLASS_C_DEC::
@ -132,3 +134,4 @@ actual_erase_entry(entry_pointer p_l)
s_entry_allocator.deallocate(p_l, 1);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of lu_map_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::entry_pointer
PB_DS_CLASS_C_DEC::
@ -88,3 +90,4 @@ PB_DS_CLASS_C_DEC::
apply_update(entry_pointer, type_to_type<null_type>)
{ return s_update_policy(s_null_type); }
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of lu_map_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::size_type
PB_DS_CLASS_C_DEC::
@ -56,3 +58,4 @@ inline bool
PB_DS_CLASS_C_DEC::
empty() const
{ return (m_p_l == 0); }
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of lu_map_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline std::pair<
typename PB_DS_CLASS_C_DEC::point_iterator,
@ -104,3 +106,4 @@ PB_DS_CLASS_C_DEC::
init_entry_metadata(entry_pointer, type_to_type<null_type>)
{ }
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of lu_map_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::iterator
PB_DS_CLASS_C_DEC::
@ -78,3 +80,4 @@ end() const
return const_iterator(0, 0, const_cast<PB_DS_CLASS_C_DEC*>(this));
}
#endif

View File

@ -38,6 +38,8 @@
* Contains implementations of lu_map_.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef PB_DS_LU_MAP_TRACE_
PB_DS_CLASS_T_DEC
@ -57,3 +59,4 @@ trace() const
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for ov_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
typename PB_DS_CLASS_C_DEC::value_allocator
PB_DS_CLASS_C_DEC::s_value_alloc;
@ -255,3 +257,4 @@ update(node_iterator nd_it, Node_Update* p_update)
node_update::operator()(nd_it, end_it);
}
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for ov_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
#ifdef _GLIBCXX_DEBUG
PB_DS_CLASS_T_DEC
@ -77,3 +79,4 @@ assert_iterators(const char* __file, int __line) const
}
#endif
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for ov_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
void
PB_DS_CLASS_C_DEC::
@ -189,3 +191,4 @@ erase(key_const_reference r_key)
erase(it);
return true;
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for ov_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::size_type
PB_DS_CLASS_C_DEC::
@ -59,3 +61,4 @@ inline bool
PB_DS_CLASS_C_DEC::
empty() const
{ return size() == 0; }
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for ov_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
void
PB_DS_CLASS_C_DEC::
@ -61,3 +63,4 @@ reallocate_metadata(Node_Update_* , size_type new_size)
std::swap(m_a_metadata, a_new_metadata_vec);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for ov_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
inline typename PB_DS_CLASS_C_DEC::node_const_iterator
PB_DS_CLASS_C_DEC::
@ -101,3 +103,4 @@ PB_DS_node_end_imp()
end(),(m_a_metadata == 0) ? 0 : m_a_metadata + m_size);
}
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for ov_tree.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
Cmp_Fn&
PB_DS_CLASS_C_DEC::
@ -49,3 +51,4 @@ const Cmp_Fn&
PB_DS_CLASS_C_DEC::
get_cmp_fn() const
{ return *this; }
#endif

View File

@ -38,6 +38,8 @@
* Contains an implementation class for ov_tree_.
*/
#ifdef PB_DS_CLASS_C_DEC
PB_DS_CLASS_T_DEC
void
PB_DS_CLASS_C_DEC::
@ -130,3 +132,4 @@ join(PB_DS_CLASS_C_DEC& other)
PB_DS_ASSERT_VALID((*this))
PB_DS_ASSERT_VALID(other)
}
#endif

Some files were not shown because too many files have changed in this diff Show More