Commit Graph

179 Commits

Author SHA1 Message Date
Ion Gaztañaga
ecd85ce164 Add changelist for GitHub #64 ("Fix splice for slist") 2017-12-20 13:12:13 +01:00
Ion Gaztañaga
2802a1f50d - Add configuration options to vector
- Cleanup tree configuration options
2017-12-10 23:33:41 +01:00
Ion Gaztañaga
f49e5d0ad1 Fixes #59 2017-10-20 00:32:09 +02:00
Ion Gaztañaga
2a7b5a70a5 Closes #58 ("Comparing strings does not compile in gcc 7+ in C++17 mode") 2017-10-19 21:53:37 +02:00
Ion Gaztañaga
6a9e46ed6e Update changelog with GitHub #54 Pull request. 2017-09-10 02:09:59 +02:00
Jonathan Wakely
9115cf12d5 Fix typo in introduction 2017-09-06 16:32:27 +01:00
Ion Gaztañaga
2297f6af72 Modify flat associative containers to be adaptors if the allocator argument is a container. This allows using stable_vector, small_vector, static_vector as underlying containers. 2017-08-27 12:40:15 +02:00
Ion Gaztañaga
38ab3c8582 Update changelog with Git Pull #51 2017-06-06 14:45:47 +02:00
Ion Gaztañaga
d5aede745e Unify std::binders and lambdas with custom binders 2017-05-26 22:31:26 +02:00
Ion Gaztañaga
9c09a0cbc7 Update changelog 2017-05-24 23:06:20 +02:00
Ion Gaztañaga
d6749960fc Implement extract_sequence and adopt_sequence for flat ordered associative containers 2017-04-05 16:06:31 +02:00
Ion Gaztañaga
e919196b8c Fix GitHub Pull #46: "Fix use of propagate_on_container_swap" 2017-03-28 13:40:08 +02:00
Ion Gaztañaga
99488659ec Update changelog with ticket #12915 2017-03-28 12:51:33 +02:00
Ion Gaztañaga
1261ac3308 Fix emplace_back return type also in compilers without variadic templates. Update changelog. 2017-02-24 22:07:20 +01:00
Ion Gaztañaga
865c69bab7 Changed string_view interoperability to a templated solution in order to support also std::string_view.
Added missing members and testcases.
2017-02-21 14:27:18 +01:00
Ion Gaztañaga
79f5977688 Fixes Ticket #12749 container::pmr::polymorphic_allocator compilation error 2017-01-12 14:49:31 +01:00
Ion Gaztañaga
5e4a107e82 Fixes Ticket #12534: flat_map fails to compile if included after type_traits is instantiated under gcc 2016-11-25 23:56:33 +01:00
Ion Gaztañaga
c54237a98b Update changelog for 1.63 2016-11-13 17:49:05 +01:00
Ion Gaztañaga
29b16f1697 Add missing test 2016-09-05 14:58:01 +02:00
Ion Gaztañaga
f540b83ccd * Implemented merge operations for associative containers.
* Update tree-based containers to changes done in Intrusive internal utilities in order to fix Trac 12432.
2016-09-03 00:03:42 +02:00
Ion Gaztañaga
0617d0e538 Implemented P0084R2 (Emplace Return Type) 2016-08-29 16:53:44 +02:00
Ion Gaztañaga
4298d1984b * Add missing extract() and insert(node_type) funtion to associative containers.
* Simplify select1st
2016-08-29 00:06:57 +02:00
Ion Gaztañaga
1467c51a4e Implemented missing try_emplace member for maps. 2016-08-26 01:47:32 +02:00
Ion Gaztañaga
79a75f470e Add piecewise_construct construction to internal pair. 2016-08-23 02:14:19 +02:00
Ion Gaztañaga
2d6f781a2f Implemented "insert_or_assign" for map-like containers. 2016-08-18 20:29:04 +02:00
Ion Gaztañaga
fb1be6fa75 Fix Trac #12117 ("flat_set constructor with ordered_unique_range") adding checks to constructors in debug mode
Fix typos on value_type checks in flat_[multi]map.
2016-08-15 23:22:57 +02:00
Ion Gaztañaga
d5adae2eda Fixes Trac #11802 ("Incorrect ordering after using insert() with ordered_range_t on a flat_multiset with a non-default sort order") 2016-08-12 00:43:16 +02:00
Ion Gaztañaga
b13ba0f911 Fixed Trac #9481 ("Minor comment typo in Boost.Container") 2016-08-11 11:25:11 +02:00
Ion Gaztañaga
37c1558a81 Fixed Trac #12256 (set<std::pair<int,int>>::insert cause compilation error in debug configuration in Visual Studio 2012) 2016-08-09 00:59:39 +02:00
Ion Gaztañaga
4122e722a4 Added constant static_vector<>/small_vector::static_capacity to use the configured capacity in constant expressions. 2016-08-03 00:18:11 +02:00
Ion Gaztañaga
649aba461e Fixes Trac #12296 ("boost::container::{deque,string} combine for a memory leak"). The use of trivial_destructor_after_move was incorrect in several contexts. 2016-08-02 00:49:38 +02:00
Ion Gaztañaga
225e2da77e Revised noexcept expressions of default and move constructors in all containers. 2016-08-01 23:49:51 +02:00
Ion Gaztañaga
7e232bbc19 Fully qualified "unique" call to avoid ADL ambiguities with some older compilers. 2016-06-28 11:53:13 +02:00
Ion Gaztañaga
b888d2ae47 Fixes Trac #12183 (GCC 6.1 thinks boost::container::string violates strict aliasing) 2016-05-16 16:59:25 +02:00
Ion Gaztañaga
132e57a348 Fixes Trac #12177 ("vector::priv_merge uses unqualified uintptr_t") 2016-05-13 23:50:34 +02:00
Ion Gaztañaga
873daf9a0c Fixed bug Trac #11170 2016-05-13 22:17:03 +02:00
Ion Gaztañaga
3e82a27917 Fixes Trac #11912: "flat_map use of vector::priv_forward_range_insert_expand_backwards may cause move with same source" 2016-02-24 22:27:53 +01:00
Ion Gaztañaga
310d8eaf10 Fixed Trac #11957: "static_vector::max_size() is higher than the capacity" 2016-02-24 14:45:44 +01:00
Ion Gaztañaga
a7158c7975 Fixed Trac #12014: "boost::container::set can not insert const (ref) range" 2016-02-24 10:13:07 +01:00
Ion Gaztañaga
b436c91590 Fix Trac #11866: small_vector does not have range constructor. Added all missing constructors to small vector 2015-12-25 13:27:30 +01:00
Ion Gaztañaga
641d1a5d5a small_vector: Added copy/move constructor/assignments from small_vector_base 2015-12-24 13:46:00 +01:00
Ion Gaztañaga
a3262c0ae7 Fix for Trac #11820 ("compiler error when using operator[] of map") 2015-12-24 01:14:10 +01:00
Ion Gaztañaga
f1dbddc704 Update changelog with Github #33. 2015-12-23 10:31:40 +01:00
Ion Gaztañaga
7dbc9b43e6 Updated change log with Trac #11856 2015-12-23 10:25:36 +01:00
Ion Gaztañaga
c4c237fabc update changelog with PR#29 2015-10-24 21:40:51 +02:00
Ion Gaztañaga
addd6ba619 Updated changelog with GitHub Pull #31 2015-10-18 20:09:34 +02:00
Ion Gaztañaga
f8a4f01a86 Fixed Trac #11698 ("Missing return statement in static_storage_allocator") 2015-09-30 22:39:44 +02:00
Ion Gaztañaga
79274e4aae Fixed Trac #11697 ("Wrong initialization order in tuple copy-constructor") 2015-09-30 22:35:17 +02:00
Ion Gaztañaga
85b2ed509b Added debug assertions via BOOST_ASSERT to check preconditions in several members. All checks are O(1) 2015-09-18 14:39:17 +02:00
Ion Gaztañaga
7071fbc7d8 Fixed unused argument warning in swap_resources().
Fixed changelog copy-paste error.
2015-09-10 12:09:08 +02:00
Ion Gaztañaga
f1f97518d3 Fixed Track #11627 and #11628 2015-09-09 09:48:09 +02:00
Ion Gaztañaga
33d2f0f7af Add Polymorphic Memory Resource utilities and rework the separately compiled library:
- Dlmalloc's based C function are boost_cont_xxx no longer exported, but wrapped into C++ linkage dlmalloc_xxx functions to effectively reuse Boost's dynamic library and autolink machinery instead of rewriting machinery to compile the C source file.
- Refactored scoped_allocator_adaptor's construct logic as it was shared with polymorphic allocator's one. Moved common logic to detail/dispatch_uses_allocator.hpp. Refactored also scoped_allocator_adaptor test utilities to be reused with polymorphic_allocator tests.
2015-09-07 19:16:46 +02:00
Ion Gaztañaga
5d35aec80f Fixed Trac #11339 ("VC12 LNK2005 error with boost::container::adaptive_pool") 2015-06-13 16:44:46 +02:00
Ion Gaztañaga
61a2f49ef2 Fixes Trac #11388 (boost::container::list::emplace_back broken on Visual Studio 2010) 2015-06-12 23:51:58 +02:00
Ion Gaztañaga
3501c604c5 Update 1.59 changelog 2015-06-09 22:39:05 +02:00
Ion Gaztañaga
5de81689e4 Update changelog 2015-06-04 11:45:06 +02:00
Ion Gaztañaga
64c2e787f7 Update changelog with last-minute 1.58 bugs 2015-04-14 15:03:44 +02:00
Ion Gaztañaga
02e8762afe Update small_vector documentation + update links to Howard Hinnant's papers. 2015-03-08 08:53:23 +01:00
Ion Gaztañaga
8cdfec7890 Add experimental small_vector class 2015-02-26 00:35:59 +01:00
Ion Gaztañaga
f47bf08ccc Try to definitely fix Trac Issue #9931 (flat_map::insert(ordered_unique_range_t...) fails with move_iterators") 2015-02-03 16:09:47 +01:00
Ion Gaztañaga
5455eb58bf Changelog updated with LWG #2210 2015-02-03 14:25:44 +01:00
Ion Gaztañaga
22f1d32f7b Addd new constructors to containers, according to C++14's new constructors taking allocator arguments. 2015-02-03 14:08:29 +01:00
Ion Gaztañaga
f0f35a830d Added C++17's is_always_equal to allocator_traits and scoped_allocator_adaptor 2015-01-18 11:22:52 +01:00
Ion Gaztañaga
360957a797 Massive dependency reduction. Removed dependency on several boost libraries and standard C++ headers. 2015-01-02 19:34:21 +01:00
Ion Gaztañaga
1d38ecfd10 Fixed #10790 (Trac): long long errors from container 2014-11-22 12:26:35 +01:00
Ion Gaztañaga
e6d19fb408 Fixed in bug in vector::operator== 2014-11-09 21:06:36 +01:00
Ion Gaztañaga
652b870088 Merge branch 'develop' of github.com:boostorg/container into develop 2014-11-01 20:04:18 +01:00
Ion Gaztañaga
6f1f162cb3 - Added nth and index_of.
- Used BOOST_MOVE_BASE
2014-11-01 20:03:25 +01:00
Daniel James
379389867a Remove invalid character that was breaking the documentation build.
UTF-8 should be used in quickbook.
2014-10-17 19:38:03 +01:00
Ion Gaztañaga
3af96e0801 Implements N3644.
- Avoid deriving from std::iterator_traits as iterators become too fat.
- Use intrusive's reverse_iterator some std::reverse_iterator-s don't value initialize base.
2014-09-24 16:09:56 +02:00
Ion Gaztañaga
4d5b9a80cf Added life cout and double destruction assertions to test integer-like classes.
Changelog updated with double destruction bugs fix.
2014-09-23 17:29:26 +02:00
Ion Gaztañaga
44d326e159 Added explicit guarantee for iterators to containers of incomplete types. Added iterators to the recursive container example. 2014-09-22 22:45:55 +02:00
Ion Gaztañaga
aae1f9df27 Fixed compilation error in C++03 compilers and updated changelist with initializer_lists. 2014-08-29 12:52:41 +02:00
Ion Gaztañaga
f1b3535e7c - Documented N1780 guarantees for associative containers 2014-08-15 17:20:18 +02:00
Ion Gaztañaga
d92b97e2c8 Added non-conformance chapter about self-referencing operations. 2014-08-14 00:25:53 +02:00
Ion Gaztañaga
8337efdfd7 Updated changelog 2014-08-02 10:15:55 +02:00
Ion Gaztañaga
941eb27e1d Updated and documented non-standard optimizations based on memset 2014-07-20 14:43:12 +02:00
Ion Gaztañaga
4ea1e46fcd Replaced several "addressof()" uses with the more correct "iterator_to_raw_pointer".
Updated changelist with bug #9637.
2014-06-14 22:50:53 +02:00
Ion Gaztañaga
9c582e906a Documentation fixes:
* allocator_traits was not properly placed in namespace boost::container.qbk
* Fixed some typos
* Added "Known Issues" section with move emulation problems.
2014-06-13 10:49:09 +02:00
Ion Gaztañaga
790a8798d4 Fixes Trac issue #9801 ("I can no longer create and iterator_range from a stable_vector") 2014-06-06 13:21:03 +02:00
Ion Gaztañaga
8c1bfe2881 Removed trailing whitespaces 2014-05-28 15:50:13 +02:00
Ion Gaztañaga
a67982bd07 Fixes #9955 (Using memcpy with overlapped buffers in vector) 2014-04-26 13:14:36 +02:00
Ion Gaztañaga
5013f3fd69 Fixes #9931 ("flat_map::insert(ordered_unique_range_t...) fails with move_iterators") 2014-04-21 21:23:24 +02:00
Ion Gaztañaga
0b720f82b4 Fixed #9916: "Allocator propagation incorrect in the assignment operator of most".
Fixed #9932: "Missing assignment operator from related static_vector".
Added missing details from issue #9915
2014-04-21 13:59:49 +02:00
Ion Gaztañaga
bffd6c036c Fixes #9915.
Uses intrusive is_convertible in MSVC compilers.
Removes some throw conditions in the documentation produced by the allocator copy constructor (as the standard requires no-throw guarantee for those).
2014-04-17 00:06:59 +02:00
Ion Gaztañaga
4da327f7b1 Documented vector's weaker exception guarantees. 2014-04-16 14:44:15 +02:00
Ion Gaztañaga
ba596fc83c Fixes #9648, (string construction optimization) 2014-02-11 15:05:35 +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
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
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
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
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
3e945acc9b Fixes #9092
[SVN r85612]
2013-09-08 18:58:21 +00:00
Ion Gaztañaga
027c92fad3 Fixes #9064
[SVN r85537]
2013-08-31 21:49:26 +00:00
Ion Gaztañaga
3d249fa728 Implemented SCARY iterators for all containers
[SVN r85308]
2013-08-11 21:36:19 +00:00
Ion Gaztañaga
d91dc0059b Fixes #8269
[SVN r85297]
2013-08-10 22:58:27 +00:00
Ion Gaztañaga
db9dfed107 Test update for #8892 + changelog updated.
[SVN r85169]
2013-07-29 21:40:30 +00:00
Ion Gaztañaga
8b60445c98 Trivial fix for empty ranges in node_alloc_holder
[SVN r84901]
2013-06-24 19:11:43 +00:00
Ion Gaztañaga
b0f89115b3 Added static_vector to non-standard containers section.
[SVN r84705]
2013-06-08 22:54:27 +00:00