Ion Gaztañaga
17012d5aae
Split lower_bound/upper_bound to its own header
2022-05-03 22:59:44 +02:00
Ion Gaztañaga
208df9f3c3
Use std::iterator_traits for C++20 as this version it's too complicated to be emulated by the library.
2022-01-12 00:57:39 +01:00
Ion Gaztañaga
777ec2ccb6
addressof.hpp include was missing
2021-12-30 12:48:35 +01:00
Ion Gaztañaga
9505c4cc59
Merge branch 'develop' of github.com:boostorg/move into develop
2021-12-26 22:12:47 +01:00
Ion Gaztañaga
4335c7874a
Fix -Wshadow warnings
2021-12-26 22:12:32 +01:00
Marek Kurdej
73c843cac4
Include <algorithm> when BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE is defined.
2021-12-10 09:36:04 +01:00
Ion Gaztañaga
a51c5cc218
Fixes #45 ("Sort/merge bugs that affect boost::container::flat_map")
2021-11-03 15:44:44 +01:00
Ion Gaztañaga
55bbf331b0
Support Clang's -Wconversion -Wfloat-conversion -Wsign-conversion with -Werror
2021-10-20 00:16:34 +02:00
Ion Gaztañaga
82dfdf8e78
Fixes #44 ("Unused local type error with warnings-as-errors=on variant=release")
2021-10-19 16:12:10 +02:00
Ion Gaztañaga
2af840afc1
Support GCC's -Wconversion -Wfloat-conversion -Warith-conversion -Wsign-conversion warnings.
2021-10-16 15:36:46 +02:00
Ion Gaztañaga
122a84b366
Remove -Wconversion warnings
2021-10-05 23:30:54 +02:00
Ion Gaztañaga
e4c47fcb90
- Remove config_begin.hpp/config_end.hpp includes in tests to avoid disabling warnings.
...
- Fixes #30 ("(void) C-cast is a non-portable way of suppressing compiler warnings").
2020-10-20 11:28:27 +02:00
Ion Gaztañaga
c283a2f123
Fixes #26 ("Invalid iterator increment/decrement in the last iteration of adaptive_sort_combine_blocks")
2019-04-24 20:59:00 +02:00
Ion Gaztañaga
bfdfca0b88
Fixes Issue #25
2019-04-08 00:32:28 +02:00
Romain Geissler
68d57d8cab
Fix gcc 9 deprecated copy warnings in antistable.
2019-03-22 10:34:14 +00:00
Ion Gaztañaga
756c964798
Fix issue #81 from Interprocess, self-moving range was corrupting range merging
2019-03-21 23:49:54 +01:00
Ion Gaztañaga
10074dc835
Optimize sequence generation and add STL-like adaptive algorithms to the benchmark.
2018-12-31 01:02:40 +01:00
Ion Gaztañaga
aa04994c5b
Improve adaptive_merge: reduce ranges before merging and optimize buffer usage.
2018-12-31 01:01:06 +01:00
Ion Gaztañaga
580ec87d09
Fix bug in merge_blocks_bufferless and improve bufer performance with buffer_and_update_key
2018-12-31 00:56:51 +01:00
Ion Gaztañaga
df08df2d9d
Add merge_adaptive_ONlogN for tests
2018-12-31 00:52:38 +01:00
Ion Gaztañaga
fcd33baf1f
Add stable_sort_adaptive_ONlogN2 for tests.
2018-12-31 00:51:49 +01:00
Adam Shapiro
14f29a19f1
Corrected no_exceptions_support.hpp include.
...
This file appears to have been moved from the detail module to the
core module on 6/2014 in core commit 60c9a35d8 (detail commit
099854de). It appears that some package managers' Boost distributions
have duplicate copies of the file to work around the error.
2018-08-01 13:26:50 +00:00
Ion Gaztañaga
ddeb234127
Fix corner case when calculating whether external indexes can be used when merging. "supports_aligned_trailing" should not take into account that the first range includes n_keys.
2018-06-27 16:55:14 +02:00
Ion Gaztañaga
f76b4963b5
Optimize case with 256 keys or less.
2018-04-29 12:02:07 +02:00
Ion Gaztañaga
e1eec15b1a
- Add heap_sort and pdqsort to the benchmark.
...
- Refactor adaptive_sort and adaptive_merge.
2017-12-31 19:32:32 +01:00
Ion Gaztañaga
67d3dbe41b
ADd new set_difference algorithm and tests.
2017-12-26 21:55:54 +01:00
Ion Gaztañaga
5c463507db
Qualify boost::move calls to avoid ADL ambiguities
2017-12-26 21:55:14 +01:00
Ion Gaztañaga
fcf217b8ec
Git Issue #15 : Incorrect merge in adaptive_merge when the number of unique items is limited
2017-10-07 14:35:22 +02:00
Ion Gaztañaga
6cb4f456d1
Correct bug in op_buffered_partial_merge_to_range1_and_buffer which assumed first2 and *firstb are the same type.
2017-09-10 02:37:54 +02:00
Ion Gaztañaga
7c6e036240
Disable adl for iterator_to_raw_pointer
2017-04-07 16:02:33 +02:00
Ion Gaztañaga
a70bbaa0e0
Support non raw pointer auxiliary memory.
2017-04-06 22:53:10 +02:00
Ion Gaztañaga
99f3f04d04
Add forceinline
2017-04-06 22:10:28 +02:00
Ion Gaztañaga
de55af3cbb
Fixed adaptive_sort/merge bugs for stability.
2016-11-12 18:58:16 +01:00
Ion Gaztañaga
833e507326
Added cache usage to selection sort when external buffer is available. Refactored merge to right using reverse iterators.
2016-05-13 00:34:40 +02:00
Ion Gaztañaga
5a118de803
Added recursive inplace_stable_sort implementation
2016-05-13 00:28:29 +02:00
Ion Gaztañaga
75983a43ce
Added "negate" functor and merge_bufferless_ONlogN implementation
2016-05-13 00:26:54 +02:00
Ion Gaztañaga
6e07bb846c
Add three-way operations to move_op & swap_op
2016-05-13 00:22:20 +02:00
Ion Gaztañaga
122916d820
Removed tabs.
2016-03-23 22:11:25 +01:00
Ion Gaztañaga
cae8d2dda3
Refactored and documented the sort and merge algorithm
2016-03-23 22:11:06 +01:00
Ion Gaztañaga
d5981c52a9
Add experimental adaptive_merge/sort functions
2016-02-23 13:17:12 +01:00