Commit Graph

2069 Commits

Author SHA1 Message Date
Christian Mazakas
01d508b6af Improve naming in insert_or_assign() 2022-12-13 14:28:19 -08:00
Christian Mazakas
7709950111 Add transparent insert_or_assign() tests 2022-12-13 14:28:19 -08:00
Christian Mazakas
1ede59e662 Improve naming in are_transparent 2022-12-13 14:28:19 -08:00
Christian Mazakas
bf2b521789 Add transparent try_emplace() 2022-12-13 14:28:19 -08:00
Christian Mazakas
ee1515189b Add transparent tests for unordered_map's try_emplace() 2022-12-13 14:28:19 -08:00
Christian Mazakas
eb33ad3e3f Merge pull request #173 from cmazakas/fix/exception-guarantees
Exception Guarantees
2022-12-13 14:22:29 -08:00
Christian Mazakas
0ad6ccb0b9 Update FOA noexcept docs for move assignment, swap 2022-12-13 13:53:29 -08:00
Christian Mazakas
0ab4e12502 Update noexcept tests for new FOA requirements 2022-12-13 13:53:29 -08:00
Christian Mazakas
c8910e8007 Update FOA move assignment operator to uphold the strong guarantee for Hash, KeyEqual 2022-12-13 13:53:29 -08:00
Christian Mazakas
2043f98593 Add strong exception guarantees around Hash, KeyEqual for move_assign_exception_tests 2022-12-13 13:53:29 -08:00
Christian Mazakas
260b573d8d Update FOA implementation to exhibit strong guarantee for Hash, KeyEqual in copy assignment 2022-12-13 13:53:29 -08:00
Christian Mazakas
4ac3dcc90c Update assign_exception_tests to assert strong guarantee around Hash, KeyEqual pairing 2022-12-13 13:53:29 -08:00
Christian Mazakas
75ea43823e Update test Hash, KeyEqual to be nothrow swappable 2022-12-13 13:53:29 -08:00
Christian Mazakas
b1d43d3ca5 Update FOA containers to require nothrow swappability of Hash, KeyEqual members and ensure that throwing assertions uphold strong guarantee 2022-12-13 13:53:29 -08:00
Christian Mazakas
534170a942 Remove foa-related macro used for relaxing invariant checking in check_equivalent_keys 2022-12-13 13:53:29 -08:00
Christian Mazakas
7befee3bd6 Update swap_exception_tests to exclude FOA containers and add test for throwing asserts when comparing allocators 2022-12-13 13:53:29 -08:00
Christian Mazakas
01deb2fd61 Merge pull request #176 from boostorg/feature/foa_fast_copy_fix
feature/foa fast copy fix
2022-12-13 13:52:59 -08:00
joaquintides
91eddbabe8 restricted memcpy to allocators known to not have fancy construct() 2022-12-13 09:35:28 -08:00
Christian Mazakas
47e205487d Fix potential integer overflow in test::hash<int> 2022-12-13 09:35:28 -08:00
Christian Mazakas
2c1c99407e Update copy_tests to test a trivially copyable value_type with an Allocator with defined construct() 2022-12-13 09:35:28 -08:00
joaquintides
6be2bf89b6 Merge pull request #175 from boostorg/feature/optimized_try_emplace
feature/optimized_try_emplace
2022-12-13 09:24:56 +01:00
joaquintides
5eda445db0 optimized try_emplace and extended it for future use in boost::unordered_flat_set heterogeneous insert 2022-12-11 18:49:21 +01:00
Christian Mazakas
63f07daa88 Merge pull request #172 from boostorg/feature/foa_fast_copy
feature/foa fast copy
2022-12-09 10:05:54 -08:00
Peter Dimov
9716731864 Disable benchmark/uint64.cpp under libstdc++ 32 bit 2022-12-03 15:37:22 +02:00
Peter Dimov
0bcd46a485 Use enwik8 instead of enwik9 in benchmarks under 32 bit 2022-12-03 15:32:04 +02:00
Peter Dimov
46a2cd109f Define _SILENCE_CXX20_CISO646_REMOVED_WARNING in benchmarks 2022-12-01 01:34:00 +02:00
Peter Dimov
808f8e659a Remove tsl maps from benchmarks 2022-12-01 01:30:54 +02:00
Peter Dimov
8ed05de91c Add ankerl::unordered_dense::map to benchmarks 2022-12-01 00:50:29 +02:00
Peter Dimov
1a02fca5c4 Add benchmark/.gitignore 2022-11-29 18:14:52 +02:00
Christian Mazakas
d036994237 Merge pull request #165 from cmazakas/fix/msvc-rtc
Add msvc RTC to select test targets
boost-1.81.0
2022-11-28 09:09:14 -08:00
Christian Mazakas
8d4816eac7 Merge pull request #170 from boostorg/feature/foa_data_structure_docs
added data structure docs
2022-11-28 08:45:05 -08:00
joaquintides
46fc4f9f4d typos 2022-11-28 17:42:13 +01:00
joaquintides
725993ab95 typo 2022-11-28 17:37:13 +01:00
joaquintides
ffa5e6f805 typos 2022-11-27 19:39:07 +01:00
Peter Dimov
84206ebf8f Add test_contains, test_count to benchmark/word_count.cpp 2022-11-25 19:05:28 +02:00
Peter Dimov
0398afae9b Add BOOST_FORCEINLINE to unordered_flat_set::contains, unordered_flat_map::contains. Refs #168. 2022-11-25 18:01:39 +02:00
Peter Dimov
79dc3bb6d4 Add BOOST_FORCEINLINE to unordered_flat_set::count, unordered_flat_map::count 2022-11-25 17:57:06 +02:00
Peter Dimov
879de5fab8 Add BOOST_FORCEINLINE to unordered_flat_map::operator[] 2022-11-25 17:50:05 +02:00
Peter Dimov
89ccb49165 Add an iteration step to benchmark/word_size.cpp 2022-11-25 02:05:50 +02:00
Peter Dimov
70a980a980 Add word size count benchmark 2022-11-25 01:49:11 +02:00
Peter Dimov
c895dd7192 Add word count benchmark 2022-11-25 01:28:25 +02:00
Peter Dimov
ea71597053 Remove multi_index from benchmarks 2022-11-25 00:52:31 +02:00
joaquintides
324fa793fd expanded 1.81 release notes 2022-11-24 20:06:18 +01:00
joaquintides
39d53a0bfc added "Open Addressing Implementation" section 2022-11-24 20:06:05 +01:00
Christian Mazakas
20ea4a77a7 Add RTC msvc jobs to GHA CI 2022-11-22 10:33:32 -08:00
Christian Mazakas
53a897008a Add conditional masking to silence msvc RTC failures 2022-11-22 10:26:08 -08:00
joaquintides
ee8f2b991f added CTAD docs (#167)
* added CTAD docs for unordered_map

* added CTAD docs for unordered_multimap

* added CTAD docs for unordered_set

* s/Deduction guides/Deduction Guides

* added CTAD docs for unordered_multiset

* added CTAD docs for unordered_flat_map

* added CTAD docs for unordered_flat_set
2022-11-22 16:39:57 +01:00
Christian Mazakas
5aff5b943f Fix Missing CTAD (#169)
* Update deduction tests to include missing guides for set

* Add missing deduction guides for set
2022-11-22 16:39:39 +01:00
Peter Dimov
108d4535e0 Merge pull request #161 from cmazakas/fix/ctad
Complete deduction tests, implement guides for all containers
boost-1.81.0.beta1
2022-11-08 15:27:27 +02:00
Christian Mazakas
2102031b93 Implement deduction guides for unordered_flat_set 2022-11-07 15:55:29 -08:00