Commit Graph

1466 Commits

Author SHA1 Message Date
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
Ion Gaztañaga
a8386f221e Fixed forward declaration of nest 2026-02-11 12:07:35 +01:00
Ion Gaztañaga
078fb8671e Added, for testing and comparison and benchmarking purposes, experimental "nest" container under "experimental" folder, a C++03 backport and adaptation to use Boost.Container internals of Joaquín López Muñoz's "hub" container proposal (https://lists.boost.org/archives/list/boost@lists.boost.org/thread/6YXMHMARNAEFTGBTZYYAETCAYCYHHKQP/). 2026-02-11 12:05:12 +01:00
Ion Gaztañaga
a26df87bcf Added, for testing and comparison purposes, experimental "nest" container under "experimental" folder, a C++03 backport and adaptation to use Boost.Container internals of Joaquín López Muñoz's "hub" container proposal (https://lists.boost.org/archives/list/boost@lists.boost.org/message/KS67XSLDY64Q37BDFUAEUXHTQSUL6HC7/). 2026-02-11 11:10:18 +01:00
Ion Gaztañaga
8d23b88feb Change footnote for deque and block_size 2026-02-08 05:20:01 +01:00
Ion Gaztañaga
15d9694ab2 Fix segtor test names 2026-02-08 05:19:45 +01:00
Ion Gaztañaga
d24ff073cf Rename segmented_vector to segtor, to reserve "vector" name to contiguous memory containers. 2026-02-07 15:04:21 +01:00
Ion Gaztañaga
38b65cc842 Add Boost container attributes section 2026-02-06 00:00:55 +01:00
Ion Gaztañaga
1620287965 Clarify the block_size/block_bytes option 2026-02-06 00:00:47 +01:00
Ion Gaztañaga
da8fc460c2 Align code braces for documentation c 2026-02-05 23:55:29 +01:00
Ion Gaztañaga
cd0387b5fc Changed return type of erase/erase_if/unique members of list and slist to size_type to follow C++20 changes to std::list. 2026-02-05 00:29:03 +01:00
Ion Gaztañaga
20591162b0 Include exception handling chapter inside "unique features". 2026-02-04 16:06:19 +01:00
Ion Gaztañaga
fec4f10407 Remove obsolete "main features" and rename it to "unique features" 2026-02-04 16:00:46 +01:00
Ion Gaztañaga
7d1218a477 Move motivation to the introduction and remove outdated known issues 2026-02-04 15:55:46 +01:00
Ion Gaztañaga
d940bf6cbe Remove incorrect allocator management in docs. 2026-02-04 15:36:17 +01:00
Ion Gaztañaga
2b1c08b010 Add "get_segment_size/bytes" to segmented_vector. 2026-02-04 00:27:01 +01:00
Ion Gaztañaga
bfb2563355 Use "get_segment_size/bytes" in deque and its example. 2026-02-04 00:26:25 +01:00
Ion Gaztañaga
ea94858c0a Add "get_segment_size" alias 2026-02-04 00:25:49 +01:00
Ion Gaztañaga
3205bce1b7 Remove experimental warning to segmented_vector 2026-02-04 00:05:33 +01:00
Ion Gaztañaga
0e0e9c51a7 Add segment_size/segment_bytes aliases 2026-02-04 00:04:47 +01:00
Ion Gaztañaga
fe9203f29b Rollback to default cygwin mirro 2026-02-04 00:04:27 +01:00
Ion Gaztañaga
0368520a1e Try multiple cygwin mirrors 2026-02-03 23:01:02 +01:00
Ion Gaztañaga
8ed60bcbe1 Protect CTAD from old clang compilers that suffer from ICE 2026-02-03 15:50:39 +01:00
Ion Gaztañaga
65f7bba30d Clean up CTAD code formatting 2026-02-03 15:50:14 +01:00
Ion Gaztañaga
f483482d7c Optimize segmented_vector:
- Add option to deque_impl to optimize a "single-ended" version.
- If single_ended, start offset is not stored as member and is assumed to be zero.
- Members with cases for front insertion are modified to avoid those branches.
- If single_ended, only a free slot at the back on the index is needed instead of 2 (front and back)
2026-02-03 02:09:50 +01:00
Ion Gaztañaga
fc89601942 Add more checks in each erase step 2026-02-03 01:53:40 +01:00
Ion Gaztañaga
17c4c688e5 Add expected sizeof test to detect any unwanted growth when refactoring 2026-02-02 23:02:21 +01:00
Ion Gaztañaga
56268e7a18 Add experimental "segmented_vector" container, which is a single-ended version of deque. First implementation is suboptimal. 2026-02-02 12:59:07 +01:00
Ion Gaztañaga
0a78d89b24 Replace BOOST_ASSERT with BOOST_TEST 2026-02-02 12:56:29 +01:00
Ion Gaztañaga
aec7dfbaae Rename "deque" instances with "cont" to be able to easily diff tests and see differences between container tests 2026-02-01 21:54:16 +01:00
Ion Gaztañaga
56b4ccac37 Extract deque implementation to a deque_impl class in order to reuse that class for new containers 2026-02-01 21:53:31 +01:00
Ion Gaztañaga
eabba274a2 Fix documenation to state begin() is also amortized constant-time for deque. 2026-01-31 16:24:34 +01:00
Ion Gaztañaga
9e2afe85ad Add "inline_chars" option to basic_string 2026-01-24 23:29:36 +01:00
Ion Gaztañaga
06cdd2fc4a Make customization example more clear with a heading before each option 2026-01-24 22:53:42 +01:00
Ion Gaztañaga
34bdb94986 Add documentation chapter and example code for string options. 2026-01-24 17:12:47 +01:00
Ion Gaztañaga
11f13e8d7e Add warning to stored_size option 2026-01-24 17:12:20 +01:00
Ion Gaztañaga
7adef4f425 Use SFINAE to avoid calling iterator-range functions when trying to call size + value constructors 2026-01-24 17:11:34 +01:00
Ion Gaztañaga
d4e38179fc Add options "stored_size" and "growth_factor" options to string. Make string's default growth factor the same as vector's (60%) 2026-01-24 11:08:28 +01:00
Ion Gaztañaga
6689e38a35 Make boost_cont_allocation_command compile under non C99 compilers (e.g. MSVC 2010) 2026-01-24 11:06:04 +01:00
Ion Gaztañaga
f2c1b10bc9 Remove unneded "typename" to avoid warnings 2026-01-24 11:05:29 +01:00
Ion Gaztañaga
da579be9c1 Avoid priv_set_storage since storage is only stored in long representation 2026-01-23 22:51:56 +01:00
Ion Gaztañaga
d60d8d1e21 Correct dlmalloc_allocation_command arguments are bytes, not objects 2026-01-23 00:37:55 +01:00
Ion Gaztañaga
4f449051f0 Rollback clang's _NonNull attribute, too many warnings in older compilers. Replaced with BOOST_ASSERT null checks and added some corner cases to the test-suite. 2026-01-23 00:18:46 +01:00