Commit Graph

  • e0bb258b39 Add load_factor_tests Christian Mazakas 2022-10-07 10:56:47 -07:00
  • d3ef0b9a4f Add rehash tests Christian Mazakas 2022-10-07 10:56:35 -07:00
  • 86d623a0f4 Pull mlf into detail::foa namespace for testing Christian Mazakas 2022-10-07 10:55:52 -07:00
  • b964fa777c Add at_tests Christian Mazakas 2022-10-07 08:41:30 -07:00
  • cde017f791 added missing typename joaquintides 2022-10-07 19:02:25 +02:00
  • d1982a664b stylistic joaquintides 2022-10-07 18:56:41 +02:00
  • 7e479d62dc added foa_mixer.hpp joaquintides 2022-10-07 18:56:16 +02:00
  • 6be32f3ba4 reverted 74c2ae627a and explicitly silenced VS warning joaquintides 2022-10-07 16:38:19 +02:00
  • 049a1ec8f6 reverted b3754b10c8 and 5fc929b829 and s/{}/() in arrays initialization joaquintides 2022-10-07 16:32:57 +02:00
  • b3754b10c8 extended 5fc929b829 to member arrays joaquintides 2022-10-07 13:50:02 +02:00
  • 7441be730e removed spurious #include joaquintides 2022-10-07 13:47:54 +02:00
  • 38f9cb750a s/value_type/init_type joaquintides 2022-10-07 12:17:16 +02:00
  • 8a9aab57c0 s/std::move/type_policy::move in a couple of places joaquintides 2022-10-07 12:15:24 +02:00
  • b61ec3a65a removed moved_type import (not used explicitly) joaquintides 2022-10-07 12:10:14 +02:00
  • 74c2ae627a avoided VS constant conditional expression warning joaquintides 2022-10-07 11:34:13 +02:00
  • 74ca1e50f3 return one lambda expression back in place (related to f1eb5d2106) joaquintides 2022-10-07 11:27:54 +02:00
  • 5fc929b829 initialized ml at ctor body (GCC 4.8/4.9 complains otherwise) joaquintides 2022-10-07 11:23:05 +02:00
  • 3aaf895514 restricted erase generic arg as per C++23 requirements (hopefully fixes test errors in VS2015) joaquintides 2022-10-07 11:19:20 +02:00
  • 2057ccaeb5 stylistic joaquintides 2022-10-07 10:44:28 +02:00
  • dc7b8f3ff2 Remove extraneous overloads of key_from Christian Mazakas 2022-10-06 12:04:21 -07:00
  • 2b7e9d826d Fix warning in msvc-14.3 with C++20 about multiple implicit conversions being applied Christian Mazakas 2022-10-06 12:03:59 -07:00
  • c57470e0d3 SFINAED out third key_from overload and fixed insert accepted arg types joaquintides 2022-10-06 20:02:03 +02:00
  • 6b1379a992 Update SFINAE to handle the case of the init_type and moved_type being the same Christian Mazakas 2022-10-06 10:45:49 -07:00
  • f1eb5d2106 Workaround visibility bug in gcc-6 by un-nesting lambdas Christian Mazakas 2022-10-06 09:55:00 -07:00
  • ad248ab76a Fix maybe-uninitialized warning in emplace_tests by explicitly initializing all data members of emplace_value Christian Mazakas 2022-10-06 09:54:33 -07:00
  • f4888c7940 Enable C++11 builds Christian Mazakas 2022-10-06 09:53:49 -07:00
  • d02b12c9a1 redesigned init_type/value_type machinery joaquintides 2022-10-06 17:50:30 +02:00
  • 2cf9d5ac4c Add extra value_type() construction in range-based iterator insertion so implicitly convertible types are supported, i.e. test::proxy Christian Mazakas 2022-10-05 14:56:49 -07:00
  • f3803fc071 Add emplace_tests Christian Mazakas 2022-10-05 13:31:10 -07:00
  • a3c6235f3a Add insert_hint_tests Christian Mazakas 2022-10-05 13:30:59 -07:00
  • 7501eefd87 Updated unordered flat container to use declval instead of allocator_traits as old versions of clang don't have is_always_equal Christian Mazakas 2022-10-05 13:29:48 -07:00
  • 2134116cbc Update test jamfile to use a build_foa command Christian Mazakas 2022-10-05 13:24:54 -07:00
  • b86143de46 made one overload of insert generic so that value_type is accepted joaquintides 2022-10-05 20:38:51 +02:00
  • 7c8045aab5 fixed init_type machinery joaquintides 2022-10-05 18:46:38 +02:00
  • c15bd0092d introduced init_type/value_type joaquintides 2022-10-05 18:09:57 +02:00
  • d233d83811 allow 100% fillup for small capacities joaquintides 2022-10-05 14:49:42 +02:00
  • df0c375541 s/std::allocator_traits/boost::allocator_traits joaquintides 2022-10-05 13:58:31 +02:00
  • 886b1b4ded refactored table_arrays to solve alignment issues without an extra data member joaquintides 2022-10-05 13:54:28 +02:00
  • 48816135df refactored move assignment to silence warnings joaquintides 2022-10-05 10:05:10 +02:00
  • 4d0f698937 stylistic joaquintides 2022-10-05 09:34:21 +02:00
  • fdbc79d2a8 Silence -Werror=terminate warning in move assignment Christian Mazakas 2022-10-04 14:52:38 -07:00
  • 1a89b0aa14 Add missing size swap() call to move-assign operator for foa::table Christian Mazakas 2022-10-04 14:52:18 -07:00
  • 8e9b7cf259 Add move semantics to FOA containers Christian Mazakas 2022-10-04 14:51:45 -07:00
  • bf6643844b Add foa_move_tests Christian Mazakas 2022-10-04 14:51:03 -07:00
  • e9c3ed1531 Remove unnecessary self-alias checks in copy-assignment operators Christian Mazakas 2022-10-04 14:49:40 -07:00
  • 7dfcdc6da8 Split move_tests into post_move_tests so testing with the new FOA containers is feasible Christian Mazakas 2022-10-04 14:38:31 -07:00
  • 9ad7096851 Add missing assign_test cases Christian Mazakas 2022-10-04 10:58:06 -07:00
  • 4cdfb2537a Implement erase(), get erase_tests passing Christian Mazakas 2022-10-04 10:57:48 -07:00
  • 9280e13697 Add erase_tests Christian Mazakas 2022-10-04 10:56:26 -07:00
  • 21872edf83 Disable FOA tests for C++98 Christian Mazakas 2022-10-04 10:47:03 -07:00
  • b7e021ffc6 silenced VS warning C4714 joaquintides 2022-10-04 18:47:23 +02:00
  • e69bb3aece unnamed unused parameters joaquintides 2022-10-04 13:46:27 +02:00
  • 06512a00e1 refactored bdfe294e61 and expanded to move assign and swap joaquintides 2022-10-04 11:24:21 +02:00
  • bdfe294e61 Add temporary polyfill for foa table's assignment operator so that the definition of the allocator copy-assignment operator isn't required Christian Mazakas 2022-10-03 14:47:41 -07:00
  • ddb9f370af Update load_factor() impl to handle the case when capacity() is zero Christian Mazakas 2022-10-03 14:46:45 -07:00
  • b0c0384401 Fix small typo in increment() function to silence VS warnings Christian Mazakas 2022-10-03 14:46:19 -07:00
  • bf6e381ff2 Add expliicit destructors, copy assignment operators Christian Mazakas 2022-10-03 14:45:42 -07:00
  • d5fcc77579 Add assign_tests Christian Mazakas 2022-10-03 14:45:02 -07:00
  • b0097982af Remove config checks, just rotely disable tests for unsupported C++ versions Christian Mazakas 2022-10-03 12:17:46 -07:00
  • 2e3a8a0fc0 avoided VS warning C4706 joaquintides 2022-10-03 21:05:48 +02:00
  • 357eed44a1 replaced homegrown ebo_base with boost::empty_value joaquintides 2022-10-03 19:36:53 +02:00
  • 2ae70cd05c Merge branch 'feature/foa_rc' of https://github.com/boostorg/unordered into feature/foa_rc joaquintides 2022-10-03 18:50:15 +02:00
  • d370ae1095 stopped relying on __STDCPP_DEFAULT_NEW_ALIGNMENT__ for now joaquintides 2022-10-03 18:49:24 +02:00
  • 5c48ad9a79 Update test Jamfile to use cxx14_constexpr as a requirement for targets so msvc gets run Christian Mazakas 2022-10-03 08:08:02 -07:00
  • 621b5b4ec1 shut down bogus VS warning joaquintides 2022-10-02 11:14:19 +02:00
  • 4dbc83ccbf documented VS specific bit joaquintides 2022-10-02 11:13:49 +02:00
  • 398a64b5e0 shut down unavoidable GCC shadowing warnings joaquintides 2022-10-02 11:13:04 +02:00
  • b926dbbbe9 eliminated shadowed declaration joaquintides 2022-10-01 19:37:16 +02:00
  • b244b33402 EBO-optimized table joaquintides 2022-10-01 19:34:33 +02:00
  • f2e4b25615 silenced conversion warning joaquintides 2022-10-01 17:33:55 +02:00
  • 29f2f1db2c added missing BOOST_RETHROWs joaquintides 2022-10-01 12:58:37 +02:00
  • cec09e1c61 fixed alignment issues apparent 32bit builds joaquintides 2022-10-01 12:44:33 +02:00
  • 36a42116e8 supported unaligned metadata access where potentially happening, plus fixed some superfluous alignas specifiers joaquintides 2022-09-30 17:06:31 +02:00
  • d9dcaf8ba1 tried different formulation of prior joaquintides 2022-09-30 16:17:40 +02:00
  • 984cf13afd reintroduced 6110a0827c with a slightly different syntax (prior caused ICEs on GCC11) joaquintides 2022-09-30 16:15:11 +02:00
  • ac41bf6e86 temporarily reverted 6110a0827c joaquintides 2022-09-30 16:09:14 +02:00
  • 5f21e3964e temporarily omitted _mm_loadu_si128 joaquintides 2022-09-30 13:57:49 +02:00
  • 364cd86191 temporarily omitted alignas specifier joaquintides 2022-09-30 13:52:25 +02:00
  • b1449ca502 added unaligned load of __m128i joaquintides 2022-09-30 12:27:10 +02:00
  • 6110a0827c Fix default initialiation warning for clang-3.7, clang-3.8 Christian Mazakas 2022-09-29 13:57:16 -07:00
  • 71b64139da Add copy_tests Christian Mazakas 2022-09-29 13:46:03 -07:00
  • 3582ac91d7 Silence conversion warning in foa Christian Mazakas 2022-09-29 13:45:51 -07:00
  • 30997bd9ef Add constructor_tests Christian Mazakas 2022-09-29 12:50:56 -07:00
  • cb673135d2 Use static_cast to silence conversion warnings Christian Mazakas 2022-09-29 11:40:13 -07:00
  • 6ac1cf1a5f Add find_tests Christian Mazakas 2022-09-29 11:19:17 -07:00
  • 8f29a32a33 Simplify range-based insert() so it doesn't eagerly rehash so that insert_tests pass Christian Mazakas 2022-09-29 11:18:59 -07:00
  • ac3520791e Clean up insert_tests Christian Mazakas 2022-09-29 11:17:22 -07:00
  • faa6e91ed2 Fix conversion warning in reserve() Christian Mazakas 2022-09-29 11:16:58 -07:00
  • 86956b0be1 added non-SIMD support joaquintides 2022-09-29 19:24:15 +02:00
  • fdc39982f3 fixed trivial error in #ifdefd-out code joaquintides 2022-09-29 10:49:27 +02:00
  • c37cfacb44 Finally get insert_tests passing for flat map/set Christian Mazakas 2022-09-28 13:49:38 -07:00
  • 3af53a6598 Flesh out unordered_flat_map for insert_tests Christian Mazakas 2022-09-28 13:49:17 -07:00
  • 19c500de27 Silence conversion warning in foa table's emplace_impl() Christian Mazakas 2022-09-28 13:48:49 -07:00
  • 855d538ea3 Fix typo in foa table's empty() implementation Christian Mazakas 2022-09-28 13:48:21 -07:00
  • 6b1ef16e38 Add unordered_flat_set Christian Mazakas 2022-09-28 13:47:51 -07:00
  • 1577da25cc Add proper flat_map header + forwarding header Christian Mazakas 2022-09-28 13:47:00 -07:00
  • c44695eb37 reverted joaquintides 2022-09-28 20:48:30 +02:00
  • 63fdf67568 un-inlined pow2_quadratic_prober memfuns to see it impacts performance joaquintides 2022-09-28 20:19:08 +02:00
  • 80cb7281ba reverted joaquintides 2022-09-28 20:08:41 +02:00
  • cefe5965be micro-optimized table_iterator ctor to see if it impacts performance joaquintides 2022-09-28 19:52:22 +02:00