Adjust Doxygen processing of pb_ds containers
authorJonathan Wakely <jwakely@redhat.com>
Thu, 2 May 2019 15:44:46 +0000 (16:44 +0100)
committerJonathan Wakely <redi@gcc.gnu.org>
Thu, 2 May 2019 15:44:46 +0000 (16:44 +0100)
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

158 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp
libstdc++-v3/include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp
libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp
libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/iterator.hpp
libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp
libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp

index 126ed4e..e356075 100644 (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
index 7ad5a9e..73c83e2 100644 (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
index ddc6c76..d9b0cf8 100644 (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
index 727e526..4201634 100644 (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
index 95a809a..7d6c41c 100644 (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
index 4019f86..cb751b2 100644 (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
index 96f6a3e..9c33f21 100644 (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
index 3f052e8..6db4746 100644 (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
index 846c870..5bf6721 100644 (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
index 2ad6106..561c94e 100644 (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
index acf620c..62ba39e 100644 (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
index 67cbf80..6935b74 100644 (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
index 1b06873..edd1625 100644 (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
index e16677f..4560944 100644 (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
index 651a62d..260bc86 100644 (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
index b01cbda..6da5cb4 100644 (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
index d81d550..641489b 100644 (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
index 36cdcd2..9feaf33 100644 (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
index a8a0804..394e462 100644 (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
index 4180458..c41eb35 100644 (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
index 4a919eb..ce15b71 100644 (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
index c7b652a..8992f03 100644 (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
index 5cfe3d2..5f33acd 100644 (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
index 9520f74..4a8837b 100644 (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
index 24db3d6..a6f5b22 100644 (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
index 54f8585..4a55a9a 100644 (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
index c723216..058dddb 100644 (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
index 6a3fa90..b3d90d4 100644 (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
index a5cf6e7..a5918c7 100644 (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
index caf3715..9da0fc2 100644 (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
index d11ff00..a534ab3 100644 (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
index d6db450..a377386 100644 (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
index 89eb1d6..a93f03c 100644 (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
index 6709b06..512edb9 100644 (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
index 65b3b0a..2423d63 100644 (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
index 9385036..0fe5fa5 100644 (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
index 2d6e086..8831ab5 100644 (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
index 75a1912..feea011 100644 (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
index 3d39c47..cef305e 100644 (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
index e4f2300..a2f7763 100644 (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
index 90533aa..480ce61 100644 (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
index 1f6c46b..f3f9b5b 100644 (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
index 9d38890..49fd16c 100644 (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
index 7fc51b6..b4729f7 100644 (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
index cbf05c8..165ef41 100644 (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
index 5cfbc0c..492d376 100644 (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
index 979f3e0..cc83dd3 100644 (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
index 86c727f..5f4b532 100644 (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
index f072270..3ca56b4 100644 (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
index 9fd546d..a98e2e7 100644 (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
index bcc1fc4..2aa146f 100644 (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
index f2fa326..88a674c 100644 (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
index f9b401b..aa480fe 100644 (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
index 41d7c08..e07984e 100644 (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
index d87fdc7..5390c6b 100644 (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
index ead21e3..8b5574a 100644 (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
index 5b17ac8..8de0910 100644 (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
index ce45b38..62769e7 100644 (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
index af83629..b42c87b 100644 (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
index 9e6b69b..7d06901 100644 (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
index 547a33f..1faa648 100644 (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
index c2ee829..44feed7 100644 (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
index 464216e..75a59ac 100644 (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
index 72445cc..e868c16 100644 (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
index 06eed09..09b2c26 100644 (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
index c9e51df..4277fb0 100644 (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
index 92cb8ee..48f1f79 100644 (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
index f8eec45..ff3f351 100644 (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
index 6f72d29..48d19c4 100644 (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
index bfd247d..cfaf5c4 100644 (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
index c66da83..fd6971b 100644 (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
index bc89ebf..09b325c 100644 (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
index da4c0a7..bfa6723 100644 (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
index 0ca1a0e..6317c30 100644 (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
index 7c29ede..f8a4745 100644 (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
index 305fd20..c303fd1 100644 (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
index 10d618c..2f7f560 100644 (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
index 414f0d6..ff4b534 100644 (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
index d12710a..605eeb9 100644 (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
index e05cbb9..6bc252f 100644 (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
index c78113b..465ca42 100644 (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
index 4c44ed6..6632e15 100644 (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
index 36c0ab6..9310a7b 100644 (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
index e29b5ec..e816204 100644 (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
index 474fc11..451b1c5 100644 (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
index 96d5841..6e7c576 100644 (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
index 5e602dd..c56d167 100644 (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
index 5d2e81f..e95c8a5 100644 (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
index fe71f06..dfc9900 100644 (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
index 79733ef..0efe262 100644 (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
index 7ec66b7..f321633 100644 (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
index 021abc2..e081392 100644 (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
index cfb6fd5..2117ceb 100644 (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
index c74c1b8..060eb3c 100644 (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
index 81e7305..99a1dca 100644 (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
index 79a429a..d34b2e4 100644 (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
index b071a75..c61d40e 100644 (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
index 991f1c5..beaaff6 100644 (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
index 0f5b04c..525ae9c 100644 (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
index 1848255..f28ce89 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for a pairing heap.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 template<typename It>
 void
@@ -80,3 +82,4 @@ PB_DS_CLASS_T_DEC
 PB_DS_CLASS_C_DEC::
 ~pairing_heap()
 { }
+#endif
index 93f63fc..2a2358d 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for a pairing heap.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #ifdef _GLIBCXX_DEBUG
 
 PB_DS_CLASS_T_DEC
@@ -51,3 +53,4 @@ assert_valid(const char* __file, int __line) const
 }
 
 #endif 
+#endif
index 64923fa..954715c 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for a pairing heap.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 void
 PB_DS_CLASS_C_DEC::
@@ -231,3 +233,4 @@ erase_if(Pred pred)
   return ersd;
 }
 
+#endif
index 2bc0729..e18f5d6 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for a pairing 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::
@@ -47,3 +49,4 @@ top() const
   _GLIBCXX_DEBUG_ASSERT(!base_type::empty());
   return base_type::m_p_root->m_value;
 }
+#endif
index 6c7baea..e0299a4 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for a pairing 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::
@@ -86,3 +88,4 @@ modify(point_iterator it, const_reference r_new_val)
   push_imp(it.m_p_nd);
   PB_DS_ASSERT_VALID((*this))
 }
+#endif
index e03a8ba..f243eef 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for a pairing heap.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 template<typename Pred>
 void
@@ -121,3 +123,4 @@ join(PB_DS_CLASS_C_DEC& other)
   PB_DS_ASSERT_VALID((*this))
   PB_DS_ASSERT_VALID(other)
 }
+#endif
index 93ffcf1..360034d 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 typename PB_DS_CLASS_C_DEC::head_allocator
 PB_DS_CLASS_C_DEC::s_head_allocator;
@@ -212,3 +214,4 @@ recursive_copy_node(node_const_pointer p_ncp)
   apply_update(p_ret, (node_update*)this);
   return p_ret;
 }
+#endif
index c72024a..4f6dd61 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #ifdef _GLIBCXX_DEBUG
 
 PB_DS_CLASS_T_DEC
@@ -113,3 +115,4 @@ recursive_count_leafs(node_const_pointer p_nd, const char* __file, int __line)
 }
 
 #endif
+#endif
index e836220..25c97a7 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline bool
 PB_DS_CLASS_C_DEC::
@@ -313,3 +315,4 @@ update_min_max_for_erased_leaf(leaf_pointer p_l)
       m_p_head->m_p_max = it.m_p_nd;
     }
 }
+#endif
index 3312173..6005d4e 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie.
  */
 
+#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::
@@ -267,3 +269,4 @@ rightmost_descendant(node_pointer p_nd)
   return static_cast<inode_pointer>(p_nd)->rightmost_descendant();
 }
 
+#endif
index 33fc3e1..7012055 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie.
  */
 
+#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_inode_allocator.max_size(); }
 
+#endif
index f661e97..442d32e 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 void
 PB_DS_CLASS_C_DEC::
@@ -470,3 +472,4 @@ update_min_max_for_inserted_leaf(leaf_pointer p_new_lf)
       synth_access_traits::cmp_keys(PB_DS_V2F(static_cast<leaf_const_pointer>(m_p_head->m_p_max)->value()), PB_DS_V2F(p_new_lf->value())))
     m_p_head->m_p_max = p_new_lf;
 }
+#endif
index b027f78..3fb9d85 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline typename PB_DS_CLASS_C_DEC::iterator
 PB_DS_CLASS_C_DEC::
@@ -118,3 +120,4 @@ PB_DS_CLASS_C_DEC::
 node_end()
 { return node_iterator(0, this); }
 
+#endif
index 3b656d7..7f7fe01 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 typename PB_DS_CLASS_C_DEC::access_traits& 
 PB_DS_CLASS_C_DEC::
@@ -61,3 +63,4 @@ const typename PB_DS_CLASS_C_DEC::node_update&
 PB_DS_CLASS_C_DEC::
 get_node_update() const
 { return *this; }
+#endif
index 3726cb6..6a24e5a 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie.
  */
 
+#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)
   s_node_allocator.deallocate(p_nd, 1);
 }
 
+#endif
index 8f2f1da..af8c896 100644 (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::
@@ -148,3 +150,4 @@ PB_DS_CLASS_C_DEC::
 update_to_top(node_pointer /*p_nd*/, __gnu_pbds::null_node_update*  /*p_update*/)
 { }
 
+#endif
index e2065ae..52a9d88 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 void
 PB_DS_CLASS_C_DEC::
@@ -248,3 +250,4 @@ split_insert_branch(size_type e_ind, a_const_iterator b_it,
   apply_update(m_p_head->m_p_parent, (node_update*)this);
   PB_DS_ASSERT_NODE_VALID(m_p_head->m_p_parent)
 }
+#endif
index 70406f2..28df7ef 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #ifdef PB_DS_PAT_TRIE_TRACE_
 
 PB_DS_CLASS_T_DEC
@@ -109,3 +111,4 @@ trace_node_metadata(node_const_pointer, type_to_type<null_type>)
 
 #endif 
 
+#endif
index e7b4a69..db3d3ad 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for pat_trie_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline void
 PB_DS_CLASS_C_DEC::
@@ -53,3 +55,4 @@ apply_update(node_pointer p_nd, Node_Update_*)
   Node_Update_::operator()(node_iterator(p_nd, this),
                           node_const_iterator(0, this));
 }
+#endif
index 4d173cf..f0c2cf1 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rb_tree_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 template<typename It>
 void
@@ -98,3 +100,4 @@ void
 PB_DS_CLASS_C_DEC::
 initialize()
 { base_type::m_p_head->m_red = true; }
+#endif
index fcdad46..5106452 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rb_tree_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #ifdef _GLIBCXX_DEBUG
 
 PB_DS_CLASS_T_DEC
@@ -79,3 +81,4 @@ assert_valid(const char* __file, int __line) const
 
 #endif 
 
+#endif
index 0d92fed..35aa2ba 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rb_tree_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline bool
 PB_DS_CLASS_C_DEC::
@@ -287,3 +289,4 @@ remove_fixup(node_pointer p_x, node_pointer p_new_x_parent)
   if (p_x != 0)
     p_x->m_red = false;
 }
+#endif
index 0458348..11c1b29 100644 (file)
  * Contains an implementation for rb_tree_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline bool
 PB_DS_CLASS_C_DEC::
 is_effectively_black(const node_pointer p_nd)
 { return (p_nd == 0 || !p_nd->m_red); }
 
+#endif
index 6cc88fa..11efd02 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rb_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::
@@ -113,3 +115,4 @@ insert_fixup(node_pointer p_nd)
   base_type::update_to_top(p_nd, (node_update* )this);
   base_type::m_p_head->m_p_parent->m_red = false;
 }
+#endif
index 85ebdfb..adddc4f 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rb_tree_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline void
 PB_DS_CLASS_C_DEC::
@@ -304,3 +306,4 @@ split_at_node(node_pointer p_nd, PB_DS_CLASS_C_DEC& other)
   PB_DS_STRUCT_ONLY_ASSERT_VALID(other)
 }
 
+#endif
index 0c6a960..0864dce 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rc_binomial_heap_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 PB_DS_CLASS_C_DEC::
 rc_binomial_heap()
@@ -82,3 +84,4 @@ swap(PB_DS_CLASS_C_DEC& other)
   PB_DS_ASSERT_VALID((*this))
   PB_DS_ASSERT_VALID(other)
 }
+#endif
index bec9ca3..d258ee4 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rc_binomial_heap_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #ifdef _GLIBCXX_DEBUG
 
 PB_DS_CLASS_T_DEC
@@ -119,3 +121,4 @@ next_after_0_pointer(node_const_pointer p_nd)
 }
 
 #endif 
+#endif
index b6d5074..03d6b0f 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rc_binomial_heap_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline void
 PB_DS_CLASS_C_DEC::
@@ -105,3 +107,4 @@ erase(point_iterator it)
   base_type::find_max();
 }
 
+#endif
index b8f59d0..7d4da53 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rc_binomial_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::
@@ -152,3 +154,4 @@ make_0_exposed()
   if (p_res->m_p_next_sibling != 0&&  p_res->m_metadata == p_res->m_p_next_sibling->m_metadata)
     m_rc.push(p_res);
 }
+#endif
index 12363fe..074b041 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rc_binomial_heap_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 template<typename Pred>
 void
@@ -75,3 +77,4 @@ join(PB_DS_CLASS_C_DEC& other)
   PB_DS_ASSERT_VALID(other)
 }
 
+#endif
index 0b771a7..0a429b0 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for rc_binomial_heap_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #ifdef PB_DS_RC_BINOMIAL_HEAP_TRACE_
 
 PB_DS_CLASS_T_DEC
@@ -50,3 +52,4 @@ trace() const
 }
 
 #endif // #ifdef PB_DS_RC_BINOMIAL_HEAP_TRACE_
+#endif
index fa246c0..06e4eb6 100644 (file)
@@ -38,6 +38,8 @@
  * Contains a resize trigger implementation.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 PB_DS_CLASS_C_DEC::
 cc_hash_max_collision_check_resize_trigger(float load) :
@@ -209,3 +211,4 @@ set_load(float load)
   calc_resize_needed();
 }
 
+#endif
index c51e328..8d02c85 100644 (file)
@@ -38,6 +38,8 @@
  * Contains a resize size policy implementation.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 PB_DS_CLASS_C_DEC::
 hash_exponential_size_policy(size_type start_size, size_type grow_factor) :
@@ -88,3 +90,4 @@ get_nearest_smaller_size(size_type size) const
   return ret;
 }
 
+#endif
index 19dfa8f..edfb35b 100644 (file)
@@ -38,6 +38,8 @@
  * Contains a resize trigger implementation.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #define PB_DS_ASSERT_VALID(X)                                          \
   _GLIBCXX_DEBUG_ONLY(X.assert_valid(__FILE__, __LINE__);)
 
@@ -291,3 +293,4 @@ assert_valid(const char* __file, int __line) const
 # undef PB_DS_DEBUG_VERIFY
 #endif
 #undef PB_DS_ASSERT_VALID
+#endif
index c3934e1..d93f207 100644 (file)
@@ -38,6 +38,8 @@
  * Contains a resize size policy implementation.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #pragma GCC system_header
 
 namespace detail
@@ -159,3 +161,4 @@ get_nearest_smaller_size(size_type n) const
     return m_start_size;
   return *p_lower;
 }
+#endif
index 45fbfc0..f77a095 100644 (file)
@@ -38,6 +38,8 @@
  * Contains a resize policy implementation.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 PB_DS_CLASS_C_DEC::
 hash_standard_resize_policy() 
@@ -247,3 +249,4 @@ PB_DS_CLASS_C_DEC::
 get_size_policy() const
 { return *this; }
 
+#endif
index 99247ee..21a70da 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for splay_tree_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 template<typename It>
 void
@@ -100,3 +102,4 @@ void
 PB_DS_CLASS_C_DEC::
 initialize()
 { base_type::m_p_head->m_special = true; }
+#endif
index fdc0cfa..f24d2a3 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for splay_tree_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #ifdef _GLIBCXX_DEBUG
 
 PB_DS_CLASS_T_DEC
@@ -73,3 +75,4 @@ assert_special_imp(const node_pointer p_nd,
 
 #endif 
 
+#endif
index 1fea88a..7aa3f24 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for splay_tree_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline bool
 PB_DS_CLASS_C_DEC::
@@ -155,3 +157,4 @@ leftmost(node_pointer p_nd)
     p_nd = p_nd->m_p_left;
   return p_nd;
 }
+#endif
index 6cccb44..0ba3f5d 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for splay_tree_.
  */
 
+#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::
@@ -98,3 +100,4 @@ find_imp(key_const_reference r_key) const
       p_nd = p_nd->m_p_right;
   return base_type::m_p_head;
 }
+#endif
index 137c5cf..9fb4cf0 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for splay_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::
@@ -92,3 +94,4 @@ insert_leaf_imp(const_reference r_value)
 
   return std::make_pair(this->insert_leaf_new(r_value, p_nd, false), true);
 }
+#endif
index 86983c3..2af92a2 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for splay_tree_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 void
 PB_DS_CLASS_C_DEC::
@@ -279,3 +281,4 @@ splay_zz_end(node_pointer p_nd, node_pointer p_parent,
   this->apply_update(p_nd, (node_update*)this);
   PB_DS_ASSERT_BASE_NODE_CONSISTENT(p_nd)
 }
+#endif
index a519ea1..7419ccf 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for splay_tree_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline void
 PB_DS_CLASS_C_DEC::
@@ -110,3 +112,4 @@ split(key_const_reference r_key, PB_DS_CLASS_C_DEC& other)
   PB_DS_ASSERT_VALID(other)
 }
 
+#endif
index 91e9a7c..dd4e70f 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for thin_heap_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 template<typename It>
 void
@@ -103,3 +105,4 @@ PB_DS_CLASS_C_DEC::
 initialize()
 { std::fill(m_a_aux, m_a_aux + max_rank, static_cast<node_pointer>(0)); }
 
+#endif
index 3a434b6..447305d 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for thin_heap_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #ifdef _GLIBCXX_DEBUG
 
 PB_DS_CLASS_T_DEC
@@ -117,3 +119,4 @@ assert_node_consistent(node_const_pointer p_nd, bool root,
 }
 
 #endif 
+#endif
index 5dc0977..f267226 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for thin_heap_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 void
 PB_DS_CLASS_C_DEC::
@@ -253,3 +255,4 @@ rank_bound()
 
   return (p_upper - g_a_rank_bounds);
 }
+#endif
index 92009bb..8300867 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for thin_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::
@@ -49,3 +51,4 @@ top() const
   _GLIBCXX_DEBUG_ASSERT(m_p_max != 0);
   return m_p_max->m_value;
 }
+#endif
index 76ea013..57d3720 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for thin_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::
@@ -278,3 +280,4 @@ update_max(node_pointer p_nd)
     m_p_max = p_nd;
 }
 
+#endif
index 44103d0..b922f47 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation for thin_heap_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 template<typename Pred>
 void
@@ -106,3 +108,4 @@ join(PB_DS_CLASS_C_DEC& other)
   PB_DS_ASSERT_VALID((*this))
   PB_DS_ASSERT_VALID(other)
 }
+#endif
index 428b4bb..88e2ee7 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation class for left_child_next_sibling_heap_.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 #ifdef PB_DS_THIN_HEAP_TRACE_
 
 PB_DS_CLASS_T_DEC
@@ -51,3 +53,4 @@ trace() const
 }
 
 #endif // #ifdef PB_DS_THIN_HEAP_TRACE_
+#endif
index 4b2fcb5..f7cfdb9 100644 (file)
@@ -38,6 +38,8 @@
  * Contains forward declarations for order_statistics_key
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline typename PB_DS_CLASS_C_DEC::iterator
 PB_DS_CLASS_C_DEC::
@@ -119,3 +121,4 @@ PB_DS_CLASS_T_DEC
 PB_DS_CLASS_C_DEC::
 ~tree_order_statistics_node_update()
 { }
+#endif
index 951de0c..4b05675 100644 (file)
@@ -38,6 +38,8 @@
  * Contains forward declarations for order_statistics_key
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 inline typename PB_DS_CLASS_C_DEC::iterator
 PB_DS_CLASS_C_DEC::
@@ -158,3 +160,4 @@ operator()(node_iterator nd_it, node_const_iterator /*end_nd_it*/) const
   const size_type res = (num_children == 0) ? 1 : children_rank;
   const_cast<size_type&>(nd_it.get_metadata()) = res;
 }
+#endif
index 63c4ef6..49b0615 100644 (file)
@@ -38,6 +38,8 @@
  * Contains an implementation of prefix_search_node_update.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 std::pair<
   typename PB_DS_CLASS_C_DEC::const_iterator,
@@ -137,3 +139,4 @@ inline void
 PB_DS_CLASS_C_DEC::
 operator()(node_iterator /*nd_it*/, node_const_iterator /*end_nd_it*/) const
 { }
+#endif
index 2e96964..d7f6a3c 100644 (file)
@@ -39,6 +39,8 @@
  *    a string for a vector-based PATRICIA tree
  */
 
+#ifdef PB_DS_CLASS_C_DEC
+
 PB_DS_CLASS_T_DEC
 detail::integral_constant<int, Reverse> PB_DS_CLASS_C_DEC::s_rev_ind;
 
@@ -97,3 +99,4 @@ end_imp(key_const_reference r_key, detail::true_type)
 {
   return (r_key.rend());
 }
+#endif
index ef7e784..7468af6 100644 (file)
  * @file unordered_iterator/const_iterator.hpp
  * Contains an iterator class used for const ranging over the elements of the
  * table.
+ *
+ * This file is intended to be included inside a class definition, with
+ * PB_DS_CLASS_C_DEC defined to the name of the enclosing class.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
 /// Const range-type iterator.
 class const_iterator_
 : public point_const_iterator_
@@ -109,3 +113,4 @@ protected:
 
   friend class PB_DS_CLASS_C_DEC;
 };
+#endif
index 29fa3d1..388fccf 100644 (file)
 /**
  * @file iterator.hpp
  * Contains an iterator_ class used for ranging over the elements of the
- *    table.
+ * table.
+ *
+ * This file is intended to be included inside a class definition, with
+ * PB_DS_CLASS_C_DEC defined to the name of the enclosing class.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
 /// Range-type iterator.
 class iterator_
 : public const_iterator_
@@ -128,3 +132,4 @@ protected:
 
   friend class PB_DS_CLASS_C_DEC;
 };
+#endif
index 367f371..3f55a73 100644 (file)
 /**
  * @file unordered_iterator/point_const_iterator.hpp
  * Contains an iterator class returned by the tables' const find and insert
- *     methods.
+ * methods.
+ *
+ * * This file is intended to be included inside a class definition, with
+ * PB_DS_CLASS_C_DEC defined to the name of the enclosing class.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
 class point_iterator_;
 
 /// Const point-type iterator.
@@ -130,4 +134,4 @@ protected:
 
   friend class PB_DS_CLASS_C_DEC;
 };
-
+#endif
index d2514ad..40d769f 100644 (file)
 /**
  * @file point_iterator.hpp
  * Contains an iterator class returned by the tables' find and insert
- *     methods.
+ * methods.
+ *
+ * This file is intended to be included inside a class definition, with
+ * PB_DS_CLASS_C_DEC defined to the name of the enclosing class.
  */
 
+#ifdef PB_DS_CLASS_C_DEC
 /// Find type iterator.
 class point_iterator_
 {
@@ -124,3 +128,4 @@ protected:
 protected:
   pointer m_p_value;
 };
+#endif