206 Commits

Author SHA1 Message Date
Peter Dimov
0e19223e5b Replace uses of boost::enable_if_t in deduction guides with std::enable_if_t 2023-10-12 13:13:56 +03:00
Christian Mazakas
554ce65a69 Remove unnecessary forced inlining of bool conversion 2023-09-29 10:52:34 -07:00
Christian Mazakas
4fcc6a9cab Manually implement explicit boolean conversion, removing header dependency on Core's polyfill 2023-09-29 08:03:49 -07:00
Christian Mazakas
0d61746fa3 Remove unnecessary requires_cxx11 header 2023-09-29 08:03:11 -07:00
Christian Mazakas
087f2052fc Update include paths to use ContainerHash instead of Functional for hash 2023-09-27 13:03:15 -07:00
Christian Mazakas
777f2084a3 Remove dependency on TypeTraits 2023-09-27 11:44:45 -07:00
Christian Mazakas
33dbd7cd76 Remove dependency on Boost.Move 2023-09-27 11:44:44 -07:00
Christian Mazakas
8f382e874d Remove BOOST_COPYABLE_AND_MOVABLE 2023-09-27 11:44:44 -07:00
Christian Mazakas
0c7b51cc16 Remove BOOST_NO_CXX11_RVALUE_REFERENCES 2023-09-27 11:44:44 -07:00
Christian Mazakas
866ab46385 Remove BOOST_FWD_REF 2023-09-27 11:44:44 -07:00
Christian Mazakas
4cd1827104 Remove BOOST_RV_REF 2023-09-27 11:44:44 -07:00
Christian Mazakas
1d991d065e Remove BOOST_UNORDERED_EMPLACE_LIMIT 2023-09-27 11:44:44 -07:00
Christian Mazakas
f088a5b9b9 Remove usage of boost::forward 2023-09-27 11:44:44 -07:00
Christian Mazakas
59a7fa09ba Remove usage of BOOST_NO_CXX11_HDR_TYPE_TRAITS 2023-09-27 11:44:44 -07:00
Christian Mazakas
8cbd9ad80a Remove BOOST_NO_CXX11_HDR_INITIALIZER_LIST checks 2023-09-27 11:44:44 -07:00
Christian Mazakas
adb91ac06d Replace boost::move with std::move 2023-09-27 11:44:44 -07:00
Christian Mazakas
11322de29f Remove BOOST_CONSTEXPR 2023-09-27 11:44:44 -07:00
Christian Mazakas
aa16d1b8a9 Remove BOOST_NOEXCEPT 2023-09-27 11:44:44 -07:00
joaquintides
ca2a46f290 complied with https://github.com/boostorg/core/commit/5f6fe65 2023-08-25 19:45:16 +02:00
joaquintides
5239b101e2 added serialization support (pending docs and testing) 2023-08-17 10:20:25 +02:00
Christian Mazakas
bf06fa97e3 Add deduction guides 2023-05-17 09:38:29 -07:00
Peter Dimov
dbba3cec7b Add C++03 deprecation notice 2023-03-06 09:43:45 +02:00
Christian Mazakas
6c60524fb7 Implement transparent bucket() 2022-12-13 14:28:19 -08:00
Christian Mazakas
0e980577b0 Add transparent at() 2022-12-13 14:28:19 -08:00
Christian Mazakas
dfbff823a9 Add transparent subscript 2022-12-13 14:28:19 -08:00
Christian Mazakas
0a879c1063 Implement transparent insert_or_assign() 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
530437c21b Implement deduction guides for unordered_[multi]map 2022-11-07 15:55:29 -08:00
Christian Mazakas
4310809025 Implement missing constructors outlined by LWG issue 2713 (#160)
* Harden initializer_list constructor tests

* Add tests for constructors as specified in LWG issue 2713

* Add missing constructors to unordered_flat_map

* Add missing constructors to unordered_flat_set

* Add missing constructors to unordered_[multi]map

* Add missing constructors to unordered_[multi]set
2022-11-05 13:08:29 +01:00
Christian Mazakas
db9d9d1f77 Update implementation to support a default-constructible table and grouped_bucket_array 2022-08-30 15:20:31 -07:00
Christian Mazakas
f9eae4153f Update code to be valid when the internal buckets_ data member is moved-from 2022-08-18 09:04:53 -07:00
Christian Mazakas
a31e894411 Update implementation to use erase_node() where applicable 2022-07-25 11:35:38 -07:00
Christian Mazakas
5a456eb295 Refactor internal implementation to use "fast closed-addressing" aka fca 2022-06-01 11:49:09 -07:00
Peter Dimov
0d3ece98c1 Merge pull request #106 from cmazakas/missing-nodiscard
Add missing `[[nodiscard]]` qualifiers as outlined by C++20
2022-02-24 18:00:00 +02:00
Christian Mazakas
3d952d3c0f Add missing [[nodiscard]] qualifiers as outlined by C++20 2022-02-23 14:26:28 -08:00
Christian Mazakas
c322cc5621 Implement erase_if() for Unordered via function template in detail namespace 2022-02-23 11:36:48 -08:00
Christian Mazakas
e2b6865938 Fix C4800 warnings in msvc by manually comparing pointers to 0 2022-02-10 08:37:53 -08:00
Christian Mazakas
ad8a11bb49 Implement unordered_multimap::contains() 2022-01-12 12:57:27 -08:00
Christian Mazakas
a26e1c0f41 Implement unordered_map::contains() 2022-01-12 10:36:40 -08:00
Christian Mazakas
77c4a09a9b Implement heterogeneous count() for multimap 2021-12-22 12:59:52 -08:00
Christian Mazakas
ec288246d0 Implement heterogeneous extract() for multimap 2021-12-21 13:22:18 -08:00
Christian Mazakas
57054f7451 Implement heterogeneous erase() for multimap 2021-12-21 09:27:00 -08:00
Christian Mazakas
1c6c085127 Update unordered_map to use singular type trait for erase() / extract() SFINAE 2021-12-21 09:27:00 -08:00
Christian Mazakas
19d2fe8738 Implement heterogeneous equal_range() for multimap 2021-12-20 09:28:04 -08:00
Christian Mazakas
d8fe1a17cc Replace usage of compound is_transparent type trait with singular usage of are_transparent 2021-12-17 09:53:16 -08:00
Christian Mazakas
9945ce7583 Implement heterogeneous find() for multimap 2021-12-17 09:53:16 -08:00
LeonineKing1199
13cd5aa4ce Implement initial draft of heterogeneous extract() 2021-12-06 13:06:05 -08:00
LeonineKing1199
e4d0693eb9 Fix erroneous placement of heterogeneous erase() from multimap to map 2021-12-03 10:08:30 -08:00
LeonineKing1199
8b438dea76 Use erase_key_unique_impl() directly so that eventually erase_unique() can be deprecated 2021-12-03 08:48:20 -08:00
LeonineKing1199
33f84624ec Add initial draft of heterogeneous erase() 2021-12-02 15:59:12 -08:00