joaquintides
c1317cb5be
replaced get_cumulative_stats() with direct access to cstats
2024-05-03 18:11:13 +02:00
joaquintides
223f64752d
implemented proper stats handling on concurrent<->unordered move construction
2024-05-03 18:04:21 +02:00
joaquintides
e712c37e9f
added stats to foa::table
2024-04-28 18:44:23 +02:00
Braden Ganetsky
1d25c1c053
Update copyright notices
2024-02-11 11:22:28 -06:00
Braden Ganetsky
4e6d4ade6c
Optimize emplace(k,v) for foa and cfoa containers
2024-02-11 11:22:27 -06:00
Braden Ganetsky
4fbe450a65
Generalize alloc_cted_insert_type into allocator_constructed and remove the factory function alloc_make_insert_type()
2024-02-11 11:22:27 -06:00
Braden Ganetsky
67c5cdb3a6
Optimize emplace() for exactly a value_type or init_type argument ( #227 )
...
* Add structs to count special member functions
* Add failing emplace tests, that will pass after making the optimization
* Optimize emplace() to not allocate when we already have a value_type or init_type
* Fix newly failing cfoa tests
2023-12-31 18:56:14 +01:00
Christian Mazakas
9bc7876583
Update foa to be gcc-4.8 compliant
2023-09-28 08:31:14 -07:00
joaquintides
6b65c8f230
fixed assignment bug with POCXA, fancy, unequal allocators ( #214 )
2023-09-26 20:08:13 +02:00
Christian Mazakas
a0c7112652
Update arrays transfer in table_core moves constructors to be exception-safe
2023-09-15 09:50:33 -07:00
Christian Mazakas
c707bcb6d8
Refactor table_iterator to avoid extraneous amounts of boost::to_address
2023-09-15 09:50:33 -07:00
Christian Mazakas
771943e291
Add to_pointer helper for converting raw pointers to fancy
...
This helps us avoid an unconditional nullptr check when the user's pointer type is fancy
2023-09-15 09:50:33 -07:00
Christian Mazakas
2cab340749
Replace direct accesses of fancy pointers with getters
2023-09-15 09:50:33 -07:00
Christian Mazakas
c16a3f2a4a
Update table_iterators to store fancy pointers
2023-08-30 09:57:22 -07:00
Christian Mazakas
95a37b0d3d
Update foa-based containers to store only fancy pointers
2023-08-30 09:57:20 -07:00
joaquintides
d007a5a7bd
renamed serialize_node_pointer as serialize_tracked_address (editorial)
2023-08-25 11:34:39 +02:00
joaquintides
5239b101e2
added serialization support (pending docs and testing)
2023-08-17 10:20:25 +02:00
Christian Mazakas
e563c89b1c
Remove extraneous typename
2023-08-11 12:35:44 -07:00
joaquintides
b206513a11
fixed friend declarations
2023-08-11 12:35:44 -07:00
joaquintides
6b6dde4f97
stylistic
2023-08-11 12:35:13 -07:00
joaquintides
4be37cfdaf
avoided premature instantiation of concurrent_table
2023-08-11 12:35:13 -07:00
joaquintides
6bf84067b3
added unordered_flat_map(concurrent_flat_map&&)
2023-08-11 12:35:13 -07:00
joaquintides
2eebe157fd
refactored proxy_erase to reduce template instantiations and strengthen misuse avoidance
2023-06-19 08:21:13 -07:00
Christian Mazakas
2f7bba0c21
Implement proxy erase(iterator)
2023-06-19 08:21:13 -07:00
joaquintides
518a5d2e1e
refactored padding into a clean design
2023-06-09 08:55:25 -07:00
joaquintides
9260bff8f8
editorial
2023-05-15 10:20:45 +02:00
joaquintides
511e2b3272
refactored to provide equality comparison from table_core
2023-05-12 11:24:20 +02:00
joaquintides
c214fb44a3
completed internal code documentation
2023-04-20 18:49:42 +02:00
joaquintides
40c5c6907a
fixed const-casting in erase_if(foa::table&,...)
2023-03-25 18:50:25 +01:00
joaquintides
8dbe380d6c
changed predicate arg to an lvalue ref to avoid ADL ambiguities
2023-03-25 17:37:02 +01:00
joaquintides
37ff9de0db
fixed remaining errors in erase_if(foa::table&,...)
2023-03-25 17:35:37 +01:00
joaquintides
a85df27d4c
fixed previous commit
2023-03-25 12:47:19 +01:00
joaquintides
88c70b885d
fixed previous commit
2023-03-25 12:37:10 +01:00
joaquintides
240f5f94b1
moved erase_if_impl from foa::table_core into foa::table
2023-03-25 12:31:49 +01:00
joaquintides
2e44769247
added preliminary version of non-embedded group_access
2023-03-20 12:43:57 -07:00
joaquintides
f244ba55de
switched from available to size_
2023-03-20 12:43:57 -07:00
joaquintides
83040211e8
recovered warninng supression pragmas
2023-03-20 12:43:56 -07:00
joaquintides
4ed301df97
refactored insert_type creation in emplace
2023-03-20 12:43:56 -07:00
joaquintides
8010f506a6
added SizeImpl and fixed some size arithmetic bugs
2023-03-20 12:43:56 -07:00
joaquintides
840ea1ce5c
refactored some more for future concurrent_table
2023-03-20 12:43:56 -07:00
joaquintides
447306bfb9
stylistic
2023-03-20 12:43:56 -07:00
joaquintides
c1b63f68c8
added missing op to plain_integral
2023-03-20 12:43:56 -07:00
joaquintides
3a8bea9e1d
parameterized group15 and core
2023-03-20 12:43:56 -07:00
joaquintides
b33b354818
extended caae8eb9ac9a47dd224b81f22efe8ea34b084d54 to rest of "using typename"s
2023-03-20 12:43:56 -07:00
joaquintides
b08837b93e
added missing template keyword
2023-03-20 12:43:56 -07:00
joaquintides
b3b840df30
extended Wshadow supression to foa::table
2023-03-20 12:43:56 -07:00
joaquintides
2ef47f0813
reformulated using to workaround VS problem
2023-03-20 12:43:56 -07:00
joaquintides
27f5513911
published max_load_factor
2023-03-20 12:43:56 -07:00
joaquintides
a5100a9d35
fixed incomplete porting of PR187
2023-03-20 12:43:56 -07:00
joaquintides
18725a682d
fixed previous fix
2023-03-20 12:43:56 -07:00