Ion Gaztañaga
|
37ad1e7d0d
|
Add segmented_find_if_not algorithm
|
2026-03-16 13:47:25 +01:00 |
|
Ion Gaztañaga
|
484d9c791c
|
Avoid references in stable_partition_shift and stable_partition_scan
|
2026-03-16 00:54:08 +01:00 |
|
Ion Gaztañaga
|
6983125fcb
|
Refactor copy_if test to pass the predicate from outside and reuse code
|
2026-03-16 00:04:08 +01:00 |
|
Ion Gaztañaga
|
69f6f7d2e2
|
Avoid taking by reference InIter2 and use pass/return by value to avoid aliasing problems.
|
2026-03-15 23:56:15 +01:00 |
|
Ion Gaztañaga
|
6af550e851
|
Tidy conditional code
|
2026-03-15 23:55:28 +01:00 |
|
Ion Gaztañaga
|
57e7578def
|
generate_ref should support sentinels
|
2026-03-15 23:47:42 +01:00 |
|
Ion Gaztañaga
|
69242181c4
|
Use forward declared random access iterator from detail
|
2026-03-15 23:47:26 +01:00 |
|
Ion Gaztañaga
|
6449da8e64
|
Refactor segmented_generate_ref to use generate_ref
|
2026-03-15 23:32:09 +01:00 |
|
Ion Gaztañaga
|
e1561323f8
|
Improve performance detecting random access iterators and avoiding checking count on every iteration
|
2026-03-15 23:31:16 +01:00 |
|
Ion Gaztañaga
|
4a3878a8e2
|
Implemente fill and fill_n in terms of generate and generate_n
|
2026-03-15 23:30:51 +01:00 |
|
Ion Gaztañaga
|
f61f3379a5
|
Improve local iterator
|
2026-03-15 23:05:59 +01:00 |
|
Ion Gaztañaga
|
4f133c33c4
|
Reformat is_sorted.
|
2026-03-15 17:20:29 +01:00 |
|
Ion Gaztañaga
|
b213a5a96d
|
Optimize nest_local_iterator comparison (support only same-segment comparison
|
2026-03-15 17:20:03 +01:00 |
|
Ion Gaztañaga
|
74540abf67
|
Avoid aliasing in equal_ref
|
2026-03-15 17:19:27 +01:00 |
|
Ion Gaztañaga
|
82dfcf54be
|
Add segmented algorithms simple benchmark
|
2026-03-14 01:11:11 +01:00 |
|
Ion Gaztañaga
|
40aa14be74
|
Minor tweaks to nest
|
2026-03-14 01:10:50 +01:00 |
|
Ion Gaztañaga
|
ee4d1bb7eb
|
Implement segmented_remove_if as segmented_find_if + segmented_remove_copy_if
|
2026-03-13 23:17:46 +01:00 |
|
Ion Gaztañaga
|
6231b1990e
|
Clean "segmented_find_if" segmented dispatch
|
2026-03-13 23:17:20 +01:00 |
|
Ion Gaztañaga
|
3dae33c40e
|
forceinline equal_to_value basic operations
|
2026-03-13 23:16:56 +01:00 |
|
Ion Gaztañaga
|
52d139a0b5
|
Temporarily use simpler, but segmented_find_if based code for remove_if
|
2026-03-13 15:54:36 +01:00 |
|
Ion Gaztañaga
|
0015930d1a
|
Dispatch some xxx algorithms to their xxx_if counterpart
|
2026-03-13 15:54:03 +01:00 |
|
Ion Gaztañaga
|
bf5248374f
|
Optimized "reverse" algorithms
|
2026-03-12 23:08:06 +01:00 |
|
Ion Gaztañaga
|
ad3db6feec
|
Avoid aliasing in reference passed "count" argument
|
2026-03-12 23:04:11 +01:00 |
|
Ion Gaztañaga
|
345c428f75
|
Erase algorithms with no easy segmentation strategy
|
2026-03-12 23:03:32 +01:00 |
|
Ion Gaztañaga
|
5bed25c4da
|
Put nest iterators outside "nest_detail"
|
2026-03-12 15:40:02 +01:00 |
|
Ion Gaztañaga
|
3e5895285a
|
Rename nest's iterator to "nest_iterator"
|
2026-03-12 14:12:00 +01:00 |
|
Ion Gaztañaga
|
e82af3c973
|
Fix is_segmented_iterator definition in deque_iterator
|
2026-03-12 14:02:03 +01:00 |
|
Ion Gaztañaga
|
e5f2e681b6
|
Add segmented_iterator_traits to nest
|
2026-03-12 14:01:34 +01:00 |
|
Ion Gaztañaga
|
22137e16bd
|
Add experimental segmented algorithms
|
2026-03-10 23:28:26 +01:00 |
|
Ion Gaztañaga
|
6807b47c2e
|
Use BOOST_IF_CONSTEXPR if possible for constant conditions.
boost-1.91.0.beta1
|
2026-02-26 23:35:42 +01:00 |
|
Ion Gaztañaga
|
b7626f8390
|
Improve bench:
- Force inline operations
- Make sure all elements are inserted
- Print initial and final capacities
- Don't reuse the container for each iteration
|
2026-02-25 23:13:00 +01:00 |
|
Ion Gaztañaga
|
3d5ad2303f
|
Avoid additional extra slots for reservable segmented types
|
2026-02-25 23:10:42 +01:00 |
|
Ion Gaztañaga
|
4f196ad71b
|
Try back insertion first.
|
2026-02-25 23:07:38 +01:00 |
|
Ion Gaztañaga
|
733797c5ce
|
Reorder container benchmarks and add size() info to compare it with capacity
|
2026-02-25 00:16:23 +01:00 |
|
Ion Gaztañaga
|
bc531d7430
|
Small fixes to deque_impl
|
2026-02-24 23:59:58 +01:00 |
|
Ion Gaztañaga
|
0e5b465d0d
|
Fix rvref splice overload for C++03 compilers, avoiding infinite recursion
|
2026-02-22 23:25:14 +01:00 |
|
Ion Gaztañaga
|
8bad508361
|
Add missing simple tests for public API methods
|
2026-02-22 19:08:10 +01:00 |
|
Ion Gaztañaga
|
9fa2319339
|
add test for move constructor and move assignment with unequal allocators
|
2026-02-22 17:36:13 +01:00 |
|
Ion Gaztañaga
|
835b212507
|
Refactor several similar functions using Boost.Container's special iterators
|
2026-02-22 17:35:47 +01:00 |
|
Ion Gaztañaga
|
ad878e2c2c
|
Remove unneeded variadic template for value_init_t overload
|
2026-02-22 17:33:56 +01:00 |
|
Ion Gaztañaga
|
689fa2f2ce
|
Make value_init_construct_iterator::operator*() return a value_init_t reference so that it can be intercepted by allocator_traits
|
2026-02-22 17:33:25 +01:00 |
|
Ion Gaztañaga
|
c53dc00f71
|
Add value_init_t overload to make regular implementations for value initialization overloads
|
2026-02-22 17:02:40 +01:00 |
|
Ion Gaztañaga
|
d8a9959360
|
Convert force and force_copy in macros so that it's a no-op for modern compilers.
|
2026-02-21 22:45:06 +01:00 |
|
Ion Gaztañaga
|
67f4bf69a2
|
Add prefetch option
|
2026-02-21 22:43:21 +01:00 |
|
Ion Gaztañaga
|
e2278d3ab6
|
Fixes #332 ("aligned_alloc not available in C++11/14 on XCode 12")
|
2026-02-20 23:19:32 +01:00 |
|
Ion Gaztañaga
|
5b39f2bb37
|
Add Windows MSVC 1.45, Windows-ARM and Linux ARM
|
2026-02-17 22:51:30 +01:00 |
|
Ion Gaztañaga
|
958fe7d326
|
Fixes #330: ("boost/container/detail/pair.hpp: partial specializations of boost::move_detail traits for std::pair break Unity (jumbo)")
|
2026-02-16 22:53:37 +01:00 |
|
Ion Gaztañaga
|
be8fa0ae35
|
Fix incorrect BOOST_MOVE_BASE usage
|
2026-02-13 17:25:20 +01:00 |
|
Ion Gaztañaga
|
db62e4b814
|
Refactor block_base/block to avoid storing the data pointer and make sizeof(next) smaller.
|
2026-02-13 10:11:32 +01:00 |
|
Ion Gaztañaga
|
1a50b78e15
|
Add "store_data_in_block" option to nest
|
2026-02-12 22:42:54 +01:00 |
|