Ion Gaztañaga
4da327f7b1
Documented vector's weaker exception guarantees.
2014-04-16 14:44:15 +02:00
Ion Gaztañaga
0856f8a32e
Documented vector's weaker exception safety guarantees.
2014-04-16 14:42:37 +02:00
Ion Gaztañaga
7ca156661f
Sync'ed with deveop changes.
2014-02-14 22:58:38 +01:00
Ion Gaztañaga
ae31857124
Merge branch 'develop'
2014-02-14 19:58:30 +01:00
Ion Gaztañaga
2015537778
Create first merge point for Git
2014-02-14 19:34:10 +01:00
Ion Gaztañaga
ba596fc83c
Fixes #9648 , (string construction optimization)
2014-02-11 15:05:35 +01:00
Ion Gaztañaga
edc4e6da80
Reverted alloc_lib extension change. It breaks Windows builds.
2014-02-10 21:26:20 +01:00
Ion Gaztañaga
30431adf1e
Changed extended allocator file extension from C to C++ as some toolsets (like clang) don't ignore C++ options when compiling C files.
2014-02-09 23:20:44 +01:00
Ion Gaztañaga
4f2d7944fa
Corrected test_suite name
2014-02-06 11:53:36 +01:00
Ion Gaztañaga
a4c0188173
Divided set benchmark in several smaller benchmark files
2014-02-06 11:13:22 +01:00
Ion Gaztañaga
a4b839628a
Implemented unique associative containers' equal_range using lower_bound_range which is more efficient with heavy comparison functions.
...
Updated benchmark to avoid measuring redundant operations in searches.
2014-01-20 13:20:02 +01:00
Ion Gaztañaga
abc50c7275
Improved unique associative container count function. Improved also flat_xxx's equal_range.
2014-01-19 19:18:57 +01:00
Ion Gaztañaga
6d6656fcc1
Improved set test with search functions and added set<string> test to benchmark.
2014-01-19 18:35:40 +01:00
Ion Gaztañaga
2b804c880b
Fix GCC warning about unused typedef in release mode.
2014-01-05 22:37:09 +01:00
Ion Gaztañaga
a93e23f22a
Inherit set/multiset/map/multimap from tree to avoid redundant instantiations in debug mode and simplify maintenance.
2014-01-05 22:36:01 +01:00
Ion Gaztañaga
3af1cdefe0
Inherit flat_set/flat_multiset from flat_tree to avoid code instantiation in debug mode and several trivial functions. Declarations still there for doxygen documentation.
2014-01-05 22:29:33 +01:00
Ion Gaztañaga
4872931d29
Documented template parameters.
2014-01-05 22:25:12 +01:00
Ion Gaztañaga
2b8f88b034
Documented template parameters
2014-01-03 14:52:56 +01:00
Ion Gaztañaga
d3eb21000b
Derived flat_set from flat_tree to avoid redefining almost all functions and minimize instantiation of multiple function in debug mode.
2014-01-03 14:52:13 +01:00
Ion Gaztañaga
01486761a6
Added support for configurable tree-based associative containers. In addition to RB trees, AVL, Scapegoat and Splay trees are experimentally supported.
2014-01-03 13:26:57 +01:00
Ion Gaztañaga
2489010881
Document comparison operators for non tree associative containers.
2014-01-03 12:43:03 +01:00
Ion Gaztañaga
4dc3df6b6b
Use "insert_after" instead of "insert" to avoid unneeded checks.
2014-01-03 10:37:09 +01:00
Ion Gaztañaga
fc8507b48c
Some comments in the testcases separating test groups.
2013-12-26 13:10:54 +01:00
Ion Gaztañaga
9ac4ae6fdc
Added a static assert to make sure that flat_[xxx]map::allocator_type::value_type is std::pair<Key, T>. Fixed some test cases failing to do that properly.
2013-12-24 19:00:52 +01:00
Ion Gaztañaga
95e6ba9839
Extracted key_node_compare from tree to tidy a bit the implementation and ease maintenance.
2013-12-24 18:58:01 +01:00
Ion Gaztañaga
ed0704797d
Refactored tree cloners into a single standalone class to avoid unnecessary instantiations and simplify maintenance.
2013-12-24 12:58:28 +01:00
Ion Gaztañaga
41c2056ec6
- Modified relational operators to be friend inline definitions. This allows compilation checking when instantiating classes, avoids predeclarations and results in less verbose code.
...
- First to make associative containers' tree implementation configurable.
2013-12-23 23:34:28 +01:00
Ion Gaztañaga
f2947c115e
Changes during Git migration:
...
- Added Extended Allocator support for Boost.Container.
- Improved Doxygen generated reference
- Fixed ticket #9338 ("VS2005 compiler errors in swap() definition after including container/memory_util.hpp")
2013-12-23 10:47:20 +01:00
Ion Gaztañaga
b1d4ef3a2e
Fixes #9338
...
[SVN r86748]
2013-11-18 09:32:44 +00:00
Ion Gaztañaga
332ab85387
Fixed typo causing errors in clang builds.
...
[SVN r86046]
2013-09-30 04:48:56 +00:00
Ion Gaztañaga
62227ae741
Fixed typo causing errors in clang builds.
...
[SVN r86045]
2013-09-30 04:47:29 +00:00
Ion Gaztañaga
59c5ed7781
Fixed error in default_init_allocator, it should not construct objects, only allocate raw memory.
...
[SVN r85999]
2013-09-29 11:39:34 +00:00
Ion Gaztañaga
232e18956a
Fixed error for test_allocator::max_size(), now returns std::size_t(-1)
...
[SVN r85998]
2013-09-29 11:38:47 +00:00
Ion Gaztañaga
3921e08520
Tagged vector_alloc_holder constructors that allocate but don't initialize memory to improve maintainability.
...
[SVN r85997]
2013-09-29 11:37:30 +00:00
Ion Gaztañaga
5b9b2c26dc
Implemented 2x grow factor for vector capacity
...
[SVN r85996]
2013-09-29 11:36:06 +00:00
Ion Gaztañaga
254095432e
Default initialization for vector-like containers
...
Complexity guarantees for associative container constructors and ordered input ranges
Fix for #9166
Added benchmark for associative containers
Removed check for old MSVC compilers and #pragma once.
[SVN r85970]
2013-09-26 21:35:57 +00:00
Ion Gaztañaga
14f092ab00
Default initialization for vector-like containers
...
Complexity guarantees for associative container constructors and ordered input ranges
Added benchmark for associative containers
Fixes #9166
[SVN r85964]
2013-09-26 18:05:25 +00:00
Stephen Kelly
59b2793df7
Remove obsolete MSVC check from pragma guard
...
git grep -h -B1 "^#\s*pragma once" | grep -v pragma | sort | uniq
is now clean.
[SVN r85952]
2013-09-26 13:02:51 +00:00
Stephen Kelly
eb4b320fed
Container: Fix two pragma guards.
...
Fix typo in the MSC_VER macro check
[SVN r85923]
2013-09-25 21:17:34 +00:00
Ion Gaztañaga
11ba31a353
Last merge for 1.55 (Interprocess)
...
[SVN r85705]
2013-09-16 17:01:45 +00:00
Ion Gaztañaga
a52d0b92cc
Last merge for 1.55 (Container)
...
[SVN r85704]
2013-09-16 17:00:22 +00:00
Ion Gaztañaga
1e4be891d0
Remove unused header.
...
[SVN r85687]
2013-09-15 19:47:36 +00:00
Ion Gaztañaga
a7b88d804c
Fixes #9009
...
[SVN r85660]
2013-09-12 22:00:51 +00:00
Ion Gaztañaga
ed57e6e619
Fixes #9108
...
[SVN r85658]
2013-09-12 21:50:38 +00:00
Ion Gaztañaga
772b568187
Removed SGI copyright as after rewrites it is no longer applicable.
...
[SVN r85628]
2013-09-09 19:36:55 +00:00
Ion Gaztañaga
7d69794f7e
Removed SGI copyright as after rewrites it is no longer applicable.
...
[SVN r85627]
2013-09-09 19:36:10 +00:00
Ion Gaztañaga
5ddef213a2
Removed SGI copyright as after rewrites it is no longer applicable.
...
[SVN r85626]
2013-09-09 19:27:42 +00:00
Ion Gaztañaga
5a4073434b
Removed SGI copyright as after rewrites it is no longer applicable.
...
[SVN r85625]
2013-09-09 19:26:50 +00:00
Ion Gaztañaga
afd2b24b3b
Merged Container to the release branch
...
[SVN r85614]
2013-09-08 19:29:06 +00:00
Ion Gaztañaga
3e945acc9b
Fixes #9092
...
[SVN r85612]
2013-09-08 18:58:21 +00:00