
2005-06-27 Benjamin Kosnik <bkoz@redhat.com> Ami Tavory <pbassoc@gmail.com> * docs/html/documentation.html: Add link for policy based associative containers docs. * docs/html/ext/pb_assoc/Std_hash_set_impl.jpg: New. * docs/html/ext/pb_assoc/acks.html: New. * docs/html/ext/pb_assoc/balls_and_bins.jpg: New. * docs/html/ext/pb_assoc/basic_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/basic_assoc_cntnr_compound_data.html: New. * docs/html/ext/pb_assoc/basic_assoc_cntnr_no_data.html: New. * docs/html/ext/pb_assoc/basic_ds_tag.html: New. * docs/html/ext/pb_assoc/basic_hash_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/basic_hash_ds_tag.html: New. * docs/html/ext/pb_assoc/basic_invalidation_guarantee.html: New. * docs/html/ext/pb_assoc/basic_ms_tag.html: New. * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/ basic_tree_assoc_cntnr_const_node_iterator.html: New. * docs/html/ext/pb_assoc/ basic_tree_assoc_cntnr_node_iterator.html: New. * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev.html: New. * docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev_it.html: New. * docs/html/ext/pb_assoc/basic_tree_ds_tag.html: New. * docs/html/ext/pb_assoc/cc_hash_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/cc_hash_ds_tag.html: New. * docs/html/ext/pb_assoc/ cc_hash_max_collision_check_resize_trigger.html: New. * docs/html/ext/pb_assoc/cc_hash_policy_cd.jpg: New. * docs/html/ext/pb_assoc/cd.jpg: New. * docs/html/ext/pb_assoc/component_requirements.html: New. * docs/html/ext/pb_assoc/compound_data_enabled_ms_tag.html: New. * docs/html/ext/pb_assoc/compound_data_type.html: New. * docs/html/ext/pb_assoc/compound_ds_tag.html: New. * docs/html/ext/pb_assoc/concepts.html: New. * docs/html/ext/pb_assoc/contact.html: New. * docs/html/ext/pb_assoc/counter_update_metadata.html: New. * docs/html/ext/pb_assoc/counter_update_policy.html: New. * docs/html/ext/pb_assoc/data_enabled_ms_tag.html: New. * docs/html/ext/pb_assoc/design.html: New. * docs/html/ext/pb_assoc/different_underlying_dss.jpg: New. * docs/html/ext/pb_assoc/direct_mask_range_hashing.html: New. * docs/html/ext/pb_assoc/direct_mod_range_hashing.html: New. * docs/html/ext/pb_assoc/disclaimer.html: New. * docs/html/ext/pb_assoc/ds_gen.html: New. * docs/html/ext/pb_assoc/ds_tag_cd.jpg: New. * docs/html/ext/pb_assoc/ds_traits.html: New. * docs/html/ext/pb_assoc/embedded_lists_1.jpg: New. * docs/html/ext/pb_assoc/embedded_lists_2.jpg: New. * docs/html/ext/pb_assoc/examples.html: New. * docs/html/ext/pb_assoc/exception_guarantees_specifics.html: New. * docs/html/ext/pb_assoc/find_invalidation_guarantee.html: New. * docs/html/ext/pb_assoc/find_iterators_cd.jpg: New. * docs/html/ext/pb_assoc/find_iterators_range_ops_1.jpg: New. * docs/html/ext/pb_assoc/find_iterators_range_ops_2.jpg: New. * docs/html/ext/pb_assoc/generics.html: New. * docs/html/ext/pb_assoc/gp_hash_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/gp_hash_ds_tag.html: New. * docs/html/ext/pb_assoc/gp_hash_policy_cd.jpg: New. * docs/html/ext/pb_assoc/hash_and_probe_general.html: New. * docs/html/ext/pb_assoc/hash_based_containers.html: New. * docs/html/ext/pb_assoc/hash_cd.jpg: New. * docs/html/ext/pb_assoc/hash_exponential_size_policy.html: New. * docs/html/ext/pb_assoc/hash_fn.html: New. * docs/html/ext/pb_assoc/hash_load_check_resize_trigger.html: New. * docs/html/ext/pb_assoc/hash_policies.html: New. * docs/html/ext/pb_assoc/hash_policy_cd.jpg: New. * docs/html/ext/pb_assoc/hash_prime_size_policy.html: New. * docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram.jpg: New. * docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram2.jpg: New. * docs/html/ext/pb_assoc/hash_ranged_hash_range_hashing_fns.jpg: New. * docs/html/ext/pb_assoc/hash_standard_resize_policy.html: New. * docs/html/ext/pb_assoc/home.html: New. * docs/html/ext/pb_assoc/index.html: New. * docs/html/ext/pb_assoc/insert_resize_sequence_diagram1.jpg: New. * docs/html/ext/pb_assoc/insert_resize_sequence_diagram2.jpg: New. * docs/html/ext/pb_assoc/insert_resize_sequence_diagram3.jpg: New. * docs/html/ext/pb_assoc/insert_type_methods.html: New. * docs/html/ext/pb_assoc/interface.html: New. * docs/html/ext/pb_assoc/interval_node_invariants.jpg: New. * docs/html/ext/pb_assoc/introduction.html: New. * docs/html/ext/pb_assoc/invalidation_guarantee_cd.jpg: New. * docs/html/ext/pb_assoc/invalidation_guarantee_erase.jpg: New. * docs/html/ext/pb_assoc/lib_download.html: New. * docs/html/ext/pb_assoc/linear_probe_fn.html: New. * docs/html/ext/pb_assoc/list_updates.html: New. * docs/html/ext/pb_assoc/lu_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/lu_based_containers.html: New. * docs/html/ext/pb_assoc/lu_cd.jpg: New. * docs/html/ext/pb_assoc/lu_ds_tag.html: New. * docs/html/ext/pb_assoc/lu_ops.jpg: New. * docs/html/ext/pb_assoc/mmap_value_utils.html: New. * docs/html/ext/pb_assoc/motivation.html: New. * docs/html/ext/pb_assoc/move_to_front_update_metadata.html: New. * docs/html/ext/pb_assoc/move_to_front_update_policy.html: New. * docs/html/ext/pb_assoc/ms_cd.jpg: New. * docs/html/ext/pb_assoc/ms_gen.html: New. * docs/html/ext/pb_assoc/ms_tag_cd.jpg: New. * docs/html/ext/pb_assoc/ms_traits.html: New. * docs/html/ext/pb_assoc/node_invariant_invalidations.jpg: New. * docs/html/ext/pb_assoc/node_invariants.html: New. * docs/html/ext/pb_assoc/node_invariants.jpg: New. * docs/html/ext/pb_assoc/non_unique_mapping.html: New. * docs/html/ext/pb_assoc/non_unique_mapping_containers.jpg: New. * docs/html/ext/pb_assoc/null_data_type.html: New. * docs/html/ext/pb_assoc/null_hash_fn.html: New. * docs/html/ext/pb_assoc/null_probe_fn.html: New. * docs/html/ext/pb_assoc/order_by_key.html: New. * docs/html/ext/pb_assoc/order_statistics_key.html: New. * docs/html/ext/pb_assoc/order_statistics_key_cmp.html: New. * docs/html/ext/pb_assoc/order_statistics_node_updator.html: New. * docs/html/ext/pb_assoc/ov_tree_ds_tag.html: New. * docs/html/ext/pb_assoc/overview.html: New. * docs/html/ext/pb_assoc/pb_assoc_ex.html: New. * docs/html/ext/pb_assoc/portability.html: New. * docs/html/ext/pb_assoc/quadratic_probe_fn.html: New. * docs/html/ext/pb_assoc/range_invalidation_guarantee.html: New. * docs/html/ext/pb_assoc/rank_node_invariants.jpg: New. * docs/html/ext/pb_assoc/rationale_null_node_updator.jpg: New. * docs/html/ext/pb_assoc/rb_tree_ds_tag.html: New. * docs/html/ext/pb_assoc/reference_iterator.jpg: New. * docs/html/ext/pb_assoc/references.html: New. * docs/html/ext/pb_assoc/regression_tests.html: New. * docs/html/ext/pb_assoc/resize_general.html: New. * docs/html/ext/pb_assoc/resize_policies.html: New. * docs/html/ext/pb_assoc/resize_policy_cd.jpg: New. * docs/html/ext/pb_assoc/restoring_node_invariants.jpg: New. * docs/html/ext/pb_assoc/sample_node_updator.hpp: New. * docs/html/ext/pb_assoc/sample_probe_fn.hpp: New. * docs/html/ext/pb_assoc/sample_probe_fn.html: New. * docs/html/ext/pb_assoc/sample_range_hashing.hpp: New. * docs/html/ext/pb_assoc/sample_range_hashing.html: New. * docs/html/ext/pb_assoc/sample_ranged_hash_fn.hpp: New. * docs/html/ext/pb_assoc/sample_ranged_hash_fn.html: New. * docs/html/ext/pb_assoc/sample_ranged_probe_fn.hpp: New. * docs/html/ext/pb_assoc/sample_ranged_probe_fn.html: New. * docs/html/ext/pb_assoc/sample_resize_policy.hpp: New. * docs/html/ext/pb_assoc/sample_resize_policy.html: New. * docs/html/ext/pb_assoc/sample_resize_trigger.hpp: New. * docs/html/ext/pb_assoc/sample_size_policy.hpp: New. * docs/html/ext/pb_assoc/sample_update_policy.hpp: New. * docs/html/ext/pb_assoc/size_policies_general.html: New. * docs/html/ext/pb_assoc/splay_tree_ds_tag.html: New. * docs/html/ext/pb_assoc/timing_tests.html: New. * docs/html/ext/pb_assoc/toc.html: New. * docs/html/ext/pb_assoc/tree_assoc_cntnr.html: New. * docs/html/ext/pb_assoc/ tree_assoc_cntnr_const_node_iterator.html: New. * docs/html/ext/pb_assoc/tree_assoc_cntnr_node_iterator.html: New. * docs/html/ext/pb_assoc/tree_based_containers.html: New. * docs/html/ext/pb_assoc/tree_cd.jpg: New. * docs/html/ext/pb_assoc/trigger_policies_general.html: New. * docs/html/ext/pb_assoc/tutorial.html: New. * docs/html/ext/pb_assoc/update_seq_diagram.jpg: New. * include/Makefile.am: Add assoc_srcdir, assoc_builddir, assoc_subdir, assoc_headers. * include/Makefile.in: Regenerate. * include/ext/typelist.h: New. * include/ext/pb_assoc/assoc_cntnr.hpp: New. * include/ext/pb_assoc/data_type.hpp: New. * include/ext/pb_assoc/ds_trait.hpp: New. * include/ext/pb_assoc/exception.hpp: New. * include/ext/pb_assoc/hash_policy.hpp: New. * include/ext/pb_assoc/lu_policy.hpp: New. * include/ext/pb_assoc/ms_trait.hpp: New. * include/ext/pb_assoc/tree_policy.hpp: New. * include/ext/pb_assoc/trivial_iterator_def.hpp: New. * include/ext/pb_assoc/detail/assoc_cntnr_base.hpp: New. * include/ext/pb_assoc/detail/cond_dealtor.hpp: New. * include/ext/pb_assoc/detail/constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ds_trait_imp.hpp: New. * include/ext/pb_assoc/detail/hash_types_traits.hpp: New. * include/ext/pb_assoc/detail/map_debug_base.hpp: New. * include/ext/pb_assoc/detail/mapping_level_imp.hpp: New. * include/ext/pb_assoc/detail/ms_category_imp.hpp: New. * include/ext/pb_assoc/detail/ms_trait_imp.hpp: New. * include/ext/pb_assoc/detail/order_statistics_imp.hpp: New. * include/ext/pb_assoc/detail/standard_policies.hpp: New. * include/ext/pb_assoc/detail/standard_sizes.hpp: New. * include/ext/pb_assoc/detail/type_utils.hpp: New. * include/ext/pb_assoc/detail/typelist.hpp: New. * include/ext/pb_assoc/detail/types_traits.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/d_extract_key.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ d_find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ d_insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/extract_key.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_assoc_cntnr/ iterators_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/ resize_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ node_iteration_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ policy_access_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ r_erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ r_range_iteration_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ range_iteration_fn_imps.hpp: New. * include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/ split_join_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ bin_search_tree_.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ cond_dtor_entry_dealtor.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ cond_key_dtor_entry_dealtor.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/find_iterators.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ iterators_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/node_iterators.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ r_erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/rotate_fn_imps.hpp: New. * include/ext/pb_assoc/detail/bin_search_tree_/ split_join_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_hash_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/cc_ht_map_.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/cmp_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ cond_key_dtor_entry_dealtor.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ constructor_destructor_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ constructor_destructor_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ debug_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ debug_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/entry_list_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ erase_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ erase_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ find_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ find_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ insert_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ insert_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/iterators_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ policy_access_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/resize_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ resize_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/ resize_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/size_fn_imps.hpp: New. * include/ext/pb_assoc/detail/cc_ht_map_/standard_policies.hpp: New. * include/ext/pb_assoc/detail/eq_fn/eq_by_less.hpp: New. * include/ext/pb_assoc/detail/eq_fn/hash_eq_fn.hpp: New. * include/ext/pb_assoc/detail/gp_hash_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ constructor_destructor_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ constructor_destructor_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ debug_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ debug_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ erase_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ erase_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ find_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ find_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/gp_ht_map_.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ insert_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ insert_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/iterator_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ policy_access_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/resize_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ resize_no_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/gp_ht_map_/ resize_store_hash_fn_imps.hpp: New. * include/ext/pb_assoc/detail/hash_fn/ direct_mask_range_hashing_imp.hpp: New. * include/ext/pb_assoc/detail/hash_fn/ direct_mod_range_hashing_imp.hpp: New. * include/ext/pb_assoc/detail/hash_fn/linear_probe_fn_imp.hpp: New. * include/ext/pb_assoc/detail/hash_fn/ mask_based_range_hashing.hpp: New. * include/ext/pb_assoc/detail/hash_fn/mod_based_range_hashing.hpp: New. * include/ext/pb_assoc/detail/hash_fn/probe_fn_base.hpp: New. * include/ext/pb_assoc/detail/hash_fn/quadratic_probe_fn_imp.hpp: New. * include/ext/pb_assoc/detail/hash_fn/ranged_hash_fn.hpp: New. * include/ext/pb_assoc/detail/hash_fn/ranged_probe_fn.hpp: New. * include/ext/pb_assoc/detail/lu_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_assoc_cntnr/ policy_access_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/iterators_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_map_/lu_map_.hpp: New. * include/ext/pb_assoc/detail/lu_map_/policy_access_fn_imps.hpp: New. * include/ext/pb_assoc/detail/lu_policy/ counter_lu_metadata_imp.hpp: New. * include/ext/pb_assoc/detail/lu_policy/counter_lu_policy_imp.hpp: New. * include/ext/pb_assoc/detail/lu_policy/mtf_lu_policy_imp.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/cond_dtor.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/iterators_fn_imps.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/node_iterators.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/ov_tree_map_.hpp: New. * include/ext/pb_assoc/detail/ov_tree_map_/split_join_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/node.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/rb_tree_.hpp: New. * include/ext/pb_assoc/detail/rb_tree_map_/split_join_fn_imps.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ cc_hash_max_collision_resize_trigger_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ hash_exponential_size_policy_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ hash_load_check_resize_trigger_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ hash_prime_size_policy_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ hash_standard_resize_policy_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/ ht_prime_size_policy_imp.hpp: New. * include/ext/pb_assoc/detail/resize_policy/size_base.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/ constructors_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/debug_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/node.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/splay_fn_imps.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/splay_tree_.hpp: New. * include/ext/pb_assoc/detail/splay_tree_/split_join_fn_imps.hpp: New. * include/ext/pb_assoc/detail/tree_assoc_cntnr/ constructor_destructor_fn_imps.hpp: New. * include/ext/pb_assoc/detail/tree_policy/ null_node_updator_imp.hpp: New. * include/ext/pb_assoc/detail/tree_policy/ order_statistics_imp.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_append.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_apply.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_at_index.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_contains.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_filter.hpp: New. * include/ext/pb_assoc/detail/typelist/typelist_transform.hpp: New. * include/ext/pb_assoc/detail/typelist/ typelist_typelist_append.hpp: New. * include/ext/pb_assoc/detail/unordered_iterator/ const_find_iterator.hpp: New. * include/ext/pb_assoc/detail/unordered_iterator/ const_iterator.hpp: New. * include/ext/pb_assoc/detail/unordered_iterator/ find_iterator.hpp: New. * include/ext/pb_assoc/detail/unordered_iterator/iterator.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ constructor_destructor_and_related.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ erase_fn_imps.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ erase_if_pred.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/find_fn_imps.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/info_fn_imps.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ insert_fn_imps.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ invalidation_guarantee_selector.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ it_value_type_traits.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/iterator.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ iterator_fn_imps.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ref_pair.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ value_type_adapter.hpp: New. * include/ext/pb_assoc/detail/value_type_adapter/ value_type_traits.hpp: New. * testsuite/Makefile.am (CLEANFILES): Add .o, .dat, .cc. * testsuite/Makefile.in: Regenerate. * testsuite/testsuite_common_types.h: New. * testsuite/testsuite_visualization.h: New. * testsuite/ext/pb_assoc/example/basic_map.cc: New. * testsuite/ext/pb_assoc/example/basic_multimap.cc: New. * testsuite/ext/pb_assoc/example/basic_set.cc: New. * testsuite/ext/pb_assoc/example/ds_traits.cc: New. * testsuite/ext/pb_assoc/example/erase_if.cc: New. * testsuite/ext/pb_assoc/example/extract_key.cc: New. * testsuite/ext/pb_assoc/example/hash_find_neg.cc: New. * testsuite/ext/pb_assoc/example/hash_illegal_resize.cc: New. * testsuite/ext/pb_assoc/example/hash_initial_size.cc: New. * testsuite/ext/pb_assoc/example/hash_load_set_change.cc: New. * testsuite/ext/pb_assoc/example/hash_mod.cc: New. * testsuite/ext/pb_assoc/example/hash_resize.cc: New. * testsuite/ext/pb_assoc/example/hash_resize_neg.cc: New. * testsuite/ext/pb_assoc/example/hash_shift_mask.cc: New. * testsuite/ext/pb_assoc/example/mapping_level.cc: New. * testsuite/ext/pb_assoc/example/mapping_level_neg.cc: New. * testsuite/ext/pb_assoc/example/ms_traits.cc: New. * testsuite/ext/pb_assoc/example/ranged_hash.cc: New. * testsuite/ext/pb_assoc/example/store_hash.cc: New. * testsuite/ext/pb_assoc/example/tree_intervals.cc: New. * testsuite/ext/pb_assoc/example/tree_join.cc: New. * testsuite/ext/pb_assoc/example/tree_order_statistics.cc: New. * testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc: New. * testsuite/ext/pb_assoc/example/tree_split.cc: New. * testsuite/performance/20_util/allocator/(insert.cc, insert_insert.cc, list_sort_search.cc, map_mt_find.cc, map_thread.cc, producer_consumer.cc): Recast to use typelists and move to... * testsuite/performance/23_containers/find/map.cc: New. * testsuite/performance/23_containers/index/map.cc: New. * testsuite/performance/23_containers/insert/associative.cc: New. * testsuite/performance/23_containers/insert/sequence.cc: New. * testsuite/performance/23_containers/insert_erase/associative.cc: New. * testsuite/performance/23_containers/producer_consumer/ (associative.cc, sequence.cc): New. * testsuite/performance/23_containers/sort_search/list.cc: New. * testsuite/performance/23_containers/container_benchmark.cc: Remove. * testsuite/performance/23_containers/map_create_fill.cc: Move... * testsuite/performance/23_containers/create/map.cc: ...here. * testsuite/performance/23_containers/set_create_from_sorted.cc: Move. * testsuite/performance/23_containers/create_from_sorted/set.cc: here. * testsuite/performance/23_containers/list_create_fill_sort.cc: Move... * testsuite/performance/23_containers/create_sort/list.cc: ...here. * testsuite/performance/23_containers/set_insert_from_sorted.cc: Move. * testsuite/performance/23_containers/insert_from_sorted/set.cc: here. Co-Authored-By: Ami Tavory <pbassoc@gmail.com> From-SVN: r101354
342 lines
10 KiB
HTML
342 lines
10 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<TITLE>Interface</TITLE>
|
|
<META NAME="Generator" content="Microsoft Visual Studio .NET 7.1">
|
|
</HEAD>
|
|
<BODY>
|
|
|
|
<H1>Interface</H1>
|
|
<p>
|
|
Following is the library's interface:
|
|
</p>
|
|
<ol>
|
|
<li> <a href = "tutorial.html">Short Tutorial</a> is a short tutorial. </li>
|
|
<li> <a href="#containers">Containers</a> describes the containers of
|
|
the library.
|
|
</li>
|
|
<li>
|
|
<a href="#ds_pol">Data-Type Policies</a> describes data-type policies.
|
|
</li>
|
|
<li>
|
|
<a href="#ds_tag">Data-Structure Tags and Traits</a> describes
|
|
tags and traits identifying the underlying data-structure and its behaviour.
|
|
</li>
|
|
<li>
|
|
<a href="#ms_tag">Mapping-Semantics Tags and Traits</a> describes
|
|
tags and traits identifying the mapping-semantics.
|
|
</li>
|
|
<li>
|
|
<a href = "#ds_policy_classes">Data-Structure Policy Classes</a> describes
|
|
policies for configuring underlying data-structures.
|
|
</li>
|
|
<li>
|
|
<a href="#exceptions">Exceptions</a> Subsection desribes exception classes.
|
|
</li>
|
|
</ol>
|
|
|
|
|
|
<hr>
|
|
|
|
|
|
|
|
<h2><a name = "containers">Containers</a></h2>
|
|
|
|
<p>
|
|
<a href = "overview.html">Overview</a> and
|
|
<a href = "ds_gen.html">Data-Structure Genericity</a> discuss relevant design
|
|
points.
|
|
</p>
|
|
|
|
<h6 align = "center">
|
|
<a name = "cd">
|
|
<img src = "cd.jpg" width = "70%" alt = "no image">
|
|
</h6>
|
|
</a>
|
|
<h6 align = "center">
|
|
class hierarchy.
|
|
</h6>
|
|
|
|
<ol>
|
|
<li>
|
|
Basic Associative-Containers:
|
|
<ol>
|
|
<li><a href = "basic_assoc_cntnr.html"><tt>basic_assoc_cntnr</tt></a> - basic associative-container for the "map" case</li>
|
|
<li><a href = "basic_assoc_cntnr_no_data.html"><tt>basic_assoc_cntnr</tt></a> - basic associative-container for the "set" case</li>
|
|
<li><a href = "basic_assoc_cntnr_compound_data.html"><tt>basic_assoc_cntnr</tt></a> - basic associative-container for the "multimap" case</li>
|
|
</ol>
|
|
</li>
|
|
<li>
|
|
Hash-Based Associative-Containers:
|
|
<ol>
|
|
<li><a href = "basic_hash_assoc_cntnr.html"><tt>basic_hash_assoc_cntnr</tt></a> - basic hash-based associative-container </li>
|
|
<li><a href = "cc_hash_assoc_cntnr.html"><tt>cc_hash_assoc_cntnr</tt></a> - collision-chaining hash-based associative-container </li>
|
|
<li><a href = "gp_hash_assoc_cntnr.html"><tt>gp_hash_assoc_cntnr</tt></a> - (general) probing hash-based associative-container </li>
|
|
</ol>
|
|
</li>
|
|
<li>
|
|
Tree-Based Associative-Containers:
|
|
<ol>
|
|
<li><a href = "basic_tree_assoc_cntnr.html"><tt>basic_tree_assoc_cntnr</tt></a> - basic tree-based associative-container </li>
|
|
<li><a href = "basic_tree_assoc_cntnr_rev.html"><tt>basic_tree_assoc_cntnr</tt></a> - basic tree-based associative-container with reverse iteration </li>
|
|
<li><a href = "tree_assoc_cntnr.html"><tt>tree_assoc_cntnr</tt></a> - tree-based associative-container </li>
|
|
</ol>
|
|
</li>
|
|
<li>
|
|
List-Based Associative-Contaiers:
|
|
<ol>
|
|
<li><a href = "lu_assoc_cntnr.html"><tt>lu_assoc_cntnr</tt></a> - list-based update-policy associative container</li>
|
|
</ol>
|
|
</li>
|
|
</ol>
|
|
|
|
|
|
<hr>
|
|
|
|
|
|
<h2><a name = "ds_pol">Data-Type Policies</a></h2>
|
|
|
|
<p>
|
|
<a href = "overview.html">Overview</a> and
|
|
<a href = "ms_gen.html">Mapping-Semantic Genericity</a> discuss relevant design
|
|
points.
|
|
</p>
|
|
|
|
<ol>
|
|
<li><a href = "null_data_type.html"><tt>null_data_type</tt></a>
|
|
</li>
|
|
<li><a href = "compound_data_type.html"><tt>compound_data_type</tt></a>
|
|
</li>
|
|
</ol>
|
|
|
|
<hr>
|
|
|
|
|
|
|
|
|
|
<h2><a name = "ds_tag">Data-Structure Tags and Traits</a></h2>
|
|
|
|
<p>
|
|
|
|
</p>
|
|
|
|
<h3>Data-Structure Tags</h3>
|
|
|
|
<h6 align = "center">
|
|
<a name = "cd">
|
|
<img src = "ds_tag_cd.jpg" width = "70%" alt = "no image">
|
|
</h6>
|
|
</a>
|
|
<h6 align = "center">
|
|
Data-Structure Tag class hierarchy.
|
|
</h6>
|
|
|
|
<ol>
|
|
<li> <a href = "basic_ds_tag.html"><tt>basic_ds_tag</tt></a></li>
|
|
<li> <a href = "basic_hash_ds_tag.html"><tt>basic_hash_ds_tag</tt></a></li>
|
|
<li> <a href = "cc_hash_ds_tag.html"><tt>cc_hash_ds_tag</tt></a></li>
|
|
<li> <a href = "gp_hash_ds_tag.html"><tt>gp_hash_ds_tag</tt></a></li>
|
|
<li> <a href = "basic_tree_ds_tag.html"><tt>basic_tree_ds_tag</tt></a></li>
|
|
<li> <a href = "rb_tree_ds_tag.html"><tt>rb_tree_ds_tag</tt></a></li>
|
|
<li> <a href = "splay_tree_ds_tag.html"><tt>splay_tree_ds_tag</tt></a></li>
|
|
<li> <a href = "ov_tree_ds_tag.html"><tt>ov_tree_ds_tag</tt></a></li>
|
|
<li> <a href = "lu_ds_tag.html"><tt>lu_ds_tag</tt></a></li>
|
|
<li> <a href = "compound_ds_tag.html"><tt>compound_ds_tag</tt></a></li>
|
|
</ol>
|
|
|
|
|
|
<h3>Invalidation-Guarantee Tags</h3>
|
|
|
|
<h6 align = "center">
|
|
<a name = "cd">
|
|
<img src = "invalidation_guarantee_cd.jpg" width = "70%" alt = "no image">
|
|
</h6>
|
|
</a>
|
|
<h6 align = "center">
|
|
Invalidation guarantees class hierarchy.
|
|
</h6>
|
|
|
|
<ol>
|
|
<li> <a href = "basic_invalidation_guarantee.html"><tt>basic_invalidation_guarantee</tt></a></li>
|
|
<li> <a href = "find_invalidation_guarantee.html"><tt>find_invalidation_guarantee</tt></a></li>
|
|
<li> <a href = "range_invalidation_guarantee.html"><tt>range_invalidation_guarantee</tt></a></li>
|
|
</ol>
|
|
|
|
<h3>Data-Structure Traits</h3>
|
|
|
|
<ol>
|
|
<li> <a href = "ds_traits.html"><tt>ds_traits</tt></a></li>
|
|
</ol>
|
|
|
|
|
|
<hr>
|
|
|
|
|
|
<h2><a name = "ms_tag">Mapping-Semantics Tags and Traits</a></h2>
|
|
|
|
<p>
|
|
|
|
</p>
|
|
|
|
<h3>Mapping-Semantics Tags</h3>
|
|
|
|
<h6 align = "center">
|
|
<a name = "cd">
|
|
<img src = "ms_tag_cd.jpg" width = "70%" alt = "no image">
|
|
</h6>
|
|
</a>
|
|
<h6 align = "center">
|
|
Mapping-Semantics Tag class hierarchy.
|
|
</h6>
|
|
|
|
<ol>
|
|
<li> <a href = "basic_ms_tag.html"><tt>basic_ms_tag</tt></a></li>
|
|
<li> <a href = "data_enabled_ms_tag.html"><tt>data_enabled_ms_tag</tt></a></li>
|
|
<li> <a href = "compound_data_enabled_ms_tag.html"><tt>compound_data_enabled_ms_tag</tt></a></li>
|
|
</ol>
|
|
|
|
|
|
<h3>Mapping-Semantics Traits</h3>
|
|
|
|
<ol>
|
|
<li> <a href = "ms_traits.html"><tt>ms_traits</tt></a></li>
|
|
</ol>
|
|
|
|
|
|
<hr>
|
|
|
|
|
|
<h2><a name="ds_policy_classes">Data-Structure Policy Classes</a></h2>
|
|
|
|
|
|
<h3>Hash-Related Policies</h3>
|
|
|
|
<p>
|
|
</p><a href = "hash_based_containers.html">Hash-Based Containers</a> describes
|
|
relevant design points.
|
|
</p>
|
|
|
|
<h4>Hash and Probe Policies</h4>
|
|
<ol>
|
|
<li> Hash Functions:
|
|
<ol>
|
|
<li> <a href="null_hash_fn.html"><tt>null_hash_fn</tt></a></li>
|
|
</ol>
|
|
</li>
|
|
<li> Range-Hashing Functions:
|
|
<ol>
|
|
<li><a href="sample_range_hashing.html">Interface of a Range-Hashing Function</a></li>
|
|
<li> <a href="direct_mask_range_hashing.html"><tt>direct_mask_range_hashing</tt></a></li>
|
|
<li> <a href="direct_mod_range_hashing.html"><tt>direct_mod_range_hashing</tt></a></li>
|
|
</ol>
|
|
</li>
|
|
<li> Probe Functions:
|
|
<ol>
|
|
<li> <a href="sample_probe_fn.html">Interface of a Probe Function</a></li>
|
|
<li> <a href="linear_probe_fn.html"><tt>linear_probe_fn</tt></a></li>
|
|
<li> <a href="quadratic_probe_fn.html"><tt>quadratic_probe_fn</tt></a></li>
|
|
<li> <a href="null_probe_fn.html"><tt>null_probe_fn</tt></a></li>
|
|
</ol>
|
|
</li>
|
|
<li> Ranged-Hash Functions:
|
|
<ol>
|
|
<li><a href="ranged_hash_fn.html">Interface of a Ranged-Hash Function</a></li>
|
|
</ol>
|
|
</li>
|
|
<li> Ranged-Probe Functions:
|
|
<ol>
|
|
<li> <a href="ranged_probe_fn.html">Interface of a Ranged-Probe function</a></li>
|
|
</ol>
|
|
</li>
|
|
</ol>
|
|
|
|
|
|
|
|
<h4>Resize Policies</h4>
|
|
|
|
<h6 align = "center">
|
|
<a name = "resize_policy_cd">
|
|
<img src = "resize_policy_cd.jpg" width = "70%" alt = "no image">
|
|
</a>
|
|
</h6>
|
|
<h6 align = "center">
|
|
Resize policy class diagram.
|
|
</h6>
|
|
|
|
<ol>
|
|
<li> Resize Policies:
|
|
<ol>
|
|
<li> <a href="sample_resize_policy.html">Interface of a Resize Policy</a>
|
|
<li> <a href="ht_standard_resize_policy.html"><tt>ht_standard_resize_policy</tt></a></li>
|
|
</ol>
|
|
</li>
|
|
<li> Size Policies:
|
|
<ol>
|
|
<li> <a href="sample_size_policy.html">Interface of a Size Policy</a></li>
|
|
<li> <a href="ht_exponential_size_policy.html"><tt>ht_exponential_size_policy</tt></a></li>
|
|
<li> <a href="ht_prime_size_policy.html"><tt>ht_prime_size_policy</tt></a></li>
|
|
</ol>
|
|
</li>
|
|
<li> Trigger Policies:
|
|
<ol>
|
|
<li><a href="sample_resize_trigger.html">Interface of a Trigger Policy</a></li>
|
|
<li> <a href="ht_load_check_resize_trigger.html"><tt>ht_load_check_resize_trigger</tt></a></li>
|
|
<li> <a href="ht_max_collision_check_grow_resize_trigger.html"><tt>ht_max_collision_check_grow_resize_trigger</tt></a></li>
|
|
</ol>
|
|
</li>
|
|
</ol>
|
|
|
|
|
|
|
|
<h3>Tree Node-Update Policies</h3>
|
|
<ol>
|
|
<li> <a href = "node_invariants.html">Design of Node Update Policies</a></li>
|
|
<li> <a href="sample_node_updator.html">Interface of a Node Updator Policy</a></li>
|
|
<li> Order-Statistics (Finding Entries by Key Order):
|
|
<ol>
|
|
<li> <a href="order_statistics_key.html"><tt>order_statistics_key</tt></a></li>
|
|
<li> <a href="order_statistics_key_cmp.html"><tt>order_statistics_key_cmp</tt></a></li>
|
|
<li> <a href="order_statistics_node_updator.html"><tt>order_statistics_node_updator</tt></a></li>
|
|
<li> <a href="find_by_order.html"><tt>find_by_order</tt></a></li>
|
|
<li> <a href="order_by_key.html"><tt>order_by_key</tt></a></li>
|
|
</ol>
|
|
</li>
|
|
<li> <a href="null_node_updator.html"><tt>null_node_updator</tt></a></li>
|
|
</ol>
|
|
|
|
|
|
<h3>List Update Policies</h3>
|
|
<ol>
|
|
<li> <a href = "list_updates.html">Design of List Update Policies</a> </li>
|
|
<li> <a href = "sample_update_policy.html">Interface of a List Update Policy</a> </li>
|
|
<li> Move-to-Front:
|
|
<ol>
|
|
<li> <a href="move_to_front_update_metadata.html"><tt>move_to_front_update_metadata</tt></a></li>
|
|
<li> <a href="move_to_front_update_policy.html"><tt>move_to_front_update_policy</tt></a></li>
|
|
</ol>
|
|
</li>
|
|
<li> Counter:
|
|
<ol>
|
|
<li> <a href="counter_update_metadata.html"><tt>counter_update_metadata</tt></a></li>
|
|
<li> <a href="counter_update_policy.html"><tt>counter_update_policy</tt></a></li>
|
|
</ol>
|
|
</li>
|
|
</ol>
|
|
|
|
|
|
<hr>
|
|
|
|
|
|
|
|
|
|
<h2><a name="exceptions">Exceptions</a></h2>
|
|
<ol>
|
|
<li> <a href="pb_assoc_ex.html"><tt>pb_assoc_ex</tt></a></li>
|
|
<li> <a href="cannot_insert.html"><tt>cannot_insert</tt></a></li>
|
|
<li> <a href="cannot_join.html"><tt>cannot_join</tt></a></li>
|
|
<li> <a href="cannot_resize.html"><tt>cannot_resize</tt></a></li>
|
|
</ol>
|
|
|
|
|
|
</BODY>
|
|
</HTML>
|