Commit Graph

1149 Commits

Author SHA1 Message Date
joaquintides
a91efeb237 refactored size_/ml swap 2023-04-20 17:29:21 +02:00
Christian Mazakas
7812b26d3a Add allocator aware move constructors 2023-04-19 15:18:53 -07:00
Christian Mazakas
8bd07e17c3 Add forced inlining to keep msvc benchmarks on par with raw concurrent_table 2023-04-19 10:52:41 -07:00
Christian Mazakas
37edc392a5 Add allocator-aware copy constructor 2023-04-19 09:35:38 -07:00
Christian Mazakas
fb403bc233 Add explicit allocator constructor 2023-04-18 15:36:12 -07:00
Christian Mazakas
910b8de697 Add iterator range + allocator constructor, continue to clean up constructor_tests 2023-04-18 15:11:53 -07:00
Christian Mazakas
a9ad06139e Add move constructor 2023-04-18 12:00:08 -07:00
joaquintides
9a0e5e9ea8 dispensed with std::array 2023-04-15 12:13:40 +02:00
joaquintides
b1a52d0236 explicitly declared guards' copy ctors as it prevents VS from doing spurious copies (!) 2023-04-15 09:51:01 +02:00
joaquintides
1723358298 refactored to deICE Clang<=3.8 and for clarity 2023-04-14 10:48:26 +02:00
joaquintides
0e5ef25a69 added workaround for GCC<=5 having problems with return {...} syntax 2023-04-13 19:31:20 +02:00
joaquintides
ab84a922cf added workaround for lack of std::is_trivially_copy_assignable in GCC<5.0 2023-04-13 13:00:29 +02:00
Christian Mazakas
d8bc38f154 Clean up tag dispatch for group_type copy assignment 2023-04-12 14:41:36 -07:00
Christian Mazakas
d9b62d24dc Begin work on constructors 2023-04-12 12:22:59 -07:00
Christian Mazakas
b771278813 Fix copy assignment warning in gcc 2023-04-12 12:22:38 -07:00
joaquintides
2226a7238d adjusted arg constness in erase and erase_if 2023-04-11 16:32:47 +02:00
joaquintides
00c6a93a56 restored invocability static asserts 2023-04-10 11:03:11 +02:00
joaquintides
c54151769f updated insert_or_assign impls to f-last interface 2023-04-09 21:56:12 +02:00
joaquintides
8a4e987030 made f the last argument in all *_or_[c]visit functions 2023-04-09 20:20:55 +02:00
Christian Mazakas
ed80cb14e2 Add visit_all() 2023-04-07 12:39:39 -07:00
Christian Mazakas
3bd28dc3d7 Implement basic version of single element visitation 2023-04-06 13:42:57 -07:00
Christian Mazakas
e4d2da40f2 Add missing static_assert()s 2023-04-06 09:36:08 -07:00
Christian Mazakas
a004e71dd0 Implement emplace, emplace_or_[c]visit 2023-04-05 13:21:18 -07:00
Christian Mazakas
ddcab1c171 Add impl of try_emplace, try_emplace_or_[c]visit 2023-04-04 15:16:52 -07:00
Christian Mazakas
e3cbf03f47 Commit missing changes to erase_if() 2023-04-03 14:11:51 -07:00
Christian Mazakas
f8fbbc3b76 Add ExecutionPolicy overload of erase_if 2023-04-03 13:15:15 -07:00
Christian Mazakas
52bf2bf7a2 Add insert_or_cvisit() overloads 2023-04-03 08:14:21 -07:00
Christian Mazakas
cf39fc4c38 Implement transparent erase_if, unary erase_if 2023-04-03 08:14:21 -07:00
Christian Mazakas
1309361a02 Remove erroneous move() calls 2023-04-03 08:14:21 -07:00
joaquintides
946491489e added workaround for lack of std::is_trivially_constructible in GCC<5.0 2023-04-01 12:06:39 +02:00
joaquintides
19202d2a8d avoided memset-related GCC warning 2023-04-01 09:09:22 +02:00
joaquintides
3be466966d avoided copy elision for the initialization of an atomic 2023-03-31 19:46:59 +02:00
joaquintides
d22787c218 use memset for group array initialization only when permissible 2023-03-31 19:36:31 +02:00
joaquintides
b86dee9a18 removed BOOST_UNORDERED_EMBEDDED_GROUP_ACCESS support 2023-03-31 18:52:00 +02:00
joaquintides
863984a7c8 fixed erase_if(x,f) return value calculation 2023-03-31 17:28:21 +02:00
joaquintides
e9b3ad4a5f reverted 2023-03-31 13:07:02 +02:00
joaquintides
e00d700457 experiment with unaligned embedded group 2023-03-31 11:32:29 +02:00
Christian Mazakas
53e20a2a1b Add transparent impl of erase() 2023-03-30 12:41:31 -07:00
joaquintides
e86bb5cce2 stylistic 2023-03-30 14:50:19 +02:00
joaquintides
6a4728add0 removed implementation of scoped_bilock copy ctor 2023-03-30 12:39:10 +02:00
joaquintides
f02afbc815 simplified scoped_bilock impl 2023-03-30 12:13:58 +02:00
joaquintides
6399dfd1e4 made erase_if returned count exact 2023-03-30 10:08:38 +02:00
Christian Mazakas
5e316ebc88 Add initial draft of erase() 2023-03-29 15:00:54 -07:00
joaquintides
27b4c62bd2 fixed initialization of concurrent_table:🧵counter 2023-03-29 20:35:48 +02:00
joaquintides
846de7ca82 added cvisit overloads to concurrent_table 2023-03-29 19:17:57 +02:00
joaquintides
62cf58d1ca sprinkled some inlines 2023-03-29 18:29:15 +02:00
joaquintides
4482031329 made concurrent_table::thread_counter static 2023-03-29 16:45:15 +02:00
Christian Mazakas
e4072747bb Implement insert_or_visit() 2023-03-28 14:28:42 -07:00
Christian Mazakas
ce674c8007 Add transparent insert_or_assign 2023-03-27 15:06:28 -07:00
joaquintides
45ebc1e555 fixed call ambiguities in insert_or_visit 2023-03-27 13:39:14 +02:00