Christian Mazakas
|
9a9b8e0a7b
|
Update rehashing implementation to better reflect STL conformance
|
2022-09-13 12:33:21 -07:00 |
|
Christian Mazakas
|
5ad86f559f
|
Clean up implementation of recalculate_max_load() to avoid std::floor/std::ceil
|
2022-09-13 12:33:21 -07:00 |
|
Christian Mazakas
|
dea6ce164c
|
Remove erroneous unconditional call to reserve() from move_assign() when pocma is false
|
2022-09-12 13:16:45 -07: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
|
6f342bf119
|
Set default_bucket_count to zero
|
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
|
91e78fd746
|
Add erase_node() function to table, creating an optimizer-friendly function
|
2022-07-25 11:35:23 -07:00 |
|
Christian Mazakas
|
90b2536a99
|
Relace usage of BOOST_FORCEINLINE with plain inline to prevent warnings from certain versions of msvc
|
2022-06-21 08:42:52 -07:00 |
|
Christian Mazakas
|
f1481f0deb
|
Remove dependency on Boost.Detail
|
2022-06-21 08:42:52 -07:00 |
|
Christian Mazakas
|
b1a9cde690
|
Remove dependency on Boost.Iterator
|
2022-06-21 08:42:52 -07:00 |
|
Alexander Grund
|
707b40e8c2
|
Workaround Segfault of Clang 3.8
Clang 3.8 segfaults during name mangling of `make_index_seq`.
Hence replace it by using type aliases.
|
2022-06-09 11:04:20 +02:00 |
|
Christian Mazakas
|
613a997694
|
Fix -Wmaybe-unitialized warning in gcc-12 by laundering the result of reinterpret_cast<> in functions helper
|
2022-06-07 09:03:48 -07:00 |
|
Flamefire
|
d0ac539d09
|
Fix compilation on Clang < 3.8
`val_alloc` is used in the other branch of the #ifdef too.
|
2022-06-03 11:07:49 +02:00 |
|
Peter Dimov
|
72fe06aa00
|
Remove unused include, removes dependency on Detail
|
2022-06-02 19:15:12 +03:00 |
|
Christian Mazakas
|
5a456eb295
|
Refactor internal implementation to use "fast closed-addressing" aka fca
|
2022-06-01 11:49:09 -07: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
|
aa96d87502
|
Fix shadowing warning in early versions of gcc
|
2022-02-11 11:33:46 -08:00 |
|
Peter Dimov
|
0794cfec9e
|
Avoid -Wlong-long in mix64_policy
|
2022-02-09 07:13:27 +02:00 |
|
Peter Dimov
|
2f331b7a8b
|
Update mix64_policy to use Fibonacci hashing
|
2022-01-19 04:11:08 +02:00 |
|
Peter Dimov
|
d96d5335b4
|
Update mix32_policy to use Fibonacci hashing
|
2022-01-19 04:01:46 +02:00 |
|
Peter Dimov
|
2751b3515b
|
Add bcount_log2_ to table, pass it to the policy
|
2022-01-19 02:33:37 +02:00 |
|
Peter Dimov
|
bf86730a62
|
Add mix32_policy
|
2022-01-18 21:31:53 +02:00 |
|
Peter Dimov
|
98494420c5
|
Add a BOOST_ASSERT to mix64_policy to check that the bucket_count is a power of two
|
2022-01-18 20:52:05 +02:00 |
|
Peter Dimov
|
7717ff01a1
|
Use bit_ceil and bit_floor in mix64_policy
|
2022-01-18 20:40:23 +02:00 |
|
Peter Dimov
|
d6576ed2f1
|
Remove the special case in pick_policy for integral types (refs #50)
|
2022-01-18 19:25:32 +02:00 |
|
Christian Mazakas
|
9c07cf60a6
|
Deprecate table::erase_key_unique()
|
2021-12-23 13:12:52 -08:00 |
|
Christian Mazakas
|
ff4d25d454
|
Add transparent_non_iterable type trait for usage in erase() / extract() SFINAE
|
2021-12-21 09:27:00 -08:00 |
|
Christian Mazakas
|
85cb09ae6d
|
Add erase_key_equiv_impl() member function
|
2021-12-21 09:27:00 -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
|
1db53ba155
|
Update internal table to allocate on construction and when rehashing
|
2021-12-15 09:42:44 -08:00 |
|
LeonineKing1199
|
089d2db104
|
Remove traits detection mechanism
|
2021-12-08 14:04:04 -08:00 |
|
LeonineKing1199
|
fefb6ad4c4
|
Remove unnecessary expression test mechanisms
|
2021-12-08 13:59:11 -08:00 |
|
LeonineKing1199
|
05b795bc14
|
Remove unnecessary macro for determining which allocator_traits implementation is being used
|
2021-12-08 10:06:01 -08:00 |
|
Peter Dimov
|
ff3f5067c8
|
Merge pull request #56 from LeonineKing1199/feature/allocator-traits
Replace internal implementation of `allocation_traits` with Core's
|
2021-12-08 01:23:02 +02:00 |
|
LeonineKing1199
|
5b8289c05a
|
Remove extraneous include of Boost.Container's allocator_traits
|
2021-12-07 10:49:39 -08:00 |
|
LeonineKing1199
|
a6b9fb285c
|
Replace internal implementation of allocation_traits with Core's
|
2021-12-07 08:35:56 -08:00 |
|
LeonineKing1199
|
13cd5aa4ce
|
Implement initial draft of heterogeneous extract()
|
2021-12-06 13:06:05 -08:00 |
|
LeonineKing1199
|
4a42c93897
|
Fix erroneous usage of table::hash() impl which implicitly copy-constructs the const_key_type
|
2021-12-03 10:07:57 -08:00 |
|
LeonineKing1199
|
12977a50bc
|
Add hopefully helpful comment to the source
|
2021-12-03 08:41:42 -08:00 |
|
LeonineKing1199
|
f252480bee
|
Add missing formatting
|
2021-12-02 15:44:02 -08:00 |
|
LeonineKing1199
|
c9df887c4c
|
Add member function template erase_key_unique_impl for usage in heterogeneous lookups
|
2021-12-02 15:38:07 -08:00 |
|
LeonineKing1199
|
03edf7f4a8
|
Add member function template find_previous_node_impl so it can be used in heterogenous contexts
|
2021-12-02 15:30:17 -08:00 |
|
Peter Dimov
|
5e8b6a9e55
|
Add comment describing the origin of mix64_policy::apply_hash
|
2021-11-29 06:14:20 +02:00 |
|
LeonineKing1199
|
8ba710637a
|
Remove detail::make_dependent in favor of an extra template parameter in is_transparetn
|
2021-11-22 13:29:41 -08:00 |
|
LeonineKing1199
|
59db6cf788
|
Add SFINAE to transparent count() overload in unordered_map
|
2021-11-22 11:16:04 -08:00 |
|
Peter Dimov
|
c8abaf32ee
|
Merge pull request #40 from LeonineKing1199/sfinae-updates
Update SFINAE expressions to be in the return type
|
2021-11-19 04:32:06 +02:00 |
|
LeonineKing1199
|
7ccd62ba98
|
Update SFINAE expressions to be in the return type instead of a defaulted function parameter
|
2021-11-18 12:54:17 -08:00 |
|
LeonineKing1199
|
2d69c7a5ca
|
Add missing const-qualification of operator== for internal optional implementation
|
2021-11-18 10:19:20 -08:00 |
|
LeonineKing1199
|
a97160cf57
|
Fix bug in has_construct by using std::declval
|
2021-08-29 12:13:56 -07:00 |
|
Daniel James
|
e10fc0f93b
|
Fix typo
|
2018-02-25 14:03:11 +00:00 |
|