Commit Graph

1865 Commits

Author SHA1 Message Date
Ion Gaztañaga bc76afeb02 Support for ADL begin/end in C++11 compilers with fallback for C++03 2026-06-15 00:20:58 +02:00
Ion Gaztañaga 11a57d7b2b Add bit count utilities 2026-06-14 01:08:27 +02:00
Ion Gaztañaga b4477fec52 Forward declare from_range_t and avoid using <ranges> 2026-06-13 00:28:50 +02:00
Ion Gaztañaga 8b0cec03f8 Rename hub tests to the existing naming practice 2026-06-12 22:24:26 +02:00
Ion Gaztañaga e33c264ed5 Move bit utilities to its own header 2026-06-12 15:03:39 +02:00
Ion Gaztañaga f5c91a2e9c Use common BOOST_CONTAINER_ASSUME and BOOST_CONTAINER_PREFETCH 2026-06-12 14:43:21 +02:00
Ion Gaztañaga 7976374d58 Implement priv_reset phase B walking from both ends. 2026-06-12 14:33:18 +02:00
Ion Gaztañaga be54566756 Read mask to register in erase to improve aliasing analysis. Implement clear erasing from both ends to hide memory latency 2026-06-12 00:04:25 +02:00
Ion Gaztañaga 176bf09890 Improve benchmark:
- Add clearing
- Add two or thre containers in some test cases to increase benchmarked time
2026-06-12 00:02:52 +02:00
Ion Gaztañaga 0715e0b02c Visual 2022 requires Windows 2022 2026-06-11 23:48:37 +02:00
Ion Gaztañaga b49299ebb3 Document all for_each and for_each_while functions for doxygen/doxybook 2026-06-11 23:40:33 +02:00
Ion Gaztañaga 9c01ab57c8 Replace BOOST_FORCEINLINE with BOOST_CONTAINER_FORCEINLINE like in the rest of the library 2026-06-11 22:25:28 +02:00
Ion Gaztañaga d9ea667a57 Hide internal stuff from doxygen/quickbook 2026-06-11 22:24:13 +02:00
Ion Gaztañaga 74b13b15d4 Hide base classes to doxygen 2026-06-11 22:19:09 +02:00
Ion Gaztañaga 5da699b385 Remove mention to constructible_with_allocator_suffix/prefix 2026-06-11 21:23:25 +02:00
Ion Gaztañaga d06dc29cda Document "relocate_on" options 2026-06-11 21:15:51 +02:00
Ion Gaztañaga 7973ce4643 Increase distance between tables 2026-06-11 21:15:16 +02:00
Ion Gaztañaga 9d8cd3115a Add latest hub benchmark tables to the documentation 2026-06-11 18:38:26 +02:00
Ion Gaztañaga c606ed02c1 Added dedicated impl for whole container for_each_while 2026-06-10 20:53:17 +02:00
Ion Gaztañaga c611f0916a Load to registers original and new mask to avoid memoryo re-load if "destroy" is opaque for some compilers. 2026-06-10 10:06:52 +02:00
Ion Gaztañaga 4c6a88ad83 Add config begin and end headers to disable unwanted warnings 2026-06-09 23:25:26 +02:00
Ion Gaztañaga 9de9e8b8e1 Add telescopic prefetching to nest in several operations 2026-06-09 23:18:21 +02:00
Ion Gaztañaga 1482eff3d8 Implement latest improvements from benchmark 2026-06-09 23:17:56 +02:00
Ion Gaztañaga 193b7c0da4 Optimize priv_reset: iterate each block list without toucing the other list nodes. 2026-06-09 11:03:32 +02:00
Ion Gaztañaga 54b983cdd5 Add latest changes from hub's benchmark improvements 2026-06-09 10:45:49 +02:00
Ion Gaztañaga b74478a0ca Add pragma diagnostic for Clang compilers 2026-06-09 10:45:21 +02:00
Ion Gaztañaga c142b3d983 Fix conversion error 2026-06-09 00:55:33 +02:00
Ion Gaztañaga d2fb49e751 Optimize priv_reset/destruction. Uses 3 iterations, one for each block type (partially filled, empty, full) 2026-06-09 00:47:26 +02:00
Ion Gaztañaga e8680ad1b5 Change hub introduction crediting Joaquín 2026-06-08 00:51:12 +02:00
Ion Gaztañaga 9ae69f30f0 Fix bad doc generation with BoostBook with references with leading "::" qualification ("::boost::container::allocator_traits"). 2026-06-08 00:17:04 +02:00
Ion Gaztañaga 800aaf7ae7 Fix boost::container namespace handling for doxygen in allocator_traits.hpp and small_vector.hpp 2026-06-07 23:43:37 +02:00
Ion Gaztañaga 86786845c2 Unify hub's pmr option to the rest of the library 2026-06-07 23:12:17 +02:00
Ion Gaztañaga 7d302264ff Fix doxygen syntax errors. 2026-06-07 23:11:49 +02:00
Ion Gaztañaga 873adedbd8 Added function descriptions to small_vector and small_vector_base 2026-06-07 21:37:06 +02:00
Ion Gaztañaga 9d03dbaa1d Make iterator comparisons trivial 2026-06-07 21:30:02 +02:00
Ion Gaztañaga 1677c41deb Expanded the slist section 2026-06-07 01:17:46 +02:00
Ion Gaztañaga 58c1a7ab0d Added geomean to hub's summary tables 2026-06-07 01:02:19 +02:00
Ion Gaztañaga 5ff8a462c9 Added mention to std::inplace_vector in static_vector section 2026-06-07 00:53:54 +02:00
Ion Gaztañaga 22337cbc2c Expanded flat_set/map section 2026-06-07 00:42:36 +02:00
Ion Gaztañaga b9f10e7c83 Expand devector doc section. 2026-06-07 00:12:31 +02:00
Ion Gaztañaga 697835c6c5 Micro-optimization for emplace: early load mask into a register in case the compiler does not fully inline construct_or_restore_capacity (e.g. MSVC) 2026-06-06 19:32:38 +02:00
Ion Gaztañaga e5f0a15e30 Add geomean summary tables to hub's performance chapter 2026-06-06 19:30:52 +02:00
Ion Gaztañaga 418577be43 Expand static_vector documentation section 2026-06-06 18:32:51 +02:00
Ion Gaztañaga a481544c5c Expand "small_vector" chapter with example and expected usage 2026-06-06 13:37:02 +02:00
Ion Gaztañaga ca2115baa1 Protect test agains BOOST_NO_EXCEPTIONS 2026-06-06 00:33:50 +02:00
Ion Gaztañaga 6cccfaca5a Fix -Wundef 2026-06-06 00:33:32 +02:00
Ion Gaztañaga 9ea30ca34e Protect example from <= C++11 2026-06-06 00:33:05 +02:00
Ion Gaztañaga 050cf8d856 Make tests compatible with BOOST_NO_EXCEPTIONS 2026-06-06 00:04:04 +02:00
Ion Gaztañaga 55b0e3bdf4 Make hub use Boost.Container's throw_exception mechanism 2026-06-06 00:02:58 +02:00
Ion Gaztañaga 8c3210b0f2 Add hub pretty printers 2026-06-05 23:50:40 +02:00