Commit Graph

175 Commits

Author SHA1 Message Date
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
Peter Dimov
dbba3cec7b Add C++03 deprecation notice 2023-03-06 09:43:45 +02:00
Christian Mazakas
7d77f1d478 Add transparent insert() overloads to unordered_[flat]_set 2022-12-19 12:46:46 -08:00
Christian Mazakas
6c60524fb7 Implement transparent bucket() 2022-12-13 14:28:19 -08: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
Christian Mazakas
fd48672fd1 Implement deduction guides for unordered_[multi]set 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
97734fd895 Implement unordered_multiset::contains() 2022-01-13 12:51:50 -08:00
Christian Mazakas
f5d470c531 Implement unordered_set::contains() 2022-01-13 08:03:54 -08:00
Christian Mazakas
1c459e6ee6 Implement heterogeneous extract() for multiset 2022-01-05 08:14:58 -08:00
Christian Mazakas
abc7327116 Implement heterogeneous extract() for set 2022-01-04 11:50:20 -08:00
Christian Mazakas
d5e5c08b87 Implement heterogeneous count() for multiset 2022-01-04 09:05:17 -08:00
Christian Mazakas
56f11f94d8 Implement heterogeneous count() for set 2022-01-03 15:48:51 -08:00
Christian Mazakas
1ab8cc4c0f Implement heterogeneous erase() for multiset 2022-01-03 13:54:06 -08:00
Christian Mazakas
202a438044 Implement heterogeneous find() for multiset 2022-01-03 07:59:36 -08:00
Christian Mazakas
f813bbdf86 Implement heterogeneous equal_range() for multiset 2021-12-29 10:36:23 -08:00
Christian Mazakas
57a2b65488 Implement heterogeneous equal_range() for set 2021-12-27 12:20:52 -08:00
Christian Mazakas
9c07cf60a6 Deprecate table::erase_key_unique() 2021-12-23 13:12:52 -08:00
Christian Mazakas
36324af017 Implement heterogeneous erase() for set 2021-12-23 13:03:08 -08:00
Christian Mazakas
05373cbb6b Implement heterogeneous find() for set 2021-12-23 09:54:12 -08:00
Edward Diener
887f1dc07c Change __BORLANDC__ to BOOST_BORLANDC and __CODEGEARC__ to BOOST_CODEGEARC, which are3defined in Boost config for the Embarcadero non-clang-based compilers. 2020-03-31 22:47:48 -04:00
Daniel James
09be9bae04 Use boost::is_nothrow_swappable, now that it's available everywhere 2018-01-27 09:38:19 +00:00
Daniel James
ea599a66b7 Disable 'conditional expression is constant' on older Visual C++ 2018-01-23 15:40:58 +00:00
Daniel James
dea525b2b7 Suppress msvc waring "conditional expression is constant" 2018-01-10 11:35:22 +00:00
Daniel James
f12009fc61 operator= noexcept support 2018-01-05 17:54:44 +00:00
Daniel James
5854090dc7 Swap noexcept support
Not properly supported as we don't have is_nothrow_swappable yet.
2018-01-05 17:48:13 +00:00
Daniel James
7615fabc80 Rewrite node handles using a lightweight limited optional
Will try to use std::optional when available. Also using
allocator_traits::is_always_equal support.
2018-01-03 23:15:55 +00:00
Daniel James
b50e0d610f Initial implementation of template deduction guides 2017-12-19 12:56:51 +00:00
Daniel James
978944fab2 Use same code for move constructing all containers
Copies the data layout from the source, so it doesn't need to hash anything.
2017-10-05 10:56:02 +01:00