Ion Gaztañaga
f0736ba73a
Use new "data" member char array in aligned_storage::type for placement new, to avoid breaking strict aliasing.
2018-01-30 14:20:52 +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
fa2494631a
Use namespace dtl instead of container_detail to avoid excessively long symbol names.
2017-11-07 00:51:46 +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
d5aede745e
Unify std::binders and lambdas with custom binders
2017-05-26 22:31:26 +02:00
Daniela Engert
36c334f414
replace deprecated/removed C++98 binders by equivalent lambda expressions.
...
Signed-off-by: Daniela Engert <dani@ngrt.de >
2017-04-28 19:15:58 +02:00
Ion Gaztañaga
3516da36b0
Doxygen documentation fixes
2017-04-08 00:17:23 +02:00
Ion Gaztañaga
1d727753e2
Use directly boost::movelib::to_raw_pointer/iterator_to_raw_pointer
2017-04-07 16:07:00 +02:00
Ion Gaztañaga
ce5996c9bd
Cosmetic indentation
2017-02-23 19:55:41 +01:00
Ion Gaztañaga
08cce5ebe5
Update basic_string with missing C++11 and C++17 interfaces:
...
- Default npos arguments in append, insert, compare
- Initializer list support
- Non-const data()
2017-02-21 23:08:11 +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
Marshall Clow
fde7e1fbdd
Add support for boost::string_view into container::basic_string
...
Conversion from a `basic_string` to a `string_view`, and make all the comparisons work.
Ion - if you like this, I'll work up some tests, too.
2017-02-13 11:35:27 -08: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
2a04243de7
Add safety assertion
2016-06-25 11:05:07 +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
3f4a5dec6e
Add some C++1 missing functions to string and a couple of debug assertions
2015-09-18 14:38:38 +02:00
Ion Gaztañaga
c6a5f248c8
Separated constructors of default constructed allocators
2015-09-07 19:07:05 +02:00
Ion Gaztañaga
4f9d397507
Simplified swapping
2015-06-04 11:42:27 +02:00
Ion Gaztañaga
6477543f3b
Updated to new meta-functions reused from Intrusive/Move
2015-04-14 15:21:46 +02:00
Ion Gaztañaga
10d027aa9c
Include boost/config.hpp before testinG BOOST_HAS_PRAGMA_ONCE.
2015-02-02 15:26:53 +01:00
Ion Gaztañaga
b786c8f716
Replaced BOOST_CONTIANER_NOEXCEPT with BOOST_NOEXCEPT
2015-01-28 22:11:00 +01:00
Ion Gaztañaga
9fede24d7e
Replace BOOST_MOVE_IMPDEF with BOOST_CONTAINER_IMPDEF
2015-01-26 00:33:40 +01:00
Ion Gaztañaga
ef7137a945
Replace BOOST_MOVE_IMPDEF with BOOST_CONTAINER_IMPDEF
2015-01-26 00:30:01 +01:00
Ion Gaztañaga
cb732a22be
Replace BOOST_MOVE_IMPDEF with BOOST_CONTAINER_IMPDEF
2015-01-26 00:14:35 +01:00
Ion Gaztañaga
dbafd61d4d
updated move assignments and swap operations to "N4258: Cleaning-up noexcept in the Library, Rev 3" with some customizations.
2015-01-19 00:18:44 +01:00
Ion Gaztañaga
a322203a89
Replaced _MSC_VER with BOOST_HAS_PRAGMA_ONCE before #pragma once.
2015-01-10 12:50:17 +01:00
Ion Gaztañaga
37578ccaa2
New header, minimal_char_traits_header.hpp, to avoid including <string> to use char_traits when possible.
2015-01-04 02:30:57 +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
955248b739
Replace "Allocator" template parameter with "A", according to the standard.
2014-12-11 22:01:58 +01:00
Ion Gaztañaga
32418cab5f
Use boost::adl_move_swap instead of custom swap or std::swap for performance and compatibility reasons.
2014-11-28 15:41:44 +01:00
Ion Gaztañaga
7971dc6602
Refactored uses of <iterator> and <algorithm> to avoid dependencies where possible.
2014-11-26 07:08:06 +01:00
Ion Gaztañaga
d514c1ab66
Refactored comparison functors to reuse compare_functors.hpp classes
2014-11-23 10:07:12 +01:00
Ion Gaztañaga
6f1f162cb3
- Added nth and index_of.
...
- Used BOOST_MOVE_BASE
2014-11-01 20:03:25 +01:00
Ion Gaztañaga
6d034733bd
Added missing #pragma once
2014-10-13 23:26:01 +02: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
3025cc41b6
Replace "boost/move/utility.hpp" with "boost/move/utility_core.hpp" to minimize dependencies.
2014-09-17 23:36:23 +02:00
Ion Gaztañaga
f213f55f20
Includes: Updated detail/xxx.hpp includes to core/xxx.hpp, added some missing move/traits.hpp and removed some unused ones.
2014-09-17 21:49:47 +02:00
Ion Gaztañaga
abc8f80ea6
Remove BOOST_MOVABLE_BUT_NOT_COPYABLE from basic_string_base as it comflicts with is_copy_constructible and other utilities that inspect the internal tag looking for noncopyable types.
2014-08-29 14:19:54 +02:00
Ion Gaztañaga
d849f80ea5
Removed tabs.
2014-07-30 16:32:55 +02:00
Ion Gaztañaga
8c1bfe2881
Removed trailing whitespaces
2014-05-28 15:50:13 +02:00
Ion Gaztañaga
9b25c7134e
* Fixed BOOST_CONTAINER_NOEXCEPT_IF(allocator_traits_type::propagate_on_container_move_assignment) missing ::value
...
* Optimized insert_equal(ordered_range_t,...) and insert_unique(ordered_unique_range_t, ...) for elements to be inserted in the end.
* Added range insertion overload (non-standard extension) to vector taking the number of elements to avoid reiterations with std::distance.
2014-04-23 23:18:18 +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
ba596fc83c
Fixes #9648 , (string construction optimization)
2014-02-11 15:05:35 +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
4872931d29
Documented template parameters.
2014-01-05 22:25:12 +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
5a4073434b
Removed SGI copyright as after rewrites it is no longer applicable.
...
[SVN r85625]
2013-09-09 19:26:50 +00:00