Ion Gaztañaga
0c95d4846f
Fix "count" with heterogeneous lookups in flat_map and flat_set
2019-06-22 10:26:36 +02:00
Jan Eisenhauer
3f09061d78
Remove usage of C++11 features.
2019-06-11 12:04:43 +02:00
Jan Eisenhauer
a6b6f97a50
Solve copy-paste errors.
2019-06-11 11:17:01 +02:00
Jan Eisenhauer
3319fdb0c2
Merge remote-tracking branch 'origin/develop' into patch-1
2019-06-11 11:05:29 +02:00
Jan Eisenhauer
1aa15ead35
Add testcases for heterogeneous lookup with partial keys.
2019-06-11 10:23:13 +02:00
Mitsuru Kariya
f25c767a2b
Fix has_trivial_destructor_after_move
...
Most template type parameters 'Allocator' were modified their default type to void since 1.70.0.
These modifications cause has_trivial_destructor_after_move to compile error or yield wrong result.
So, fix them by changing specializations of has_trivial_destructor_after_move.
2019-06-01 22:36:54 +09:00
Ion Gaztañaga
cb21746b80
Rewrite CTAD and SFINAE-out overloads as the standard requires
2018-11-12 22:52:45 +01:00
Ion Gaztañaga
fe85038ebe
Simplify redundant tested variants in functional tests.
...
Move explicit instantiations from functional tests to "explicit_inst_xxx".
2018-09-25 09:08:24 +02:00
Ion Gaztañaga
139db663a3
* Implemented C++20 contains()
for associative containers as specified in P0458R2.
...
* Fixed serious bug in heterogeneous lookup functions (is_transparent was broken).
2018-08-13 15:36:00 +02:00
Ion Gaztañaga
88f4a245ca
Merge branch 'ctad_testing' of https://github.com/rmpowell77/container into rmpowell77-ctad_testing
2018-05-14 11:52:41 +02:00
Richard Powell
72195ae288
Adding Constructor Template Auto Deduction guides.
2018-05-11 11:35:25 -06:00
Ion Gaztañaga
48c21e3187
Implemented C++14's heterogeneous lookups.
2018-05-01 14:55:24 +02:00
Ion Gaztañaga
6ce2b2d0f8
Add improved range insertion to flat associative containers and improve merge operation for vector.
2017-12-26 22:04:15 +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
9ee836ee3d
Fixes to flat_map when used as an adaptor from regression tests errors in Mingw.
2017-08-28 11:58:43 +02:00
Ion Gaztañaga
c123accab1
Complete support for user-provided containers to flat_[multi]map/set containers, and instantiate them with several container types.
2017-08-28 10:45:29 +02: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
ec91367383
Review all associative containers and implement a different constructor overload to avoid any unnecessary copy construction of the predicate or the allocator.
2017-05-16 16:29:49 +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
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
33b331da38
Reduce redundant instantiations to improve test build times
2016-02-23 13:29:46 +01:00
Ion Gaztañaga
d01cb72b3f
Add iterator tests
2015-04-14 15:03:19 +02:00
Ion Gaztañaga
7239c8e262
Refactor initializer_list tests to avoid code duplication and add some missing initializer_list overload tests
2015-02-27 19:24:46 +01:00
Ion Gaztañaga
6c5e527c60
Improve allocator propagation test with new constructors and refactor code to avoid too many wrappers.
2015-02-26 00:32:32 +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
6f1f162cb3
- Added nth and index_of.
...
- Used BOOST_MOVE_BASE
2014-11-01 20:03:25 +01:00
Ion Gaztañaga
e697122a2c
Updated tests to avoid manual memory management. Replaced with unique_ptr and a reference. Normalized CheckEqualContainers to use references instead of pointers.
2014-09-23 17:30:31 +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
0ccf576872
Updated range insertion code for enhanced performance.
2014-09-17 21:51:38 +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
Robert Matusewicz
cbe191b5e3
add std::initializer_list support to flat_set and flat_multiset
2014-08-28 13:15:14 +02: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
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
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