Commit Graph
122 Commits
Author SHA1 Message Date
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 10d027aa9c Include boost/config.hpp before testinG BOOST_HAS_PRAGMA_ONCE. 2015-02-02 15:26:53 +01:00
Ion Gaztañaga fc0bfefab4 Merge branch 'smart-quotes' of https://github.com/yuriks/container into yuriks-smart-quotes 2015-02-01 00:10:39 +01:00
Yuri Kunde Schlesner d6d554d395 Replace "smart quotes" Latin1 characters
They cause MSVC to print warnings every time this file is included if on
a Japanese locale.
2015-01-31 21:00:17 -02: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 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 7635eba375 Typedef'ed allocator_arg_t as "const std::allocator_arg_t &" to improve interoperability between C++11 allocator-aware types. 2015-01-17 19:11:52 +01:00
Ion Gaztañaga 69324174c7 Support types with std::allocator_arg_at with boost::container::scoped_allocator_adaptor 2015-01-11 23:50:58 +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 36c8f81e42 Add placement new operator to avoid <new> unnecessarily. 2015-01-10 10:58:08 +01:00
Ion Gaztañaga 984be81160 Add insert_iterator forward declaration. 2015-01-09 21:19:35 +01:00
Ion Gaztañaga f7cc3c4f74 Removed unused slist.hpp include. 2015-01-08 15:35:43 +01:00
Ion Gaztañaga 2856b89789 Add max_align_t to the namespace. 2015-01-06 22:46:51 +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 ddc89f32d9 Disabled warning #4345 (behavior change: an object of POD type constructed with an initializer of the form () will be default-initialized) 2015-01-04 02:30:19 +01:00
Ion Gaztañaga a369e3c8c5 Avoid instantiating iterator tags to allow iterators that define iterator_categories with forward declared tags. 2015-01-04 02:29:15 +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 456e9fedcb Some adaptations due to internal Intrusive changes. 2014-12-08 15:49:21 +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 afd1c2d266 Use boost::adl_move_swap instead of own swap utility
Imported basic algorithms from Boost.Intrusive
2014-11-26 19:33:27 +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 1d38ecfd10 Fixed #10790 (Trac): long long errors from container 2014-11-22 12:26:35 +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 cc699e956f Updated due to Intrusive detail changes. 2014-10-10 18:23:19 +02:00
Ion Gaztañaga 5d6123152c Removed unneeded includes. Refactores std forward declarations 2014-10-04 09:05:04 +02:00
Ion Gaztañaga d19b012d53 Reduced include dependencies:
- Replaced boost/move/move.hpp with boost/move/utility_core.hpp
- Replaces <new> with placement_new.hpp
- Removed some unneeded std includes.
2014-09-26 08:12:40 +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 be9837fd54 Fix multiple destructor bug, pointer was not incremented in ~scoped_destructor_n() 2014-09-23 16:58:38 +02:00
mikael 59b46cd338 Fixes a small issue that prevented the use of iterators of containers of incomplete types. Added iterators of incomp-types to unit-tests. 2014-09-21 19:46:58 -04:00
Ion Gaztañaga 33c920d435 Removed unneeded includes. 2014-09-21 23:50:40 +02:00
Ion Gaztañaga 76fcab1a09 Use emplace instead or push_back in priv_insert_ordered_range 2014-09-20 17:30:09 +02:00
Ion Gaztañaga d2bd31e4d0 Add new documentation macros and tested in vector. 2014-09-20 17:28:41 +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 0ccf576872 Updated range insertion code for enhanced performance. 2014-09-17 21:51:38 +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 ff6e90a720 Removed incorrect deprecated function warning macros in MSVC compilers. 2014-08-29 12:54:45 +02:00
Ion Gaztañaga 03582c4498 Workaround for MSVC compilers, that fail to properly handle template specializations with constness subtleties. 2014-08-03 22:08:59 +02:00
Ion Gaztañaga fab3df0a04 Added emplace optimization specializations for compilers with rvalue references but without variadic templates (e.g. MSVC10&11) 2014-08-03 11:09:54 +02:00
Ion Gaztañaga 90be67e81f Improved placement proxy to avoid temporary objects when constructing from values from the target type.
Added testcase based on Howard Hinnant's "Insert vs. Emplace" article.
2014-08-02 21:30:39 +02:00
Ion Gaztañaga d849f80ea5 Removed tabs. 2014-07-30 16:32:55 +02:00
Ion Gaztañaga 52af899129 Merge branch 'aix_fix' of https://github.com/ibmsoe/container into ibmsoe-aix_fix 2014-07-30 16:20:15 +02:00
Ion Gaztañaga 941eb27e1d Updated and documented non-standard optimizations based on memset 2014-07-20 14:43:12 +02:00
Axel Ismirlian 960d649e99 Added missing AIX definition for sched.h (previously out of scope). 2014-07-16 15:48:12 -05:00