fd1e17264b
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
274 lines
11 KiB
HTML
274 lines
11 KiB
HTML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<!DOCTYPE html
|
|
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
<head>
|
|
<meta name="KEYWORDS"
|
|
content="libstdc++, homepage, home, C++, library, c++, std, g++, ABI, STL" />
|
|
<title>GNU C++ Standard Library</title>
|
|
<link rel="StyleSheet" href="lib3styles.css" type="text/css" />
|
|
<link rel="Copyright" href="17_intro/license.html" type="text/html" />
|
|
<link rel="Help" href="faq/index.html" type="text/html" title="F.A.Q." />
|
|
</head>
|
|
<body>
|
|
|
|
|
|
<p><strong>All of these documents</strong> (in fact, this entire homepage set)
|
|
are bundled with the library source, under the <code>docs</code>
|
|
subdirectory, for releases and snapshots. The sole exception is the
|
|
automatically-generated source documentation, available separately.
|
|
</p>
|
|
|
|
<hr />
|
|
<br />
|
|
<h2><a name="1">Introduction</a></h2>
|
|
<p>This is a short list of text files pertaining to this implementation of
|
|
ISO 14882. A brief description may follow the name of the file.
|
|
</p>
|
|
<ul>
|
|
<li><a href="17_intro/COPYING">License</a>
|
|
- GPL v2 license terms</li>
|
|
<li><a href="abi.html">ABI Policy and Guidelines</a></li>
|
|
<li><a href="17_intro/BUGS">BUGS</a></li>
|
|
<li><a href="17_intro/PROBLEMS">PROBLEMS</a>
|
|
- target-specific known issues</li>
|
|
<!-- Linking to "../README" doesn't work; we are at the top level
|
|
of the web pages. Punt. -->
|
|
<li>README - directory structure</li>
|
|
<li><a href="17_intro/RELEASE-NOTES">RELEASE-NOTES</a>
|
|
- latest version info, recent changes and news</li>
|
|
<li><a href="17_intro/TODO">TODO</a>
|
|
- tasks yet undone</li>
|
|
<li><a href="faq/index.html">FAQ (HTML)</a>,
|
|
<a href="faq/index.txt">FAQ (text)</a></li>
|
|
</ul>
|
|
|
|
<hr />
|
|
<br />
|
|
<h2><a name="2">Configuring, Building, Testing, Installing</a></h2>
|
|
<ul>
|
|
<li><a href="configopts.html">Configure options</a></li>
|
|
<li><a href="install.html">Getting started: configure, build, install</a>
|
|
</li>
|
|
<li><a href="test.html">Testing details</a></li>
|
|
<li><a href="debug.html">Debugging schemes and strategies</a>
|
|
</li>
|
|
</ul>
|
|
|
|
|
|
<hr />
|
|
<br />
|
|
<h2><a name="4">Source-Level Documentation</a></h2>
|
|
<p>The library sources have been specially formatted so that with the
|
|
proper invocation of another tool (Doxygen), a set of HTML pages
|
|
are generated from the sources files themselves. The resultant
|
|
documentation is referred to as Source-Level Documentation, and is
|
|
useful for examining the signatures of public member functions for
|
|
the library classes, finding out what is in a particular include
|
|
file, looking at inheritance diagrams, etc.
|
|
</p>
|
|
<p>The source-level documentation for the most recent releases can
|
|
be viewed online:
|
|
</p>
|
|
<ul>
|
|
<li><a href="libstdc++-html-USERS-3.4/index.html">for the 3.4 release</a></li>
|
|
<li><a href="latest-doxygen/index.html">"the latest collection"</a>
|
|
(for the main development tree; see the date on the first page)
|
|
</li>
|
|
</ul>
|
|
<p>This generated HTML collection, as above, is also available for download in
|
|
the libstdc++ snapshots directory at
|
|
<code><URL:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/></code>.
|
|
You will almost certainly need to use one of the
|
|
<a href="http://gcc.gnu.org/mirrors.html">mirror sites</a> to download
|
|
the tarball. After unpacking, simply load libstdc++-html-*/index.html
|
|
into a browser.
|
|
</p>
|
|
<p>Documentation for older releases is available for download only, not
|
|
online viewing.
|
|
</p>
|
|
<p>In addition, an initial set of man pages are also available in the
|
|
same place as the HTML collections. Start with C++Intro(3).
|
|
</p>
|
|
|
|
|
|
<hr />
|
|
<br />
|
|
<h2><a name="3">Chapter-Specific Documentation</a></h2>
|
|
<p>Information, extensions, notes and advice on specific implementation
|
|
capabilites and/or liabilities broken down into chapter names based on the
|
|
C++ standard.
|
|
</p>
|
|
<!--
|
|
The list below is automatically generated. To make changes in the text,
|
|
edit the appropriate HOWTO file and run "make" in this directory. In
|
|
those files, you may reorder entries as you like, but DO NOT change the
|
|
"#number"s in anchors, for they are used elsewhere and in bookmarks.
|
|
-->
|
|
<!-- beginlist -->
|
|
<ul>
|
|
<li>Library Introduction (Chapter 17)
|
|
<ul>
|
|
<li><a href="17_intro/howto.html#2">The Standard C++ header files</a></li>
|
|
<li><a href="17_intro/howto.html#3">The Standard C++ library and multithreading</a></li>
|
|
<li><a href="17_intro/howto.html#4"><code><foo></code> vs <code><foo.h></code></a></li>
|
|
<li><a href="17_intro/porting-howto.html">Porting HOWTO</a></li>
|
|
<li><a href="17_intro/howto.html#5">Behavior specific to libstdc++-v3</a></li>
|
|
<li><a href="17_intro/howto.html#6">Preprocessor macros controlling the library</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>Library Support (Chapter 18)
|
|
<ul>
|
|
<li><a href="18_support/howto.html#1">Types</a></li>
|
|
<li><a href="18_support/howto.html#2">Implementation properties</a></li>
|
|
<li><a href="18_support/howto.html#3">Start and Termination</a></li>
|
|
<li><a href="18_support/howto.html#4">Verbose <code>terminate</code></a></li>
|
|
<li><a href="18_support/howto.html#5">Dynamic memory management</a></li>
|
|
<li><a href="18_support/howto.html#6">RTTI, the ABI, and demangling</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>Diagnostics (Chapter 19)
|
|
<ul>
|
|
<li><a href="19_diagnostics/howto.html#1">Adding data to exceptions</a></li>
|
|
<li><a href="19_diagnostics/howto.html#2">Exception class hierarchy diagram</a></li>
|
|
<li><a href="19_diagnostics/howto.html#3">Concept checkers -- <strong>new and improved!</strong></a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>General Utilities (Chapter 20)
|
|
<ul>
|
|
<li><a href="20_util/howto.html#1"><code>auto_ptr</code> is not omnipotent</a></li>
|
|
<li><a href="20_util/howto.html#2"><code>auto_ptr</code> inside container classes</a></li>
|
|
<li><a href="20_util/howto.html#3">Functors</a></li>
|
|
<li><a href="20_util/howto.html#4">Pairs</a></li>
|
|
<li><a href="20_util/howto.html#5">Memory allocators</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>Strings (Chapter 21)
|
|
<ul>
|
|
<li><a href="21_strings/howto.html#1">MFC's CString</a></li>
|
|
<li><a href="21_strings/howto.html#2">A case-insensitive string class</a></li>
|
|
<li><a href="21_strings/howto.html#3">Breaking a C++ string into tokens</a></li>
|
|
<li><a href="21_strings/howto.html#4">Simple transformations</a></li>
|
|
<li><a href="21_strings/howto.html#5">Making strings of arbitrary character types</a></li>
|
|
<li><a href="21_strings/howto.html#6">Shrink-to-fit strings</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>Localization (Chapter 22)
|
|
<ul>
|
|
<li><a href="22_locale/howto.html#1">class locale</a></li>
|
|
<li><a href="22_locale/howto.html#2">class codecvt</a></li>
|
|
<li><a href="22_locale/howto.html#3">class ctype</a></li>
|
|
<li><a href="22_locale/howto.html#4">class messages</a></li>
|
|
<li><a href="22_locale/howto.html#5">Bjarne Stroustrup on Locales</a></li>
|
|
<li><a href="22_locale/howto.html#6">Nathan Myers on Locales</a></li>
|
|
<li><a href="22_locale/howto.html#7">Correct Transformations</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>Containers (Chapter 23)
|
|
<ul>
|
|
<li><a href="23_containers/howto.html#1">Making code unaware of the container/array difference</a></li>
|
|
<li><a href="23_containers/howto.html#2">Variable-sized bitmasks</a></li>
|
|
<li><a href="23_containers/howto.html#3">Containers and multithreading</a></li>
|
|
<li><a href="23_containers/howto.html#4">"Hinting" during insertion</a></li>
|
|
<li><a href="23_containers/howto.html#5">Bitmasks and string arguments</a></li>
|
|
<li><a href="23_containers/howto.html#6"><code>std::list::size()</code> is O(n)!</a></li>
|
|
<li><a href="23_containers/howto.html#7">Space overhead management for vectors</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>Iterators (Chapter 24)
|
|
<ul>
|
|
<li><a href="24_iterators/howto.html#1">They ain't pointers!</a></li>
|
|
<li><a href="24_iterators/howto.html#2">It ends <em>where?</em></a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>Algorithms (Chapter 25)
|
|
<ul>
|
|
<li><a href="25_algorithms/howto.html#1">Prerequisites</a></li>
|
|
<li><a href="25_algorithms/howto.html#2">Special <code>swap</code>s</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>Numerics (Chapter 26)
|
|
<ul>
|
|
<li><a href="26_numerics/howto.html#1">Complex Number Processing</a></li>
|
|
<li><a href="26_numerics/howto.html#2">Array Processing</a></li>
|
|
<li><a href="26_numerics/howto.html#3">Numerical Functions</a></li>
|
|
<li><a href="26_numerics/howto.html#4">C99</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>Input/Output (Chapter 27)
|
|
<ul>
|
|
<li><a href="27_io/howto.html#1">Copying a file</a></li>
|
|
<li><a href="27_io/howto.html#2">The buffering is screwing up my program!</a></li>
|
|
<li><a href="27_io/howto.html#3">Binary I/O</a></li>
|
|
<li><a href="27_io/howto.html#5">What is this <sstream>/stringstreams thing?</a></li>
|
|
<li><a href="27_io/howto.html#6">Deriving a stream buffer</a></li>
|
|
<li><a href="27_io/howto.html#7">More on binary I/O</a></li>
|
|
<li><a href="27_io/howto.html#8">Pathetic performance? Ditch C.</a></li>
|
|
<li><a href="27_io/howto.html#9">Threads and I/O</a></li>
|
|
<li><a href="27_io/howto.html#10">Which header?</a></li>
|
|
<li><a href="27_io/howto.html#11">Using FILE*s and file descriptors with IOStreams</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>Extensions to the Standard Library
|
|
<ul>
|
|
<li><a href="ext/pb_assoc/index.html">Policy Based Associative Containers</a></li>
|
|
<li><a href="ext/howto.html#1">Ropes and trees and hashes, oh my!</a></li>
|
|
<li><a href="ext/howto.html#2">Added members and types</a></li>
|
|
<li><a href="ext/mt_allocator.html"><code>__mt_alloc</code> </a></li>
|
|
<li><a href="ext/howto.html#4">Compile-time checks</a></li>
|
|
<li><a href="ext/howto.html#5">LWG Issues</a></li>
|
|
<li><a href="ext/../18_support/howto.html#6">Demangling</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
</ul>
|
|
<!-- endlist -->
|
|
|
|
<hr />
|
|
<br />
|
|
<h2><a name="5">Contributor-Specific Information</a></h2>
|
|
<ul>
|
|
<li><a href="17_intro/contribute.html">Contributor checklist</a></li>
|
|
<li><a href="http://gcc.gnu.org/cvswrite.html">Getting CVS write access
|
|
(look for "Write after approval")</a></li>
|
|
<li><a href="17_intro/BADNAMES">BADNAMES</a>
|
|
- names to avoid because of potential collisions</li>
|
|
<li><a href="17_intro/C++STYLE">C++STYLE</a>
|
|
- coding style by example</li>
|
|
<li> In the libstdc++-v3/docs/doxygen directory, see guide.html, a
|
|
doxygen markup style guide</li>
|
|
<li><a href="17_intro/CHECKLIST">CHECKLIST</a>
|
|
- a list of required features and their status.</li>
|
|
<li><a href="17_intro/DESIGN">DESIGN</a>
|
|
- overview of the implementation plan</li>
|
|
<li><a href="17_intro/HEADER_POLICY">HEADER_POLICY</a>
|
|
- header naming and sub-include structure</li>
|
|
</ul>
|
|
|
|
<!-- ####################################################### -->
|
|
|
|
<p>Return <a href="http://gcc.gnu.org/libstdc++/">to the libstdc++ homepage</a>.</p>
|
|
|
|
<hr />
|
|
<p class="fineprint"><em>
|
|
See <a href="17_intro/license.html">license.html</a> for copying conditions.
|
|
Comments and suggestions are welcome, and may be sent to
|
|
<a href="mailto:libstdc++@gcc.gnu.org">the libstdc++ mailing list</a>.
|
|
</em></p>
|
|
|
|
</body>
|
|
</html>
|